我有一个应用程序,它使用AVFoundation和跟踪面部,眼睛和嘴巴的位置。我使用CIFaceFeature来检测它们,并在屏幕上标记它们。
有没有一种简单的方法来使用框架来检测眨眼?
发布于 2013-06-10 08:22:41
对于iOS 7,是的,现在您可以使用CoreImage来完成此任务。
以下是iOS 7 Beta 2中的API diff:
CoreImage
CIDetector.h
Added CIDetectorEyeBlink
Added CIDetectorSmile在iOS 7之前:
不,目前还不能使用iOS框架(AVFoundation或CoreImage)。
你可以在OpenCV上结账...但它更多的是一个研究主题,不能保证在不同的情况下都能很好地工作:
首先,你需要构建一个眼睛闭/开分类器,afaik,在OpenCV中没有内置的眨眼分类器,所以你需要收集足够的“闭”和“开”样本,并训练一个二进制分类器。(我建议使用主成分分析+支持向量机。两者都有OpenCV版本)
然后在iOS中,使用CoreImage检测两只眼睛的位置。然后在眼睛中心周围切一个方形的贴片图像。补丁的大小应该根据检测到的面部边界矩形进行归一化。
然后,您需要将to图像/ to图像转换为OpenCV IplImage或CvMat格式,并将它们送入OpenCV分类器,以确定眼睛是睁开的还是闭上的。
最后,根据眼睛张开和闭上的顺序确定是否有眨眼。
(您还需要检查处理帧率是否能够选择眨眼动作:假设眨眼发生在0.5帧内...那么你永远也不会发现它...)
这是个很难的问题..。否则,苹果已经将它们包含在框架中了。
https://stackoverflow.com/questions/16799148
复制相似问题