Resultados
A continuación se muestran algunos de los resultados obtenidos para el reconocimiento de gestos.
Primero se muestra como funciona el algoritmo sobre un video.
Se puede observar que la detección de los gestos fue realizada de forma satisfactoria, tanto los ojos, como la boca y la inclinación de la cabeza. Para comprobar el correcto funcionamiento del algoritmo se procedió a graficar como es la evolución de los parámetros que utilizamos para la detección de los gestos durante todo el video.
Primero la evolución del EAR:
Se puede observar que existe un claro decaimiento del valor cuando los ojos se cierran. En este caso se utilizó un umbral de 0.3
Ahora la evolución del MAR (Mouth Aspect Ratio):
Nuevamente se puede observar un claro cambio cuando la boca se abre, solo que ahora el coeficiente sube en vez de bajar, ya que la boca se hace mas grande cuando se abre. En este caso el umbral utilizado fue 0.6.
Por ultimo se muestra la evolución del angulo:
Aquí también se puede observar un claro cambio cuando la inclinación de la cabeza varía. Los umbrales que se utilizaron fueron +10° y -10°.
Lo siguiente que se realizó fue entonces probarlo sobre la Raspberry con la PiCamera conectada y tomando imágenes en vivo. Dicha prueba se puede observar en el siguiente video:
Se puede observar que la tasa de cuadros por segundos (fps) resultante es bastante baja, de aproximadamente 0.62. Para ver si es posible mejorar el fps se realizó un estudio de tiempos para observar donde se consumía la mayor cantidad de tiempo. Los valores que se obtuvieron fueron:
- Tiempo de inicio: 13.17s
- Promedio de tiempo por frame: 1.62s
- Promedio de tiempo de detección de caras: 1.58s
- Promedio de detección de landmarks en caras: 0.033s
A partir de estos valores se puede observar que lo que consume mayor tiempo es la detección de caras en los cuadros, correspondiente al 97.5% del tiempo que se demora en procesar cada cuadro. Por lo tanto para mejorar el fps lo que se tendría que hacer es bajar el tiempo en la detección de caras, lo cual queda por fuera del alcance de este proyecto.