DETECTOR DE SONRISAS
El sistema de detección de sonrisas presenta las siguientes etapas. 1. 2. 3. 4. 5.
Obtiene una imagen Busca un rostro en la imagen Si encontró rostro, extrae la región donde debería estar la boca Busca la boca en la imagen extraida Si encontró boca, busca los dientes en la imagen
El concepto de la búsqueda de sonrisa consiste en ubicar los dientes en una imagen, es decir, se considera que una persona está sonriendo si en se ven sus dientes. Para el primer paso (obtener una imagen), se presentan dos alternativas, se puede cargar una imagen almacenada en el equipo o se puede hacer una captura en tiempo real de la cámara web. Para el segundo punto se utiliza el método de Viola-Jones para detectar la presencia de un rostro. El tercer paso se realiza teniendo en cuenta que la boca se encuentra en la tercera sección de un rostro Para el cuarto punto se utiliza nuevamente el método de Viola-Jones para detectar la presencia de la boca. Una vez ubicada la boca, el problema se reduce a verificar si se ven o no los dientes, en caso de que se vean se dice que la persona sonríe, de lo contrario no hay sonrisa. Este proceso se verifica en el paso 5 trabajando sobre la imagen binarizada de la boca, en este sentido se aplican propiedades para buscar regiones blancas (dientes) de encontrar dichas regiones se asume que la persona sonríe.
Este último punto es un poco delicado porque depende de la calidad de la imagen y el color blanco de los dientes. Por este motivo se permite usar en el detector un pequeño ajuste basado en el umbral que se va a utilizar para la binarización. Se recomienda usar este umbral en 0.9 para imágenes capturadas previamente y en 0.3 para capturas de video. Estos valores pueden ser modificados dependiendo de la calidad de las imágenes y de la cámara utilizada.
Una vez se ha detectado una sonrisa se le da al la posibilidad de guardar la imagen de la sonrisa capturada y se muestra dicha imagen en una región especial de la interfaz gráfica utilizada para dicho fin.
Es posible ver los detalles del proceso de detección de la sonrisa activando la opción “Mostrar detalles” al hacer esto se muestran varias capturas donde se identifica si se encontró el rostro, la boca y la sonrisa.
El proceso de detección de sonrisa toma un tiempo considerable de ejecución, por este motivo cuando se trabaja con la cámara web, se observa que la captura de la cámara es lenta debido a que cada imagen analizada consume un tiempo considerable.
A continuación se presenta la interfaz gráfica diseñada para el funcionamiento del programa
Al activar la opción de mostrar detalles se observa la siguiente serie de imágenes.
Se adjunta una basa de datos de imágenes utilizadas para comprobar el funcionamiento del sistema.