es: Juárez Balsera, Miguel Ángel

19 OFICINA ESPAÑOLA DE PATENTES Y MARCAS 11 Número de publicación: 2 204 292 21 Número de solicitud: 200201472 51 Int. Cl. : G06F 3/00 7 ESPAÑA

4 downloads 54 Views 257KB Size

Recommend Stories


Miguel de Cervantes Saavedra ( ) es considerado como un gran
Engaño y desengaño: teatralidad en Don Quijote de la Mancha Jinmei Chen University of South Carolina Beijing Language and Culture University M igue

CURRICULUM VITAE. Dr. Hugo Wenceslao MIGUEL MIGUEL
CURRICULUM VITAE Dr. Hugo Wenceslao MIGUEL MIGUEL DATOS PERSONALES 1.1 Nombres y Apellidos 1.2 DNI 1.3 Fecha de Nacimiento 1.4 Registro CIP 1.5 RUC 1

Miguel Alvarado
LALUNA Primera Semana Junio 2012 No. 53 Foto/ Miguel Alvarado. Semanario de arte, cultura y sociedad Carteles de una vida Christian Gómez/ UNAM

Story Transcript

19

OFICINA ESPAÑOLA DE PATENTES Y MARCAS

11 Número de publicación: 2 204 292

21 Número de solicitud: 200201472

51 Int. Cl. : G06F 3/00

7

ESPAÑA

A61F 4/00 A61B 3/113 G06T 7/20 G06T 7/60

12

SOLICITUD DE PATENTE

22 Fecha de presentación: 26.06.2002

71 Solicitante/s: Miguel Ángel Juárez Balsera

c/ Miguel del Cid, nº 41-43, Bajo Izq 41002 Sevilla, ES 43 Fecha de publicación de la solicitud: 16.04.2004

72 Inventor/es: Juárez Balsera, Miguel Ángel

43 Fecha de publicación del folleto de la solicitud:

74 Agente: No consta

16.04.2004

54 Título: Sistema automático de visión por computadora y método para procesamiento de imágenes.

57 Resumen:

ES 2 204 292 A1

Sistema automático de visión por computadora y método para procesamiento de imágenes. Incluye métodos que realizan el procesamiento digital de imágenes, y requiere de un equipo informático(3) de bajo coste y de una cámara tipo WebCam(5) para la captura de imágenes de la escena con el usuario(1) situado frente al monitor(4). El sistema genera un evento, que actúa sobre el puntero del ratón(2), relacionado con el análisis que hace de la mirada del usuario en cada instante. Tiene un funcionamiento automático, no precisando intervención externa a través del teclado o del ratón para la realización de sus tareas. Posee módulos que le permiten un funcionamiento robusto en un entorno no estructurado’ físicamente, con iluminación arbitraria y en situaciones de movilidad corporal del usuario. Tiene procedimientos que localizan al usuario sin requerir para ello de la colocación de accesorios sobre dicho usuario.

Venta de fascículos: Oficina Española de Patentes y Marcas. C/Panamá, 1 – 28036 Madrid

A1

1

ES 2 204 292 A1

DESCRIPCIÓN Sistema automático de visión por computadora y método para procesamiento de imágenes. Objeto de la invención El objeto de la presente invención es un sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, a través del análisis de la mirada que el usuario efectúa con sus ojos. Dicho sistema se caracteriza por la utilización de una cámara tipo WebCam para la captura de imágenes de la escena (usuario más entorno) y por un funcionamiento robusto en unas condiciones de entorno arbitrarias, así como por una interfaz gráfica de usuario de tipo cuadro de diálogo, en la pantalla del monitor del sistema informático, que permite una configuración personalizada sobre la asignación de los mensajes generados a la interpretación del movimiento ocular, así como la posibilidad de modificación manual de los parámetros de configuración de todos los módulos del sistema. Constituye asimismo otro objeto de la presente invención un método para procesamiento de imágenes para un sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, que comprende los siguientes cinco módulos independientes:

5

10

15

20

25

- módulo de cálculo de parámetros iniciales, - módulo de detección del movimiento corporal del usuario,

30

- módulo de determinación de la posición del usuario, - módulo de localización de la posición de cada iris ocular,

35

- módulo de interpretación del movimiento de los ojos del usuario, y que se efectúa sin la necesidad de una eventual intervención por parte del usuario para su configuración y puesta en marcha, a excepción de la realización de determinados movimientos oculares que el sistema le solicite si fuera necesario. Antecedentes de la invención Hoy en día es impensable poder aprovechar todas las posibilidades que nos ofrece un ordenador sin el uso del ratón. Este pequeño instrumento, -de simple funcionamiento y más fácil empleo-, permite el acceso a múltiples aplicaciones informáticas con las que poder realizar tareas más o menos sofisticadas: desde una acción tan sencilla como situar el puntero en una determinada posición de la pantalla del monitor mientras se está trabajando con un procesador de texto, por ejemplo-, a algo que no lo es tanto, como minimizar una ventana que muestre cualquier aplicación en curso. El control de las aplicaciones se basa en un diálogo que se establece entre la aplicación informática que es propietaria del foco del puntero del ratón y éste: cada evento generado por el ratón tiene asociado una acción u operación específica a realizar por parte del programa que se ejecute en ese instante. Se relacionan, por tanto, actividades de gran complejidad con el simple hecho de efectuar una señal con el ratón. Tales señales, a su vez, están ligadas con la intención del usuario del equipo de una forma intuitiva; aspecto muy importante al que colabora la propia estruc2

40

45

50

55

60

65

2

tura de funcionamiento del ratón: el usuario vincula puntos pertenecientes al plano geométrico del monitor con posiciones apuntadas (localizadas) por el puntero del ratón, y tan sólo ha de efectuar un movimiento de dicho puntero para seleccionar otra posición en el monitor. Se han descrito otros sistemas que hacen el control de un cursor o puntero a partir del análisis de movimientos que el usuario hace con sus ojos o con su cabeza. Un ejemplo de estos sistemas es el descrito en la patente US5367315, en el que para realizar el control del puntero utiliza la emisión de luz infrarroja en un área definida, dentro de la cual estará normalmente localizada la cabeza del usuario durante su trabajo con la computadora. Este sistema basado en el procesado de luz infrarroja presenta el inconveniente de que el número de transmisores y de sensores de infrarrojos que el sistema requiere depende de la aplicación en particular con la que se quiera trabajar, complicando, por tanto, el montaje e instalación del sistema en gran número de situaciones. Por otra parte, y de la descripción de la patente US5367315, ya mencionada, se deduce la necesidad de la activación por parte del usuario de un interruptor mediante el pie, la rodilla o cualquier tecla a través del teclado, para permitir el control del cursor con el movimiento de los ojos del usuario. Éste último detalle puede resultar un inconveniente para un usuario con dificultad de movimiento corporal, por ejemplo, un usuario discapacitado o de edad avanzada. Otro sistema que establece el control sobre un puntero mediante el movimiento del usuario es el descrito en la patente US6215471. En ese caso, el movimiento del cursor es determinado por la posición de una característica física de la cara del usuario, siendo necesario el movimiento de la cabeza completa, mediante rotación de la misma, para que se establezca dicho movimiento del cursor por parte del sistema. Como se puede deducir, esto presenta nuevamente el inconveniente para un usuario con dificultad para realizar movimientos corporales. Es interesante, por tanto, y especialmente en el caso de un usuario con dificultad para realizar movimientos corporales, el diseño de un sistema cuyo funcionamiento permita el análisis de movimientos sencillos ejecutados por el usuario y que estén relacionados de una manera intuitiva con acciones que éste desee realizar sobre un sistema informático. El objetivo principal de la presente invención es el control del puntero del ratón mediante el análisis de la mirada que el usuario efectúa con sus ojos, sin la necesidad de un medio físico que conecte la intención con las acciones sobre dicho puntero. Para ello, se han empleado las imágenes capturadas por una cámara tipo WebCam de uso común. La simplicidad de funcionamiento es un requisito imprescindible en uno de los campos de aplicación de este sistema de visión por computadora: el de ayudar a una persona con discapacidad motora. La propia discapacidad de la persona, carente de movilidad, limita su mecanismo de comunicación con el exterior; y al mismo tiempo, disminuye la cantidad de posibles mensajes que pueda generar para su interpretación por un sistema de visión. Se precisa, por ello, de un mecanismo sencillo que permita un fácil acceso a los recursos informáticos, y de esta manera se facilitará su uso a un mayor número de usuarios. Dependiendo de la intención del individuo, y tras

3

ES 2 204 292 A1

hacer el movimiento ocular correspondiente, el sistema de visión efectuará el procesamiento de la imagen capturada para generar la señal de salida consecuente con ese movimiento ocular. Esta señal determinará un movimiento del puntero del ratón que estará relacionado con el efectuado por los ojos; y será la aplicación propietaria del foco del puntero la que gestionará la cadena de mensajes emitidos en tal movimiento. Explicación de la invención Constituye un objeto de la presente invención un sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, a través del análisis de la mirada que el usuario efectúa con sus ojos. Este sistema de visión incluye:

- módulo de interpretación del movimiento de los ojos del usuario, 5

10

15

- La utilización de una cámara tipo WebCam para la captura de imágenes de la escena (usuario más entorno). - Un funcionamiento robusto en unas condiciones de entorno arbitrarias definidas por:

20

(a) Una distancia de calibración variable entre el monitor y la cara del usuario. (b) Una posición variable del usuario respecto al monitor del sistema informático en un plano paralelo al determinado por el propio monitor. (c) Un fondo indeterminado a espaldas del usuario, tanto en el color como en el contenido, pudiendo incluso estar formado o presentar objetos sin interés para la interpretación del movimiento ocular del usuario. (d) Una iluminación preferentemente uniforme de la cara, ya sea con luz directa (lámpara de tungsteno de 60 W) o con luz arbitraria (luz natural). (e) Una posición variable de la cámara respecto al usuario (en tomo a 50 cm), siendo preferible situarla en lo alto del monitor del sistema informático. (f) Un tamaño indiferente de la pantalla del monitor del sistema informático. - Una interfaz gráfica de usuario de tipo cuadro de diálogo, en la pantalla del monitor del sistema informático, que permite una configuración personalizada sobre la asignación de los mensajes generados a la interpretación del movimiento ocular, así como la posibilidad de modificación manual de los parámetros de configuración de todos los módulos del sistema.

25

30

35

40

45

50

Asimismo, constituye otro objeto de la presente invención un método para procesamiento de imágenes para un sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, que incluye:

55

- módulo de cálculo de parámetros iniciales,

60

- módulo de detección del movimiento corporal del usuario, - módulo de determinación de la posición del usuario, - módulo de localización de la posición de cada iris ocular,

4

65

y que se efectúa sin la necesidad de una eventual intervención por parte del usuario para su configuración y puesta en marcha, a excepción de la realización de determinados movimientos oculares que el sistema le solicite si fuera necesario. El módulo de cálculo de parámetros iniciales está constituido por los siguientes procedimientos: (a) un procedimiento para calcular las características de las órbitas oculares, basado en un análisis de la movilidad de la cara del usuario, con el que se determinarán las coordenadas del centro de cada órbita y las dimensiones de las mismas; (b) un procedimiento para el cálculo automático y autónomo de un umbral de binarización para cada una de las órbitas oculares, basado en un estudio de los histogramas de las imágenes orbitales en escala de grises junto con un examen espacial de cada órbita y un proceso de reconstrucción del iris binarizado de cada una de estas órbitas; (c) un procedimiento para solventar errores debidos al escaso contraste de la imagen, basado en una dilatación de la escala de grises de las imágenes orbitales y en un suavizado de éstas mediante la propagación de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente a cada órbita; (d) un procedimiento para calcular los radios típicos de los dos iris oculares, las coordenadas del centro de la circunferencia que engloba a cada iris, el centroide de cada iris y estimación de los parámetros del movimiento ocular efectuado; y por último, (e) un procedimiento que obtendrá parámetros de la cabeza del usuario referentes a su posición inicial, dimensiones, situación de la nariz, situación inicial de las órbitas oculares y de las cejas y centroide de la cara. El módulo de detección del movimiento corporal del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que analizará la movilidad presente en la escena captada por la cámara y determinará si es debida a un movimiento ocular, a un movimiento corporal, a un movimiento efectuado en el entorno del usuario, a efectos espurios, a la combinación de varios tipos de movimientos o, por el contrario, determinará que la escena es esencialmente estática; (b) un procedimiento que realiza una reconstrucción de la escena completa, siendo esta reconstrucción el resultado de un análisis de la escena completa y de la movilidad presente en la misma, y estando dicha reconstrucción caracterizada por una menor cantidad de información a procesar. El módulo de determinación de la posición del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que busca una circunferencia que represente a la cabeza del usuario dentro de la reconstrucción de la escena completa -obtenida en el módulo de detección del movimiento corporal del usuario-; (b) un procedimiento que actualiza las referencias entre el nuevo centroide de la imagen binarizada de la cabeza, -contenida en la circunferencia que se ha encontrado en el procedimiento (a)-, y el resto de características de la cara -órbitas oculares, cejas y nariz-; (c) un procedimiento que comprueba y chequea los resultados de los procedimientos (a) y (b). El módulo de localización de las posiciones de los iris oculares está constituido por un conjunto de procedimientos que llevan a cabo el siguiente proceso: 3

5

ES 2 204 292 A1

primero, suavizado previo de las imágenes orbitales en escala de grises empleando la propagación de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente de cada una de estas imágenes; segundo, obtención de la imagen binarizada de dichas órbitas empleando los respectivos umbrales de binarización (obtenidos de forma automática en el módulo de cálculo de parámetros iniciales); tercero, filtrado de la imágenes para eliminar las pestañas de los ojos; cuarto, obtención de una imagen de bordes de cada una de las órbitas; quinto, localización del iris de cada ojo mediante la búsqueda de una circunferencia que lo identifique. El procedimiento está basado en la transformada de Hough y se caracteriza porque implementa una variación de dicha transformada consistente en la aplicación de unos criterios de decisión consecuentes con el modelo teórico de una órbita ocular, y porque calcula el radio y coordenadas del centro de la circunferencia que identifica a cada iris, y el centroide de la imagen binarizada de cada iris. El módulo de interpretación del movimiento de los ojos del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que genera los parámetros típicos del modelo de movilidad ocular haciendo uso de los parámetros típicos iniciales referentes a las órbitas oculares y a los iris, obtenidos en el ya mencionado módulo de cálculo de parámetros iniciales; (b) un procedimiento que hace uso del modelo de movilidad ocular para fijar los siguientes criterios de decisión con los que generar la salida correspondiente: • Si el usuario está mirando dentro de la pantalla del monitor no se generará señal específica alguna que efectúe un movimiento del puntero del ratón. • Cualquier movimiento que realice el usuario situando su mirada fuera de los límites del monitor será detectado por el sistema; y éste generará una salida que moverá el puntero del ratón en la dirección que se corresponda con la dirección de la mirada, según las direcciones de los ejes horizontal y vertical:

- Arrastrar con el puntero hacia abajo: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por debajo del monitor. 5

10

15

20

25

30

35

40

- Arriba: cuando el usuario fija la mirada por encima del monitor. - Abajo: cuando el usuario fija la mirada por debajo del monitor.

45

• Cuando el sistema de visión detecta que uno o ambos ojos están cerrados por un tiempo superior a un segundo entonces procede a generar un evento correspondiente a un evento del ratón: - Arrastrar con el puntero hacia la izquierda: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la izquierda del monitor.

50

55

60

- Arrastrar con el puntero hacia la derecha: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la derecha del monitor. - Arrastrar con el puntero hacia arriba: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por encima del monitor. 4

- Pulsar con el botón izquierdo del ratón (hacer un clic de botón izquierdo): cuando el usuario cierra el ojo derecho por un tiempo comprendido entre uno y dos segundos. - Hacer doble clic con botón izquierdo del ratón: cuando el usuario cierra el ojo derecho por un tiempo superior a dos segundos. - Pulsar con el botón derecho del ratón (hacer un clic de botón derecho): cuando el usuario cierra los dos ojos por un tiempo superior a un segundo. El método para procesamiento de imágenes objeto de la presente invención se caracteriza por el flujo de funcionamiento que se muestra en la Fig. 5: primero, requerimiento por parte del sistema de visión para que el usuario efectúe movimientos con los ojos; segundo, determinación de los parámetros de las órbitas oculares; tercero, cálculo del umbral de binarización correspondiente a cada órbita y construcción de un modelo de la movilidad ocular del usuario; cuarto, obtención de las características de la cara del usuario; quinto, comienzo de un ciclo que se inicia con la captura de dos nuevas imágenes de la escena; sexto, inicio del módulo de detección del movimiento corporal del usuario. Séptimo, en caso de no haber movimiento corporal significativo el sistema pasará a la localización del iris directamente; pero si ha detectado un movimiento corporal del usuario, el sistema procederá a determinar la nueva posición del usuario y actualizará todas las referencias. Octavo, localización de los iris oculares; noveno, generará un evento que actuará sobre el puntero del ratón o sobre la ventana de la aplicación propietaria del foco del ratón. El método para procesamiento de imágenes incluye: - Un procedimiento que chequea temporalmente las condiciones de iluminación del entorno, con posibilidad de modificación del intervalo temporal de chequeo a través de la interfaz gráfica de usuario. - Un procedimiento que comprueba la validez de los umbrales de binarización calculados en el módulo de cálculo de parámetros iniciales.

- Derecha: cuando el usuario fija la mirada a la derecha del monitor. - Izquierda: cuando el usuario fija la mirada a la izquierda del monitor.

6

65

- La realización de un nuevo cálculo de dichos umbrales de binarización en caso de caducidad de sus valores actuales. - Procedimientos que establecen el control sobre la captura de imágenes con una cámara tipo WebCam, así como sobre los valores de los parámetros de configuración de ésta. Descripción de la invención Este sistema de visión artificial se ha diseñado para trabajar en un entorno mínimamente estructurado. Esto, unido a las pocas restricciones respecto a la iluminación requerida de dicho entorno, da un índice de la robustez de su funcionamiento. Esta falta de estructuración se ha tenido en cuenta en todo momento para cumplir uno de los principales objetivos: la posibilidad de uso del sistema por parte de un usuario en condiciones de entorno arbitrarias. Dicha arbitrarie-

7

ES 2 204 292 A1

dad viene determinada por: • Una distancia de calibración variable entre el monitor y la cara del sujeto. • Posición variable del usuario respecto al monitor en un plano paralelo al determinado por el propio monitor. • Fondo indeterminado a espaldas del usuario, tanto en el color como en el contenido. • Iluminación preferentemente uniforme de la cara, ya sea con luz directa (lámpara de tungsteno de 60 W) o con luz arbitraria (luz natural). • Posición variable de la cámara respecto al sujeto (en torno a 50 cm), siendo preferible situarla en lo alto del monitor, puesto que es la posición para la que han sido optimizadas las herramientas desarrolladas. • Tamaño indistinto de la pantalla del monitor, pues se ha dotado al sistema de un calibrado automático de distancias. Además, en el caso de la comunicación de una persona discapacitada con su entorno a través de un ordenador se precisa de un sistema autónomo, en la medida de lo posible, que tenga un funcionamiento adecuado con la menor intervención externa necesaria para ello. Por tanto, otro de los objetivos principales del sistema de visión de la presente invención es garantizar un alto grado de autonomía en su funcionamiento. Se ha procurado alcanzar este objetivo en todas y cada una de las etapas y aspectos de este sistema de visión; tanto en lo que se refiere al procesado de imágenes propiamente, como a su actuación en un entorno arbitrario, y al manejo por parte del usuario. Los parámetros de funcionamiento que el programa requiere para cada una de las etapas del procesado son obtenidos de forma automática por el sistema, sin la necesidad de una eventual intervención por parte del usuario, a excepción de la realización de determinados movimientos oculares que el sistema le solicite si fuera necesario. El sistema está diseñado para operar de forma autónoma; de manera que, en el arranque del mismo, solicite determinadas respuestas oculares del usuario que le permitan calcular un conjunto de parámetros de autoconfiguración para su procesado posterior. A partir de ahí, se inicia el hilo principal de trabajo que gestionará la captura de nuevas imágenes; seguidamente, las procesará y, por último, dará un resultado acorde a la interpretación de la escena. Con este resultado generará un evento de ratón -ya sea el correspondiente a un desplazamiento de su puntero en una determinada dirección, o bien a la pulsación de cualquiera de sus botones- relativo al movimiento ocular efectuado, y lo enviará a la aplicación informática propietaria del foco del puntero del ratón. Teniendo en cuenta estas consideraciones previas respecto al tipo de escena que el sistema de visión debe analizar, es decir, caracterizada por la presencia de una persona de cara al monitor y rodeada de un entorno con unas características indeterminadas (tanto desde el punto de vista físico y espacial como en lo referente a las condiciones de iluminación existentes); y con motivo de poder ofrecer un funcionamiento robusto y correcto ante una situación con unos mínimos requisitos de operación, este sistema de visión incluye procedimientos que le permiten realizar una estructuración previa de la imagen para centrar el procesamiento en las zonas de mayor interés -cabeza del usuario y órbitas oculares-. No se puede olvidar mencionar un aspecto que

5

10

15

20

8

constituye otro objetivo importante de la presente invención: utilizar medios y equipos con un coste mínimo y de fácil instalación y uso. La economía de medios es un aspecto de gran interés que da muestra de la viabilidad de este sistema de visión, y ofrece la posibilidad de implementación en un importante espectro de situaciones. Por este motivo, el desarrollo del sistema se ha hecho para trabajar con una cámara de tipo WebCam de uso común, y en el que se ha tenido en cuenta el empleo de un equipo informático de bajo coste cuyas características serán descritas más adelante. El inconveniente de haber elegido un equipo de bajo coste es que lleva aparejado una baja velocidad de funcionamiento. Por ello, para acelerar la velocidad de procesado se han diseñado métodos que agilizan los cálculos sin afectar a la precisión de los resultados de manera significativa. El procesado completo de este sistema de visión está dividido en cinco módulos independientes: (a) Cálculo de parámetros iniciales. (b) Detección del movimiento corporal.

25

(c) Determinación de la posición del usuario. (d) Localización de la posición de cada iris ocular. (e) Interpretación del movimiento de los ojos.

30

35

40

45

50

55

60

65

A pesar de que estos módulos realizan tareas independientes, precisan de un diálogo entre ellos de manera que la combinación de sus resultados faciliten el desarrollo automático de la aplicación. El módulo (a), correspondiente al cálculo de parámetros iniciales, realiza la tarea de obtener los siguientes parámetros: características de las órbitas oculares (posición, dimensiones y centroides), valores de los umbrales de binarización necesarios, parámetros de la cabeza del usuario (posición, dimensiones, situación de la nariz, de las órbitas oculares y de las cejas, y centroide de la cara) y parámetros típicos de los iris del usuario. La función principal de este primer módulo es hacer la primera estructuración básica de la escena. Esto es imprescindible para poder solventar los inconvenientes derivados de la complejidad de la escena y para así optimizar la capacidad de cálculo del equipo informático empleado. En este módulo de cálculo de parámetros iniciales el sistema obtiene las siguientes características de las órbitas oculares(8), según las figuras Fig.2 y Fig.3: coordenadas del centro de cada una de ellas -relativas a la esquina superior izquierda de la imagen de la escena completa- y dimensiones de las órbitas medidas en pixeles -correspondientes a las dimensiones horizontal y vertical de los rectángulos mínimos que las contengan-. Dada la falta de estructuración del entorno del usuario, y ante la necesidad que tiene el sistema de visión en este primer módulo de obtener información referente a las órbitas oculares, se ha diseñado un procedimiento basado en la localización de las áreas correspondientes a los ojos buscando zonas de la imagen caracterizadas por una gran movilidad. Por este motivo, la aplicación indicará al usuario que realice movimientos con sus ojos y, seguidamente, procederá a la segmentación de las zonas de mayor movilidad -los ojos- en la escena mediante un proceso de obtención de bordes, seguido de una binarización de la imagen y de un análisis de bordes con una variación de la transformada de Hough. A partir de este proceso 5

9

ES 2 204 292 A1

de segmentación se obtienen los parámetros de las órbitas necesarios para el funcionamientos de las etapas posteriores de este sistema de visión artificial. Una vez obtenidos los parámetros de las órbitas oculares, el sistema de visión, en este módulo de cálculo de parámetros iniciales, procede al cálculo de un umbral de binarización que le permitirá extraer los iris oculares del resto de la imagen orbital. Estos dos valores del umbral -uno para cada ojo- servirán para el proceso de binarización de la escena completa pero son obtenidos de un análisis centrado en las órbitas oculares. El cálculo de estos umbrales deben adecuarse a un espectro variado de situaciones respecto a las condiciones de luz y espaciales del entorno. La obtención de un umbral adecuado se complica ante el elevado número de niveles de grises presentes en las imágenes de las órbitas; además, la falta de definición entre el iris y el resto de la órbita hace que no sea posible establecer un umbral a partir de un simple análisis de la gama de grises presentes en la imagen orbital. Por todo ello, el cálculo del umbral correspondiente a cada ojo se hace mediante un estudio del histograma de la imagen orbital en escala de grises junto con un examen espacial de toda la órbita; y gracias a este análisis, el sistema de visión reconstruye un área ya binarizada que sea representativa del iris. El procedimiento que sigue el sistema para la reconstrucción del iris consiste en sucesivas binarizaciones de la región orbital con diferentes valores de umbral de binarización en cada una de ellas. La elección del umbral empieza en el mínimo -correspondiente al nivel más bajo en la escala de grises del histograma de la órbita-, y a partir de ahí, el sistema va binarizando incrementando progresivamente este umbral. Este incremento en el valor del umbral de binarización se plasmará en un crecimiento progresivo de la imagen binarizada del iris, y dicho incremento se detendrá cuando las dimensiones de esta imagen binarizada se correspondan en un porcentaje -estipulado por el sistema según las condiciones de iluminación de la escena completa (usuario más entorno)- con las dimensiones válidas de un modelo teórico de un iris teórico según el modelo teórico de una órbita ocular mostrado en la FIG.3 obtenido a partir de los parámetros de las órbitas calculados mediante el análisis de la movilidad ocular. En caso de que el iris de la imagen binarizada satisfaga esta correspondencia con las dimensiones del iris teórico, se dará por válido el valor del umbral utilizado en la última iteración, y será utilizado por el sistema como umbral de binarización en el resto del procesado. Este proceso para calcular los umbrales de binarización de cada órbita ocular se hace de manera independiente para cada ojo (para evitar imprecisión en los resultados en caso de una iluminación no uniforme de la cara del usuario), obteniéndose así dos umbrales de binarización que permitirán el análisis del movimiento ocular de los dos ojos de forma independiente. Para solventar errores debidos al escaso contraste de la imagen -motivado por una inadecuada intensidad de iluminación en la escena-, y al exceso de ruido en la imagen de la órbita -por la presencia de brillos y sombras- se han incluido procedimientos fundamentados en una dilatación de la escala de grises presente en la imagen orbital y en un suavizado de dicha imagen orbital, respectivamente. El procedimiento de suavizado se ha diseñado especialmente para operar en las órbitas oculares y se basa en la propagación, a 6

5

10

15

20

25

30

35

40

45

50

55

60

65

10

través de toda la órbita, de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente a la imagen de la órbita. Una vez situada esta semilla, el sistema hace un suavizado de la órbita con el promediado de la media. Como resultado final de los procedimientos destinados al cálculo del umbral de binarización de cada una de las órbitas se obtienen los parámetros típicos de los iris del usuario: radio típico del iris y centro de la circunferencia que lo engloba (según el modelo de la Fig. 3), y estimación de los parámetros que determinarán el movimiento ocular efectuado. Los parámetros del movimiento ocular servirán al sistema para construir el modelo de movilidad ocular mostrado en la Fig. 4 y determinar las diferentes regiones: (14), (15), (16), (17) y (18). El sistema de visión objeto de la presente invención también hace uso del módulo de cálculo de parámetros iniciales para calcular una serie de parámetros de la cabeza del usuario: posición inicial, dimensiones, situación de la nariz, situación inicial de las órbitas oculares y de las cejas, y centroide de la cara. Este sistema de visión tiene en cuenta un modelo general básico de la escena completa, -según la Fig. 2-, en el que se considera que la cabeza del usuario(l) se corresponde con una circunferencia(7) que la circunscriba; relacionando el centro (Ac, Bc) y el radio Rc de dicha circunferencia con la posición y dimensiones de la cabeza del usuario, respectivamente. Para determinar esta circunferencia, el sistema procede a binarizar la imagen de la escena completa empleando para ello el umbral de binarización calculado anteriormente para el ojo derecho (esta elección es arbitraria, pudiendo emplearse el umbral obtenido para el ojo izquierdo si se desea tras previa modificación en el panel de configuración del sistema; a continuación, el sistema obtiene una imagen de bordes de la escena, y por último, utiliza una variación de la transformada de Hough que permitirá la localización de una circunferencia representativa de la cabeza del usuario. Esta variación de la transformada de Hough ha sido dotada de un procedimiento que optimiza su tiempo de cálculo, así como la precisión de sus resultados, tras un previo análisis de la imagen binaria de la escena completa y de la imagen de bordes de la misma. Esta transformada de Hough da como resultado el radio típico Rc y las coordenadas del centro (Ac, Bc) de la circunferencia correspondiente a la cabeza del usuario referidas a la esquina superior izquierda de la imagen de la escena completa. El centroide(9) de la cara del usuario lo obtiene a partir de la circunferencia encontrada(7) y la imagen binaria de la escena. Este módulo también calcula las referencias existentes entre las órbitas oculares y el centroide de la cara del usuario. Además, la localización de la nariz se hace a partir del análisis espacial de la zona situada entre las órbitas oculares. Las cejas son localizadas mediante un estudio del área orbital ampliada, es decir, aumentada en función de las dimensiones del radio típico del iris calculado, y para ello, se hace un análisis -con la transformada de Hough generalizada para dos parámetros de búsqueda- de la imagen binaria y de bordes de cada órbita (con el umbral encontrado para cada una) para determinar zonas que se correspondan con las cejas. Los parámetros referentes a la cabeza del usuario calculados en el módulo de cálculo de parámetros iniciales y el empleo del modelo general básico de la

11

ES 2 204 292 A1

escena completa hacen innecesaria la colocación de accesorios sobre el usuario para la correcta localización del mismo. El módulo (b), correspondiente a la detección del movimiento corporal, está constituido por un conjunto de herramientas que permiten que el sistema pueda distinguir diferentes tipos de movimiento en la escena; además, permiten un considerable ahorro de cálculo a otros módulos del sistema de visión, y dotan a éste de una gran funcionalidad ante situaciones de movilidad corporal del usuario. Las herramientas que hacen la distinción del tipo de movimiento determinarán, teniendo en cuenta el modelo general básico de la escena completa, Fig. 2, el tipo de movimiento existente en la misma: ocular, corporal, del entorno del usuario, efectos espurios, combinación de varios tipos de movimientos o escena esencialmente estática. Para conseguir un ahorro de cálculo a otros módulos, este módulo de detección de movimiento corporal incorpora herramientas que hacen una reconstrucción de la escena completa. Dicha reconstrucción está caracterizada por una menor cantidad de información a procesar, guardando gran similitud con la escena original, y en la que, además, se ha elaborado una imagen simplificada del usuario -con lo cual se agiliza el procesado de la escena- pero suficiente para determinar la posición del usuario de manera correcta. La imagen reconstruida es el resultado de un análisis de la escena completa y de la movilidad presente en la misma. El módulo (c), encargado de la determinación de la posición del usuario, es el responsable de localizar la cabeza de éste después de haberse producido la detección de un movimiento corporal del usuario. Para ello, el sistema emplea un procedimiento para buscar una circunferencia(7) que represente a la cabeza del usuario(l) dentro de la imagen reconstruida obtenida anteriormente en el módulo (b) de detección del movimiento corporal- de la escena completa. Los parámetros de esta circunferencia deben satisfacer los mismos intervalos de validez que los parámetros de la circunferencia, correspondiente a la cabeza del usuario, obtenida en el módulo (a) de cálculo de parámetros iniciales. Por otra parte, este módulo se encarga de actualizar las referencias entre el nuevo centroide (9) de la cabeza localizada y el resto de características de la cara (órbitas oculares, cejas y nariz), así como de comprobar y chequear tales resultados. El módulo (d), que realiza la localización de la posición de cada iris ocular(10), está constituido por un conjunto de herramientas que llevan a cabo el siguiente proceso: primero se efectúa un suavizado previo de las imágenes orbitales(8) en escala de grises empleando la propagación de una de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente de cada una de estas imágenes; seguidamente, se obtiene la imagen binarizada de dichas órbitas empleando los respectivos umbrales de binarización (obtenidos de forma automática en el módulo (a) de cálculo de los parámetros iniciales); a continuación, se hace un filtrado de la imágenes para eliminar las pestañas(12) de los ojos; posteriormente, el sistema obtiene una imagen de bordes de cada una de las órbitas y, por último, procede a localizar el iris de cada ojo mediante la búsqueda de una circunferencia(11) que lo identifique. La circunferencia (11) correspondiente al iris es determinada mediante

5

10

15

20

25

30

12

el uso de una variación de la transformada de Hough y haciendo uso de una herramienta que implementa unos criterios de decisión consecuentes con el modelo teórico de una órbita ocular mostrado en Fig. 3. El módulo (e), que realiza la interpretación del movimiento de los ojos, hace uso de los parámetros que el sistema calcula para cada una de las órbitas oculares(8) del usuario, además de los parámetros típicos de los iris(10) de éste, -obtenidos en el módulo (a) de cálculo de parámetros iniciales-, para establecer un modelo de movilidad ocular, Fig. 4, que permita al sistema interpretar el movimiento que el usuario efectúa con sus ojos. Las herramientas que constituyen este módulo hacen uso de este modelo de movilidad ocular, Fig. 4, para fijar unos criterios de decisión con los que generar la salida correspondiente: • Si el usuario está mirando dentro de la pantalla del monitor no se generará señal específica alguna que efectúe un movimiento del puntero del ratón. En este caso, el sistema tan sólo hará un seguimiento de los iris y mostrará el mensaje “centro” en el monitor. • Cualquier movimiento que realice el usuario situando su mirada fuera de los limites del monitor será detectado por el sistema; y éste generará una salida que moverá el puntero del ratón en la dirección que se corresponda con la dirección de la mirada, según las direcciones de los ejes horizontal y vertical: - Arriba: cuando el usuario fija la mirada por encima del monitor. - Abajo: cuando el usuario fija la mirada por debajo del monitor.

35

- Derecha: cuando el usuario fija la mirada a la derecha del monitor. - Izquierda: cuando el usuario fija la mirada a la izquierda del monitor.

40

45

50

55

• El sistema detecta cuando uno o ambos ojos están cerrados. Así, cuando esto ocurre por un tiempo superior a un segundo, el sistema procede a generar un evento -ya sea correspondiente a un evento del ratón (pulsación del botón derecho o del botón izquierdo o un movimiento de su puntero) o bien a un evento o mensaje que recibirá la ventana de la aplicación propietaria del foco del puntero del ratón (por ejemplo, minimizar o cerrar la ventana)-. Las respuestas que el sistema da por defecto son las siguientes: - Arrastrar con el puntero hacia la izquierda: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la izquierda del monitor. - Arrastrar con el puntero hacia la derecha: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la derecha del monitor. - Arrastrar con el puntero hacia arriba: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por encima del monitor.

60

65

- Arrastrar con el puntero hacia abajo: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por debajo del monitor. - Pulsar con el botón izquierdo del ratón (hacer un clic de botón izquierdo): cuando el usuario cierra el ojo derecho por un tiempo comprendido entre uno y dos segundos. 7

13

ES 2 204 292 A1

- Hacer doble clic con botón izquierdo del ratón: cuando el usuario cierra el ojo derecho por un tiempo superior a dos segundos. - Pulsar con el botón derecho del ratón (hacer un clic de botón derecho): cuando el usuario cierra los dos ojos por un tiempo superior a un segundo. Este módulo de interpretación del movimiento ocular incluye herramientas que muestran una interfaz gráfica de usuario de tipo cuadro de diálogo en la pantalla del monitor que permiten una configuración personalizada sobre el control de los mensajes generados tras la interpretación del movimiento ocular. Esta posibilidad de configuración personalizada es muy útil pues permite asignar una respuesta del sistema de visión a situaciones en las que el usuario cierra uno de los ojos o a combinaciones con un ojo cerrado y el otro mirando en una dirección determinada, pudiendo generar, además, un evento diferente dependiendo de qué ojo realice una u otra acción. El funcionamiento completo del sistema de visión hace uso de los cinco módulos anteriores y tiene la estructura descrita en la figura Fig. 5: primero, el sistema de visión solicita del usuario que realice movimientos con los ojos para así poder determinar los parámetros de las órbitas oculares; a continuación, el sistema calcula el umbral de binarización correspondiente a cada órbita y además construye un modelo de la movilidad ocular del usuario; seguidamente, se obtienen las características de la cara del usuario. A partir de este punto el sistema comienza un ciclo que se inicia con la captura de nuevas imágenes de la escena; se inicia el módulo de detección del movimiento corporal del usuario, que determinará si la persona se ha movido de posición. En caso de no haber movimiento corporal significativo el sistema pasará a la localización del iris directamente; pero si ha detectado un movimiento corporal del usuario, el sistema procederá a determinar la nueva posición del usuario y actualizará todas las referencias. A continuación efectuará la localización de los iris oculares y, por último, generará un evento que actuará sobre el puntero del ratón o sobre la ventana de la aplicación propietaria del foco del ratón. En la emisión de las señales de control sobre el puntero del ratón ha primado garantizar la robustez del funcionamiento. El sistema, por tanto, primero chequea los resultados que ha obtenido, disminuyendo así el porcentaje de error en la salida. Además este sistema de visión incluye un procedimiento que hace un chequeo de las condiciones de iluminación del entorno cada cinco minutos para asegurar que los umbrales de binarización calculados de manera automática siguen siendo válidos. Si las condiciones de luz cambian de forma importante, parámetro configurable a través de la interfaz gráfica de usuario-, entonces el sistema procede a recalcular dichos umbrales de binarización. El sistema de visión objeto de la presente invención establece la comunicación entre el usuario y la computadora mediante el análisis de un mecanismo de carácter intuitivo y de fácil ejecución por parte del usuario: el simple movimiento de los ojos. A su vez, se ha pretendido que dicho mecanismo ofrezca al usuario un alto grado de accesibilidad a gran variedad de herramientas informáticas: aplicaciones que faciliten la comunicación, procesadores de texto, navega8

5

10

15

20

25

30

35

40

45

50

55

60

65

14

dores de internet, programas de diseño, etc. Hay que destacar el conjunto de funciones que se han incluido para garantizar la operatividad del sistema de visión ante una variedad importante de condiciones referentes al entorno del usuario y a la iluminación de la escena. Por otra parte, para asegurar un funcionamiento autónomo de este sistema de visión, haciendo innecesaria la intervención externa del usuario u otra persona para la configuración y puesta en marcha del sistema, se han desarrollado procedimientos que realizan todo el funcionamiento de la aplicación de forma automática.. La aplicación dirige una serie de peticiones al usuario, de manera automática, para su autoconfiguración y, a partir de ahí, procede al resto de su funcionamiento sin requerir control exterior alguno. Estos aspectos, -el funcionamiento autónomo de la invención y la operatividad de ésta en una gran variedad de contextos-, son especialmente importantes en el caso de un usuario discapacitado o con dificultad para realizar movimientos corporales en un entorno arbitrario que, con casi absoluta seguridad, no será estructurado ni podrá ser dotado con la iluminación adecuada. Una característica importante de este sistema de visión es la fácil instalación del mismo, el bajo coste del equipo utilizado, así como la cámara WebCam, características que permiten que un elevado número de usuarios puedan beneficiarse de sus herramientas. Otra característica a resaltar es la capacidad que posee este sistema de visión para la detección del movimiento corporal del sujeto, permitiendo a éste una casi total autonomía de movimientos, conjugando precisión y velocidad, y haciendo posible la operatividad de la presente invención en situaciones caracterizadas por una movilidad corporal del usuario. Breve descripción de los dibujos Para una mejor comprensión de la presente invención, se adjuntan las siguientes figuras: Fig. 1, en la que se representa la disposición general de todos los componentes necesarios para el funcionamiento del sistema de visión descrito en esta memoria: el usuario (1), el ratón (2), la computadora o equipo informático (3), el monitor (4), la cámara de tipo WebCam (5) y el foco de iluminación directa(6). Fig. 2, en la que se muestra el modelo general básico de la escena completa, caracterizada por la presencia de un usuario (1) en una posición inicial centrada respecto al monitor (4), y definida por los parámetros -coordenadas del centro (Ac, Bc) y el radio Rc- de la circunferencia (7) y por el centroide (9) -cuyas coordenadas según los ejes X e Y son Ref_centroide_X y Ref_centroide_Y-. Estos ejes X e Y se corresponden con los bordes superior e izquierdo, respectivamente, de la pantalla del monitor (4) del equipo informático (3). Asimismo, en esta figura aparece la región de una de la órbita ocular (8) definida por un rectángulo, -de dimensiones: ancho_órbita y alto_órbita-, cuyo vértice superior izquierdo tiene de coordenadas (Ref_órbita_X, Ref_órbita_Y) según los ejes X e Y. Además, en esta figura Fig. 2 se puede observar la presencia de diversos objetos(19) en el entorno del usuario. Fig. 3, en la que se muestra el modelo teórico de una órbita ocular (8), -de dimensiones: ancho_órbita y alto_órbita-, caracterizado por la presencia del iris (10), el centroide (C) de la imagen binarizada del iris,

15

ES 2 204 292 A1

las pestañas (12), la circunferencia(11) que contiene al iris -cuyas coordenadas del centro son (Ai, Bi) respecto al vértice superior izquierdo de la región orbital (8)-, y la ceja (13). Fig. 4, en la que se muestra el modelo de movilidad ocular, caracterizado por una región rectangular (14) central y las regiones rectangulares adyacentes (15), (16), (17) y (18). Estas regiones rectangulares anteriores están contenidas dentro de la región orbital (8), y la localización del centroide (C) del iris (10) dentro de cada una de ellas determinará la dirección de mirada del usuario con el ojo correspondiente a esta región orbital (8): • Si el centroide (C) está localizado dentro de la región (14) entonces el usuario(1) está mirando dentro del monitor (4). • Si el centroide (C) está localizado dentro de la región (15) entonces el usuario(1) está mirando a la derecha del monitor (4). • Si el centroide (C) está localizado dentro de la región (16) entonces el usuario(1) está mirando por debajo del monitor (4). • Si el centroide (C) está localizado dentro de la región (17) entonces el usuario(1) está mirando a la izquierda del monitor (4). • Si el centroide (C) está localizado dentro de la región (18) entonces el usuario(1) está mirando por encima del monitor (4). Fig. 5, en la que se muestra el flujo del hilo principal del proceso del sistema de visión descrito en la presente memoria. Por último, hay que comentar que todas las magnitudes que aparecen en las figuras están medidas en píxeles relativos a la resolución de las imágenes capturadas por la cámara WebCam (5). Dicha resolución puede ser modificada a través de la interfaz gráfica de usuario a la que se hace mención en la descripción de esta memoria.

5

10

15

20

25

30

35

16

Descripción de una realización preferida La figura Fig. 1 muestra la disposición general de los componentes necesarios para el buen funcionamiento de la presente invención en una realización preferida. El montaje del sistema de visión objeto de este documento se ha hecho en un equipo informático con las siguientes características: Pentium III a 1100 Mhz, 256 Mb de memoria RAM, Tarjeta gráfica de 32 Mb y un Monitor Philips de 15”. La obtención de las imágenes para su posterior procesamiento se ha hecho con una cámara digital tipo WebCam, modelo QuickCam VC de Logitech para Windows conectada al puerto USB del ordenador PC. La cámara está situada en lo alto del monitor y en posición centrada del mismo. El usuario debe situarse frente al monitor, a una distancia aproximada de 50 cm, y de manera centrada respecto al mismo. Después de que el sistema de visión haya obtenido todos los parámetros de configuración iniciales, la posición del usuario respecto al monitor puede ser variable en un plano paralelo al determinado por el propio monitor. Fondo indeterminado a espaldas del usuario, tanto en el color como en el contenido. Iluminación preferentemente uniforme de la cara, ya sea con luz directa (lámpara de tungsteno de 60 W o tubo fluorescente de 30 W) o con luz arbitraria (luz natural). Dependiendo de la intención del individuo, y tras hacer el movimiento correspondiente con sus ojos, el sistema de visión efectuará el procesamiento de la imagen capturada para generar la señal de salida consecuente con ese movimiento. Esta señal determinará un movimiento del puntero o cualquier otro evento del ratón que estará relacionado con el efectuado por los ojos; y será la aplicación propietaria del foco del puntero la que gestionará la cadena de mensajes emitidos en tal movimiento.

40

45

50

55

60

65

9

17

ES 2 204 292 A1

REIVINDICACIONES 1. Sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, a través del análisis de la mirada que el usuario efectúa con sus ojos, caracterizado por: - La utilización de una cámara tipo WebCam para la captura de imágenes de la escena (usuario más entorno).

5

10

- Un funcionamiento robusto en unas condiciones de entorno arbitrarias definidas por: (g) Una distancia de calibración variable entre el monitor y la cara del usuario. (h) Una posición variable del usuario respecto al monitor del sistema informático en un plano paralelo al determinado por el propio monitor. (i) Un fondo indeterminado a espaldas del usuario, tanto en el color como en el contenido, pudiendo incluso estar formado o presentar objetos sin interés para la interpretación del movimiento ocular del usuario. (j) Una iluminación preferentemente uniforme de la cara, ya sea con luz directa (lámpara de tungsteno de 60 W) o con luz arbitraria (luz natural). (k) Una posición variable de la cámara respecto al usuario (en torno a 50 cm), siendo preferible situarla en lo alto del monitor del sistema informático.

15

20

25

30

35

(l) Un tamaño indiferente de la pantalla del monitor del sistema informático. - Una interfaz gráfica de usuario de tipo cuadro de diálogo, en la pantalla del monitor del sistema informático, que permite una configuración personalizada sobre la asignación de los mensajes generados a la interpretación del movimiento ocular, así como la posibilidad de modificación manual de los parámetros de configuración de todos los módulos del sistema. 2. Método para procesamiento de imágenes para un sistema automático de visión por computadora para el control del puntero del ratón mediante el movimiento ocular del usuario, caracterizado porque comprende los siguientes cinco módulos independientes:

40

45

50

(a) Módulo de cálculo de parámetros iniciales. (b) Módulo de detección del movimiento corporal del usuario.

55

(c) Módulo de determinación de la posición del usuario. (d) Módulo de localización de la posición de cada iris ocular.

60

(e) Módulo de interpretación del movimiento de los ojos del usuario. 3. Método para procesamiento de imágenes, según la reivindicación 2, caracterizado porque se efectúa sin la necesidad de una eventual intervención por parte del usuario para su configuración y puesta en mar10

65

18

cha, a excepción de la realización de determinados movimientos oculares que el sistema le solicite si fuera necesario. 4. Método para procesamiento de imágenes, según reivindicaciones 2 y 3, caracterizado porque el módulo de cálculo de parámetros iniciales está constituido por los siguientes procedimientos: (a) un procedimiento para calcular las características de las órbitas oculares, basado en un análisis de la movilidad de la cara del usuario, con el que se determinarán las coordenadas del centro de cada órbita y las dimensiones de las mismas; (b) un procedimiento para el cálculo automático y autónomo de un umbral de binarización para cada una de las órbitas oculares, basado en un estudio de los histogramas de las imágenes orbitales en escala de grises junto con un examen espacial de cada órbita y un proceso de reconstrucción del iris binarizado de cada una de estas órbitas; (c) un procedimiento para solventar errores debidos al escaso contraste de la imagen, basado en una dilatación de la escala de grises de las imágenes orbitales y en un suavizado de éstas mediante la propagación de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente a cada órbita; (d) un procedimiento para calcular los radios típicos de los dos iris oculares, las coordenadas del centro de la circunferencia que engloba a cada iris, el centroide de cada iris y estimación de los parámetros del movimiento ocular efectuado; y por último, (e) un procedimiento que obtendrá parámetros de la cabeza del usuario referentes a su posición inicial, dimensiones, situación de la nariz, situación inicial de las órbitas oculares y de las cejas y centroide de la cara. 5. Método para procesamiento de imágenes, según reivindicaciones 2 y 3, caracterizado porque el módulo de detección del movimiento corporal del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que analizará la movilidad presente en la escena captada por la cámara y determinará si es debida a un movimiento ocular, a un movimiento corporal, a un movimiento efectuado en el entorno del usuario, a efectos espurios, a la combinación de varios tipos de movimientos o, por el contrario, determinará que la escena es esencialmente estática; (b) un procedimiento que realiza una reconstrucción de la escena completa, siendo esta reconstrucción el resultado de un análisis de la escena completa y de la movilidad presente en la misma, y estando dicha reconstrucción caracterizada por una menor cantidad de información a procesar. 6. Método para procesamiento de imágenes, según reivindicaciones 2, 3 y 5, caracterizado porque el módulo de determinación de la posición del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que busca una circunferencia que represente a la cabeza del usuario dentro de la reconstrucción de la escena completa -obtenida en el módulo de detección del movimiento corporal del usuario-; (b) un procedimiento que actualiza las referencias entre el nuevo centroide de la imagen binarizada de la cabeza, - contenida en la circunferencia que se ha encontrado en el procedimiento (a) de la presente reivindicación -, y el resto de características de la cara -órbitas oculares, cejas y nariz-; (c) un procedimiento que comprueba y chequea los resultados de los procedimientos (a) y (b) de la presente reivindicación. 7. Método para procesamiento de imágenes, según reivindicaciones 2, 3 y 4, caracterizado porque

19

ES 2 204 292 A1

el módulo de localización de las posiciones de los iris oculares está constituido por un conjunto de procedimientos que llevan a cabo el siguiente proceso: primero, suavizado previo de las imágenes orbitales en escala de grises empleando la propagación de una semilla -un nivel nulo de gris- colocada en la primera columna de la matriz correspondiente de cada una de estas imágenes; segundo, obtención de la imagen binarizada de dichas órbitas empleando los respectivos umbrales de binarización (obtenidos de forma automática en el módulo de cálculo de parámetros iniciales); tercero, filtrado de la imágenes para eliminar las pestañas de los ojos; cuarto, obtención de una imagen de bordes de cada una de las órbitas; quinto, localización del iris de cada ojo mediante la búsqueda de una circunferencia que lo identifique. 8. Método para procesamiento de imágenes, según reivindicaciones 2, 3 y 7, basado en la transformada de Hough y caracterizado porque implementa una variación de dicha transformada consistente en la aplicación de unos criterios de decisión consecuentes con el modelo teórico de una órbita ocular, y porque calcula el radio y coordenadas del centro de la circunferencia que identifica a cada iris, y el centroide de la imagen binarizada de cada iris. 9. Método para procesamiento de imágenes, según reivindicaciones 2, 3 y 4, caracterizado porque el módulo de interpretación del movimiento de los ojos del usuario está constituido por los siguientes procedimientos: (a) un procedimiento que genera los parámetros típicos del modelo de movilidad ocular haciendo uso de los parámetros típicos iniciales referentes a las órbitas oculares y a los iris, obtenidos en el módulo de cálculo de parámetros iniciales; (b) un procedimiento que hace uso del modelo de movilidad ocular para fijar los siguientes criterios de decisión con los que generar la salida correspondiente: • Si el usuario está mirando dentro de la pantalla del monitor no se generará señal específica alguna que efectúe un movimiento del puntero del ratón. • Cualquier movimiento que realice el usuario situando su mirada fuera de los límites del monitor será detectado por el sistema; y éste generará una salida que moverá el puntero del ratón en la dirección que se corresponda con la dirección de la mirada, según las direcciones de los ejes horizontal y vertical:

do el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la derecha del monitor. 5

10

- Pulsar con el botón izquierdo del ratón (hacer un clic de botón izquierdo): cuando el usuario cierra el ojo derecho por un tiempo comprendido entre uno y dos segundos.

15

- Hacer doble clic con botón izquierdo del ratón: cuando el usuario cierra el ojo derecho por un tiempo superior a dos segundos.

20

25

30

35

40

45

50

- Derecha: cuando el usuario fija la mirada a la derecha del monitor. - Izquierda: cuando el usuario fija la mirada a la izquierda del monitor. • Cuando el sistema de visión detecta que uno o ambos ojos están cerrados por un tiempo superior a un segundo entonces procede a generar un evento correspondiente a un evento del ratón: - Arrastrar con el puntero hacia la izquierda: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira hacia la izquierda del monitor. - Arrastrar con el puntero hacia la derecha: cuan-

- Arrastrar con el puntero hacia arriba: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por encima del monitor. - Arrastrar con el puntero hacia abajo: cuando el usuario cierra el ojo izquierdo y con el ojo derecho mira por debajo del monitor.

- Arriba: cuando el usuario fija la mirada por encima del monitor. - Abajo: cuando el usuario fija la mirada por debajo del monitor.

20

55

60

65

- Pulsar con el botón derecho del ratón (hacer un clic de botón derecho): cuando el usuario cierra los dos ojos por un tiempo superior a un segundo. 10. Método para procesamiento de imágenes, según reivindicaciones 2-9, caracterizado por un flujo de funcionamiento cuyo hilo principal de proceso es el siguiente: primero, requerimiento por parte del sistema de visión para que el usuario efectúe movimientos con los ojos; segundo, determinación de los parámetros de las órbitas oculares; tercero, cálculo del umbral de binarización correspondiente a cada órbita y construcción de un modelo de la movilidad ocular del usuario; cuarto, obtención de las características de la cara del usuario; quinto, comienzo de un ciclo que se inicia con la captura de dos nuevas imágenes de la escena; sexto, inicio del módulo de detección del movimiento corporal del usuario. Séptimo, en caso de no haber movimiento corporal significativo el sistema pasará a la localización del iris directamente; pero si ha detectado un movimiento corporal del usuario, el sistema procederá a determinar la nueva posición del usuario y actualizará todas las referencias. Octavo, localización de los iris oculares; noveno, generará un evento que actuará sobre el puntero del ratón o sobre la ventana de la aplicación propietaria del foco del ratón. 11. Método para procesamiento de imágenes, según reivindicaciones 2-10, caracterizado por: - Un procedimiento que chequea temporalmente las condiciones de iluminación del entorno, con posibilidad de modificación del intervalo temporal de chequeo a través de la interfaz gráfica de usuario. - Un procedimiento que comprueba la validez de los umbrales de binarización calculados en el módulo de cálculo de parámetros iniciales. - La realización de un nuevo cálculo de dichos umbrales de binarización en caso de caducidad de sus valores actuales. 12. Método para procesamiento de imágenes, según reivindicaciones 2-11, caracterizado porque incluye procedimientos que establecen el control sobre la captura de imágenes con una cámara tipo WebCam, así como sobre los valores de los parámetros de configuración de ésta.

11

ES 2 204 292 A1

12

ES 2 204 292 A1

13

ES 2 204 292 A1

14

ES 2 204 292 A1

15

ES 2 204 292 A1

16

11 ES 2 204 292

21 Nº de solicitud: 200201472

22 Fecha de presentación de la solicitud: 26.06.2002

32 Fecha de prioridad:

OFICINA ESPAÑOLA DE PATENTES Y MARCAS

ESPAÑA

INFORME SOBRE EL ESTADO DE LA TÉCNICA 51

Int. Cl.7:

G06F 3/00, A61F 4/00, A61B 3/113, G06T 7/20, 7/60

DOCUMENTOS RELEVANTES Categoría

Documentos citados

Reividicaciones afectadas

Y

US 5471542 A (RAGLAND RICHARD R.) 28.11.1995, columna 2, líneas 24-63; columna 3, línea 33 - columna 4, línea 18; columna 5, línea 15 - columna 11, línea 54; figuras 1,3,5-7a.

A Y

1-3

4,6-10,12 US 2002039111 A (JAMES GIPS et al.) 04.04.2002, párrafos 31-35,39-65,76-78; figuras 1,2.

1-3

A

4-6,9,10, 12

A

JP 07-036608 A (SONY CORP.) 07.02.1995, resumen; figura. Recuperado de EPO PAJ Database.

1-3,9,10, 12

A

JP 02-183827 A (NIPPON ELECTRIC CO.) 18.07.1990, resumen; figura. Recuperado de EPO PAJ Database.

1-3,9,10, 12

A

GB 2116334 A (STANDARD TELEPHONES CABLES LTD.) 21.09.1983, todo el documento.

1-10,12

Categoría de los documentos citados X: de particular relevancia Y: de particular relevancia combinado con otro/s de la misma categoría A: refleja el estado de la técnica

O: referido a divulgación no escrita P: publicado entre la fecha de prioridad y la de presentación de la solicitud E: documento anterior, pero publicado después de la fecha de presentación de la solicitud

El presente informe ha sido realizado

5 para todas las reivindicaciones 

 para las reivindicaciones nº:

Fecha de realización del informe

Examinador

Página

05.03.2004

M J. Lloris Meseguer

1/1

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.