1

我正在尝试检测已经检测到的面部中的嘴巴(检测到的面部=>检测嘴巴),问题是它检测到眼睛就像它们是嘴巴一样!我该如何解决这个问题?

顺便说一句,我将 haarcascade_mouth.xml 与 CV_HAAR_DO_CANNY_PRUNING 一起使用。请帮帮我。

4

1 回答 1

0

最好的办法可能是为所有类型和视角的嘴创建自己的 haar 级联:

如何创建与 OpenCV 一起使用的 Haar Cascade (xml)?

然后你应该将它们全部应用到你的脸上,并在面部的不同区域累积它们的输出,以确定哪些输出重叠最多,并适合最有可能是嘴巴的矩形。组合这些简单分类器的更优雅的方法是提升(这将需要另一个训练步骤):

http://en.wikipedia.org/wiki/Boosting_%28machine_learning%29

但是如果你很懒 - 为什么不直接限制 haarcascade_mouth 的输出结果呢?这意味着您只接受位于图像下部 50% (y < sizeY/2) 和/或仅偏离中心 10% (x > 0.4*sizeX && x < 0.6*sizeX) 的输出。

于 2013-06-18T15:54:59.020 回答