Advertencia: esta página es una traducción automática (automática), en caso de dudas, consulte el documento original en inglés. Disculpe las molestias que esto pueda causar.

Gazer abierto

Open Gazer Review

Descripción detallada:

Opengazer es una aplicación de código abierto que utiliza una cámara web común para estimar la dirección de su mirada. Esta información se puede pasar a otras aplicaciones. Por ejemplo, usado en conjunto con Dasher, Opengazer le permite escribir con los ojos. Opengazer pretende ser una alternativa de software de bajo costo a los rastreadores de ojos comerciales basados ​​en hardware.

La primera versión de Opengazer fue desarrollada por PiotrZieliński, con el apoyo de Samsung y la Fundación Caritativa Gatsby. Se pueden encontrar más detalles sobre esta versión.

La investigación para Opengazer ha sido revivida por Emli-Mari Nel, y ahora cuenta con el apoyo de la Comisión Europea en el contexto del proyecto AEGIS y la Fundación Caritativa Gatsby.

Open Gazer

La versión anterior de Opengazer es muy sensible a las variaciones de movimiento de la cabeza. Para corregir este problema, actualmente nos estamos centrando en los algoritmos de seguimiento de la cabeza para corregir las variaciones de la postura de la cabeza antes de inferir las posiciones de la mirada. Todo el software está escrito en C ++ y Python. Se puede descargar un video de ejemplo de uno de nuestros algoritmos de seguimiento de cabeza [aquí]. En Windows, el video se puede ver con el reproductor VLC. En Linux, se muestra mejor con Mplayer Movie Player.

La primera versión de nuestro algoritmo de rastreo de cabeza es una primaria, basada en el detector de rostros Viola-Jones, que localiza la cara más grande en la transmisión de video (capturada desde un archivo / cámara) lo más rápido posible, en un cuadro por marco base. Las coordenadas xy del seguimiento ya se pueden usar para escribir usando Dasher. Esto se puede hacer en modo 1D (por ejemplo, desde el seguimiento de las coordenadas y) o en modo 2D. Aunque se pueden esperar resultados mucho mejores después del lanzamiento de nuestro software head-pose, este software ya es útil para la localización rápida de rostros. Nuestro algoritmo aplica un filtro de paso bajo autorregresivo simple en las coordenadas xy y la escala de los resultados de detección del detector de rostros Viola-Jones, y también restringe la región de interés de cuadro a cuadro. Los parámetros de detección se han determinado de acuerdo con nuestra aplicación específica (es decir, un solo usuario que trabaja en su PC de escritorio / portátil). El algoritmo funciona mejor en imágenes de 320x240, a una velocidad de cuadro de 30 fps y condiciones de iluminación razonables.

Open Gazer

Un subproyecto de Opengazer implica la detección automática de gestos faciales para conducir un programa basado en conmutadores. Este programa tiene una breve fase de aprendizaje (menos de 30 segundos) para cada gesto, después de lo cual el gesto se detecta automáticamente. Muchos pacientes (por ejemplo, pacientes con parálisis cerebral) tienen movimientos involuntarios de la cabeza que pueden introducir falsos positivos durante la detección. Por lo tanto, también entrenamos un modelo de fondo para hacer frente a movimientos involuntarios. Todo el software está escrito en C ++ y Python y estará disponible para descargar pronto. Se puede descargar un video de ejemplo de nuestro algoritmo de cambio de gestos [aquí]. En Windows, el video se puede ver con el reproductor VLC. En Linux, se muestra mejor con Mplayer Movie Player. Tenga en cuenta que este video tiene sonido. Se han entrenado tres gestos para generar tres posibles eventos de cambio: una sonrisa izquierda, una sonrisa derecha y un movimiento de cejas hacia arriba corresponden a eventos de cambio. El modelo de fondo, en este caso, detecta parpadeos, cambios repentinos en la iluminación y movimientos grandes de la cabeza. El primer lanzamiento oficial será a finales de junio de 2012.

La primera versión de Opengazer tiene el siguiente flujo de trabajo:

Selección de puntos de características:
Durante el inicio, se espera que el usuario seleccione puntos de característica en la cara usando el mouse. Estos puntos se rastrean en pasos posteriores en el algoritmo. Los primeros dos puntos corresponden a las esquinas de los ojos, que también se utilizan en los pasos posteriores para extraer las imágenes del ojo. El usuario debe mantener la cabeza muy quieta durante todo el procedimiento. En este punto, el usuario debe guardar preferiblemente todos los puntos de características seleccionados.

Calibrando el sistema:
Durante este paso, se muestran algunos puntos rojos en varias posiciones de la pantalla. Las imágenes de los ojos se extraen durante la visualización de cada punto. Las imágenes de los ojos y sus correspondientes posiciones de puntos se utilizan para entrenar un Proceso Gaussiano que representa el mapeo entre la imagen de un ojo y la posición en la pantalla. Tenga en cuenta que los cambios en la postura de la cabeza a menudo requieren que el sistema se recalibre.

Rastreo:

Después de que se procesan todos los puntos de calibración, el Proceso Gaussiano produce una distribución predictiva, de modo que se puede estimar el enfoque del punto de vista esperado en el monitor de la pantalla con una nueva imagen del ojo. Si el usuario carga sus puntos de característica seleccionados, el detector facial Viola Jones se usa una vez para determinar la región de búsqueda donde se esperan los puntos de característica. Posteriormente, el flujo óptico se utiliza para rastrear cada punto característico. Las imágenes del ojo se extraen (usando los dos primeros puntos de esquina seleccionados como referencia), y la mirada se predice usando las imágenes del ojo extraídas y el proceso gaussiano entrenado.