Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/120.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何使用Open CV检测哈欠_Ios_Opencv_Haar Wavelet - Fatal编程技术网

Ios 如何使用Open CV检测哈欠

Ios 如何使用Open CV检测哈欠,ios,opencv,haar-wavelet,Ios,Opencv,Haar Wavelet,我正在为iOS开发一个应用程序,需要检测用户何时打哈欠 我所做的是包括打开CV并使用haar级联查找面,然后在面内查找嘴(也使用haarcascade) 我所遇到的问题是,我相信,像做(face.y-mouth.y)

我正在为iOS开发一个应用程序,需要检测用户何时打哈欠

我所做的是包括打开CV并使用haar级联查找面,然后在面内查找嘴(也使用haarcascade)

我所遇到的问题是,我相信,像做(face.y-mouth.y) 但我的问题是脸和嘴的矩形是“不稳定的”,我的意思是每次循环运行时,脸和嘴的矩形的X和Y值(显然)是不一样的


我是否可以使用任何“张嘴”haar级联,或者如何知道用户何时张嘴?

OpenCV还具有人脸识别/检测功能(请参阅OpenCV SDK附带的示例)。我认为这是一个更好的地方,因为haar cascade并没有按照你需要的方式来分析面部表情。试着运行这些示例并亲自查看-您将获得有关检测到的眼睛/嘴等的实时数据


祝你好运

一般来说,支持向量机(SVM)用于面部表情识别,如愤怒、微笑、惊讶等,其中仍有活跃的发展。谷歌给了你很多关于这个话题的论文(甚至我的一个同学在最后一年也做了这个)。为此,首先需要训练SVM,要做到这一点,需要哈欠和正常人脸的样本图像

打哈欠几乎类似于惊讶,在这两种情况下都张嘴。我建议您查看以下论文的第3页:(如果您无法访问链接,请按论文名称搜索)

这篇论文(甚至我的同学)使用了面部特征的位移向量。为此,可以在面上找到一些特征点。例如,在本文中,他们使用了瞳孔、眼睑的极值点、鼻尖、嘴区域(嘴唇)的极值点等,然后他们连续跟踪特征的位置,并找到它们之间的欧氏距离。它们用于训练支持向量机

查看以下两篇论文:

请看下图,我所说的面部特征点是什么意思:

在您的情况下,我认为您正在iPhone中实时实现它。所以,也许你可以避开眼睛的特征点(虽然这不是一个好主意,因为当你打哈欠时,眼睛会变小)。但与之相比,嘴唇的特征点显示出更多的变化和优势。因此,仅在lip上实现可能会节省时间。(好吧,这完全取决于你)

嘴唇分割:已经在SOF中讨论过了,请查看以下问题:

最后,我相信你可以找到很多关于谷歌搜索的细节,因为它是一个活跃的发展领域,有很多论文在那里

另一个选项


这个区域的另一个选项是
活动外观模型
,我已经听过好几次了。但我对此一无所知。自己用谷歌搜索。

这可以作为面部表情识别的一个例子,大多数情况下都是使用支持向量机完成的。所以,在这条路线上搜索可能会给你带来一些好结果。如果用户在打哈欠时捂住嘴怎么办?@Hassan也给他们发了一个电击检测打哈欠的声音怎么样?在嘈杂的环境中可能非常困难。这些概念离我很远:)但我用haar cascades的方法解决了这个问题:首先我搜索人脸,在人脸内部搜索嘴巴。当嘴唇没有张开时,就会发现嘴。因此,如果我找到了一张嘴,后来我再也找不到了,我会怀疑用户打了哈欠。它不是完美的,甚至不是很好,但它解决了我开发应用程序所需的问题。我所说的方法还不完善。这是我在matlab的朋友在我们读大学时做的。并且所有的功能都是在OpenCV中实现的。没问题,你的选择。刚才指出了这个方法。好的luckThnanks@Abid问题是我对SVM和Open CV都没有任何概念,只是基本的:D但它真的很有趣,所以在这个项目之后,我将研究更多的东西,以使其“良好”实现。此外,这种知识有多种用途,例如增强现实,它几乎可以在任何地方通过开放式CV(Android、iOS、桌面等)实现。所以将来我会对你告诉我的方法进行更多的研究。再次感谢!我一直在寻找同样的解决方案。iOS人脸表情识别库。是否有一个示例SVM程序/github可以在iOS上进一步使用?