如何在 iOS 上进行面部识别?

Posted

技术标签:

【中文标题】如何在 iOS 上进行面部识别?【英文标题】:How can I perform facial recogntion on iOS? 【发布时间】:2011-12-22 16:18:22 【问题描述】:

我已经开始开发一个 ios 应用程序,该应用程序可以识别照片或 iPhone / iPad 相机中的人脸。

OpenCV 和 Core Image(在 iOS 5.0 中)等现有解决方案在图像中提供面部检测,但我找不到将面部与人匹配的库或示例。

iOS 是否存在这种执行面部识别(而不仅仅是检测)的方法?

【问题讨论】:

人脸检测可以参考这个tutorial。 【参考方案1】:

在 iOS 5 上,您可以使用 CoreImage(CIDetector、CIFeature、CIFaceFeature 应命名为相关关键字)来执行该任务。查看 Apple 的 SquareCam 示例应用程序,它包括人脸检测。如果您的目标是较旧的 iOS 版本,openCV 似乎是一个不错的方法。

http://developer.apple.com/library/ios/#samplecode/SquareCam/Introduction/Intro.html

Edit_:啊,太棒了。 CoreImage 只能检测人脸,但不能识别人脸。但也许你可以基于 CoreImage 构建一个解决方案...

【讨论】:

【参考方案2】:

OpenCV 所做的称为“人脸检测”。这与面部识别不同,但与之相关,而面部识别正是您想要做的。

人脸检测通过查找人脸特征(例如眼睛、嘴巴等)的位置来“检测”人脸。要“识别”这些人脸,您需要将这些特征与已知人脸数据库进行比较,而已检测到特征。

我不知道适用于 iOS 的人脸识别库,这绝非易事。根据我的经验,即使是 Apple 自己的 iPhoto,准确度也非常低。

但是,如果您只想进行人脸检测,或者想在人脸检测库之上构建自己的人脸识别算法,iOS 5 还包含人脸检测 API。您可以在 CoreImage 框架中找到它。

【讨论】:

你认为这可以用来匹配不相关的人的照片来创建一个“出生时分离”类型的应用程序吗?见:en.wikipedia.org/wiki/Separated_at_birth

以上是关于如何在 iOS 上进行面部识别?的主要内容,如果未能解决你的问题,请参考以下文章

面部识别程序如何工作? [关闭]

win10无法使用面部识别

如何使用python(Opencv)识别头部(面部)运动

面部识别的未来

面部表情识别2:Pytorch实现表情识别(含表情识别数据集和训练代码)

面部表情识别3:Android实现表情识别(含源码,可实时检测)