Mostrando entradas con la etiqueta escritura. Mostrar todas las entradas
Mostrando entradas con la etiqueta escritura. Mostrar todas las entradas

viernes, 19 de septiembre de 2008

Casandra: Un sistema de apoyo a la escritura

Casandra: un Sistema de Apoyo a la Escritura

Sergio Gabriel Luvoni Pablo Daniel Agüero Juan Carlos Tulli Esteban Lucio González
Universidad Nacional de Mar del Plata, Facultad de Ingeniería, Argentina

sluvoni, pdaguero, jctulli, elgonzal@fi.mdp.edu.ar

ABSTRACT

At this moment, where computers are broadly used in most activities, exists a real necessity of allowing disable people to use them by means of standard software “off the shelf”. In this article we present a word prediction system named “Casandra” to be used by handicapped people. This system can work with existing word processors. It always remains on small windows in a corner of the screen showing a number of possible words where the user may find the word he or she is intended to write. In this way the user would be able to avoid writing the whole word .

RESUMEN

Actualmente existe una gran necesidad de sistemas de apoyo a la escritura de textos para personas discapacitadas con la posibilidad de ser utilizados con toda la variedad de software disponible en el mercado.

En este trabajo presentamos el sistema Casandra de soporte de la escritura de textos, que permite interactuar con el software disponible en el mercado. Su apariencia es una ventana que permanece siempre visible en la pantalla ofreciendo un pequeño número de palabras, una de las cuales podría ser la deseada por el usuario. De esta manera se evitara escribir la totalidad de las letras de la palabra.

Keywords

Predicción, Discapacidad, Escritura, Computadora/ordenador.-

INTRODUCCIÓN

Las aplicaciones de predictores de palabras constituyen una importante ayuda a las personas discapacitadas motrices en la escritura por ordenador. El objetivo principal de una aplicación de predicción, es hallar la palabra que desea escribir el usuario con el fin de evitarle que deba ingresar la totalidad de letras de la misma.

Por ejemplo, en el caso que el usuario desee escribir la palabra hola, el sistema intentará predecir con cada letra ingresada la palabra deseada.

En un primer momento, el usuario recibe un listado de posibles palabras cuando todavía no ha ingresado ninguna letra como se muestra en la primera columna de la figura 1. Luego de ingresada la letra H, el listado es diferente. Todas ellas comienzan con la letra H. Sin embargo, todavía la palabra “HOLA” no aparece y el usuario debe continuar ingresando letra por letra la palabra.

Finalmente, luego de ingresada la letra “O”, la palabra “HOLA” aparece en segundo lugar del listado. En este momento, el usuario puede seleccionar la palabra y se evitará el ingreso de las letras “L”, “A” y el espacio posterior a la palabra.

Listado inicial de palabras

Listado de palabras luego de cliquear “H”

Listado de palabras luego de cliquear “HO”

El

hacia

Hora

La

hasta

Hola

Los

he

Hoy

Las

ha

Hombre

De

han

Homenaje

En

Hemos

Horizonte


Figura 1: Listado de palabras dependiendo de las letras ingresadas.

Este sistema de apoyo a la escritura es de amplia aplicabilidad tanto en discapacitados motrices como en personas sin discapacidad que quieran mejorar su velocidad de escritura. En el mercado existe software que ofrece esta funcionalidad dedicado a un grupo particular de usuarios con necesidades específicas: Profet [1], PredWin [2] (Figura 2), Fazly [3], Fasty [4], WordQ [5].

Casandra se diferencia de ellos en algunas características que permiten un mejor funcionamiento y que además son transparentes al usuario, tal como se mostrará en las secciones siguientes.


Figura 2. Ejemplo de pantalla de predicción del software PredWin.

El objetivo de nuestro trabajo es ofrecer un sistema de predicción de textos aplicable a cualquier software del mercado a través de una ventana que siempre se mantiene visible permitiendo la interacción del usuario con el sistema de predicción. De esta manera se puede seleccionar libremente la herramienta que se usará y también amplía el espectro de aplicaciones que pueden ser utilizadas: procesadores de texto, mensajería instantánea, navegación por internet, enciclopedias, conversores de texto a voz, software profesional, etc.


Figura 3. Diagrama Cliente-Servidor Casandra

El esquema del sistema Cliente-Servidor se puede ver en la Figura 3. Básicamente consiste en un dispositivo de entrada (teclado, pulsador, sensor de iris, electrooculografía, etc.). El predictor ofrece a través de una interfaz visual adaptada opciones de escritura para su selección por parte del usuario. El proceso de predicción se efectúa en un servidor remoto por Internet o red de área local, de este modo los clientes pueden tener que ser adaptados a diferentes plataformas, desde computadoras portátiles, agendas inteligentes, teléfonos celulares y diferentes sistemas operativos.

Finalmente, el sistema también puede contar con otro tipo de salidas que la visual a través del monitor, tales como convertidores de texto a voz (CTV) para la comunicación oral.

ARQUITECTURA

En diagrama de bloques la arquitectura del sistema de predicción de palabras Casandra se puede observar en la Figura 4.


Figura 4. Esquema del sistema predictor

Allí se observan dos partes bien diferenciadas. Por un lado se encuentra la interfaz con el usuario que se adapta a las necesidades del mismo de acuerdo a su nivel de discapacidad para ingresar las letras y seleccionar las palabras.

Por otra parte tenemos el algoritmo de predicción que es totalmente independiente de la interfaz con el usuario.

El sistema predictor se basa como se ve en la figura en información de entrenamiento fija y una sección de entrenamiento dinámico que es el propio aporte del cliente que utiliza el sistema.

La predicción silábica

Casandra incorpora además un sistema de predicción de palabras en unidades de sílabas por lo que; si las nuevas palabras que el cliente o usuario desean escribir no se encuentren en la base de datos del servidor pero si palabras similares o del mismo grupo o que posean asociaciones silábicas similares, el sistema presenta una lista de elección de las posibles sílabas que pueden aportar un ahorro en el tipeo de letras.

A modo de ejemplo: El cliente desea escribir “muchachita” luego de haber tipiado por ejemplo “La alegre” con lo cual la palabra siguiente será forzosamente singular y femenina, pero supongamos que en la base de datos sólo está registrada la palabra “muchachitos”. Al tipear “m” aparece la siguiente lista de opciones a elegir: (las silabas aparecen en negrita en esta demostración)

1.-muerte 2.-me 3.-mañana 4.-mano 5.-moralidad 6.-misma 7.-mi

Al tipear “mu”:

1.-muerte 2.-muy 3.--muy- 4.-mucho 5.-mundo 6.-muchachitos 7.--mun- 8.--muer-

Al tipear “muc”:

1.--cho= 2.--cha= 3.--chas= 4.--chí= 5.-mucho 6.-muchachito 7.-mucha 8.-muchas 9.-muchísimo 10:x.-muchachitos

Vemos que la opción 2 es la sílabas “cha” y que el cliente puede elegir y formar la palabra “mucha” donde ahorra un tipeo.

Siguiendo el ejemplo: Palabra “muchac”:

1.--chi= 2.--chas= 3.-muchachitos 4.-muchachas

Luego la palabra queda “muchachi” al elegir la opción 1.

Al final, el usuario completaría con las dos letras que faltan para formar la palabra “muchachita” ahorrando dos tipeos:

m-u-c-(ha)-c-(hi)-t-a.

A pesar que la palabra no estaba registrada en el sistema. Luego que este proceso, el módulo de léxico dinámico incorporara estas nuevas palabras haciendo que el proceso de predicción sea más eficiente. El procesamiento silábico permite obtener estadísticas de las silabas en relación a su posición en la palabra (al principio, en la mitad o al final). Dependiendo del tipo de probabilidad, el sistema muestra en la lista de opciones de sílabas también la alternativa de elegir la sílaba con algún símbolo o carácter a continuación (por ejemplo, un espacio en blanco en el caso de las sílabas con altas probabilidades de pertenecer al grupo de sílabas de final de palabra).

Interfaz con el usuario

Esta interfaz realiza la selección de las letras, sílabas y palabras que se presentan al usuario. Existe una gran variedad de mecanismos de visualización adaptados a las necesidades de los mismos:

§ Listado de palabras y sílabas. Este sistema está orientado a aquellos que pueden usar un teclado normal o adaptado y desean incrementar su velocidad de escritura mediante un algoritmo de predicción. En este caso se visualiza el listado de palabras que puede seleccionar el usuario mediante un conjunto de teclas predefinidas por el mismo. Estas teclas pueden ser creadas especialmente en el caso de un teclado adaptado o bien redefinir la funcionalidad de una tecla preexistente en el teclado disponible.

§ Listado de palabras, sílabas y letras con barrido vertical y horizontal. En algunas ocasiones la persona no puede hacer uso de un teclado debido a su grado de discapacidad. En tales casos son necesarios mecanismos diferentes para permitir la selección de letras y palabras. Un sistema de barrido horizontal y luego vertical, permite la selección de letras y palabras en una matriz.

§ Electrooculografía y censado del iris. Mediante el uso de la vista y algún mecanismo de validación es posible seleccionar letras y palabras en una matriz. Este sistema es mucho más rápido que el anterior, ya que evita los retardos propios del barrido de la matriz [6].

Predicción de palabras

Para la predicción de las palabras existe una gran variedad de algoritmos en la literatura. En nuestro caso hacemos uso de una combinación de técnicas y herramientas para esta tarea.

Léxico general.

El sistema más básico de predicción de palabras es el uso de un léxico con las palabras más frecuentes utilizadas en el idioma. Este sistema es idéntico al usado en los teléfonos móviles. El ingreso de sucesivas letras de la palabra deseada produce un filtrado de las posibles palabras del léxico, y por lo tanto, es posible que el listado luego de este filtrado contenga la palabra buscada.

Este sistema es más efectivo en palabras con muchas letras como puede observarse en la Figura 5. Palabras con pocas letras pueden fácilmente confundirse con otra de muchas letras. Por ejemplo, la palabra “con” puede confundirse fácilmente con otras que comienzan con las mismas letras, tales como contra, contraproducente, conspicuo, conífera, etc. En cambio, palabras con mayor número de letras no constituyen un subconjunto de palabras más largas y el uso de un filtro es más efectivo en estos casos.

La línea azul describe la cantidad de letras necesarias promedio para escribir una palabra sin uso de un filtrado de léxico. Por otra parte, la curva azul indica la cantidad de letras necesarias promedio para escribir una palabra de n letras.



Figura 5. Cantidad de letras promedio para predecir una palabra de n-letras


Léxico adaptado

La afirmación anterior que “el léxico posee las palabras más frecuentes usadas en el idioma” es inexacto debido a que el vocabulario es altamente dependiente de diversos factores relacionados con el usuario y el tema del texto que se está escribiendo, entre otros.

Cada persona posee un vocabulario específico debido a su ubicación geográfica, trabajo, condición social, edad, interlocutor, etc. Todos estos aspectos constituyen características personales específicas que deben ser tenidas muy en cuenta y preservadas porque transmiten su identidad.

Por otra parte, el tema del texto a escribir también define un vocabulario específico muy particular. Por ejemplo, es diferente el vocabulario para escribir una carta, que el utilizado en un servicio de mensajería instantánea (chat). En el caso de un chat se hace uso de estructuras gramaticales y secuencias de caracteres específicos, tales como los emoticones (por ejemplo: “:-)”) y expresiones especiales como: “mmmm!”.

Por estos motivos es necesario el uso de un léxico específico para tales dominios y que se encuentre adaptado al usuario.

Información morfosintáctica

En muchos idiomas es necesario el uso de información morfosintáctica para aumentar la capacidad de predicción del algoritmo.

En el caso del español, los artículos, adjetivos y sustantivos concuerdan en género y número dentro de un sintagma nominal, mientras que el verbo concuerda en número y persona con el sujeto. Es fundamental tener en cuenta tales aspectos para reducir el número de las posibles palabras a visualizar por el usuario y evitarle presentar variantes completamente inadecuadas que puedan hacer perder su confianza en el sistema.

Modelo de lenguaje

Observando un texto es posible llegar a la conclusión de que una palabra depende de las escritas anteriormente. Los modelos estadísticos permiten hacer uso de esta observación para estimar la probabilidad de una palabra en función de las escritas anteriormente. Por ejemplo, la probabilidad de “blanca” luego de haber escrito “la casa” (p(blanca|la,casa)) [7].

Estas probabilidades condicionales se pueden estimar usando textos de entrenamiento. Sin embargo, la estimación es una tarea dificultosa debido a la gran cantidad de posibles combinaciones de palabras a estimar. Las técnicas de suavizado permiten asignar probabilidades a combinaciones no observadas en los textos de entrenamiento. Y por otra parte, el uso de lemas permite reducir la cantidad de posibles combinaciones.

Reglas de separación o segmentación silábica

En el idioma español existen una serie de reglas para separar palabras en sílabas por lo que si estas palabras son “válidas”, son divisibles en unidades silábicas. Como en las bases de datos de los sistemas de predicción no es posible guardar todas las palabras que existen, puede usarse las reglas de separación en sílabas para formar nuevas palabras posibles y válidas. Esto ayuda a reducir el tipeo de letras al presentar en la predicción, silabas de tres o más letras que pueden ir a continuación de la palabra semicompleta que el cliente/usuario está tratando de completar, aun cuando la palabra en si no se encuentre en la base de datos.

CARACTERISTICAS RELEVANTES DE CASANDRA

Casandra dispone de una serie de características interesantes que permiten su mejor funcionamiento a través de una serie de algoritmos adaptativos.

El uso de léxicos adaptados permite incrementar la calidad en la predicción de palabras. Casandra hace uso de una estructura de léxicos generados dinámicamente a partir de textos ingresados por el usuario con anterioridad, de esta manera enriquece el léxico de las palabras de uso más frecuente. Estos léxicos se encuentran clasificados en un conjunto de clases mediante algoritmos automáticos de agrupamiento para su selección automática dependiendo del texto que se está ingresando. De esta manera, es transparente y evita la necesidad de selección por parte del usuario del léxico adaptado adecuado.

Por otra parte, en el momento de hacer la predicción se hace uso de una combinación de diferentes modelos de lenguaje, palabras, lemas, información morfosintáctica y la construcción de nuevas palabras basadas en las reglas silábicas del idioma español. Casandra posee un ajuste automático de los pesos de cada uno de los modelos de lenguaje al tomar la decisión sobre que palabras o silabas se visualizarán en la lista. Esto permite adaptarse a circunstancias donde el vocabulario sea reducido y predecible, o bien asignar más peso a la estructura gramatical debido a la riqueza de palabras usada.

CONCLUSIONES

En este artículo se presenta un sistema de predicción de palabras para el soporte de la escritura. Las diferentes interfaces del sistema permiten su interacción tanto con personas discapacitadas como con otras que no lo son.

El sistema propuesto permite el uso de todas las aplicaciones disponibles en el mercado debido a que solamente ofrece un listado de palabras (y un teclado virtual opcional) para la escritura automática de la palabra seleccionada por el usuario o el carácter seleccionado con la vista o el sistema de barrido.

Además, Casandra posee unas características automáticas muy interesantes tales como selección automática del léxico para mejorar el rendimiento de predicción, actualización de los léxicos y modelos de lenguaje y ajuste de pesos de los diferentes modelos en forma automática. El objetivo es maximizar el rendimiento mientras que el sistema se mantiene fácil de usar por el usuario y sus detalles técnicos permanecen transparentes para el mismo.

PERSPECTIVAS FUTURAS

A partir del próximo mes de agosto Casandra sera evaluado en la Escuela de Sordos e Hipoacusicos (C.E.F.A) de mar del plata se espera que para fin de año se tengan disponibles las primeros resultados.-

REFERENCIAS

[1] Carlberger A., Carlberger J., Magnuson T., Palazuelos S., Hunnicutt S., Aguilera S. Profet, a New Generation of Word Prediction: an Evaluation Study, Workshop on NLP for Communications Aids, ACL/EACL ’97. Madrid, España, 1997.

[2] Palazuelos S., Martin J., Arenas J., Rodino J., Aguilera S. Communication strategies using PredWin for people with disabilities. Conference and Workshop on Assistive Technology for Vision and Hearing Impaired. Castelvecchio Pascoli, Italia, 2001.

[3] Fazly A., Hirst G.. Testing the Efficacy of Part-Of-Speech information in Word Completion. 10th EACL. Budapest, Hungary, 2003.

[4] Gustavii E., Petterson E. A Swedish Grammar for Word Prediction(2003). PhD thesis.

[5] WordQ Writing Aid Software. http://www.wordq.com/.

[6] Gonzalez, E., Garcia Garcia J. C. y Tulli J. C. Estudio de factibilidad de un mouse controlado por señales electrooculográficas. XV Congreso Argentino de Bioingeniería. Parana Argentina Septiembre 2006

[7] Chris Manning and Hinrich Schütze. Foundations of Statistical Natural Language Processing, MIT Press. Cambridge, MA: May 1999.

[8] Real Academia Española, Ortografía de la Lengua Castellana. 1826.

jueves, 18 de septiembre de 2008

Escritura mediante señales electrooculográficas

Nahuel Matías Dalgaard (*) Esteban Lucio Gonzalez (**) Juan Carlos Tulli (***)
Pablo Daniel Agüero (****)

Universidad Nacional de Mar del Plata, Facultad de Ingeniería, Argentina

(*)dalgaard@uolsinectis.com.ar, (**)elgonzal@fi.mdp.edu.ar, (***) jctulli@fi.mdp.edu.ar, (****)pdaguero@fi.mdp.edu.ar

ABSTRACT
In this work, we describe the development of a system that gives an alternate and economical way of acceding a computer using eyes motion. In turn, this access system (hardware and software) allows writing of text in a virtual keyboard in the monitor of a PC by looking at the command or character to write. This will allow disabled people to use the computer as a communication tool. Because of that, the project was limited as a device that allows writing and pronouncing short sentences.

RESUMEN

Este trabajo, describe el desarrollo de un sistema que por medio de señales oculográficas brinda una alternativa económica a los dispositivos de acceso a computadoras. Hardware y software permiten la escritura de textos en un teclado virtual mostrado en el monitor de una computadora simplemente mirando los comandos o letras a escribir. Esto facilitará a usuarios con discapacidades motrices severas usar la computadora como medio para comunicación, por lo que el proyecto se acotó a un sistema que permite escribir frases cortas y pronunciarlas.

KEYWORDS
Discapacidad, Oculografía, Control, Escritura.

INTRODUCCIÓN

Así como una rampa o elevador provee a una persona que usa silla de ruedas el acceso a diferentes espacios físicos, la tecnología adaptativa, mediante software y hardware especializado, permite a personas con discapacidades motrices usar computadoras.

Las discapacidades motrices pueden ser causa de diferentes patologías tales como: distrofia muscular, parálisis cerebral, lesiones en la espina dorsal, o esclerosis múltiple. Las discapacidades citadas suelen impedir la comunicación oral debido a los problemas que las personas en cuestión poseen para controlar fiablemente sus músculos, esto motivó el desarrollo de diferentes sistemas de adaptación para ser utilizados como comunicador, algunos de ellos basados en computadoras (PC o computadora personal). Pero está posibilidad, a su vez, generó un nuevo problema que es el acceso del usuario a la PC. Uno de los métodos para acceder a una PC de manera no convencional (teclado o ratón), es a través de la utilización de Técnicas Electrooculográficas.

COMUNICADOR ELECTROOCULOGRÁFICO.

El “Comunicador Electrooculográfico” es un dispositivo compuesto por un puntero (o rastro electrónico que aparece en la pantalla de la PC) que obedece al movimiento de los globos oculares. Esto, junto con un software especialmente diseñado, permite que personas con dificultades motrices se comuniquen en forma oral y/o escrita. Este dispositivo incluye un sintetizador de voz en idioma castellano, lo que permite expresar el mensaje en forma oral.

La utilización de Señales Electrooculográficas (EOG) como fuente de comandos es fiable, ya que a pesar de ser propensa a fuertes perturbaciones, mediante un adecuado tratamiento, es posible conseguir una relación unívoca entre la posición del ojo dentro de su cuenca y una zona en la pantalla o monitor de PC [1].

Existen actualmente muchos sistemas con esta finalidad, algunos ejemplos de ello son: Point! ™, OptiTrack™, Head Master Plus, los cuales basan su funcionamiento en el seguimiento de la cabeza, por medio de una cámara de video. Otros, mas complejos, como: Vision-Trak™ funcionan utilizando técnicas de seguimiento de pupila. Todas estas interfases alcanzan gran precisión y son transparentes a los programas en entorno Windows, pero a pesar de sus virtudes, sus costos los hacen poco accesibles para el usuario promedio en Argentina, y es aquí donde la técnica propuesta se hace atractiva para países en vías de desarrollo [2].

Señales EOG

En la Fig. 1 se ve el posicionamiento de electrodos sobre un voluntario. La foto tomada de [2], fue obtenida en una sesión de medición de señales electrooculográficas (EOG) y electromiográficas (EMG ).

Al ser la señal EOG una indicación de la posición de los ojos relativa a la cabeza, al mover la cabeza manteniendo la mirada fija en un punto, también provoca variaciones de este potencial, por lo que cualquier sistema de control que use estas señales deberá tener en cuenta esta eventualidad. En la Fig. 2 se muestra el registro de dos señales EOG y EMG adquiridas simultáneamente. La señal EOG es la responsable de los escalones de tensión ocurridos aproximadamente cada 30 segundos. Estos escalones de tensión obedecen a movimientos voluntarios de los ojos fijando la vista en distintos puntos del monitor de la computadora, debido a la posición de los electrodos (Fig. 1) se registró el movimiento vertical. La amplitud aproximada de los escalones de tensión es de 0.3 V. Dado que se usó una ganancia de 1000 veces en el amplificador adquisidor, esto implica que se midió a nivel electrodo una tensión de 300µV.



Figura 1. Ubicación de los electrodos

Las señales EMG o de movimiento de párpados son las responsables por los picos (o deltas) de amplitud, los cuales obedecen tanto a movimientos voluntarios de los párpados como involuntarios. En este sentido, los picos altos y anchos producidos a los 160 segundos y a los 206 segundos se deben a un movimiento voluntario de párpados cerrados fuertemente (o sea ejerciendo fuerza adicional sobre los mismos). Esto se hizo para estudiar la posibilidad de usar estos movimientos como señales de control o validación



Figura 2. Registro de señales EOG

La señal obtenida de los electrodos presenta un nivel de tensión continua que varía entre -5.5 mV y -4.5 mV y una amplitud de parpadeo de aproximadamente 500 µV. Si se realiza una ampliación del tramo entre 200 y 240 segundos de la Fig. 2 (Fig. 3) se ve una secuencia de 1, 2, 3, 4 y 5 parpadeos voluntarios que se pueden distinguir perfectamente por su número, pero serían imposibles de distinguir de un parpadeo involuntario. Del análisis de los picos de tensión surgió que al menos en esta primera experiencia hubiese sido muy difícil distinguir entre parpadeos voluntarios e involuntarios. También se ve en la misma figura el parpadeo voluntario de los 206 segundos ejerciendo más fuerza sobre los párpados que lo normal en un parpadeo común.

La misma medición realizada con 24 horas de diferencia mostró un comportamiento distinto, a pesar que se trató del mismo sujeto, en las mismas condiciones, con el mismo equipo y en el mismo medio ambiente. El nivel de continua de la señal en esta segunda medición estaba por encima de 10 mV, con lo cual se producía saturación del amplificador. Fue necesario intercalar un filtro pasa altos de 0.05 Hz. para bloquear la tensión continua. Este nivel de continua se debe a los potenciales de electrodo de media celda [1] y a tensiones EMG.



Figura 3. Ampliación de la Fig. 2 (último tramo)


Ruidos e interferencias en la adquisición del EOG
Antes de describir el desarrollo del equipo se realizará una breve descripción de los inconvenientes que se presentan a la hora de censar señales EOG. Se describen a continuación, las fuentes de ruido e interferencias que deben ser minimizadas a fin de poder registrar con mayor precisión estas señales bioeléctricas. Además, esto establece los requerimientos básicos necesarios para el desarrollo de un sistema adquisidor.

Debido a que la amplitud pico a pico de las señales de EOG está generalmente en el rango de µV-mV, éstas se encuentran fuertemente influidas por diferentes interferencias y fuentes de ruido que, en muchos casos, tienen amplitud mayor y espectro superpuesto a la señal que se desea medir. La Tabla 1 (Fig. 4) muestra una clasificación de los diferentes ruidos e interferencias según su origen.

Las interferencias externas son mayormente provocadas por la red de distribución eléctrica. Esta emite campos electro-magnéticos que interactúan con el equipo y el usuario produciendo una interferencia de 50Hz. Otras señales interferentes no afectan en gran medida por encontrarse fuera del ancho de banda del EOG.

La mayoría de estas interferencias han sido ampliamente tratadas en la bibliografía [3] [4] y [5], y no serán analizadas aquí, sin embargo las interferencias originadas en los potenciales de contacto electrodo-piel si serán tratadas por haber sido uno de los mayores problemas en el uso de señales EOG y por estar este equipo especialmente diseñado para enfrentarse a ese problema

Interferencias externas al equipo de medida:

Capacitivas:
Acoplamiento capacitivo con el paciente.
Acoplamiento capacitivo con los conductores y el equipo.

Inductivas:
Originadas por la interfaz electrodo-electrolito-piel.
Debidas a otros potenciales bioeléctricos.
Debidas a otros sistemas fisiológicos.
Debidas a cargas electrostáticas.

Interferencias internas al equipo de medida:
Provocadas por el transformador de la fuente de alimentación.
Debidas al rizado de la fuente de alimentación.
Ruido generado por los componentes electrónicos.
Otras fuentes: ordenadores, monitores, equipos electrónicos.


Problemática de la componente continua o potenciales de media celda de las señales EOG.
Al colocar un electrodo en contacto con la piel a través de un electrolito se produce una distribución de cargas entre la interfaz electrodo-electrolito que da lugar a la aparición de un potencial (potencial de media celda). Este potencial es una tensión continua cuyo valor supera ampliamente el nivel de la señal a medir, además, si el electrodo se mueve respecto del electrólito, se producirá una alteración en la distribución de la carga que provocará una variación transitoria del potencial de media celda. De la misma forma, en la interfaz electrolito-piel también existirá una distribución de cargas y, por tanto, un potencial de equilibrio que variará si se produce movimiento entre la piel y el electrolito. [1]



Figura 5. Ubicación de electrodos para óptima captación de la señal electrooculográfica

La colocación de los electrodos debe ser en forma perbiocular, es decir, en la vecindad de los dipolos oculares. Se utilizan cinco, dos para el canal horizontal, dos para el vertical y uno de referencia. En la figura 5 se muestra la forma correcta de colocación de los electrodos para obtener dos señales, una para el canal vertical y otra el horizontal. La relación entre los dos canales es casi ortogonal, ya que a pesar de poder diferenciarlos correctamente, existe una pequeña correlación. Los electrodos que captan la señal correspondiente al canal horizontal son los pares (AB), para el canal vertical los (CD) y la referencia es (E).

La utilización de la señal EOG como puntero, puede encontrarse seriamente afectada por variaciones en su componente continua, ya que ésta es justamente la que posee la información de posición angular del ojo. Otra consecuencia de esta tensión, es que puede provocar la saturación de los amplificadores debido a los grandes requerimientos de ganancia que éstos deben tener. La componente continua varía en relación a factores tales como:
 Perturbaciones ocasionadas por otros biopotenciales (EEG, EMG, etc.).
 Luminosidad ambiente. Variaciones en el potencial corneo-retinal.
 Variaciones producidas en los electrodos, posicionamiento y química.
 Estado del usuario (ansiedad, cansancio, etc.).
 Movimientos de la cabeza y cuerpo

FORMA DE FUNCIONAMIENTO

El comunicador oculográfico aquí descripto, es un dispositivo que trabaja acoplado en continua (es decir, no tiene filtros pasa altos). Esto implica el problema de las derivas por potenciales de media celda y biopotenciales propios del cuerpo humano. Al funcionar este dispositivo en conjunto con un teclado virtual, en el arranque del programa, se genera en la pantalla de la PC una zona de referencia inicial y cuatro puntos de calibración similar al usado en algunos de los trabajos descriptos por Barea [1]. Una vez identificado el sector de arranque y luego de la calibración, el sistema realiza una fijación de la tensión continua necesaria para mantener el cursor en ese punto por medio de otra tensión continua (generada localmente en el equipo por medio de una operación matemática realizada por el software) que se restará a la proveniente de los electrodos de manera que su diferencia sea un valor de tensión determinado e invariable llamada VPosición (siempre que el usuario no valide una nueva posición) de forma similar a la que un Lazo de Fijación de Fase (PLL) lo hace con la fase [6], [7].

Esta diferencia de potencial será la que controla la posición del cursor. En cierta forma esto mismo se puede obtener con un filtro pasa altos que bloquee la tensión continua. La diferencia está que si ahora se presenta un escalón de potencial, producto de un movimiento sacádico [8] de los ojos, un filtro pasa altos simplemente eliminaría ese nuevo potencial de continua, dejando pasar tan sólo el flanco. Lo que aquí se implementa es:
 Permitir al cursor seguir ese movimiento (lo hará sí la velocidad de crecimiento de la tensión continua generada localmente es lenta con relación a la variación de EOG).
 Antes que la diferencia entre la tensión proveniente del sensor y la generada localmente tienda al valor VPosición previamente establecido, el usuario, por medio de la validación, impondrá un nuevo valor de tensión VPosición concordante con la nueva posición del cursor, y el sistema tomará a esta nueva posición como referencia.

Dado que durante el proceso de calibración se obtuvo información del escalón de biopotencial necesario para barrer la pantalla, cualquier escalón de potencial producido por el movimiento de los ojos podrá unívocamente identificar cualquier desplazamiento del ojo a un nuevo sector de la pantalla.

La tensión EOG difícilmente varía en forma lenta, sino que lo hace en forma de escalones (movimientos sacádicos). Un ejemplo de una variación lenta sería mantener la vista en un barco que se mueve sobre el horizonte. Dado que este movimiento es improbable y sus consecuencias son variaciones lentas de tensión, similares a las variaciones temporales de las señales biológicas, algunos sistemas de registro y análisis de señales EOG simplemente los eliminan por medio de un filtrado pasa altos. Pero esto significa que ante un escalón de posición, el sistema lo derivaría (producto del filtro pasa altos) provocando un flanco y un tiempo de caída. Estos flancos también están presentes en los parpadeos, por lo que se genera una posible fuente de error que consiste en confundir parpadeos involuntarios con los flancos de los escalones.

Trabajos similares [9] han podido identificar un número de 7x6 sectores en la pantalla sin mayor problema. Cuando el ojo se desplaza para poder observar un nuevo sector en la pantalla, el cursor seguirá este movimiento debido a las variaciones de las señales de EOG. Una vez que el usuario ve que el cursor se posiciona sobre el sector deseado, lo validará mediante una acción a definir. En este caso se hace por medio de una tecla del Mouse, pero la validación dependerá fundamentalmente de las capacidades del usuario.

Esta validación cumple dos funciones, por una parte, determina la acción que el usuario quiere realizar (la cual ha sido apuntada por el cursor). Por la otra, será usada por el sistema como una realimentación de posición. Dado que se asume que el potencial de continua sigue variando, se determina ahora esa nueva posición como una nueva referencia, o sea, se ajusta todo el sistema a esa nueva posición. Mientras el ojo permanezca mirando esa posición, la fijación de continua la considerará como nueva VPosición. Cualquier nueva posición será calculada en función de esa nueva referencia y un escalón de potencial cuya relación amplitud-posición ya se conoce por medio de la calibración. Cualquier parpadeo puede ser fácilmente identificable ya que su variación será sumamente rápida y a los efectos de la señal EOG su potencial caerá al valor que tenía antes del parpadeo.

Si la cabeza se mueve lentamente durante la escritura, la recalibración (o re-referenciación) del sistema realizada en forma automática con cada validación, compensará esta variación.

La figura 6 es una gráfica de cómo podrían ser las tensiones EOG en un funcionamiento normal. Se ve entre los 90 y 100 segundos aproximadamente hay una secuencia de 7 segundos durante los cuales se seleccionaron 8 posibles zonas horizontales (se pueden distinguir 8 posibles tensiones) y durante ese intervalo de tiempo el valor de continua prácticamente no varió.



Figura 6. Variación de la señal de EOG

PROYECTO

Especificaciones que se tuvieron en cuenta al diseñar el equipo.

a) Requisitos de Performance.
 El dispositivo debe permitir escribir al menos un carácter cada 2 segundos.
 Debe poseer una interfaz gráfica amigable.
 Debe permitir ejecutar comandos de manera ágil.
 El equipo debe adaptarse no solo a cada usuario, sino también a las variaciones que la señal de EOG presente a cada momento.
b) Requisitos de Seguridad.
 El equipo debe poseer aislamiento respecto de la red eléctrica, ya que éste se encuentra en contacto con el usuario.
c) Tiempo de vida y servicio.
 Debe ser utilizado por lo menos por 30 minutos continuos, pues se estima que éste es el tiempo requerido para una sesión promedio de escritura.
 El equipo debe tener mínimos requisitos de mantenimiento.
 Los electrodos deben ser elegidos convenientemente a fin de minimizar costos de mantenimiento.

Implementación

La señal de EOG es amplificada por un amplificador de instrumentación, el cual debe poseer una ganancia tal que el mismo no sature debido a la componente continua, si esta saturación ocurriese, existiría una pérdida de información. Una vez magnificada, se superpone a la señal una tensión fija de igual magnitud pero de signo contrario a la porción continua del EOG, quedando así solo la parte variable. La cual es nuevamente amplificada y adaptada para ser adquirida.

La última etapa de amplificación posee ganancia ajustable, la cual adapta la información útil a los niveles de tensión necesarios para cubrir todo el rango de entrada del ADC. La ganancia variable es controlada por la Unidad de Control. Posteriormente la señal se convierte a formato digital y se transmite a la PC. Este esquema puede resolverse utilizando componentes de propósito general de bajo costo fácilmente obtenibles en el mercado nacional.



Figura 7. Diagrama en bloques del sistema


Amplificador de instrumentación.

Se menciona particularmente este dispositivo ya que por su costo es uno de los elementos que encarecería el diseño. Hoy en día existe en el mercado numerosos amplificadores de instrumentación (AI) integrados, los cuales poseen un alto desempeño en características cruciales para estos dispositivos. Estas son: Rechazo de Modo Común entre 100dB y 120dB, amplio rango de alimentación y bajo voltaje de offset. Sin embargo éstos resultan costosos (aproximadamente U$S 15 en Argentina). Este equipo usa una implementación alternativa utilizando Amplificadores Operacionales de propósito general, con los cuales se pueden conseguir muy buenos resultados. Esto reduce de sobre manera los costos. Se estima que el circuito amplificador puede construirse de esta forma por aproximadamente U$S 1.
Interfase Visual:
Se implementó un software con la finalidad de analizar la probabilidad de aparición de las diferentes letras y símbolos. Para esto se procesó una gran cantidad de de texto, sobre todo libros en lenguaje castellano. En base a los resultados obtenidos, se ubicaron las letras más probables en el centro de la pantalla y las menos probables en la periferia de la misma.

Para que el sistema sea mas robusto, se dividió la pantalla en tan solo 20 zonas (5 x 4), menos zonas de las 35 que se sugerían en el trabajo previo [2] (7 x 5). Por lo tanto hubo que distribuir los símbolos (letras, números, etc.) en tres teclados virtuales. Esto significó que se deberán direccionar también las zonas fuera de la pantalla.
Secuencia de comandos:
La secuencia de comandos inicia en el teclado virtual 1. Si se dirige la mirada arriba del monitor se conmuta al teclado virtual 3. Si se mira nuevamente arriba se retorna al teclado virtual 1. Dirigiendo la mirada a la derecha del monitor se conmuta al teclado virtual 2. Si se mira nuevamente a la derecha se vuelve al teclado virtual 1. Finalmente si se mira hacia abajo, aparece el menú de borrar: TODO, ULTIMA LETRA O CANCELAR. Si se mira hacia la izquierda, la PC lee lo escrito (en forma oral), utilizando el motor de Text To Speech de Windows®.

A continuación se muestran los teclados virtuales mostrados al usuario por el sistema:



Figura 8. Teclado virtual 1





Figura 9. Teclado virtual 2




Figura 10. Teclado virtual 3




Figura 11. Teclado Virtual Borrar




Figura 12. Menú principal y configuración

FUTUROS DESARROLLOS

Es evidente que este proceso de escritura puede resultar lento, por lo cual se hace deseable la implementación de algún algoritmo de predicción que le ofrezcan al usuario una cantidad de palabras posibles antes de que este deba escribir totalmente la palabra. Programas predictores tales como el PredWin ya existen, pero están diseñados para usar otro tipo de interfases gráficas que no son apropiadas para ser direccionadas por medio de señales EOG. En ese sentido, se esta trabajando en un sistema de predictor propio llamado “Casandra”.

CONCLUSIONES

Si bien el sistema no ha sido probado con pacientes, las pruebas realizadas en laboratorio demostraron no solo la viabilidad de las ideas planteadas en [2] sino la posibilidad de desarrollar instrumentos relativamente económicos que puedan ser adquiridos por usuarios de recursos limitados.
REFERENCIAS
[1] Barea, Rafael. Tesis doctoral: "Interfaz Usuario-Máquina basado en Electrooculografía. Aplicación a la ayuda a la movilidad" Universidad de Alcalá - Escuela Politécnica http://www.depeca.uah.es/personal/barea/tesis/tesis_barea_pdf.zip
[2] E. L. González, J. C. García García y J. C. Tulli, Estudio de factibilidad de un Mouse controlado por señales Electrooculográficas. XV Congreso Argentino de Bioingeniería. SABI 2007 http://www.herrera.unt.edu.ar/bioingenieria/sabi/cd_2005/pdf/054PS.pdf ,
[3] Rafael Barea, Universidad de Alcalá, Departamento de Electrónica, Instrumentación Biomédica. Sistemas de Acondicionamiento y Adquisición de Señales Bioeléctricas. http://www.depeca.uah.es/docencia/BIOING/ib/Tema3.zip
[4] Juan Ramos Castro, Tesis de Doctorado “Detección de micro potenciales Auriculares de alta frecuencia”, Capítulo 2. Universitat Politècnica de Catalunya https://www.eel.upc.es/~wwwdib/tesis/Jramos/cap2.pdf,
[5] Universidad de Alcalá, Departamento de Electrónica, Instrumentación Biomédica. Electrodos.(apuntes de cátedra)
[6] Wayne Tomasi, “Sistemas de Comunicaciones Electrónicas”, México: Pearson Educación, 1996.
[7] Bernard Sklar, “Digital Communications Fundamentals and Applications”, Prentice Hall International Editions (UK) Limited, London, 1988.
[8] http://www.uned.es/eyemovements-lab/links/tipos_movimientos.htm.
[9] J. Gips and P. Olivieri, "EagleEyes: “An Eye Control System for Persons with Disabilities", presented at the Eleventh International Conference on Technology and Persons with Disabilities, Los Angeles, March 1996
[10] Félix Jesús Alañón Fernández, Manuela Cárdenas Lara, Miguel Angel Alañón Fernández y Ana Martos Aguilera. Anatomía Y Fisiología Del Aparato Ocular http://www.esteve.es/EsteveArchivos/1_8/Ar_1_8_44_APR_18.pdf