【问题标题】:Need help improving eye pair detection [closed]需要帮助改进眼睛对检测[关闭]
【发布时间】:2018-11-11 01:40:28
【问题描述】:

我的根本问题是我有一个 iOS (iPhone) 应用程序,它使用前置摄像头 (480x640) 并且需要检测面部活跃度。

我目前正在尝试使用眨眼检测来完成此操作。我不想依赖 iOS CIDetector 功能。所以我决定研究这种方法: http://www.technolabsz.com/2013/05/eye-blink-detection-using-opencv-in.html

这种方法依赖于使用 Haar 分类器(mcs_eyepair_big 或 mcs_eyepair_small)的眼睛对检测。我遇到的第一个挑战是眼对检测不可靠。即使 frontalface_alt 工作得很好,它也不能始终如一地工作。我已经尝试在远离相机和接近相机的地方使用良好的照明,即使靠近相机也无法获得一致的检测。并且它不会在戴眼镜的 PERIOD 中起作用。

这是我的检测代码:

small_eye_pair_cascade.detectMultiScale(mat, objects, 1.1, 0,
  CV_HAAR_FIND_BIGGEST_OBJECT | CV_HAAR_DO_ROUGH_SEARCH | CV_HAAR_SCALE_IMAGE | CV_HAAR_DO_CANNY_PRUNING,
  cv::Size(15, 75));

如果它没有使用小眼对检测,那么我会使用与小眼对相同的 detectMultiScale 参数回退到大眼对。我正在对整个相机图像进行检测。

有没有人有提高成功率的建议?示例问题: 1) 我应该使用不同的 detectMultiScale 参数吗? 2) 将图像裁剪到人脸边界的上半部分会提高检测能力,还是仅仅提高性能? 3) 我应该选择不使用眼对分类器的完全不同的方法吗?

【问题讨论】:

    标签: opencv


    【解决方案1】:

    您可以使用面部标志检测器(例如标志检测器)检测眼睛周围的区域: http://cmp.felk.cvut.cz/~uricamic/flandmark/

    或 STASM: http://www.milbo.users.sonic.net/stasm/

    它们比 haar 级联更可靠。

    【讨论】:

    • 谢谢。您如何建议应用这两种实现来检测活性?
    • 我刚刚发现您发布的另一个帖子回答了我的问题:stackoverflow.com/questions/20386285/…
    • 谢谢。 STASM 工作得很好。我编译的是作为 iOS 的静态库。
    • 虽然 Stasm 运行良好,但对于实时移动处理而言,计算成本太高。在调整设置并将 ROI 设置为眼睛的可能位置后,我最终让 Haar 单眼分类器正常工作。
    • @jacob 你是怎么调整的?我需要帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 2012-03-20
    • 2012-08-27
    • 1970-01-01
    • 1970-01-01
    • 2011-09-01
    • 2015-06-17
    相关资源
    最近更新 更多