【问题标题】:Gender Recognition Haarcascade性别识别 Haarcascade
【发布时间】:2015-03-14 00:34:48
【问题描述】:

我一直在做一些研究,并试图建立一个用于识别性别的 haarcascade。

我阅读了这篇文章,其中描述了他们是如何做到的,我也尝试过这样做:http://www.ijcce.org/papers/301-E043.pdf

我使用了一个包含 228 个男性面孔和 350 个女性面孔的库。 在我的 positives.txt 文件中使用 opencv createclassifier,其中包含男性列表 面孔。使用分类器创建的 .vec 文件,我使用 haartraining 和以下命令:

opencv_traincascade -data classifier -vec positivies.vec -bg negatives.txt -numStages 20 -minHitRate 0.99 -maxFalseAlarmRate 0.5 -numPos 228 -numNeg 350 -w 640 -h 480 -mode ALL

运行几次后,我没有得到一个 haar classifier.xml 输出文件,所以我不确定我是否正确地做所有事情。

但我的问题是,是否可以使用男性面孔作为正样本,女性作为负样本来训练和使用 haarcascade 对性别进行分类?

【问题讨论】:

  • 我不认为你的想法是可行的。 CascadeClassifier 是二进制的。如果你在男性面孔上训练它,它只能说是男性面孔,或者 no 面孔,例如它无法区分非面孔和女性。
  • 用HOG分类器检测是否有行人,然后判断该行人是否为男性脸是否可行?如果没有找到男性面孔,就可以断定行人是女性?
  • 是的,这是绝对可行的,就像检测人脸内部的眼睛(就像在人脸检测 opencv 教程中一样)。但是你不应该使用行人检测而是面部检测,并且只在检测到的面部区域上使用性别检测。但不确定你的方法是否有效;)
  • 你能发布样本训练图像吗?或者详细说明它们的大小和东西?
  • 是的,我从 agingmind.utdallas.edu/facedb/view/neutral-faces 得到的图片大部分是 640 x 480

标签: c++ opencv face-recognition haar-classifier


【解决方案1】:

正如在带有一个级联分类器的 cmets 中已经说过的那样,您只能检测到男性/女性面孔或根本没有面孔。

但是您可以只训练两个分类器,一个用于女性,一个用于男性,然后同时运行它们。

对于培训,我建议您使用更多的培训示例。

我使用了本教程。它适用于 python,但可以轻松地用于其他所有语言,它也可能对您有所帮助: https://pythonprogramming.net/haar-cascade-object-detection-python-opencv-tutorial/

【讨论】:

    猜你喜欢
    • 2012-07-09
    • 2015-07-09
    • 1970-01-01
    • 2018-12-13
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多