He consultado la documentación provista por OpenCV para crear un programa de reconocimiento facial, reconoce varias caras y funciona normalmente. En la documentación, han hecho elipsis para resaltar la cara. Lo que no entiendo es cómo han calculado el centro de la elipse que se han calculado de la siguienteOpencv 2.4.2 Explicación de código-Reconocimiento facial
for(int i = 0; i < faces.size(); i++)
{
Point center(faces[i].x+faces[i].width*0.5,faces[i].y+faces[i].height*0.5);
//more code follows drawing the ellipse
El vector de caras que están utilizando se produce de la siguiente manera
face_cascade.detectMultiScale(frame_gray,faces,1.1,2,0|CV_HAAR_SCALE_IMAGE,cv::Size(30,30))
La documentación es decir, el programa se da en el enlace
http://docs.opencv.org/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.html
quiero saber cómo se están calculando el centro de la elipse y si quiero dibujar un rectángulo en lugar de un círculo, ¿qué debo hacer?
He visto esto. Gracias. –
No es compatible con varios modelos para reconocer múltiples caras de un video. ¿Cómo se puede modificar este código de código para esto? Una forma ingenua será mantener una lista de modelos de rostro, sin embargo, esto no parece una implementación eficiente. – Tariq