RIPPLELAB: UNA HERRAMIENTA SOFTWARE PARA
LA DETECCIÓN Y ANÁLISIS DE OSCILACIONES DE
ALTA FRECUENCIA EN EL CEREBRO
Miguel Gonzalo Navarrete Mejía
Universidad de los Andes Facultad de Ingeniería, Departamento de Ingeniería Eléctrica
Bogotá, Colombia 2014
RIPPLELAB: UNA HERRAMIENTA SOTWARE PARA LA
DETECCIÓN Y ANÁLISIS DE OSCILACIONES DE ALTA
FRECUENCIA EN EL CEREBRO
Miguel Gonzalo Navarrete Mejía
Tesis o trabajo de investigación presentada(o) como requisito parcial para optar al título de: Magister en Ingeniería Eléctrica
Director (a):
PhD. Mario Andrés Valderrama Manrique
Línea de Investigación:
Ingeniería Biomédica y procesamiento de señales Grupo de Investigación:
GIB – Grupo de Investigación en Ingeniería Biomédica
Universidad de los Andes Facultad de Ingeniería, Departamento de Ingeniería Eléctrica
Bogotá, Colombia 2014
A mis padres, a Lez y a todos aquellos que me dieron valor para seguir adelante en los momentos más difíciles de este camino que
AGRADECIMIENTOS
El desarrollo de este trabajo se debe al gran apoyo de un grupo de personas sin el cual no hubiese sido posible llevarse a cabo. En primer lugar debo agradecer a mi asesor, Mario A. Valderrama, quien confió en mí y en mis capacidades, quien siempre ha estado dispuesto a guiarme, escuchar mis propuestas y además,
quien ha tolerado mis terquedades. Así mismo, agradezco
enormemente la colaboración de Catalina Alvarado y Michel Le Van Quyen, quienes constantemente me retroalimentaron para que el producto de este trabajo no quede sólo como una elaboración académica, sino que tenga una utilidad en el medio en el que se necesita. Igualmente, a Vincent Navarro y a Line quienes ha puesto a prueba la interfaz y me han hecho valiosas recomendaciones para su mejoramiento. También agradezco a Jesus, a Cécile y a Xavier que siempre fueron una voz de aliento. Y por último, a mis padres y a Lez, que me acompañaron en cada instante y nunca me dejaron desfallecer.
IV
Resumen
En el presente documento se presenta la herramienta
computacional RIPPLELAB, la cual ha sido desarrollada como una interfaz gráfica de usuario para la detección, análisis y validación de eventos de alta frecuencia (HFO > 40Hz). En ella,
además de la posibilidad de hacer una detección visual,
implementaron cuatro métodos de detección automática de eventos y un método desarrollado por el autor. En este documento se hace la descripción de las características principales de RIPPLELAB siguiendo el orden lógico en el cual se debe hacer la detección, análisis y validación de los eventos HFO. Adicionalmente, se presenta un caso estudio, el cual permite entender el alcance de esta herramienta durante el procesamiento de grandes cantidades de datos y la competencia en la validación de eventos. Igualmente. Se
realiza un estudio comparativo del método de detección
desarrollado y los métodos de detección implementados y que ya han sido publicados con anterioridad.
Contenido
Resumen ... IV
Contenido ... V
Lista de Figuras ... VII
Lista de Tablas ... VIII
Introducción ... 1
Antecedentes ... 3
Objetivos ... 3
1. Marco Conceptual ... 4
2. Descripción general de RIPPLELAB ... 7
2.1 Importar Archivos y Seleccionar Electrodos ... 7
2.2 Visualización y pre-procesamiento ... 10
3. Detección y validación de HFOs ... 13
3.1 Detección manual de eventos HFO ... 13
3.2 Métodos automáticos para la detección de HFOs ... 14
3.2.1 Detector Short Time Energy --- 15
3.2.2 Detector Short Line Length --- 16
3.2.3 Detector Hilbert --- 16
3.2.4 Detector MNI --- 16
3.2.5 Detector Tiempo – Frecuencia --- 17
3.3 Selección adecuada del detector --- 19
3.4 Validación de los eventos detectados ... 20
3.5 Guardar y recuperar detecciones ... 22
4. Caso Estudio ... 23
4.1 Análisis de detección no supervisada ... 23
4.2 Resultados de validación visual. ... 24
4.3 Estudio comparativo de los métodos de detección ... 28
4.3.1 Selección de segmentos EEG --- 28
4.3.2 Simulación de Eventos HFO --- 28
5. Conclusiones ... 35
VII
Lista de Figuras
FIGURA 1-1:RIPPLES REGISTRADOS EN UN EEG DE SUPERFICIE... 6
FIGURA 2-1:INTERFAZ MULTI-VENTANA DE RIPPLELAB ... 8
FIGURA 2-2:DIAGRAMA DE PASOS PARA ANÁLISIS DE DATOS ... 9
FIGURA 2-3:INTERFAZ PRINCIPAL DE RIPPLELAB ... 11
FIGURA 3-1:VALORES PARA DETECTORES AUTOMÁTICOS DE HFO ... 14
FIGURA 3-2:PANEL PARA DETECCIÓN VISUAL DE EVENTOS HFO ... 15
FIGURA 3-3:PARÁMETROS DE CONFIGURACIÓN MÉTODO TIEMPO –FRECUENCIA ... 17
FIGURA 3-4:INTERFACE PARA VALIDACIÓN DE EVENTOS DETECTADOS ... 21
FIGURA 4-1:EVENTOS TÍPICOS IDENTIFICADOS POR LOS MÉTODOS DE DETECCIÓN ... 27
FIGURA 4-2:RESULTADOS DE LA DETECCIÓN DE LA TOTALIDAD DE EVENTOS SIMULADOS ... 31
FIGURA 4-3:RESULTADOS DE LA DETECCIÓN POR SEGMENTO ANALIZADO ... 31
FIGURA 4-4:RESULTADOS DE DETECCIÓN PARA LAS BANDAS DE FRECUENCIA ANALIZADAS ... 32
FIGURA 4-5:RESULTADOS DE DETECCIÓN POR BANDAS PARA DIFERENTES CONFIGURACIONES DEL MÉTODO TFE ... 33
FIGURA 4-6:RESULTADOS DE DETECCIÓN PARA DIVERSAS AMPLITUDES RELATIVAS DE LOS EVENTOS SIMULADOS ... 33
FIGURA 4-7:RESULTADOS DE LA DETECCIÓN PARA DIFERENTES CANTIDADES DE EVENTOS HFO SIMULADOS EN LA SEÑAL DE REFERENCIA. ... 34
VIII
Lista de Tablas
TABLA 1.RESULTADOS DE RENDIMIENTO PARA DETECCIÓN NO SUPERVISADA ... 24
TABLA 2.RESULTADOS DE VALIDACIÓN VISUAL PARA LOS MÉTODOS DE DETECCIÓN ... 25 TABLA 3.SEGMENTOS SELECCIONADOS PARA ANÁLISIS COMPARATIVO ... 28
Introducción
Las oscilaciones de alta frecuencia en el cerebro humano (High Frequency Oscillations HFOs, > 40Hz) han sido observadas tanto en el contexto fisiológico como patológico sobre registros
de electroencefalografía (EEG) tanto Scalp como intracraneal.
Algunos autores han propuesto que este tipo de oscilaciones promueven la sincronización y la transferencia de información entre distintas regiones corticales y subcorticales durante funciones cognitivas específicas [1]–[4]. En casos patológicos como en la epilepsia, esquizofrenia, Alzheimer, Parkinson o autismo, estas oscilaciones pueden reflejar una sincronización anormal debido al deterioro de los procesos neuronales y de red [5], [6]. Particularmente en la epilepsia, diversos autores sostienen la hipótesis de que los HFOs reflejan un mecanismo fundamental de los fenómenos epilépticos; y por ende, sirven como un bio-marcador epileptogénico [7]–[9]. En otras patologías como la esquizofrenia y el Alzheimer, las variaciones en la dinámica de las oscilaciones rápidas pueden proveer criterios adicionales para el diagnóstico y evaluación de la enfermedad [10]–[14].
Sin embargo, a pesar de que los recientes avances de los últimos años en el área han aumentado la comprensión del rol de los HFOs a nivel fisiológico y patológico, existen una serie de obstáculos que dificultan el uso y análisis de los mismos en la
clínica, e incluso a nivel de investigación. Entre estas
dificultades se encuentra la complejidad en la detección de los HFOs, principalmente, debido a que su identificación se debe realizar mediante el análisis de grandes cantidades de datos y de que su morfología característica es eclipsada por la actividad cerebral de fondo. Con el fin de superar este problema, en los últimos años se han desarrollado una serie de algoritmos que realizan una detección automática de estas oscilaciones, aun así, el rendimiento de estos es variable y altamente dependiente de las características implícitas de los datos. Esto hace que no exista un consenso general en la forma en la cual estos métodos de detección deban realizarse. Igualmente, el uso de estos algoritmos es un reto para investigadores y médicos que no posean las
habilidades técnicas suficientes para su implementación
computacional. Por todo lo anterior, sobresale la importancia del desarrollo de herramientas que faciliten el estudio y análisis de las actividades cerebrales de alta frecuencia.
2
Bajo esta perspectiva y con el fin de ofrecer una herramienta que
permita la detección y análisis de HFOs en diversos tipos de registros cerebrales, se realizó una interfaz gráfica de usuario
(GUI) llamada RIPPLELAB. Esta GUI desarrollada completamente en MATLAB®, implementa algunos de los métodos más conocidos para la
detección de HFOs mediante una interface intuitiva y amigable; la que además permite asistir a médicos e investigadores en los
procedimientos de selección y validación de estas oscilaciones. Adicionalmente, se muestra un nuevo algoritmo de detección de
estos eventos basado en las características de tiempo-frecuencia de estas oscilaciones.
3
Antecedentes
El desarrollo de diversas librerías e interfaces de usuario es crucial en el ámbito de la investigación en neurociencias. Estas herramientas son comúnmente desarrolladas en MALTLAB® debido a que este es un software ampliamente distribuido a lo largo de la mayoría de centros de investigación a nivel mundial. Por esta razón, ya se han desarrollado diversas librerías en MATLAB® con el fin de ayudar en el procesamiento y análisis de grandes cantidades de registros EEG. Entre otras sobresalen MEA-Tools [15], EEGLAB [16], ERPWAVELAB [17], BSMART [18], FieldTrip [19] la cual no tiene interfaz gráfica, eConnectome [20] y EPILAB [21]. Sin embargo, a pesar de lo adecuadas que son para aquellas funciones para las que fueron diseñadas, ninguna de ellas tiene implementado ningún método de detección de HFOs. Hasta nuestro conocimiento, RIPPLELAB es la única interfaz desarrollada con la posibilidad de detectar, visualizar y analizar y validar todo tipo de HFOs, la que además incluye la posibilidad de variar diversos parámetros en los procedimientos de detección y visualización de este tipo de eventos.
Objetivos
GENERALES
Desarrollar e implementar una interfaz gráfica de usuario que permita la detección y análisis de oscilaciones de alta frecuencia en registros EEG, de manera que permita el estudio en la clínica y en la investigación de este tipo de eventos.
ESPECÍFICOS
Estudiar e implementar los algoritmos base para la
identificación de oscilaciones de alta frecuencias (HFO) en registros EEG.
Desarrollar e implementar un algoritmo de detección semi–
autónoma de HFOs con técnicas tiempo – frecuencia.
Diseñar y elaborar un interfaz de usuario que permita la
fácil identificación de HFOs aplicando las técnicas
estudiadas e implementadas.
Realizar un análisis de las capacidades de la interfaz
1.
Marco Conceptual
El término HFO se refiere a todas aquellas oscilaciones por encima de los 40Hz: fisiológicos o patológicos, transitorios o de estado estable, relacionados a otro evento o no. En la Figura 1-1 se muestra un ejemplo de la detección de estos eventos sobre diversos electrodos de un EEG de superficie, la columna A muestra la posición del mismo en un segmento de segundos de duración, la columna B el mismo evento observándose en una ventana de unos pocos cientos de milisegundos y la columna C el mismo caso de B bajo un filtro pasa altos de 80Hz. Una clasificación general de estos eventos se basa en su contenido de frecuencia, pero también
deben considerarse los mecanismos de generación y las
implicaciones funcionales y patológicas. Por ejemplo, las
actividades de alta frecuencia en la banda gamma (30-120Hz) y
ripple (120-250Hz), son oscilaciones que normalmente aparecen en el tejido cerebral sano (animal y humano); además, éstas han sido
relacionados a diversos procesos cognitivos tales como la
percepción, atención y formación de la memoria [22], [23]. Igualmente en epilepsia, se han observado oscilaciones en la misma banda de frecuencia las cuales se asocian a descargas epilépticas interictales [24], en el foco epiléptico [25] o durante la crisis
[26]. Adicionalmente, un nuevo tipo de oscilaciones llamado
Fast-Ripples (250-500Hz) han sido observado en el foco epiléptico [7] y en donde su detección se ha propuesto como un método que permita mejorar la localización del foco epiléptico desde un contexto clínico [27].
A pesar de la valiosa información provista por la
localización de los HFO, existen varios factores que dificultan su uso en diferentes contextos de diagnóstico y análisis. Como primera medida es de notar que su detección visual es una tarea extenuante. Por ejemplo, tal como puede observarse en la Figura 1-1, los HFO aparecen como eventos transitorios de baja amplitud y con muy pocos ciclos. Además, su amplitud decrece substancialmente a medida que frecuencia central aumenta; por consiguiente, estos son encubiertos por la actividad de las bandas de frecuencia más bajas. Igualmente, los límites de frecuencia se pueden traslapar entre los diferentes tipos, así como la frecuencia central puede variar de evento en evento incrementando la dificultad de asociarlos con oscilaciones de algún tipo en particular. Otra dificultad para la detección de HFO es que estos aparecen
5
interictales (Figura 1-1, Fila 1), las cuales, contienen también componentes de alta frecuencia debido a su morfología (Figura 1-1, Fila 2). Asimismo, el ruido de la señal y sus armónicos pueden interferir también en las bandas de frecuencia de estos eventos. Teniendo en cuenta lo anterior, y en orden de incrementar su utilidad en la clínica, la detección de HFOs debe ser lo suficientemente confiable en los diversos tipos de registro: desde la exploración intracraneal con micro o macro electrodos, hasta los no invasivos como los son el EEG y MEG. Adicionalmente, debe tenerse en cuenta que la identificación y análisis de HFOs requieren una alto poder de recursos y almacenaje computacional. Específicamente, las exploraciones clínicas y la investigación animal representan grandes cantidades de datos para guardar y procesar ya que cada sujeto es continuamente monitoreado durante días, semanas o incluso meses. Esta información es usualmente registrada a altas tasas de muestreo, en rangos de 10 – 30KHz para micro-electrodos o rangos de 1 – 4KHz para macro-electrodos, así como tasas de muestreo menores a 1KHz para Scalp EEG, que conjuntamente graban la actividad en diversas áreas del cerebro a diferentes escalas, desde docenas hasta cientos de contactos simultáneamente.
Con la intención de superar todas estas dificultades, algunos
métodos para la detección automática de HFOs han sido
recientemente desarrollados. La mayoría de ellos está basado en medidas estadísticas, de tiempo o de frecuencia; las cuales son
estimadas de señales EEG de diversos tipos [28]–[31]. Otros
autores han propuesto aproximaciones basadas en Machine Learning
para mejorar el método de detección [32]–[35]; algunos otros por
el contrario, han diseñados métodos que examinan las
características espectrales de la señal a través de análisis tiempo-frecuencia [36], [37]. A pesar de estos esfuerzos de
realizar un método confiable para la correcta identificación de HFO, no existe aún un consenso de que alguno de estos métodos
pueda funcionar mejor que los demás en todas las situaciones. Igualmente, la mayoría de los métodos propuestos requieren
sofisticadas herramientas matemáticas y computacionales para su correcta implementación y operación, lo que hace que se reduzca de
manera considerable la posibilidad de su utilización a nivel clínico o en otros contextos donde médicos u otros investigadores
no técnicos puedan beneficiarse potencialmente de la información provista por estos métodos especializados.
6
Figura 1-1: Ripples registrados en un EEG de superficie
2.
Descripción general de RIPPLELAB
RIPPLELAB es una interfaz gráfica de usuario (GUI)
multi-ventana (¡Error! No se encuentra el origen de la referencia.)
desarrollada en la plataforma MATLAB® (Mathworks®, Natick, MA,
USA) para el análisis de oscilaciones de alta frecuencia (High
Frequecny Oscillations HFO). Esta interface está especialmente diseñada para que sirva como una herramienta amigable e intuitiva para que diversos usuarios, tanto con alta como con poca experticia, puedan explorar y analizar oscilaciones cerebrales, especialmente en rangos de alta frecuencia y para distintos tipos de datos electrofisiológicos. Esta GUI fue desarrollada de una manera modular, lo que le permite a usuarios expertos la modificación e integración de nuevos desarrollos. Se escogió a MATLAB® como herramienta de programación debido a que esta está ampliamente extendida en los centros de investigación de HFOs. Cabe notar que el código fue escrito en la versión 7,12 de MATLAB® pero es compatible con versiones posteriores; además, para su
correcto funcionamiento RIPPLELAB requiere la Toolbox para
procesamiento de señales. Como característica principal es
importante decir que esta GUI fue exclusivamente desarrollada usando código de MATLAB®, y por tanto, no requiere adicional compilación de librerías nativas o funciones externas; por ende, RIPPLELAB puede ser ejecutado sobre cualquier sistema operativo. Como medida preventiva, se recomienda ejecutar esta interfaz en sistemas con suficiente capacidad de memoria RAM (p.e. > 4GB), especialmente cuando se van a procesar grandes cantidades de datos.
El procedimiento completo para la detección y análisis de HFOs mediante RIPPLELAB consiste en una serie de pasos que son presentados en las siguientes sub-secciones y que se encuentran resumidos en la Figura 2-2.
2.1
Importar Archivos y Seleccionar Electrodos
RIPPLELAB tiene la capacidad de importar una amplia variedad de formatos de archivo en donde se incluyen los siguientes:
European Data Format (*.rec, *.edf), Archivos Nicolet (*.eeg),
Archivos Neuralynx (*.ncs), Archivos Micromed (*.TRC), Formato de
archivo EPILEPSIAE (*.data) (Klatt et al., 2012) y Archivos de MATLAB® con una estructura específica (*.mat). Si se requiere,
8
también se puede adicionar nuevos formatos debido a la estructura modular de la interface. El usuario puede seleccionar uno o varios archivos para el análisis de registros de larga duración (Que contengan varios archivos). Cuando un archivo o grupo de archivos es seleccionado para trabajar, todos los electrodos comunes disponibles (en el caso de múltiples archivos) se muestran en la correspondiente lista de visualización (Figura 2-1A). Estos electrodos pueden ser fácilmente adicionados o retirados de la
lista de selección (Con los botones Add y Remove, Figura 2-1A).
Igualmente, se puede modificar el orden con el cual aparecerán los electrodos en la pantalla de visualización mediante el uso de los botones Up y Down.
Cuando ya se haya realizado la selección de los electrodos, el usuario puede visualizar el los datos para pre
botón Display Ch) o ir directamente a detección de HFO (Con el
botón Apply). Si se selecciona esta última opción, la interfaz no
carga todos los electrodos a la memoria sino que solo mantiene la información de cada uno de los canales a analizar, para luego cargar uno por uno en el momento de realizar la detección de HFO
Figura 2-2: Diagrama de pasos para análisis de datos
Cuando ya se haya realizado la selección de los electrodos, el usuario puede visualizar el los datos para pre-procesar (Con el o ir directamente a detección de HFO (Con el ). Si se selecciona esta última opción, la interfaz no carga todos los electrodos a la memoria sino que solo mantiene la información de cada uno de los canales a analizar, para luego
no en el momento de realizar la detección de HFO
Diagrama de pasos para análisis de datos
9
Cuando ya se haya realizado la selección de los electrodos, procesar (Con el o ir directamente a detección de HFO (Con el ). Si se selecciona esta última opción, la interfaz no carga todos los electrodos a la memoria sino que solo mantiene la información de cada uno de los canales a analizar, para luego
2.2
Visualización y pre
RIPPLELAB ofrece opciones útiles para la visualización y el pre-procesamiento de señales (Figura 2
usuario explorar visualmente la señal original y calcular
diferentes medidas para hacer una mejor selección de los
parámetros de los algoritmos de detección. Entre las herramientas de visualización se incluyen:
Configuración de los ejes: La longitud de la ventana,
escala de amplitud y número de grillas por ventana.
Puede modificarse el número de electrodos para
visualizar.
Visualización y pre-procesamiento
ofrece opciones útiles para la visualización y el esamiento de señales (Figura 2-3). La interfaz permite al
usuario explorar visualmente la señal original y calcular
diferentes medidas para hacer una mejor selección de los
de los algoritmos de detección. Entre las herramientas se incluyen:
Configuración de los ejes: La longitud de la ventana, escala de amplitud y número de grillas por ventana.
Puede modificarse el número de electrodos para
visualizar.
10
ofrece opciones útiles para la visualización y el 3). La interfaz permite al
usuario explorar visualmente la señal original y calcular
diferentes medidas para hacer una mejor selección de los
de los algoritmos de detección. Entre las herramientas
Configuración de los ejes: La longitud de la ventana, escala de amplitud y número de grillas por ventana.
11
Opciones para acercar, alejar y mover la visualización
de la señal.
Puede alternarse entre visualización del tiempo
relativo (El cual se referencia al tiempo inicial del registro) y tiempo absoluto (real fecha y hora).
Navegación rápida en el eje de tiempo mediante la barra
deslizable en la zona inferior.
Las opciones de pre-procesamiento incluyen filtrado, análisis tiempo-frecuencia y análisis espectral, los cual se detallan a continuación:
Filtrado: Se pueden ejecutar filtros pasabanda personalizados o rechaza-banda (50 o 60Hz) a un grupo selecto o a todos los electrodos visualizados. Cuando
la opción “All Electrodes” está seleccionada, las
señales visualizadas se reemplazan por; de otra manera, se crea un panel adicional donde las señales filtradas
se muestran debajo de las señales originales (Filtering
Tools Box, Figura 2-3)
Análisis Tiempo-Frecuencia: El usuario tiene la posibilidad de realizar un análisis tiempo frecuencia a la sección visible de un electrodo seleccionado sobre un rango de frecuencias deseado. El análisis tiempo-frecuencia se estima con la transformada Gabor [38], el espectrograma se muestra en un panel paralelo y se actualiza cada vez que el usuario navega a través de la señal. Adicionalmente, se disponen de opciones para cambiar el color, la escala de color y el tipo de
normalización (Original, relativo, normalizado o
z-score) (Time-Frequency Tools Box, Figure 2-3).
Cursores y espectro de potencia: El usuario puede estimar diferentes medidas de los segmentos entre cursores: posiciones de tiempo, amplitudes mínimas, máximas y promedio. Adicionalmente, se puede calcular el espectro de potencia (PS) usando el método de Welch del segmento entre cursores; éste se visualiza en un nuevo panel (Cursors and spectrum Tools Box and PSD panel, Figure 2-3).
3.
Detección y validación de HFOs
Con el fin de proveerle al usuario un soporte completo para
la detección de eventos de alta frecuencia, la interfaz
desarrollada ofrece diversas alternativas para la visualización, manipulación e identificación tanto manual como automática de
HFOs. El botón HFO_Analysis (Primer botón del campo HFO Analysis
Tools en la Figura 2-3) abre la ventana de selección parámetros
para el análisis de HFO denominada HFO – Detection Methods, la
cual es también accesible a través del menú (Tools > HFO –
Detection Methods, Figura 2-3). Cada método incluye una ventana de configuración en donde el usuario puede configurar los parámetros y escoger las diferentes opciones de análisis (Figura 3-1).
3.1
Detección manual de eventos HFO
La opción Visual Marking asiste en la selección manual de
eventos de alta frecuencia basándose en el criterio de usuario y de ciertos características básicas de la señal tales como aquellas sugeridas en [28], [39]. La detección manual sólo puede hacerse sobre un electrodo a la vez, el cual ya debe haber estar visualizado en la interfaz principal de acuerdo al procedimiento descrito en la sección 2.1. Este electrodo se debe seleccionar de
la lista Select Electrodes tal como lo muestra la Figura 3-1A.
Después de seleccionar el rango de frecuencia con el cual la
detección visual será llevada a cabo (Frequency Limits, Figura
3-1A), en la ventana principal de visualización, junto con la señal original se mostrarán la señal filtrada y el espectrograma en el rango de frecuencias especificado tal como lo muestra la Figura 3-2. Adicionalmente, se presenta un nuevo panel en donde se visualizan diversos parámetros útiles para la detección de un evento, tales como lo son el espectro de potencia del segmento que
se encuentra entre cursores; los índices gamma, ripple y fast
ripple [40]. Finalmente, una vez algún HFO sea detectado, se deben colocar los cursores en los límites del evento para luego
guardarse dando clic sobre el botón Set HFO Event. De esta manera,
los segmentos marcados como HFOs serán mostrados en rojo sobre la señal original.
Figura 3-1: Valores para
3.2
Métodos automáticos para la detección de HFOs
Cuatro métodos para la detección automática de eventos se implementaron en RIPPLELAB. Estos se seleccionaron debido a que se han aplicado en recientes estudiospara detectores automáticos de HFO
Métodos automáticos para la detección de HFOs
Cuatro métodos para la detección automática de eventos se implementaron en RIPPLELAB. Estos se seleccionaron debido a que se han aplicado en recientes estudios [30], [41]–[45]. Además, debido 14Métodos automáticos para la detección de HFOs
Cuatro métodos para la detección automática de eventos se implementaron en RIPPLELAB. Estos se seleccionaron debido a que se . Además, debidoa estructura modular, otros métodos de detección pueden ser integrados a la interface. Este es el caso de un nuevo método de detección desarrollado, el cual se basa en las características de tiempo y frecuencia propias de la señal. Para todos los métodos empleados, el usuario puedo emplear los parámetros por defecto los cuales se han propuesto en las publicaciones originales; aún así, el usuario puede también personalizar estos parámetros acorde a las necesidades del análisis.
Figura 3-2: Panel para detección visual de eventos HFO
3.2.1
Detector
El primer método implementado fue
denominado Short Time En
de parámetros se visualiza en la
señal EEG se pasa a través de un filtro pasa alta frecuencia (Parámetro
energía RMS (Root Mean Square
y así, los valores RMS mayores a 5 desviaciones estándar (SD) sobre el promedio RMS (
estos duran al menos 6ms ( seleccionan los eventos
(Min_Oscillation) mayores a 3 SD sobre el valor promedio de la a estructura modular, otros métodos de detección pueden ser integrados a la interface. Este es el caso de un nuevo método de esarrollado, el cual se basa en las características de tiempo y frecuencia propias de la señal. Para todos los métodos empleados, el usuario puedo emplear los parámetros por defecto los cuales se han propuesto en las publicaciones originales; aún así, suario puede también personalizar estos parámetros acorde a las necesidades del análisis.
Panel para detección visual de eventos HFO
Detector Short Time Energy
El primer método implementado fue propuesto por
Short Time Energy (STE), cuya ventana de configuración de parámetros se visualiza en la Figura 3-1B. En este método la señal EEG se pasa a través de un filtro pasa-banda en el rango de
alta frecuencia (Parámetro Frequency Limits). Luego se calcula la
Mean Square) con una ventana de 3ms (RMS_Window
y así, los valores RMS mayores a 5 desviaciones estándar (SD)
sobre el promedio RMS (RMS SD_Threshold) son seleccionados si
estos duran al menos 6ms (Min_Window). Finalmente, solo
los eventos que contengan más de 6 oscilaciones ) mayores a 3 SD sobre el valor promedio de la 15
a estructura modular, otros métodos de detección pueden ser integrados a la interface. Este es el caso de un nuevo método de esarrollado, el cual se basa en las características de tiempo y frecuencia propias de la señal. Para todos los métodos empleados, el usuario puedo emplear los parámetros por defecto los cuales se han propuesto en las publicaciones originales; aún así, suario puede también personalizar estos parámetros acorde a
propuesto por [28] y es cuya ventana de configuración En este método la banda en el rango de ). Luego se calcula la
RMS_Window) y así, los valores RMS mayores a 5 desviaciones estándar (SD) seleccionados si . Finalmente, solo se oscilaciones ) mayores a 3 SD sobre el valor promedio de la
16
señal pasa banda rectificada. Adicionalmente, los eventos
separados por 10ms o menos son marcados como una sola oscilación (Min Gap Time). Aunque la energía puede ser calculada sobre toda la señal original, tal como se propone en la publicación original, también existe la posibilidad de hace el cálculo de energía promedio en segmentos cortos tal como lo recomiendan publicaciones
posteriores (Epoch Selection).
3.2.2
Detector Short Line Length
El segundo algoritmo implementado fue propuesto en [29]y es
conocido como Short Line Length (SLL). Sus parámetros de
configuración se visualizan en la Figura 3-1C.En este enfoque se
realiza una etapa de pre-procesamiento mediante un filtro
derivativo con el fin de ecualizar el espectro de la señal. A
continuación, se aplica un filtro pasa banda (Frequency Limits.
Luego se calcula de la energía de la señal mediante una medida de longitud de línea [46] en ventanas de 5ms. Un evento se considera válido si su amplitud se mantiene por encima del percentil 97,5 de
la distribución cumulativa empírica (Threshold Percentil) cada 3
minutos de señal (Epoch) y además, mantenga una duración mayor a
80ms (Event Min Time).
3.2.3
Detector Hilbert
El tercer método implementado es fue propuesto en [31] y sus parámetros de configuración se visualizan en la Figura 3-1D (HIL). En este método la señal es primero filtrada en un rango de
frecuencias (Frequency Limts) y luego se calcula la envolvente
mediante la señal analítica de la transformada Hilbert. Así, un evento se considera si se cumplen dos condiciones: Primero, el máximo local de cada evento debe exceder el umbral de 5 SD de la
envolvente (SD Threshold) calculado originalmente sobre toda la
longitud de la señal. Segundo, los HFOs deben tener una longitud
mínima de 10ms (Min EventTime)
3.2.4
Detector MNI
El último método implementado que ya ha sido publicado
previamente es el detector MNI [30]. Sus parámetros de
configuración se visualizan en la Figura 3-1E. En este método se le aplica primeramente un filtro pasa-banda a la señal original (Frequency Limits). Luego, se realiza un procedimiento de detección de señal de referencia basado en la entropía wavelet [47]. Para esto, la señal se divide en segmentos de 125ms (Baseline Segment) con un solapamiento de 50% (Baseline Shift). A continuación, se calcula la potencia de la función de correlación de la transformada Wavelet para cada uno de estos segmentos utilizando la wavelet madre compleja tipo Morle. Subsecuentemente, la entropía wavelet máxima se obtiene para el ruido blanco [48] y
17
es considerado como señal de referencia cuando la entropía mínima
del intervalo analizado es mayor que un umbral (Baseline
Threshold). Si existe suficiente cantidad de “señal de referencia”, los HFO candidatos son seleccionados basándose en la energía definida como el promedio móvil de la amplitud RMS en la señal filtrada. Los segmentos con energía por encima del umbral
por más de 10ms (minWindow) son considerados HFO. Igual que otros
métodos descritos, los eventos separados por menos de 10ms son
considerados como un solo evento (Min Gap Time). En el caso de que
no exista suficiente cantidad de señal de referencia, se realiza un procedimiento iterativo en el cual el umbral de detección se calcula en intervalos de 1min
3.2.5
Detector Tiempo – Frecuencia
El detector de tiempo-frecuencia (TFE) fue desarrollado en el transcurso del presente trabajo. Éste método está basado en el análisis de la energía y de la entropía de las matrices de representación tiempo – frecuencia de los HFO, calculadas mediante del escalograma de la transformada Wavelet. En publicaciones anteriores, le detección de HFO se realizaba de manera manual asistida por el cálculo de la representación tiempo – frecuencia a lo largo de la señal [49]. En la misma línea, en [31] se sugiere que la detección de los HFO se puede lograr si se logra identificar morfologías particulares de los eventos HFO en el espectrograma. Por su parte, en [50] esas morfologías fueron
ampliamente estudiadas resaltando las diferencia para Sharp Waves,
Ripples, Fast Ripples, y fenómenos de filtrado.
Figura 3-3: Parámetros de configuración método Tiempo – Frecuencia
18
En la detección por tiempo - frecuencia, se parte de la premisa de analizar exclusivamente el diagrama tiempo – frecuencia de la señal objetivo, en donde el proceso de umbralización sea intuitivo, no se requiera filtraje adicional y en el cual la identificación de los HFO sea lo más similar a como se haría con el humano en un diagrama tiempo – frecuencia. A partir de lo anterior, el proceso general de detección de eventos se describe a continuación, los parámetros de configuración se observan en la Figura 3-3:
Segmentación: Se establece un ancho de ventana para
calcular el espectrograma (Epoch). Para prevenir pérdida
de eventos por efecto de bordes, es necesario solapar las ventanas consecutivas en una sección del ancho de
ventana (Shift Epoch).
Análisis tiempo – frecuencia: Se realiza el análisis tiempo - frecuencia utilizando la Transformada Wavelet
Gabor (FreqResolution).
Ecualización de espectrograma: Para evitar interferencias por efectos de eventos con frecuencias constante (p.e. armónicos), se realiza una ecualización del espectrograma. Primero se acentúan los eventos de corta duración mediante un proceso de normalización (z-score) por cada banda de frecuencia calculada. A
continuación, se acentúa el contraste de los
coeficientes usando una función sigmoide [51], de esta forma los coeficientes de menor valor se reducen y los de mayor valor se amplifican. Así, los valores de coeficientes se compactan en el intervalo [0,1].
Caracterización: Se realiza el cálculo de la energía y la entropía de cada segmento de ventana tal como se describe en [52]. Así, la energía y la entropía de cada segmento se calculan a lo largo de toda la extensión de la señal (p.e. una hora).
Clasificación: Si un HFO existe en un segmento determinado, la energía y la entropía de dicho intervalo es mucho menor a la energía y entropía promedio, Por ende, si hay suficientes eventos HFO se establecerá una distribución bi-modal tanto para los valores de energía como los valores de entropía. Así, a los segmentos que se encuentran en las distribuciones inferiores de estas dos variables (separadas por el mínimo valor entre las dos modas) se les consideran como segmentos con posibilidad de contener HFO.
Pre-procesamiento: Después de la clasificación de los segmentos, se debe identificar la posición del evento de alta frecuencia que contienen. Para esto, se le aplica
19
un umbral a los valores de los coeficientes del
espectrograma (Coef. Threshold) creando una matriz
binaria con un conjunto de objetos formados por las vecindades de elementos con valores diferentes de cero. Se analizan entonces todos las objetos de la matriz y se establece como HFO si el objeto tiene una extensión en
tiempo igual o mayor al tiempo cubierto por 4
oscilaciones de la banda de frecuencia en la que el
objeto de encuentra (Min Oscillations)
3.3
Selección adecuada del detector
Una vez se haya ejecutado el algoritmo de detección seleccionado, es posible navegar a través de la señal y visualizar los eventos detectados. Las localizaciones temporales de cada HFO son presentadas como clústeres de líneas verticales en la barra inferior paralela a la barra deslizable de tiempo, tal como lo
muestra la Figura 2-3 en el campo denominado Long Term Detected
HFO Clusters. Además, cuando se hace clic sobre cada uno de estos clústeres, proveen un acceso directo a la posición de los HFOs detectados.
Con el fin de ayudar al usuario a escoger el método adecuado a sus necesidades, se deben tener ciertas consideraciones. Primero es necesario notar que las bandas de frecuencia con las que fueron diseñados todos los métodos son substancialmente diferentes. De
hecho, el detector STE fue diseñado para encontrar Ripples en el
rango de frecuencia entre 75 y 175Hz, así como también para hallar
Fast Ripples en la banda de los 200Hz hasta los 600Hz. Contrariamente, el método SLL realiza una detección sobre la banda de frecuencias entre los 30 y los 100Hz enfatizando las frecuencias altas a través de un filtro derivativo. Por otra parte, el detector Hilbert se enfoca en el rango de frecuencias entre 180 y 400Hz y el método MNI centra su detección en el rango de los 80 a los 450Hz, igualmente que el detector Tiempo-Frecuencia. Otra diferencia entre los métodos es su definición de la duración del evento, especialmente los detectores STE y MNI establecen 6ms y 10ms respectivamente como duraciones mínimas de un HFO. Por el contrario, el detector de tiempo – frecuencia no realiza ningún filtro y la definición de duración de un evento HFO depende de la frecuencia en la que se localice, sin embargo, para la detección depende de la identificación de dos distribuciones bimodales de la energía y la entropía, por ende, si no se encuentran suficientes eventos que formen estas distribuciones, entonces la calidad de la detección ser verá limitada. En conclusión, cuándo se selecciones un método a implementar, yo sugiero establecer los límites de frecuencia en cualquiera de los métodos en el rango de interés y, posteriormente, realizar la detección con todos los métodos sobre un corto segmento de señal bien conocida para mirar cuál de todos estos métodos se ajusta mejor a las necesidades del usuario.
20
3.4
Validación de los eventos detectados
Para un análisis más detallado de los eventos detectados, se
desarrolló una interfaz especial adicional (HFO Analysis Tool).
Esta facilita desarrollo del procedimiento de validación visual
(Figura 3-4). Esta interfaz se compone de las siguientes
secciones:
El panel General Information presenta el nombre del
archivo analizado, el método de detección seleccionado y el electrodo actual seleccionado.
El panel izquierdo presenta un corto segmento del HFO
individual (un segundo alrededor del evento). En el panel superior se muestra el segmento original de la señal con el HFO resaltado en rojo. El segmento filtrado y el diagrama tiempo-frecuencia se presentan en el panel intermedio y el inferior correspondientemente. La barra superior contiene los controles para la modificación de los ejes en tiempo y amplitud, el control de la grilla y tanto los controles del mapa de colores como el del método de visualización del espectrograma.
En el área Selection Panel permite a los usuarios la
selección del evento que se desee visualizar. Eventos válidos pueden ser confirmados y eventos falsos pueden ser rechazados. Los controles del panel Scan ofrecen
tres diferentes posibilidades: la opción Display permite
la visualización automática de todos los HFO detectados. La función Auto-Classify sugiere una clasificación de
los eventos como gamma, ripple, fast ripple, spike,
artefacto u otro (ruido). Esta clasificación está basada en las características espectrales de cada uno de los
eventos. Finalmente la función Remove Others permite al
usuario borrar todos los eventos clasificados como Otros.
El panel Frequency Controls permite al usuario la
modificación de los límites en frecuencia del filtro del segmento y del diagram tiempo-frecuencia. Adicionalmete el usuario tiene la opción de escoger el tipo de espectro de potencia del segmento entre cursores. Las opciones posibles para el cálculo del espectro son: El método Welch, el valor promedio en tiempo de la transformada tiempo-frecuencia y por último, la magnitud de la transformada rápida de Fourier.
En la sección Event Panel permite al usuario hacer
cambios a los límites en tiempo del evento seleccionado a través de los cursores provistos para este efecto. En este panel, el usuario puede definir el evento de
fast ripple, spike, artifact
adicionar nuevos tipos si esto es requerido.
Adicionalmente, se le proporciona al usuario inform sobre los máximos valores en frecuencia
como también la
índices gamma,
proporcionan para que sirvan de referencia de hacer la clasificación o validació
Figura 3-4: Interface para validación de eventos detectados
Para facilitar el proceso de validación, se implementaron una serie de accesos rápidos:
Shift + Arrow left or Shift + Arrow right: posición del cursor izquierdo
Ctrl + Arrow left or Shift + Ctrl right: posición del cursor
Alt + Enter:
seleccionado a la
D key: mueve el evento sel eventos rechazados.
A key: mueve el último evento de la lista de eventos rechazados a la lista de eventos detectados.
fast ripple, spike, artifact u del tipo other. Se pueden
adicionar nuevos tipos si esto es requerido.
Adicionalmente, se le proporciona al usuario inform
sobre los máximos valores en frecuencia por banda, así como también la duración del evento. Por último, los
gamma, ripple y fast ripples también se proporcionan para que sirvan de referencia en el momento de hacer la clasificación o validación.
Interface para validación de eventos detectados
Para facilitar el proceso de validación, se implementaron una serie de accesos rápidos:
Shift + Arrow left or Shift + Arrow right: control posición del cursor izquierdo.
Ctrl + Arrow left or Shift + Ctrl right: controla la posición del cursor derecho.
Alt + Enter: Reposiciona los límites del HFO
seleccionado a la posición de los cursores.
mueve el evento seleccionado a la lista eventos rechazados.
mueve el último evento de la lista de eventos rechazados a la lista de eventos detectados.
21
. Se pueden
adicionar nuevos tipos si esto es requerido.
Adicionalmente, se le proporciona al usuario información por banda, así Por último, los también se en el momento
Para facilitar el proceso de validación, se implementaron una
controla la
controla la
Reposiciona los límites del HFO
cionado a la lista de
22
3.5
Guardar y recuperar detecciones
Los resultados generados en una sesión de análisis son guardados en archivos para una futura revisión y validación. Para este propósito, una estructura personalizada de archivo MATLAB® de extensión .mat es modificada a .rhfe. El usuario puede ingresar un nombre específico o mantener el nombre original del archivo (usando el carácter * como entrada) para mantener el rastreo del análisis. Igualmente, también se pueden guardar el registro de las funciones ejecutadas durante el proceso de detección, incluyendo información general acerca del método de detección de los eventos.
4.
Caso Estudio
Con el fin de evaluar el funcionamiento de la interfaz, se realizó un análisis intensivo sobre registros de dieciséis pacientes con macro-electrodos invasivos de la base de datos EPILEPSIAE [53]. Esta base de datos contiene registros EEG de largo duración de pacientes epilépticos (un total de 275), acompañados de anotaciones estandarizadas de cada uno de las señales adquiridas. Todos los pacientes que pertenecen a la base de datos fueron implantados con electrodos invasivos (electrodos de profundidad, subdurales o en grilla) como parte de un procedimiento clínico para determinar la región epiléptica. En este trabajo, primero se analizó la detección automática de eventos HFO para grandes cantidades de señal de una manera no supervisada utilizando los métodos de detección que ya han sido publicados, y luego, se realizó un estudio de la validación visual
de los eventos candidatos. Por otra parte, en un segundo examen se
ejecutó un análisis comparativo de la detección de los algoritmos implementados y el algoritmo desarrollado en el presente trabajo.
4.1 Análisis de detección no supervisada
Para este primer caso se seleccionaron dos noches para cada paciente, una de ellas sin ningún tipo de crisis marcado clínicamente. Sin embargo, dos pacientes no presentaron noches libre de crisis y por tanto sólo una noche de estos fue incluida. Para este análisis se seleccionaron únicamente los electrodos que
estuvieran marcados en el foco epiléptico (n=205 para 16
pacientes). En total, se analizaron 3471 horas de registro EEG intracraneal muestreadas a 1024Hz ultilizando los métodos de
detección Short Time Energy y Short Line Length. Estos métodos se
seleccionaron ya que se su uso es el más generalizado en las publicaciones sobre detección de HFO. Para su implementación, se definieron épocas de 180sec para el cómputo de energía y un rango de frecuencias de 80 – 500Hz. Como resultado, el método SLL detectó la mayor cantidad de eventos en comparación al detector STE (1.040.437 y 252.642 eventos detectados respectivamente). Adicionalmente, el detector SLL se ejecutó ligeramente más rápido que el detector STE con un promedio de 30.52±10.2 segundos por hora analizada, comparada con 32.07±10.6 segundos por hora
24
analizada en el caso del detector STE. Un resumen completo de este análisis puede observarse en la Tabla 1.
Tabla 1. Resultados de rendimiento para detección no supervisada
Patient Number of Electrodes
Time analyzed (Hours)
STE SLL
Events detected
Processing time (Sec) (mean ± SD)
Events detected
Processing time (Sec) (mean ± SD)
pat_107302 5 102,87 10.169,00 33.10 ± 6.1 51.524,00 33.88 ± 10.7
pat_107702 8 172,29 3.071,00 33.18 ± 5.9 14.922,00 35.34 ± 12.2
pat_107802 40 365,53 38.550,00 31.76 ± 9.5 73.439,00 26.10 ± 7.1
pat_108402 20 429,87 30.560,00 34.27 ± 4.1 140.863,00 32.12 ± 3.0
pat_115002 6 128,27 5.368,00 34.59 ± 11.7 13.384,00 34.44 ± 11.8
pat_132502 11 220,18 14.548,00 32.26 ± 4.6 55.301,00 32.26 ± 4.5
pat_44202 5 100,00 3.081,00 32.62 ± 3.0 28.822,00 34.20 ± 12.0
pat_54802 7 63,00 3.174,00 34.45 ± 12.2 25.025,00 31.42 ± 5.5
pat_58302 7 136,10 33,00 7.98 ± 1.5 151.028,00 6.67 ± 0.7
pat_59002 16 305,27 27.448,00 35.47 ± 19.9 176.545,00 34.60 ± 19.0
pat_62002 5 99,66 3.527,00 32.01 ± 13.3 40.403,00 33.46 ± 11.5
pat_63502 22 232,78 5.448,00 32.62 ± 8.4 36.737,00 30.80 ± 7.2
pat_81802 4 76,79 3.075,00 29.76 ± 10.6 12.722,00 28.45 ± 7.7
pat_91602 9 192,49 16.637,00 32.64 ± 4.1 74.320,00 32.58 ± 3.6
pat_92202 19 389,80 13.150,00 30.96 ± 7.1 62.471,00 29.20 ± 6.4
pat_95802 21 456,38 74.803,00 36.13 ± 3.1 82.931,00 31.56 ± 2.0
TOTAL 205 3.471,27 252.642,00 - 1.040.437,00 -
AVERAGE 12,81 216,95 15.790,13 32.07 ± 10.6 65.027,31 30.52 ± 10.2
4.2 Resultados de validación visual.
Para realizar la validación visual de eventos HFO, de las señales analizadas en el procedimiento anterior, se escogieron segmentos de 20 segundos con un alto grado de detección con ambos eventos (entre 100 y 1000 por hora). Luego, 22 de estos segmentos fueron seleccionados aleatoriamente para estudiar en la validación visual. A cada uno de estos intervalos de señal, se le aplicaron los cuatro métodos de detección publicados en trabajos anteriores. Como se recomienda en [39], sólo los eventos con al menos cuatro
oscilaciones y una duración mínima de 25ms entre eventos
adyacentes fueron considerados como HFO. Los eventos de gran amplitud y con morfología de punta aguda se consideraron como
Spikes y el resto de eventos fueron clasificados como ruido o
Tabla 2. Resultados de validación visual para los métodos de detección
Patient
Segment Electrode
STE
TOTAL SLL TOTAL HIL TOTAL MNI TOTAL
Others Spikes HFOs Others Spikes HFOs Others Spikes HFOs Others Spikes HFOs pat_107302
02102_0022 HRC1 47 0 0 47 331 2 27 360 100 11 1 112 363 35 21 419 04102_0034 HRC1 0 22 43 65 6 33 56 95 3 94 30 127 17 192 139 348 pat_107702
01102_0084 HAR1 1 0 82 83 16 8 223 247 4 25 198 227 44 82 336 462 pat_107802
02102_0015 GC7 0 2 71 73 4 8 110 122 4 22 142 168 7 22 194 223 pat_108402
01102_0034 GA5 4 13 1 18 30 29 5 64 12 57 14 83 131 88 32 251 01102_0159 GB5 19 24 1 44 118 34 0 152 69 79 6 154 226 164 11 401 pat_115002
00102_0054 LHA1 0 42 0 42 36 34 2 72 2 73 3 78 23 105 7 135 00102_0083 LHA1 0 15 20 35 22 25 52 99 2 58 44 104 9 208 67 284 pat_132502
01102_0012 FAL1 1 62 0 63 90 29 0 119 0 153 0 153 68 205 4 277
01102_0082 CAL2 3 6 0 9 16 0 0 16 3 12 0 15 34 15 0 49
pat_44202
01102_0008 TBA3 4 39 0 43 149 15 14 178 6 79 0 85 97 95 0 192 pat_54802
02102_0095 HL8 14 3 50 67 90 39 304 433 49 30 37 116 174 84 180 438 pat_59002
00102_0059 HR4 4 34 6 44 121 67 22 210 14 110 18 142 102 187 23 312 01102_0084 HR3 16 31 15 62 88 43 64 195 24 85 22 131 161 116 95 372 pat_63502
00102_0088 HRC1 1 1 47 49 49 0 158 207 4 6 94 104 17 6 135 158 pat_81802
02102_0085 GA8 10 0 0 10 114 0 0 114 10 0 0 10 151 0 0 151 pat_91602
01102_0008 F8 37 0 0 37 210 0 0 210 66 0 0 66 472 0 0 472 01102_0131 F8 42 0 0 42 102 0 0 102 84 0 0 84 214 0 0 214 pat_92202
00102_0006 GB2 2 27 0 29 112 137 0 249 3 317 0 320 60 645 0 705 00102_0052 GB2 0 39 0 39 1 132 42 175 0 246 101 347 0 439 157 596 pat_95802
00102_0051 TBD6 0 0 30 30 43 5 28 76 7 48 165 220 99 62 275 436 01102_0082 OPL6 0 0 52 52 3 5 57 65 31 4 156 191 45 31 253 329
TOTAL DETECTIONS 205 360 418 983 1751 645 1164 3560 497 1509 1031 3037 2514 2781 1929 7224
26
En la Tabla 2 se presenta un resumen detallado de los resultados para la validación visual. En total se validaron visualmente 14.804 eventos. Para todos los métodos, 4.542 eventos
fueron clasificados como HFO, 5.115 como Spikes y 4967 como
Others. En este estudio, el detector MNI presentó la mayor cantidad de detecciones de HFO (n=1929), pero a la vez, este detector presentó el mayor nivel de falsas detecciones (Los eventos marcados como HFO sólo corresponden al 27% del total de eventos detectados). Contrariamente, el detector STE detectó la menor cantidad de eventos, pero también la mayor tasa de detección
(n=418, que corresponde al 43% del total de eventos
identificados). Adicionalmente, el detector Hilbert obtuvo la
mayor tasa de identificación de Spikes (50%) y el método SLL la
mayor tasa de detección de ruido y artefactos (49%). Este último resultado tiene grandes implicaciones sobre el primer análisis efectuado en la sección 4.1, ya que aunque el detector SLL entregó la mayor cantidad de eventos identificados, no quiere decir que todos esos 1.040.437 sean efectivamente HFOs (Tabla 1); aunque también, la cantidad de eventos reales detectados sea mayor en SLL que en STE.
La Figura 4-1 presenta los casos típicos de los eventos detectados y validados a través de la interfaz. En este gráfico, se muestra el evento detectado a lo largo de una ventana de 300ms, además, también se incluye el segmento filtrado entre 60 - 500Hz y el espectrograma correspondiente las frecuencias en el mismo rango. En la sección (a) de la Figura 4-1 se incluyen casos de eventos reales y en la sección (b) las falsas detecciones. Tal como lo hace la interfaz HFO Analysis Tool, los ejes en las filas (A) corresponden a los segmentos detectados, la señal filtrada se muestra en las filas (B) y los diagramas tiempo-frecuencia en las filas (C). Para los eventos detectados, (A1) muestra un evento
gamma, (A2) un ripple y (A3) un fast ripple. Igualmente, en las
falsas detecciones, (B1) presenta un Spike, (B2) un artefacto y
(B3) ruido de fondo.
A pesar de que el propósito principal de este análisis es evaluar las características y posibilidades de RIPPLELAB y no
realizar una comparación rigurosa entre los métodos, los
resultados aquí presentados son consistentes con otros estudios en donde el detector MNI presentó la mayor sensibilidad y una tasa de detección de falsos positivos superior a los entre los métodos aquí presentados [30], [54].
Figura 4-1: Eventos típicos identificados por los métodos de detecciónEventos típicos identificados por los métodos de detección
27
28
4.3 Estudio comparativo de los métodos de detección
En esta última prueba, se desea comparar el rendimiento del método de detección por Tiempo-Frecuencia desarrollado en este trabajo con los métodos anteriormente publicados e implementados en la interfaz. Para ello, además de estudiar la capacidad de detección de cada método, se desea conocer los efectos de la amplitud y frecuencia del HFO sobre la sensibilidad de los algoritmos. Por consiguiente, para tener control sobre estos parámetros, este estudio comparativo se realizó en base a la detección de eventos simulados sobre registros EEG reales tal como se muestra a continuación.4.3.1 Selección de segmentos EEG
Para la realización de este estudio lo primero que se ejecutó fue la selección de los segmentos EEG sobre los cuales se haría la simulación de los eventos HFO. Para ello se escogieron seis segmentos una hora de registro en las cuales el electrodo analizado no presentara eventos HFO claramente identificables por
ninguno de los cuatro métodos de detección anteriormente
publicados. De estos seis segmentos, dos corresponden a una
actividad de señal de baja amplitud (REM o AWAKE), otros dos
corresponden a una actividad en la cual se presenta una alta cantidad de ondas lentas y por último, otros dos eventos en los
cuales exista una alta concentración de spikes tal como se
presenta en la Tabla 3.
Tabla 3. Segmentos seleccionados para análisis comparativo
Mixed frequencies and low amplitude (Group 1)
Low Frequency ad high amplitude (Group 2)
High spike activity (Group 3)
Segment Name Elect Segment Name Elect Segment Name Elect
91601102_0009 LA1 81802102_0032 TBA1 132501102_0010 CAL1 115000102_0074 AH1 44202102_0043 HRB1 44201102_0008 TBA1
4.3.2 Simulación de Eventos HFO
En cada segmento de una hora de duración se simularon 600 eventos HFO, para un total de 3600, los cuales cumplían las siguientes condiciones:
Cada evento fue aleatoriamente asignado a alguna de las
bandas de frecuencia gamma (80-120Hz), Ripple (121-240Hz) o Fast Ripple (241-450Hz) a partir de una distribución uniforme. La frecuencia del evento es un
29
valor entero y aleatorio de la banda de frecuencias a la cual fue asignado.
Los Eventos simulados se distribuyeron aleatoriamente a
lo largo de todo el registro. Además se estableció la restricción de que dos eventos vecinos no estuviesen a menos de 50ms el uno del otro.
Cada evento se construyó a partir de una onda sinusoidal
con la frecuencia asignada, modulada por una ventana gaussiana. La duración del evento se estableció de tal
forma que un número n de oscilaciones cubriera el
intervalo central conformado por µ±2σ de la ventana de
gauss moduladora. En donde n representa un número
aleatorio entre cuatro y diez, µ el valor medio de la ventana de gauss y σ su desviación estándar.
La amplitud de cada evento se asignó tal que
correspondiese al valor promedio de la amplitud del intervalo de señal EEG cinco segundos alrededor de la
posición del evento simulado, más N desviaciones
estándar de la amplitud en el mismo intervalo. El valor N se asignó con probabilidad uniforme de ser un número entero en el intervalo [2,10].
4.3.3 Resultados de la detección de HFO simulados.
Para hacer el estudio comparativo se aplicaron los cuatro
métodos publicados (HIL, MNI, SLL, STE) e igualmente el método
desarrollado (TFE) con nueve distintas configuraciones de los
parámetros de detección, tal como se encuentra indicado en la Tabla 4. Estas variaciones de parámetros se realizaron con el fin de observar los efectos de las distintas configuraciones sobre la capacidad de detección del método de Tiempo-Frecuencia. En todos los casos la detección se estableció para que se realizara en la banda de frecuencias de 80 – 500Hz.
El resultado de la detección de eventos para todos los segmentos analizados se muestra en la Figura 4-2, en ella puede observarse que el método con mejor sensibilidad (porcentaje de eventos reales detectados) fue el detector Tiempo-Frecuencia (TFE), particularmente con la configuración en la cual se hace un análisis con ventanas de 700ms solapadas un 20% (Denominada
TFE(7)(2) en las figuras). Así mismo, en concordancia con los resultados de la sección anterior, el detector MNI tiene la mayor sensibilidad entre los métodos previamente publicados. En adelante se presentará la comparativa entre los métodos publicados y la
configuración del detector TFE con los mejores resultados
30
Tabla 4. Configuraciones de los detectores para el análisis comparativo
Detection Method Settings Label
Hilbert Detector Analysis Epoch: 180s
All other settings as published by the author [31] HIL MNI Detector All settings as published by the author [30] MNI Short Line Length
Detector
Min time for HFO: 8ms
All other settings as published by the author [29] SLL Short Time Energy
Detector
Analysis Epoch : 180ms
All other settings as published by the author [28] STE
Time-Frequency Energy and Entropy method
Analysis Epoch: 300ms
Shift Epoch: 0.2
Min Oscillations: 4
TF Threshold: 0.5 TFE(3)(2)
Analysis Epoch: 300ms
Shift Epoch: 0.5
Min Oscillations: 4
TF Threshold: 0.5 TFE(3)(5)
Analysis Epoch: 300ms
Shift Epoch: 0.8
Min Oscillations: 4
TF Threshold: 0.5 TFE(3)(8)
Analysis Epoch: 500ms
Shift Epoch: 0.2
Min Oscillations: 4
TF Threshold: 0.5 TFE(5)(2)
Analysis Epoch: 500ms
Shift Epoch: 0.5
Min Oscillations: 4
TF Threshold: 0.5 TFE(5)(5)
Analysis Epoch: 500ms
Shift Epoch: 0.8
Min Oscillations: 4
TF Threshold: 0.5 TFE(5)(8)
Analysis Epoch: 700ms
Shift Epoch: 0.2
Min Oscillations: 4
TF Threshold: 0.5 TFE(7)(2)
Analysis Epoch: 700ms
Shift Epoch: 0.5
Min Oscillations: 4
TF Threshold: 0.5 TFE(7)(5)
Analysis Epoch: 700ms
Shift Epoch: 0.8
Min Oscillations: 4
TF Threshold: 0.5 TFE(7)(8)
A pesar de los buenos resultados del detector TFE, hay que tener presente que las características de los segmentos escogidos son diferentes y por ende, la sensibilidad de la detección es variable. Por ejemplo, en la Figura 4-3 se observa claramente que para los distintos segmentos analizados, el rendimiento de cada uno de los métodos estudiados varía considerablemente. Igualmente, esta diversidad de los resultados no está dada en un principio por las características generales descritas en la Tabla 3, sino más bien por las características específicas de cada señal; de esta manera, se observa el alto grado de variación en la detección de los eventos simulados dentro de las señales clasificadas en un mismo grupo. Otra característica importante que puede observarse en esta mima figura, es la relativa estabilidad que el método TFE mantiene por sobre los otros detectores al analizar los diversos
segmentos; nótese por ejemplo como para los segmentos
44202102_0043 y 44201102_0008, la sensibilidad de los métodos HIL y MNI fue mejor que la del detector TFE, sin embargo, para los demás segmentos analizados la detección de éste último fue considerablemente mejor.
31
Figura 4-2: Resultados de la detección de la totalidad de eventos simulados
Figura 4-3: Resultados de la detección por segmento analizado
Ahora, tal como se indicó al inicio de la presente sección, el principal objetivo de realizar el análisis comparativo de los métodos mediante la detección de eventos simulados, es estudiar los efectos de la amplitud y la frecuencia propios de los HFO en el rendimiento de cada método. Para este efecto, se realizó un análisis de la sensibilidad de los detectores respecto a dichas medidas. 0,0% 10,0% 20,0% 30,0% 40,0% 50,0% 60,0% 70,0% 80,0% 90,0% Sensitiv ity Detection Method 0,0% 20,0% 40,0% 60,0% 80,0% 100,0% 120,0%
HIL MNI SLL STE TFE(7)(2)
Sensitiv ity Detection Method 91601102_0009 115000102_0074 44202102_0043 81801102_0032 44201102_0008 132501102_0010 Group 3 Gr oup 2 Gr oup 1