Download PROCESAMIENTO REMOTO DE MAPAS CEREBRALES

Document related concepts
no text concepts found
Transcript
Memorias II Congreso Latinoamericano de Ingeniería Biomédica, Habana 2001, Mayo 23 al 25, 2001, La Habana, Cuba
PROCESAMIENTO REMOTO DE MAPAS CEREBRALES
A. Martínez M. , F. Hassainia, D. Martínez M. , J.M. Reyes M. , J. Azpiroz L. , V. Medina B.
Departamento de Ingeniería Eléctrica, Universidad Autónoma Metropolitana-Iztapalapa
Av. Purísima y Michoacán S/N, México, 09340, D.F., MÉXICO e-mail: [email protected]
RESUMEN
En este trabajo se presenta la evaluación de un sistema que
proporciona acceso a un programa de mapeo cerebral
tridimensional para cuaquier usuario remoto. El cliente
puede cargar sus señales cerebrales, ya sea
electroencefalograma o potencial evocado y desplegar los
mapas 3D en su máquina local. El mapa 3D se construye
remotamente por el servidor y se envía al clliente usando un
protocolo completamente transparente.
El sistema se basa en una aplicación distribuida que utiliza
el Método de Invocación Remota JAVA [2] como medio de
comunicación entre el cliente y el servidor, un Applet de
Java como la aplicación del cliente y el lenguaje de
modelado de realidad virtual (VRML) y Java 3D [3] como
herramienta para crear los mapas tridimensionales. Se
presenta un ejemplo de aplicación en el análisis de
potenciales evocados cognitivos.
Palabras Clave: Mapeo cerebral, Aplicaciones remotas,
Internet
1. INTRODUCCIÓN
La electroencefalografía (EEG) y el estudio de los
potenciales evocados (PE) son las técnicas más comunes y
menos invasivas para la exploración funcional del cerebro.
Ambas técnicas generan grandes cantidades de datos en
formato “crudo”, que son de difícil y tediosa interpretación.
Esto ha llevado a que el Mapeo Cerebral surja como una
herramienta complementaria para facilitar la inspección
visual de la información “cruda”. El mapa cerebral consiste
de una representación del EEG o del PE directamente en
una superficie que simula el cuero cabelludo. Se requiere de
un procedimiento de interpolación para estimar los datos
faltantes entre los registros obtenidos en los electrodos y de
la proyección de dichos datos, ya sea en una superficie
bidimensional (mapa en 2D) o tridimensional (mapa 3D).
Los niveles de intensidad registrados o interpolados se
representan en forma de colores tomados de una paleta
predefinida por el usuario. El mapa cerebral facilita
enormemente la interpretación de los datos y es una buena
herramienta complementaria de representación visual [6].
A pesar de su tradición y de su uso extensivo, aun existen
numerosos laboratorios clínicos y de investigación que
efectúan estudios de EEG/PE y que aun no cuentan con un
sistema de mapeo cerebral. Proporcionar a estos
laboratorios el acceso a estos sistemas puede ser de gran
utilidad.
El primer objetivo de este proyecto es crear una aplicación
que pueda ser accesada desde una plataforma remota y que
permita al usuario final observar sus datos en forma de
mapas 3D empleando la aplicación de mapeo cerebral 3D
instalada en nuestro servidor. En una segunda etapa, se
pretende proporcionar acceso a múltiples usuarios que
puedan trabajar concurrentemente en el mismo conjunto de
datos, como si se encontraran físicamente en el mismo sitio.
El surgimiento de Internet como herramienta de
comunicación universal ha ayudado a popularizar las
aplicaciones cliente-servidor. En este esquema, la aplicación
principal se encuentra centralizada en un sitio y permite que
los clientes tengan acceso a ella de manera transparente.
Esta estrategia tiene la ventaja de facilitar el desarrollo y la
actualización de la aplicación. Por otro lado, Internet ofrece
las ventajas de una herramienta basada en estándares, ofrece
un protocolo abierto y es totalmente independiente de la
plataforma. De esta manera, Internet ofrece mecanismos
para la comunicación y transferencia de información entre el
cliente y el servidor de manera totalmente transparente, en
lo que se conoce como aplicaciones de objetos distribuidos.
Uno de los componentes más importantes en una
aplicación distribuida es el mecanismo de comunicación de
objetos. Existen protocolos que permiten esta comunicación
como si los objetos estuvieran en una misma máquina, por
ejemplo, el “Common Object Request Broker Architecture”
(CORBA) y el Método de Invocación Remota o “Remote
Method Invocation” (RMI). Este último se emplea para el
transporte de objetos entre el cliente y el servidor de la
aplicación y es un protocolo muy sencillo de emplear,
basado totalmente en el lenguaje Java.
Las aplicaciones RMI se componen frecuentemente de dos
programas, uno correspondiente al cliente y el otro al
servidor. La aplicación típica del servidor crea algunos
objetos remotos, hace accesible la referencia a ellos y
espera a que los clientes potenciales invoquen los métodos
de estos objetos. La aplicación del cliente por su lado,
obtiene la referencia de uno o más de los objetos remotos
del servidor e invoca sus métodos.
En este trabajo se presenta una aplicación distribuida para el
procesamiento remoto de mapas cerebrales 3D. El diseño y
desarrollo fue previamente completado [5] y se evalúa su
desempeño para el procesamiento de potenciales evocados
cognitivos obtenidos bajo una tarea de reconocimiento
semántico.
2. METODOLOGÍA
Diseño de la Aplicación. La aplicación distribuida que se
propone en este trabajo consiste de dos componentes. El
primero es la aplicación del cliente, que es en realidad un
950-7132-57-5 (c) 2001, Sociedad Cubana de Bioingeniería, artículo 00387
“applet” de Java. Se seleccionó un “applet” dado que su
desarrollo y despliegue es más sencillo y es fácilmente
ejecutable desde cualquier navegador. Con esto se elimina
la instalación de la aplicación del cliente en la máquina
local del usuario. La aplicación del cliente lee los datos del
usuario y los envía a la aplicación del servidor, que es el
segundo componente importante de la aplicación
distribuida. Esta aplicación del servidor tiene la
responsabilidad de crear el mapa 3D usando los datos
obtenidos del usuario remoto. Una vez construido, el mapa
3D es enviado de regreso al usuario para ser desplegado en
su navegador.
Construcción de Mapas. El mapa 3D se crea interpolando
los valores en todo el cuero cabelludo, a partir del conjunto
de datos registrados en los electrodos. A cada valor de
amplitud resultante se le asocia un color, tomando como
referencia una paleta escalada al máximo y mínimo del
potencial registrado. Muchos métodos de interpolación han
sido publicados y empleados en los sistemas existentes de
mapeo cerebral. En este caso, se emplea un algoritmo
mejorado de interpolación por splines esféricos, que entrega
una superficie suave interpolada sobre una esfera [4]. Los
valores obtenidos se proyectan posteriormente sobre la
superficie que representa la cabeza real en 3D [6]. La
construcción del mapa se realiza en el lado del servidor y
éste es transferido al cliente como un objeto remoto a través
de Internet empleando RMI. Para el diseño de la aplicación
se empleó el lenguaje de modelado unificado “Unified
Modeling Language” (UML) [1][7] y se definieron los casos
de uso, diagramas de clase y diagramas de secuencias
correspondientes [5].
Interfase de usuario. El sistema presenta varias
posibilidades de uso para el cliente y hemos conservado una
estructura de muy fácil empleo, tanto en las interfases como
en el formato mismo de los datos. Los parámetros básicos
definidos para la lectura de los archivos son la ganancia, la
frecuencia de muestreo y el montaje de electrodos,
seleccionable de una lista de hasta 80 electrodos
predefinidos. El archivo de entrada se selecciona de la
máquina del cliente o de su red local y el formato empleado
actualmente es una matriz de tipo ASCII. Una vez cargados
el archivo, las señales son desplegadas en el navegador y el
usuario puede seleccionar la latencia que desea mapear
sobre el modelo 3D de la cabeza. Este objeto 3D puede ser
posteriormente manipulado para amplificar, rotar o
desplazar el conjunto.
Señales. Los datos presentados en este trabajo corresponden
a registros de 56 electrodos obtenidos sobre el cuero
cabelludo empleando un esquema extendido del estándar
10-20. El potencial obtenido corresponde a la respuesta de
una tarea cognitiva de reconocimiento semántico. Al sujeto
se le presentan de manera auditiva palabras bisilábicas de
objetos hechos por el hombre (casa, carro, etc.) y de cosas
de la naturaleza (árbol, cielo, etc.). La tarea del sujeto
consiste en decidir si la palabra que escucha pertenece al
primer grupo (hecha por el hombre) o no. Por ejemplo, si
escucha la palabra fresa, el sujeto responde N0, pero si
escucha la palabra casa debe de responder SI. La
presentación de las palabras es continua y en cada palabra
debe de dar su respuesta. Las respuestas son promediadas
para obtener el potencial evocado correspondiente, que se
espera tenga un componente importante de polaridad
negativa en una latencia de aproximadamente 400 ms
después del estímulo (N400). En esta tarea de
reconocimiento se evoca una respuesta de amplitud
importante en las zonas centro-parietales de la corteza, con
una lateralidad derecha para un sujeto normal.
3. RESULTADOS Y DISCUSIÓN
En las imágenes siguientes se presentan los resultados
correspondientes al despliegue del potencial de interés sobre
el cuero cabelludo para la configuración electrodos
utilizada. A la izquierda se muestran algunos de los canales
adquiridos, junto con una línea vertical amarilla que muestra
el instante en el tiempo correspondiente al potencial que se
presenta en el mapa. En la parte inferior se muestra a la
derecha, los controles del “plug-in” RealPlayer que se
emplean para la manipulación de la imagen tridimensional
(rotaciones, traslaciones, zoom), mientras que en la parte
central se muestra la escala de colores empleada en el
mapeo de potencial. En la sección derecha se muestra el
mapa en tres dimensiones, que puede manipularse a
voluntad para poder ver la información desde cualquier
ángulo y así evitar los problemas derivados de las
distorsiones que se producen en sistemas de despliegue de
dos dimensiones.
Figura 1. Despliegue típico de un mapa de potenciales en 3D.
Figura 2. Ejemplo de visualización bajo otro ángulo del mismo potencial.
sistema gran flexibilidad. Se pretende también integrar un
módulo de edición, manejo y despliegue de las señales,
características que en la versión actual se encuentran
limitadas. Finalmente, la posibilidad de modificar la paleta
de colores permite al usuario hacer comparaciones con
mapas obtenidos de otros sistemas y obtener un despliegue
más adecuado a sus necesidades.
4. CONCLUSIONES
Figura 3. Despliegue axial de la información
tridimensional de alta resolución.
Las figuras 2 y 3 corresponden al despliegue del mismo
potencial de la figura 1, pero haciendo uso de las facilidades
de rotación de la imagen para visualizar los mapas desde
cualquier ángulo de interés (figura 2) y una representación a
mayor escala correspondiente a una vista axial para mostrar
la calidad de los resultados del mapeo cuando se cuenta con
un muestreo espacial de alta calidad, como el que se obtiene
en este ejemplo con 56 electrodos.
La implantación de un sistema de mapeo cerebral que
corre en una aplicación tipo cliente-servidor proporciona
varias ventajas sobre los enfoques previos de la cartografía
cerebral, donde las aplicaciones completas deben instalarse
en la computadora local. La ventaja principal es la idea de
tener un sistema independiente del tipo de plataforma de
que se trate. Los primeros sistemas de mapeo en tres
dimensiones corrían en sistemas con multiprocesadores o en
estaciones de trabajo con circuitería especialmente
construida. El desarrollo de un sistema que operara con una
computadora tipo IBM-PC fue un avance significativo, pero
la necesidad de desarrollar programación específica para
distintos tipos de tarjetas gráficas y distintas interfases con
el usuario complicó innecesariamente la programación.
Cuando se cuenta con un programa que corre de la misma
manera en cualquier sistema, se tiene un solo tipo de
elementos que son más fáciles de implementar y de
mantener.
Otra ventaja es el hecho de que cuando se tiene un sistema
bajo el esquema cliente-servidor, la plataforma remota no
necesariamente tiene que contar con una alta potencia
computacional. Todos los cálculos para producir los mapas
son administrados y calculados por el servidor remoto. El
despliegue de los mapas se adapta al tipo de configuración
residente en el cliente.
Respecto a la facilidad de uso del sistema desde el cliente,
pudimos apreciar que la lectura de los datos es sencilla, pero
adaptar el formato de los datos es un procedimiento tedioso.
Se espera en un futuro integrar una interfase de lectura de
datos en los formatos propietarios de las principales marcas
de sistemas de adquisición de señales electrofisiológicas.
Por otro lado, la facilidad para seleccionar la latencia y la
proyección de los mapas desde el Cosmoplayer le da al
Este trabajo presenta la evaluación de una aplicación
distribuida que permite que un cliente remoto que no cuenta
con un programa de mapeo en tres dimensiones de
potenciales electroencefalográficos, pueda desplegar mapas
a partir de sus propios datos. El programa cliente está
basado en una "applet" que permite que cualquier usuario se
comunique con el servidor de la aplicación a través de
Internet. La aplicación del servidor construye los mapas en
tres dimensiones y los transfiere a la máquina cliente.
Esta aplicación está programada en el lenguaje Java y
emplea la técnica de invocación remota de Java (Remote
method invocation o RMI) para comunicar al cliente con el
servidor, aunque se podría emplear otra técnica como el
protocolo CORBA, si la aplicación del servidor se programa
en C.
Algunas de las mejoras que se tienen contempladas es el
desarrollo de módulos que permitan el trabajo colaborativo
entre distintos usuarios en sitios diferentes para que puedan
accesar datos como si todos se encontraran en el mismo
sitio. En este caso, la estrategia de comunicación será la
misma, usando el método RMI de manera similar a la
descrita anteriormente para la creación de mapas.
AGRADECIMIENTOS
Las señales fueron proporcionadas por G. Castillo y F.
Ostrosky del Departamento de Psicofisiología, Facultad de
Psicología, UNAM, MÉXICO. Se agradece el apoyo
financiero del CONACYT a través del Convenio Específico
de Colaboración No. 400200-5-29290A
REFERENCIAS
[1] Booch, G., Rumbaugh, J., Jacobson, I., The Unified Modeling
Language Users Guide, Addison Wesley Publishing Company, 1999
[2] Gilbert S., McCarty B., Object-Oriented Design in Java, Mitchell
Waite Signature Series, 1997
[3] Hartman, E., Wernecke, J., The Vrml 2.0 Handbook Building Moving
Worlds On The Web, Silicon Graphics Inc, Addison Wesley
Publishing Company, 1996
[4] Hassainia, F., Medina, V., Donadey, A., Langevin, F., “An Enhanced
Spherical Spline Interpolation Method For Brain Mapping”,, Medical
Progress Through Technology, Vol. 30, pp 23-30, 1994
[5] Martínez A., Hassainia F., Martínez D., Reyes J., Azpíroz J., Medina
V. “Remote Brain Mapping Invocation”, World Congress on Medical
Physics and Biomedical Engineering. Chicago, Ill., 2000
[6] Medina V., Hassainia F., Gaillard P., Langevin F., “Three dimensional
representation of brain electrical activity”, Brain Topography Vol. 7,
No. 1 pp 53-61, 1994
[7] Jacobson, I., Booch, G., Rumbaugh, J., The Unified Software
Development Process, Addison Wesley Publishing Company, 1999
REMOTE PROCESSING OF BRAIN MAPS
ABSTRACT
We present in this work the evaluation carried out on a system that provides access to a three-dimensional
(3D) brain-mapping program to a remote client. The client can load his own electroencephalogram or evoked
potential data, and display 3D maps on his local machine. The 3D map is remotely constructed on the server
side and sent to the client using a transparent protocol. The solution is based on a distributed application that
uses Java Remote Method Invocation as a mean of communication between the client and server, Java Applet
as the client application, Java 3D and Virtual Reality Modeling Language (VRML) as a tool for creating 3D
maps. An application example is shown for the analysis of cognitive evoked potentials.
.