2013-06-18 2 views
1

Я пытаюсь обнаружить рот в уже обнаруженном лице (обнаруженное лицо => обнаруживать рот), проблема в том, что он обнаруживает глаза, как будто они являются ртом! как я могу решить эту проблему?обнаружение лица javacv android

BTW Я использую haarcascade_mouth.xml с CV_HAAR_DO_CANNY_PRUNING. Пожалуйста, помогите мне.

+0

Я думаю, вам нужно улучшить алгоритм AI, который не является несколькими строками кода –

+0

Как я могу улучшить алгоритм? вы можете уточнить? – Khawar

+0

«если вы не можете объяснить что-то 6-летнему ребенку, чем вы даже этого не знаете». - это правда, но я не уверен, что вы знаете, как идет речь, алгоритм распознавания голоса, это проекты для тех, кто заканчивает мастеров, и писать 80 страниц объяснений, что они там делали. Вы можете это сделать, попробуйте с Google, выделите несколько месяцев для этого –

ответ

0

Наверное, лучше всего, чтобы создавать свои собственные Хаара каскады для устьев всех типов и перспективы:

How to create Haar Cascade (xml) for using with OpenCV?

Тогда вы должны применять все из них на вашем лице и накапливают свою продукцию на различных регионах лица, чтобы решить, какие выходы перекрываются больше всего и подходят прямоугольник, который, скорее всего, является ртом. Еще более элегантный способ объединения этих простых классификаторов будет повышение (что потребует еще один шаг обучения):

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

Но если вы ленивы - почему бы не просто положить ограничения на результат выхода из haarcascade_mouth? Это означает, что вы принимаете только выходы, которые находятся в нижних 50% изображения (y < sizeY/2) и/или только 10% от центра (x> 0,4 ​​* sizeX & & x < 0,6 * размерX).

+0

Насколько достаточен этот ответ или что вам нужно? – Brandli

Смежные вопросы