首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当帧中没有人脸时,OpenCV中的人脸检测变得缓慢

当帧中没有人脸时,OpenCV中的人脸检测变得缓慢
EN

Stack Overflow用户
提问于 2014-07-20 19:17:58
回答 1查看 625关注 0票数 0

我正在尝试使用Viola-Jones人脸检测器在OpenCV中实现带有网络摄像头输入的人脸检测程序,它工作得很好,除了当在帧中没有检测到人脸时它变得大约慢10倍。

这真的很奇怪,因为如果框架中没有人脸,大多数窗口在级联的早期阶段都会被拒绝,我猜它应该稍微快一点(而不是更慢!)。

出于某些原因,我使用detectMultiScale函数(而不是cvHaarDetectObjects函数),但我不认为这有什么关系。

提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-07-20 19:32:40

您是否尝试添加要检测的面部矩形的最小尺寸和最大尺寸?你也可以检查你的金字塔比例值,它必须大于1,如果它太慢,尝试使用更高的值,检测将不会那么好,但它会更快。

代码语言:javascript
复制
    cv::CascadeClassifier cascade;
    // ... init classifier
    cv::Mat grayImage;
    // ... set image
    std::vector<cv::Rect> > results;
    cv::Size minSize(60,60);
    cv::Size maxSize(80,80);
    int minNeighbors= 3; // edited
    float pyramidScale = 1.1f;

    cascade.detectMultiScale(grayImage, results, pyramidScale, minNeighbors,
            0 , minSize, maxSize);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24849962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档