Opencv 基于网络摄像机的人脸表情识别

Opencv 基于网络摄像机的人脸表情识别,opencv,expression,webcam,face-detection,feature-detection,Opencv,Expression,Webcam,Face Detection,Feature Detection,我目前正在做一个项目,我必须提取用户的面部表情(一次只能从网络摄像头中提取一个用户),比如悲伤或快乐 有很多程序/API可以进行人脸检测,但我没有找到任何一个可以进行自动表情识别的程序/API 到目前为止,我发现的最好的可能性是: 我之前使用OpenCV进行人脸检测,效果非常好,所以如果有人对如何使用OpenCV进行人脸检测有一些建议,那就太好了 OpenCV板上的一些用户建议寻找AAM(活动的apereance模型)和ASM(活动的形状模型),但我找到的都是论文 -因此,我使用活动形状模型,这

我目前正在做一个项目,我必须提取用户的面部表情(一次只能从网络摄像头中提取一个用户),比如悲伤或快乐

有很多程序/API可以进行人脸检测,但我没有找到任何一个可以进行自动表情识别的程序/API

到目前为止,我发现的最好的可能性是:

我之前使用OpenCV进行人脸检测,效果非常好,所以如果有人对如何使用OpenCV进行人脸检测有一些建议,那就太好了

OpenCV板上的一些用户建议寻找AAM(活动的apereance模型)和ASM(活动的形状模型),但我找到的都是论文

-因此,我使用活动形状模型,这将使我能够访问面部的77个不同点,因此我仍然需要手动将它们映射到表达式


欢迎使用任何编程语言。

在2.4版本之后,opencv附带了人脸识别API。您可以将悲伤和快乐的脸定义为两张不同的脸,并使用来对它们进行分类。如果您正在寻找任何教程,也可以查看。

使用OpenCV可以解决一半的问题。如果使用示例构建OpenCV,则可以运行名为c-example-smiledetect的示例,该示例可以检测不同级别的笑脸

代码应该在OpenCV文件夹中的示例/c下。我记得您可以调整代码中的敏感度,这样可能会有所帮助。您还可以找到代码

另一方面,可以在(第7章)中找到使用OpenCV的AAM实现。这并不包括搜索和装配部分,只是展示了如何从ASM和纹理创建AAM。

也许本文可以帮助您

这是对用于实现以下结果的概念的解释:

另外,你可能想看看

上面提到的所有这些都是或多或少实现了你所期望的目标的人的作品


我想和你一样使用OpenCV进行面部表情识别,因此我希望我们迟早能交换意见。

如果我要使用此api,我必须为每个用户提供快乐和悲伤的表情!!是的,这些是预先定义的。也许你可以创建自己的人脸检测训练模式。在两个不同的xml文件中训练快乐的脸和悲伤的脸,并尝试使用它们。我的目标是让任何用户都能使用此应用程序,并且此方法将快速用于网络摄像头视频!!您说过您尝试使用opencv(使用opencv包附带的.xml文件)进行人脸检测,速度不够快吗?我也在一个皮肤检测器中尝试过,算法复杂度要高得多,但运行速度足够快。好的,你能给我一个关于如何为OpenCVE训练xml文件的教程吗?你的项目有什么进展吗?@NenadBulatovic c-example-smiledetect正在使用预先训练过的Haar检测器。我认为OP必须训练自己的检测器(分类器),以便检测其他面部表情。如果我没记错的话,那就需要使用几千张图片来完成。我在rad和文章中提到,在快速机器上,创建分类器的整个训练过程需要7天以上的时间。如果结果不好,必须进行再培训。