加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

使用OpenCV和LBP在iPhone上进行人脸检测

发布时间:2020-12-15 01:50:39 所属栏目:百科 来源:网络整理
导读:我已经成功地使用OpenCV-2.1.0中的Haar算法(cvHaarDetectObjects)来检测iOS 4.2的Objective-C项目中的图片和视频帧中的面部.但是,在大多数情况下,iPhone 4上的视频帧处理时间大约需要1-2秒.我正在使用的代码示例如下: NSString *path = [[NSBundle mainBund
我已经成功地使用OpenCV-2.1.0中的Haar算法(cvHaarDetectObjects)来检测iOS 4.2的Objective-C项目中的图片和视频帧中的面部.但是,在大多数情况下,iPhone 4上的视频帧处理时间大约需要1-2秒.我正在使用的代码示例如下:

NSString *path = [[NSBundle mainBundle] pathForResource:@"haarcascade_frontalface_alt" ofType:@"xml"];

    CvHaarClassifierCascade* cascade = 
            (CvHaarClassifierCascade*)cvLoad([path cStringUsingEncoding:NSASCIIStringEncoding],NULL,NULL);
    CvMemStorage* storage = cvCreateMemStorage(0);

    CvSeq* faces = cvHaarDetectObjects(small_image,cascade,storage,1.2,0 |CV_HAAR_DO_ROUGH_SEARCH |CV_HAAR_FIND_BIGGEST_OBJECT,cvSize(30,30));

我尝试了多种优化技术,包括ROI的智能应用,以及整数而不是浮点数的使用.然而,这些变化花费了大量时间,只有很小的好处.

有人建议我使用LBP可以显着减少面部检测时间.我一直在尝试和寻找实施LBP的方法,但无济于事.在opencv中,有一个级联文件(lbpcascade_frontalface.xml),但我找不到任何有关如何使用它的建议.

任何帮助将不胜感激,包括我可能在我的搜索中遗漏的其他优化技术和谷歌链接.只要合理有效,检测的准确性并不重要.

谢谢!

解决方法

尝试使用 Instruments来确定应用程序中性能瓶颈的位置.它们可能与您认为的不同.

另外,请查看this性能指南.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读