如何在iOS中使用Opencv检测嘴唇边缘?

Ami*_*bha 7 c++ xcode opencv ios

我是OpenCV的新手,请帮助我.我想用OpenCV 检测嘴唇边缘.你能给我一些链接和解决方案吗?我已经检查了使用OpenCV检测面部和嘴部的正常程序,但准确性不存在.我用"haarcascade_mcs_mouth"来检测图片中的嘴巴,但结果并不是那么好.我听说过AAM方法,但无法得到任何有关它的文件.请帮我...

Dan*_*tín 6

唇识别是计算机视觉中的一个问题,它尚未完全解决.您一直使用的类似哈希的分类器(包含在OpenCV中)在人脸识别方面表现良好,但对于唇识别,已经开发出更好的技术.您将不得不构建不同的算法并为您的目的选择更好的算法.您正在为iOS开发的事实使得任务更加困难,因为存在额外的约束(内存占用,CPU等).我简要概述了唇部识别的最新技术,以便您进一步研究:

识别嘴唇的方法可分为三大类:

  • 基于图像的技术:这些基于皮肤和嘴唇具有不同颜色的假设.论文[2]是应用于手语识别的这种方法的一个例子.[3]也探讨了颜色聚类.它假设图像中有两个像素类:皮肤和嘴唇.例如,如果该人有胡子或露出他/她的牙齿,则该方法是不合适的.

  • 基于模型的技术:这些方法比以前的方法更强大,因为它们使用有关唇形的先验信息.但是,它们在计算上更昂贵,因此它们可能不适合在移动设备上实现.AAM(主动外观模型)属于该组,并通过手动注释数据了解嘴唇的形状.在Wikipedia文章的"外部链接"部分中,您可以看到一些可以移植到C++/OpenCV的开源实现和库.

  • 混合技术:这些方法是基于图像的方法和基于模型的方法的组合.通常,首先将基于颜色的技术应用于图像以估计唇部区域的位置和大小; 然后,将基于模型的技术(如AAM)应用于感兴趣的区域以提取唇部轮廓.[4]是这种技术的一个例子.

[2] U. Canzler和T. Dziurzyk,"用于基于视频的手语识别的非手动特征的提取".;在MVA的会议录中.2002,318-321

[3] Leung,Shu-Hung,王世林,刘永红."使用包含椭圆形函数的模糊聚类的唇图像分割." Image Processing,IEEE Transactions on 13.1(2004):51-62.

[4] Bouvier,Christian,PY.Coulon和Xavier Maldague."基于ROI优化和参数模型的无监督嘴唇分割." Image Processing,2007.ICIP 2007. IEEE国际会议.卷.4. IEEE,2007.