PI113-04-DetecEmbolAuto Algoritmo De Detección...
Transcript of PI113-04-DetecEmbolAuto Algoritmo De Detección...
PI113-04-DetecEmbolAuto
Algoritmo De Detección Automática De Embolias Pulmonares En
Imágenes Tridimensionales De Tomografía Axial Computarizada
http://pegasus.javeriana.edu.co/~PI113-04-DetecEmbolAuto
Luis Andrés Almanza Caicedo
Pontificia Universidad Javeriana
Facultad de ingeniería
Maestría en Ingeniería de Sistemas y Computación
Bogotá, D.C.
2014
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
PI113-04-DetecEmbolAuto
Algoritmo De Detección Automática De Embolias Pulmonares En
Imágenes Tridimensionales De Tomografía Axial Computarizada
Autores:
Luis Andrés Almanza Caicedo
Memoria del trabajo del grado realizado para cumplir uno de los
requisitos para optar al título de magíster en ingeniería de sistemas y
computación
Director
Leonardo Flórez Valencia
Jurados del trabajo de grado
Pontificia Universidad Javeriana
Facultad de ingeniería
Carrera de ingeniería de sistemas
Bogotá, D.C.
Julio, 2014
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Pontificia Universidad Javeriana
Facultad de ingeniería
Carrera de ingeniería de sistemas
Rector magnífico
Joaquín Emilio Sánchez García S.J.
Decano académico facultad de ingeniería
Ingeniero Jorge Luis Sánchez Téllez
Decano del medio universitario facultad de ingeniería
Padre Antonio José Sarmiento Nova S.J.
Director maestría en ingeniería de sistemas y computación
Ingeniero Enrique González
Director departamento de ingeniería de sistemas
Ingeniero Rafael González
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Artículo 23 de la resolución No. 1 de junio de 1946
�La Universidad no se hace responsable de los conceptos emitidos por sus alumnos en
sus proyectos de grado. Sólo velará porque no se publique nada contrario al dogma y la
moral católica y porque no contengan ataques o polémicas puramente personales. Antes
bien, que se vean en ellos el anhelo de buscar la verdad y la justicia�
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Abstract
A pulmonary embolism is a blood clot that travels to the lungs , this is commonly
forms in the veins of the legs, around 20% of these are detached from the vein walls and
travel to the pulmonary circulation , the blood clotted larger can be deadly. Pulmonary
embolism is the most common cause of preventable hospital deaths, even though many
of these cases can be treated e�ectively and easily, with treatment the mortality rate is
reduced from 30% to between 2% and 8%, despite this only 50% of cases are diagnosed
early. There are several methods to detect pulmonary embolisms, one of which has
gained acceptance because it is minimally invasive is computed tomography. In this,
the detection of pulmonary embolism in medical images is investigated by CT scan,
in the �rst chapter the medical context is presented, then the algorithms developed
for this purpose, to subsequently be submitted detailing the selected algorithm and its
implementation, and �nally the results and conclusions are presented.
Página 9
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Resumen
Un embolismo pulmonar es un coágulo de sangre que llega a los pulmones y que
frecuentemente se forma en las venas de las piernas, alrededor de un 20% de estos
se desprenden de las paredes venosas y viajan a la circulación pulmonar en donde los
coágulos de sangre más grandes pueden ser mortales.
La embolia pulmonar es la causa más frecuente de muertes hospitalarias prevenibles
a pesar de que muchos de estos casos se pueden tratar de forma efectiva y sencilla, la tasa
de mortalidad se reduce desde un 30% a entre 2% y 8% y a pesar de esto solo un 50%
de los casos se diagnostican a tiempo por medio de varios métodos como la tomografía
axial computarizad, la cual ha ganado aceptación por ser mínimamente invasiva.
En este trabajo de grado, se investiga la detección de embolias pulmonares en imá-
genes médicas de tomografía axial computarizada, en el primer capítulo se presenta el
contexto médico, a continuación los algoritmos estudiados para este �n, para posterior-
mente presentar el algoritmo seleccionado y detallar su implementación, y por último se
presentan los resultados obtenidos y conclusiones.
Página 10
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Resumen ejecutivo
Las enfermedades cardiovasculares (EVC) son la principal causa de muerte en el
mundo, en 2005 murieron 17,5 millones de personas, lo cual representa un 30% de todas
las muertes registradas en el mundo[1] de las enfermedades cardiovasculares.
La embolia pulmonar es una enfermedad que puede ser difícil de diagnosticar ya que
los síntomas son muy generales y son parecidos a los de otras enfermedades. Adicional-
mente el historial médico y la exploración del paciente son muy importantes para su
detección.[2]
Como nos presenta el Dr.Gil [3], �La embolia pulmonar es la causa más frecuente de
muerte de las cirugías electivas, y una complicación que presentan muchos pacientes hos-
pitalizados por patologías cardíacas, respiratorias y oncológicas. Muchos de estos casos
se pueden prevenir en forma efectiva y sencilla, reduciendo su morbilidad y mortalidad,
por lo que se considera a la embolia pulmonar como la causa más frecuente de muertes
hospitalarias prevenibles. A pesar de ello, en todo el mundo, un alto porcentaje de los
pacientes que tienen indicación de pro�laxis no la reciben. Por otra parte, el tratamien-
to de la embolia pulmonar reduce la mortalidad desde 30% a cifras entre 2 a 8%. Sin
embargo, sólo un 50% de los pacientes con embolia pulmonar se diagnostica a tiempo.
En este capítulo revisaremos nuevos conceptos en pro�laxis, diagnóstico y tratamiento
de esta enfermedad.�
Uno de los exámenes que tiene mayor precisión y que presenta ventajas por ser
poco invasivo es la tomografía axial computarizada, adicionalmente es el examen con
mayor rendimiento con una sensibilidad del 83% y especi�cidad del 96%, la salida de
un TAC (Tomografía axial computarizada) es una imagen en 3D que es la entrada para
el algoritmo de detección de embolias pulmonares.[3]
El sistema CAD (por su siglas en ingles computer-aided detection) permite detectar
embolias y apoyar al médico en el proceso de detección ágil para poder iniciar con el
tratamiento lo más pronto posible. Si al paciente, con apoyo del programa implementado
se le detecta la presencia de embolia pulmonar, el tratamiento usualmente consta de
anticoagulantes como heparina, que son adelgazadores de la sangre, y a continuación
para estabilizar el coágulo warfarina, que es un anticoagulante de administración oral que
ayuda a prevenir coágulos adicionales y permite restaurar el �ujo sanguíneo normal en
los pulmones. Si el coágulo es grande, se pueden recetar trombolíticos que son conocidos
como destructores de coágulos para eliminarlos. Y también se puede administrar oxígeno
y sedantes para hacer sentir mejor al paciente.[2]
Para este trabajo de grado se investigaron diferentes algoritmos para la detección
Página 11
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
de embolias pulmonares que se describen en este documento, presentando las diferentes
aproximaciones. Se estudiaron Mazutani[4], Prieto[5], Sebbe[6], y Bouma [7], tambien
se numeran diferentes aproximaciones por medío de las redes neuronales Tourassi[8],
Scurell[9], Serpen[10] y Park[11], escogiendo como algoritmo base el de Bouma[7], ya que
recoge los anteriores para presentar un algoritmo integrado, posteriormente se detalla su
implementación y por último se presentan los resultados obtenidos y conclusiones.
Página 12
Contenido
1. Introducción 15
1.1. Descripción del proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.1.1. Justi�cación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.1.2.1. Objetivo General . . . . . . . . . . . . . . . . . . . . . . 20
1.1.2.2. Objetivos Especí�cos . . . . . . . . . . . . . . . . . . . 20
2. Marco teórico 21
2.1. Marco contextual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.1. Representación de imágenes en 3-D . . . . . . . . . . . . . . . . . 22
2.1.2. Transformación Top-Hat . . . . . . . . . . . . . . . . . . . . . . . 23
2.2. Marco conceptual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1. Algorimos generales . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1.1. Algoritmo caminos de mínimo costo . . . . . . . . . . . 25
2.2.1.2. Aplicación del algoritmo de caminos de mínimo costo en
la determinación de ejes coronarios . . . . . . . . . . . . 25
2.2.1.3. Algoritmo �fast marching� . . . . . . . . . . . . . . . . . 27
2.2.2. Algoritmos de detección de embolias pulmonares estudiados . . . 30
2.2.2.1. Algoritmo propuesto por Mazutani[4] . . . . . . . . . . 30
2.2.2.2. Algoritmo propuesto por Prieto[5] . . . . . . . . . . . . 31
2.2.2.3. Algoritmos propuestos por Sebbe[6] . . . . . . . . . . . 32
2.2.2.4. Algoritmo propuesto por Bouma [7] . . . . . . . . . . . 35
2.3. Otros Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3. Proceso 39
3.1. Metodología Propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.1. Metodología por fases . . . . . . . . . . . . . . . . . . . . . . . . 40
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
3.2. Selección del Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3. Marco de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.3.1. Descripción del marco de trabajo . . . . . . . . . . . . . . . . . . 43
3.4. Implementación del algoritmo . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.1. Diseño del Algoritmo . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.4.2. Resultado de los pasos intermedios . . . . . . . . . . . . . . . . . 45
3.4.3. Filtros de ITK que se utilizan . . . . . . . . . . . . . . . . . . . . 49
3.5. Validación de resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4. Conclusiones 53
5. Glosario 55
Página 14
Capítulo 1
Introducción
1.1. Descripción del proyecto
1.1.1. Justi�cación
Según la organización mundial de la salud (OMS)[1]: �Las enfermedades cardiovas-
culares (ECV) son las principales causas de muerte en el mundo (...) se estima que cada
año mueren más personas por esta causa que por cualquier otra; afectan a ambos sexos
por igual, y más del 80% se producen en países de ingresos bajos. En 2005 murieron
17,5 millones de personas, lo cual representa un 30% de todas las muertes registradas
en el mundo; 7,6 millones de esas muertes se debieron a la cardiopatía coronaria, y 5,7
millones a los accidentes vasculares cerebrales (...) Se calcula que en 2015 morirán cerca
de 20 millones de personas por ECV sobre todo por cardiopatías y accidentes vasculares
cerebrales y se prevé que sigan siendo la principal causa de muerte�.
La embolia pulmonar es la obstrucción en el árbol vascular pulmonar (�g. 1.2), se
produce generalmente por trombos originados en sitios diferentes a los pulmones, y
normalmente en las venas profundas de las piernas, estos trombos son transportados
por el torrente sanguíneo a los pulmones (�g. 1.1). La incidencia anualmente es de 60 a
70 casos por cada 100.000 habitantes, adicionalmente esta enfermedad es la causa más
frecuente con un 15% de las muertes postoperatorias. Adicionalmente la mortalidad de
la embolia pulmonar se encuentra entre un 20% a un 30% si no se trata, pero con
tratamiento la mortalidad baja a entre un 2% a un 8%, en esto radica la necesidad de
un diagnostico precoz, para poder tratar efectivamente a los pacientes.[3]
15
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 1.1: Esquema Embolia Pulmonar [12]
Figura 1.2: Embolia Pulmonar [13]
Los trombos comúnmente se originan en las venas profundas de las piernas de un
70% a 90% de las veces, por esto se considera a la trombosis venosa profunda y la
embolia pulmonar un solo proceso que se conoce como Trombo Embolismo Pulmonar
TEP. Algunos de los factores clínicos que favorecen la aparición de TEP son:
1. La inmovilidad y deshidratación (lentitud de la circulación venosa).
2. Traumatismos (daño a la pared del vaso).
3. Neoplasias (Es una masa anormal de tejido producida por multiplicación de al-
gún tipo de células, esta multiplicación es descoordinada con los mecanismos que
controlan la multiplicación celular en el organismo, y los supera[14]).
Página 16
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
4. Las enfermedades auto inmunes y reacciones de fase aguda (aumento de la coagu-
labilidad de la sangre).
Un 20% de los coágulos se desprenden y viajan hasta la circulación pulmonar, dependien-
do del tamaña pueden alojarse en las arterias principales, en donde provoca obstrucción
del torrente sanguíneo, y produce una alteración hemodinámica importante, o en caso de
que el embolo se aloje en las ramas más periféricas puede ocasionar un infarto pulmonar.
A continuación se presentan los factores de riesgo para TEP:
Factores de Riesgo Menores Para TEP (Aumento de riesgo de 2 a 4 veces)Cardiovasculares Insu�ciencia cardíaca, hipertensión arterial, cardiopatías
congénitasEstrógenos Anticonceptivos orales o terapia de reemplazo hormonal,
especialmente con alto contenido de estrógenos.Misceláneos Neoplasia oculta, catéteres venosos centrales, enfermedades
neurológicas invalidantes, trombo�lias, enfermedadesautoinmunes u obesidad.
Factores de Riesgo Mayores Para TEP (Aumento de riesgo de 5 a 20 veces)
CirugíaOrtopédica de cadera y extremidades inferiores (rodilla
especialmente).Cirugía mayor abdominal y pelviana.
Obstétricas Cesárea, puerperio o pre eclampsia.Cánceres Abdominales y pelvianos (especialmente los avanzados).
Extremidades Inferiores Fracturas o traumatismos.Inmovilización Hospitalización.
Antecedentes personales de trombosis venosa o embolia pulmonar.
Cuadro 1.1: Factores de Riesgo para TEP [3].
La embolia pulmonar es un cuadro serio que puede causar:
Un daño permanente en el pulmón afectado.
Bajos niveles de oxígeno en la sangre.
Lesiones en otros órganos del cuerpo por no recibir su�ciente oxígeno.
Si el coágulo es grande, o si existen muchos coágulos, la embolia pulmonar puede provocar
la muerte. La embolia pulmonar suele ser difícil de diagnosticar porque los signos y los
síntomas se parecen a los de otros trastornos y enfermedades [15]. La mitad de las
personas que tienen embolia pulmonar no presenta síntomas, y si los presenta pueden
incluir falta de aire, dolor torácico o tos con sangre. Los síntomas de un coágulo de
sangre incluyen calor, in�amación, dolor, sensibilidad y enrojecimiento de la pierna [16].
Página 17
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Además del examen físico y la historia clínica completa, los procedimientos para
diagnosticar una embolia pulmonar pueden incluir uno o más de los siguientes: rayos
x del tórax, gammagrafía pulmonar de ventilación/perfusión, angiograma pulmonar ,
tomografía axial computarizada (TAC o TC) - [con contraste], imágenes por resonancia
magnética (MRI), ecografía dúplex, análisis de laboratorio, electrocardiograma (ECG),
entre otros.[15] El tratamiento especí�co será determinado por el médico basándose en
la edad del paciente, estado general de salud, antecedentes médicos, extensión de la en-
fermedad, signos, síntomas, tolerancia a determinados medicamentos, procedimientos o
terapias, expectativas para la evolución de la enfermedad, opinión o preferencia. [15] Las
opciones de tratamiento de la embolia pulmonar incluyen, anticoagulantes, tratamien-
to �brinolítico, �ltro de vena cava, embolectomía pulmonar, trombectomía percutánea,
dependiendo de la condición del paciente [15].
La tomografía axial computarizada con inyección de contraste es el examen con
mayor rendimiento, con una sensibilidad del 83% y especi�cidad del 96%, por lo que
se considera como el examen de referencia para el diagnóstico de TEP. Sin embargo,
como en cualquier otro examen, la interpretación del resultado de éste debe hacerse
considerando además la probabilidad clínica que el paciente tenga un TEP.
Los pacientes, previamente examinados y remitidos por un médico, asisten a una to-
mografía computarizada (TC) o también conocida como TAC (tomografía axial compu-
tarizada), (�g.1.3). En el TAC se toman muchas imágenes del paciente en diferentes
ángulos sobre una sección del cuerpo del paciente, con el �n de que un radiólogo pueda
identi�car anomalías. Según la RadiologyInfo[17] existen dos métodos para realizar un
TAC; por medio de rayos x o por resonancia magnética. Con el primer método se ob-
tienen excelentes resultados, pero es altamente nocivo para la salud humana, por lo que
solo debe ser usado en casos especiales. El segundo método presenta buenos resultados,
y posee el atractivo de poder usarlo de forma frecuente, ya que no emite ningún tipo de
radiación. Ambos métodos se pueden realizar con o sin catéteres , pero si se utilizan se
obtienen mejores resultados, ya que se inyecta un producto de contraste que se mezcla
con la sangre; este producto de contraste es a base de iodo (tiene la propiedad de ab-
sorber rayos x) y el procedimiento es usado con el �n de hacer más visibles (más bien
opacar) las arterias o venas y así poderlas identi�car de manera sencilla en el momento
de analizar las imágenes tomadas por este TAC [18].
Otra ventaja de este examen es que en ausencia de TEP con una tomografía axial
computarizada se puede dar información de diagnósticos alternativos que expliquen el
cuadro clínico del paciente.
Página 18
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 1.3: El equipo de radiografía está montado en un soporte con forma de C; el tubode rayos X está debajo de la mesa donde se recuesta el paciente. Encima del pacientehay un intensi�cador de imágenes que recibe las señales de rayos X, las ampli�ca, y lasenvía a un monitor de televisión [19].
Página 19
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
1.1.2. Objetivos
1.1.2.1. Objetivo General
Implementar un algoritmo para apoyar la detección de embolias pulmonares en imá-
genes médicas de TAC (Tomografía Axial Computarizada).
1.1.2.2. Objetivos Especí�cos
1. Seleccionar un algoritmo según los criterios de sensibilidad y especi�cidad.
2. Diseñar una implementación del algoritmo seleccionado.
3. Desarrollar una solución que implemente el algoritmo propuesto.
4. Implantar y validar el algoritmo en un caso de estudio.
Página 20
Capítulo 2
Marco teórico
2.1. Marco contextual
El procesamiento de imágenes es un término para un amplio rango de métodos, estos
se utilizan para manipular y modi�car imágenes de diferentes formas y para diferentes
�nes. El procesamiento digital de imágenes (DIP � Digital Image Processing), abarca los
métodos que utilizan los computadores para su procesamiento.[20]
Cualquier procesamiento de imágenes se puede formular como un sistema de entrada-
salida. La entrada denota una imagen inicial, esta imagen ya ha sido obtenida con
anterioridad. Además la entrada puede ser algo más que una imagen; por ejemplo, podría
ser un vídeo tomado por varias cámaras que podrían monitorear pacientes. Enseguida,
se aplica un procesamiento a dicha entrada del sistema y por último, se obtiene una
salida resultante. Generalmente la salida del sistema es una colección de características
que estarían ampliadas.
Las aplicaciones del procesamiento digital de imágenes son muy variadas, y van desde
aplicaciones médicas, procesamiento de imágenes satelitales, hasta el reconocimiento del
iris, para aplicaciones en seguridad[21].
A continuación se nombran algunas de los tipos de imágenes en las cuales se puede
aplicar el procesamiento de imágenes, estas se restringen al contexto médico. Material
adicional se puede encontrar en[22, 23].
Tomografía Computarizada (CT - Computed Tomography).
Tomografía de Emisión de Positrones (PET - Positron emission tomography).
Imágenes de Resonancia Magnética (MRI - Magnetic Resonance Image):.
Imágenes de Ultrasonido (US - Ultrasonic imaging).
21
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Microscopio óptico/electrónico 3-D (3-D optical/electron microscopy).
Microscopio confocal 3-D (3-D confocal microscopy).
En el procesamiento de imágenes médicas, como se hablo anteriormente, existen diferen-
tes aplicaciones, actualmente la tecnología de imágenes médicas en 3D es usada en las
siguientes tareas médicas[23]:
Diagnostico.
Planeación de cirugía.
Evaluación pre y post operatoria.
Telecirugía.
Entrenamiento médico.
Según Ernesto Coto[24], en la medicina actual, hacer diagnósticos utilizando imágenes
es invaluable, procesar imágenes de resonancia magnética, tomografía computarizada y
otras, proveen un método no invasivo y efectivo a la hora de identi�car la anatomía del
paciente. Y como a�rma el mismo autor �Estas tecnologías han incrementado enorme-
mente el conocimiento de anatomías y patologías para la investigación médica, y son un
componente crítico en la plani�cación de diagnósticos y tratamientos.�
Los principales métodos utilizados en el procesamiento de imágenes médicas son: um-
bralización, región creciente, clasi�cadores, agrupamiento, campos aleatorios de Markov,
redes neurales arti�ciales, modelos deformables y guiados por plantillas.[24]
2.1.1. Representación de imágenes en 3-D
Una imagen digital tridimensional (3-D) es un arreglo de elementos (llamados vóxels),
un vóxel representan la unidad cubica que compone un objeto tridimensional, este es
equivalente a un píxel en una imagen 2-D.
Una imagen 3-D se pueden considerar como una matriz de tres dimensiones m[x][y][z]
(o m(x,y,z)), de dimensiones N1 xN2 x N3, cada vóxel tiene un tamaño físico de Dx x
Dy x Dz (�g. 2.1).
Página 22
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 2.1: Representación gra�ca de una imagen 3-D compuesta por vóxels
La forma más común de adquirir este tipo de imágenes, es a través de un aparato de
tomografía computarizada[23](�g. 1.3).
2.1.2. Transformación Top-Hat
En morfología matemática, la transformación Top-Hat es una operación que extrae
elementos pequeños y los detalles de las imágenes de entrada. Existen dos tipos: White
Top-Hat se de�ne como la diferencia entre la imagen de entrada y su apertura por un
elemento estructurante, y el Black Top-Hat (llamada tambien Bot-Hat) se de�ne dual-
mente como la diferencia entre el cierre y la imagen de entrada. Estas transformaciones
se utilizan para diversas tareas de procesamiento de imágenes, tales como la extracción
de características, fondo ecualización, mejora de la imagen, y otros.[25]
La transformación White Top-Hat, retorna una imagen que contiene los elementos
de una imagen de entrada que son más pequeños que el elemento estructurante (es decir,
lugares donde el elemento estructurante no encaja), y los que son más brillantes que sus
alrededores.
Página 23
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Tw(f) = f − f ◦ b
Figura 2.2: White Top-Hat[25]
El Black Top-Hat, retorna un imagen que contiene los elementos que son más peque-
ños que el elemento estructurante, y son más oscuros que sus alrededores.
Tb(f) = f • b− f
Figura 2.3: Black Top-Hat[25]
Un ejemplo de la utilización del Black Top-Hat es para resaltar los puntos negros en
una imagen de un guepardo:
Figura 2.4: Entrada de una imgan de un guepardo a Black Top-Hat[26]
Figura 2.5: Salida de una imgan de un guepardo a Black Top-Hat[26]
Página 24
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
2.2. Marco conceptual
2.2.1. Algorimos generales
2.2.1.1. Algoritmo caminos de mínimo costo
Para un nodo fuente en un grafo, este algoritmo encuentra el camino con mínimo
costo entre un nodo fuente dado, y cualquier otro nodo del grafo. Este algoritmo también
permite encontrar el camino con mínimo costo, desde un único nodo fuente a un único
nodo destino, con una restricción de parada, deteniendo la ejecución del algoritmo una
vez se ha determinado este camino[27]. Por ejemplo, si los nodos de un grafo representan
ciudades, las conexiones representan las rutas entre estas, y el costo de las conexiones
representan las distancias de manejar entre las ciudades directamente conectadas. Este
algoritmo encuentra la ruta más corta entre una ciudad especí�ca y las otras.
El algoritmo de caminos de mínimo costo, fue originalmente propuesto por Dijkstra,
y se conoce por su nombre [27].
2.2.1.2. Aplicación del algoritmo de caminos de mínimo costo en la deter-
minación de ejes coronarios
Una de las aplicaciones de procesamiento de imágenes digitales, en el contexto mé-
dico, es el determinación de ejes coronarios.
La determinación de ejes coronarios en imágenes médicas en 3-D, permite una re-
construcción virtual de la anatomía de un paciente, permitiéndole a un especialista de
esta rama averiguar, en primera instancia, en donde se encuentran estos ejes, y a partir
de este punto, poder determinar alguna anomalía.
Conociendo exactamente en donde se encuentran los ejes coronarios, le ofrece al
especialista la posibilidad de realizar un examen médico más profundo, restringiendo las
zonas de la imagen que son relevantes a la hora de realizar este tipo de exámenes, y
con esta información poder realizar, por ejemplo, una angiografía mucho más precisa y
detallada.
Otra de las aplicaciones de esta determinación, es poder realizar un sistema de entre-
namiento para especialistas en enfermedades cardiovasculares, conociendo de antemano
la realidad del paciente en el momento en que se le realizo el examen, su diagnostico,
tratamiento y los resultado obtenidos; permitiéndole a este tipo de especialista realizar
una comparación exhaustiva, minimizando el error al momento de enfrentarse a nuevos
casos.
Para determinar los ejes coronarios existen diferentes aproximaciones [28], estas se
Página 25
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
basa en rayos de búsqueda, en imágenes de pacientes con una estenosis severa, en la
cual un mismo vaso se representa en diferentes áreas de la imagen y puede existir una
indeterminación (�g. 2.6(a))[28].
Figura 2.6: (a) Indeterminación en la búsqueda de un eje coronario, en imágenes depacientes con estenosis severa. (b) Usando ondas de propagación para buscar el caminode mínimo costo, entre el origen y el destino, estimando en este caso el eje coronario.
Aplicando el algoritmo caminos de mínimo costo en el procesamiento de estas imá-
genes, posibilita tener una aproximación a los ejes coronarios.
La imagen es tratada como una malla de nodos, donde cada nodo/vóxel es conectado
a un número de vecinos, el costo de transición de viajar de un nodo n a un vecino n′
es dado por un costo a(nn′) que corresponde a la salida de un �ltro R. El proceso
comienza y se asemeja a una propagación de una onda, iniciado desde el punto de
fuente, comenzando la búsqueda de todos los subcaminos de mínimo costo, esto continua
hasta que el nodo destino es encontrado (�g. 2.6(b)). Un punto importante, es que este
algoritmo se aplica en combinación con un �ltro de realce de estructuras tubulares, para
poder obtener los resultados esperados[28].
En el artículo [28], se detalla cómo se realizaron pruebas sobre imágenes médicas, y
cómo esta aproximación es comparable con métodos manuales de expertos en esta área,
Página 26
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
pero con la ventaja, de que el algoritmo automatizado es más robusto[28].
2.2.1.3. Algoritmo �fast marching�
Las ecuaciones no lineales proporcionan métodos para predecir el comportamiento
de propagación de ondas en ambientes bidimensionales y tridimensionales, aportando
soluciones con respecto a la dirección de la oscilación en relación con la dirección de pro-
pagación, teniendo en cuenta la densidad del medio. Este tipo de ecuaciones se usa para
cálculos de propagación de sismos y descubrimiento de los caminos óptimos alrededor
de obstáculos, entre otros. �Fast marching� es un método computacional que permite
encontrar valores aproximados para este tipo de problemas, solucionando varios de los
inconvenientes que la solución computacional representa como la no diferenciabilidad y
la e�ciencia mediante el uso de algoritmos de ordenamiento. Para entender el método de
�fast marching� es necesario comprender la naturaleza de los dos métodos que permiten
la creación de este, las ecuaciones Eikonales y las ecuaciones de Hamilton-Jacobi, las
cuales representan problemas de frontera. De hecho el éxito de Fast Marching radica en
la creación de esquemas numéricos que permiten encontrar las soluciones aproximadas
a partir de los datos de frontera[29].
Según Sethian[30, 31, 32], �Fast Marching� es un algoritmo que expande o contrae
los bordes de una región con respecto a una función de velocidad, se pueden aplicar
criterios de parada para limitar el crecimiento de la región. (�g.2.7)
Figura 2.7: Algoritmo �fast marching�[31, 30, 32].
El algoritmo de Fast Marching como se mencionó anteriormente es un algoritmo
numérico que proporciona soluciones aproximadas a las ecuaciones Eikonales de la forma:
Página 27
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
||∇u(x)|| = F (x) inD,F (x) > 0u = g(x) onS
Figura 2.8: Formula de la ecuación Eikonal
Donde el dominio D en Rn compone los N puntos de la grilla cartesiana n dimen-
sional, F (x) es una función conocida que provee las condiciones iníciales de frontera del
espacio o plano, y u es igual a la función conocida g(x) dada a través de la curva o
super�cieS en D. Así mismo la complejidad computacional depende estrictamente del
dominio D con un orden O (logN). El algoritmo de �fast marching� utiliza aproxima-
ciones diferenciales �nitas para los operadores de la función Eikonal para seleccionar la
solución correcta.
Existen similitudes conceptuales con el principio de Huyghen en cuanto a la cons-
trucción de ondas expansivas usando los puntos de la frontera inicial para el cálculo de la
nueva frontera, que a su vez será utilizada para el cálculo de la nueva frontera. El algo-
ritmo repite estos pasos hasta encontrar los límites del dominio o cumplir una condición
de salida. Por otra parte �fast marching� también se asemeja al algoritmo de �Dijkstra�
para el cálculo del camino del menor costo mediante una búsqueda de profundidad[33].
En particular los pasos a seguir para la implementación del algoritmo �fast marching�
comprenden la discretización de la función Eikonal.
Fij =
√max
[(C−xij u− C
+xij u, 0
)2]−max
[(C−yij u− C
+yij u, 0
)2]
C−xij u = uij − (ui−1j) /h
Figura 2.9: Discretización de la función Eikonal
En donde h es el espacio entre los puntos de la grilla en X , U es el valor del punto
de la grilla en uij . Funcionando de la misma manera en Y .
�Fast marching� supone que en algún momento se conoce la solución para un conjunto
de puntos o �Puntos Aceptados� o también llamados �Puntos Vivos�, del tal forma que
para todos los puntos de la grilla no aceptados restantes con un vecino aceptado o
�Puntos Considerado� se calcula una solución y se denotan como �Puntos de Prueba� o
�Puntos de Frente�(�g. 2.10). Esta solución se puede calcular sistemáticamente siguiendo
los siguientes pasos[33]:
Se marcan todos los puntos aceptados(vivo) de la grilla en D.
Página 28
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Se marcan todos los puntos considerados(frente) de la grilla en D.
Solucionar la ecuación Eikonal para los puntos considerados.
Se marcan los considerados como aceptados, dependiendo de la solución de la
ecuación Eikonal.
Marcar como lejanos todos los puntos restantes de la grilla en D.
Repetir hasta recorrer el dominio D o cumplir una condición de salida.
El éxito de el desempeño del algoritmo radica en encontrar de forma inteligente el punto
considerado uij de menor valor de la grilla en D, para lo cual se usa una estructura
de montículo mínimo similar a la planteada por �Dijkstra�, que permite ordenar los
N elementos del montículos en O (logN)operaciones. Finalmente la e�ciencia de �fast
marching� para grillas tridimensionales cuadradas se encuentra en el orden de O (NlogN)
debido a que se debe recalcular el orden cada vez que se modi�can los valores de un
nivel[33].
Figura 2.10: Detalle de los puntos en el algortimo �fast marching�.
El algoritmo �fast marching� tiene un amplio rango de aplicaciones, entre ellos los
problemas de mecánica de �uidos, combustión, manufactura de chips de computador,
animación por computador y procesamiento de imágenes. En este último, se utiliza para
la segmentación de imágenes (�g. 2.11).
Página 29
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 2.11: Extracción de un arbol vascular con el algoritmo fast marching[34]
2.2.2. Algoritmos de detección de embolias pulmonares estudiados
Desde la perspectiva informática, actualmente existen diferentes aproximaciones para
la detección de embolias pulmonares.
A continuación se presentan algunos algoritmos que muestran diferentes aproxima-
ciones en la detección de embolias pulmonares.
2.2.2.1. Algoritmo propuesto por Mazutani[4]
Masutani[4], propone un algoritmo de detección que se basa en la segmentación de
los vasos pulmonares para limitar el espacio de búsqueda y análisis, y utiliza las carac-
terísticas del tamaño vascular, el contraste local basado en la morfología matemática, el
orden de curvatura, y las características geométricas, como el volumen y la longitud.
En primera instancia se realiza una segmentación para reducir el área de búsqueda,
a continuación un análisis desde contraste local, análisis del grado de curvilinearidad,
determinación de candidatos iniciales, posteriormente un análisis y determinación de
propiedades, para obtener los candidatos �nales (�g. 2.12).
Página 30
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 2.12: Esquema algoritmo Mazutani
2.2.2.2. Algoritmo propuesto por Prieto[5]
El algoritmo propuesto por Prieto consta de los siguientes pasos, pre procesamiento,
que se compone de un realce de vasos y detección de los pulmones, extracción del eje
medio, a partir de la esqueletización independientemente de la pre-segmentación, criterio
medio, y esquemas de seguimiento, a continuación la detección del árbol vascular �ltrado
del árbol vascular, generando la topología por medio de un algoritmo de adelgazamien-
to generando la estructura del árbol vascular, y por último la detección de embolias
pulmonares.
La segmentación de estructuras tubulares, y la extracción de los ejes medios ha sido
ampliamente estudiada por diferentes autores[35, 36, 37, 38, 39, 40, 41, 42], el eje medio
puede ser extraído por �Esqueletización� independientemente de la pre-segmentación,
Criterio Medio, y Esquemas de seguimiento.
�Esqueletización� independientemente de la pre-segmentación Bouix [39] pro-
puso calcular automáticamente el eje medio de una estructura tubular con un algoritmo
Página 31
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
de esqueletización mediante la explotación de las propiedades de �ujo dentro de un ob-
jeto esférico. El �ujo se calcula utilizando el vector gradiente de campo de una función
de la distancia euclidiana desde el límite del objeto.
Criterio Medio Este algorimo propuesto por Agam [37] es construido usando los
valores propios desde los vectores gradientes de una matriz de correlación.
Esquemas de seguimiento Hernandez Hoyos [42] propuso un algoritmo para generar
el eje intermedio de una estructura tubular en 3-D, este algoritmo comienza con un
punto semilla, e iterativamente agrega nuevos puntos usando un proceso de predicción-
estimación.
Algoritmos
Filtrado del árbol vascular En este paso se presentan dos sub pasos, la detección
automática de los pulmones, y el resaltado multiescala para la detección de los vasos.
Para la detección de automática de los pulmones se utiliza el trabajo propuesto por
Pechin Lo[41], en este se utiliza el algoritmo Fast Marching[43] para distinguir entre los
pulmones y las otras estructuras. En segundo sub paso se requiere distinguir entre las
estructuras tubulares y vasos, de cualquier otro tipo de estructura, el algoritmo propuesto
para este es el de Frangi [35].
Topología del algoritmo de adelgazamiento Este algoritmo es utilizado para
crear una representación compacta de un modelo. A partir de este podemos averiguar
cuáles son los ejes principales del árbol vascular.[44, 45]
Estructura del árbol vascular Después de extraer la topología con al paso an-
terior, se procede a detectar la estructura del árbol vascular, para posteriormente visua-
lizarla.
2.2.2.3. Algoritmos propuestos por Sebbe[6]
En el algoritmo de Sebbe[6], el primer paso es realizar un �ltrado y realce de vasos,
a continuación, segmentación de los vasos sanguíneos a partir de algoritmos de contorno
activo, particularmente Fast Marching, y para la detección de coágulos propone dos
algoritmos dependiendo de las necesidades del médico.
Página 32
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Sebbe propone dos algoritmos el primero realiza un segmentación y una evaluación
inicial (�g.2.13), este algoritmo es rápido y permite al médico realizar una evaluación
inicial de embolias pulmonares (�g. 2.14).
Figura 2.13: Primer Algoritmo Sebbe
Figura 2.14: Resultados Primer Algortimo Sebbe
El segundo algoritmo realiza una búsqueda de embolias pulmonares con una mayor
certeza (�g. 2.15), este algoritmo se ejecuta cuando el médico desea conocer en que área
esta ubicada la embolia pulmonar (�g. 2.16).
Figura 2.15: Segundo Algoritmo Sebbe
Página 33
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 2.16: Resultado Segundo Algoritmo Sebbe
Por último se presenta al médico una grilla en la cual se muestra las posibles áreas
en las cuales pueden existir embolias pulmonares (�g. 2.17).
Figura 2.17: Presentación de resultados Sebbe
Página 34
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Por último se presenta el cuadro de sensibilidad y especi�cidad que presenta Sebbe:
Figura 2.18: Presentación de resultados Sebbe
2.2.2.4. Algoritmo propuesto por Bouma [7]
Bouma[7] a partir de las características de intensidad (trasformación BotHat y primer
valor propio de la matriz hesiana), y la forma del lumen (isofoto curvatura y circularidad),
propone un algoritmo para la detección de embolias pulmonares (�g. 2.19).
El sistema de apoyo a la detección computarizada que propone Bouma consiste en
varios pasos. En el primer paso se segmenta el árbol vascular y se detectan los candi-
datos de embolia pulmonar. El paso de la detección de los candidatos se centra en la
inclusión de embolias y en la exclusión de detecciones falsas, tal como el tejido linfoi-
de y enfermedades de la parénquima. Posteriormente, se calculan las características de
cada candidato para permitir la clasi�cación. Las características no sólo se centran en
la intensidad, forma y tamaño del émbolo, sino también de la forma del árbol vascular
pulmonar, y en la ubicación en el árbol. En el último paso, la clasi�cación es usada para
separar los candidatos que representan un embolo real de otros.
Página 35
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 2.19: Esquema Algoritmo Bouma
Cuadro comparativo de los algoritmos por Bouma A continuación se presenta
un cuadro comparativo de los algoritmos en detección de embolias pulmonares, este fue
presentado por Bouma[7]:
Página 36
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 2.20: Cuadro comparativo Bouma
2.3. Otros Algoritmos
Otra forma de aproximación que se ha explorado es utilizar inteligencia arti�cial en
la detección de embolias pulmonares, en 1993 Tourassi[8] presentó una solución utilizan-
do redes neuronales, posteriormente Scurell[9] utilizó el algoritmo Hybrid-Monte-Carlo
para el mismo propósito, Serpen[10] demostró que las redes neuronales basadas en co-
nocimiento KBANN (por sus siglas en ingles knowledge-based arti�cial neural network),
permiten la detección de embolias pulmonares, y Park[11] está actualmente investigando
como mejorar el rendimiento en la detección de embolias pulmonares utilizando redes
neurales.
Página 37
Capítulo 3
Proceso
3.1. Metodología Propuesta
Este proyecto se enmarca en la modalidad de investigación, teniendo en consideración
este motivo, se escoge una metodología por fases. Se proponen cuatro fases, planteamien-
to, exploración y diseño, ciclo de desarrollo y, validación y resultados, en cada una de
ellas se especi�ca una metodología diferente. En la fase inicial se desarrollará una inves-
tigación orientada a explorar el estado del arte en detección de embolias pulmonares, y
posteriormente se desarrollará el plan de trabajo del proyecto en general. La metodología
utilizada es la del seminario de investigación (clases, seminarios, propuesta de trabajo
de grado, estado del arte). En la fase de exploración y diseño, se realizará una evalua-
ción de los algoritmos investigados, se escogerá el algoritmo más óptimo basado en los
criterios de sensibilidad y especi�cidad, posteriormente a este algoritmo se diseñará la
implementación de este, y adicionalmente se especi�cará cual va a ser el plan de pruebas
del proyecto. En el ciclo de desarrollo, por medio del ciclo de vida prototipado rápido,
se desarrollará incrementalmente una solución informática que implemente el algoritmo
propuesto. Por último se implantará la solución y se realizara una validación en un caso
de estudio. Y para concluir se presentarán los resultados del trabajo de grado.
39
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 3.1: Metodología propuesta.
3.1.1. Metodología por fases
1. Fase 1: PLANTEAMIENTO
En esta fase se realiza una exploración inicial y el planteamiento del problema.
2. Fase 2: EXPLORACIÓN Y DISEÑO
Describir las entradas, las salidas y el comportamiento del algoritmo implementado
en imágenes tridimensionales. En esta fase se explorarán cada uno de los algoritmos
descritos, y de acuerdo a los criterios de selección (sensibilidad y especi�cidad), se
escogerá uno para el trabajo de grado. Posteriormente se propondrá una mejora al
algoritmo seleccionado.
3. Fase 3: CICLO DE DESARROLLO
Para esta fase de de�nió el ciclo de vida prototipado rápido (Imagen 4), por medio
de la cual se desarrollará la solución implementando el algoritmo propuesto. Por
la naturaleza del ciclo de vida, las actividades que se realizaran se ejecutaran
iterativamente.
Página 40
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 3.2: Ciclo de vida de Prototipado [14]
Actividades:
A. Recolección de requerimientos.
B. Diseño rápido.
C. Construcción de prototipo.
D. Evaluación del prototipo.
E. Re�namiento del prototipo.
F. Desarrollo de la iteración.
4. Fase 4: VALIDACIÓN Y RESULTADOS
En esta fase se realizara la validación en un caso de estudio, se recolectarán todos
los resultados de la validación, y se presentarán los resultados del trabajo de grado.
Para la validación se seguirán los siguientes pasos.
1. De�nir objetivos (hipótesis).
2. De�nir medidas de éxito.
3. Veri�car viabilidad (estimación gruesa).
4. Diseñar el experimento (estimación precisa).
5. Realizar el experimento.
6. Recolección y análisis de los datos.
Página 41
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
7. Veri�car los objetivos.
8. Concluir.
Actividades:
A. Realizar la validación del algoritmo en un caso de estudio.
B. Escribir el artículo que presentará el algoritmo y los resultados obtenidos.
C. Escribir el documento de resultado del trabajo de grado.
3.2. Selección del Algoritmo
Lo algoritmos estudiados presentan tres etapas principales, una inicial en la cual se
segmenta la imagen y se extrae el arbol vascular, esto permite reducir la busqueda en la
imagen y realizar una detección incial de posibles candidatos de embolias pulmonares,
a continuación se realiza una selección de candidatos especi�ca, que dependiendo del
algoritmo se implementa de maneras distintas, y posteriormente se toman los candidatos
de los pasos anteriores y se veri�can con otros algoritmos para poder dar el resultado
�nal.
De los algoritmos estudiados se escogío el de Bouma, ya que detecta alrededor de un
90% de los embolos[7] y recoge parte de los algoritmos estudiados; en la primera parte
del algoritmo utiliza la binarizacion para ubicar los posibles embolos y lo busca por
intensidad , forma y tamaño de un émbolo, clasi�cando no solo por las caracteristicas si
no tambien por su entorno, su cercania al arbol vascular y forma del arbol vascular.
Inicialmente Bouma realiza una detección del mediastino que permite identi�car el
punto inicial de la segmentación del arbol vascular automaticamente, lo que da una
ventaja comparativa con los otros algoritmos ya permite automatizar sin intervención
humana en el proceso de detección evitando dejar a la experticia del medico esta detec-
ción, despues de realizar la umbralización y la segmentación se busca las partes inconec-
tas los cuales son candidatos de embolia, despues se ejecutan varios pasos en paralelo
que agrupa las perspectivas de detección de los otros algoritmos estudiados, realiza una
busqueda por intensidad (umbralización), por la forma y el tamaño (Valores Propios y
BotHat), y adicionalmente posteriormente se revisan estos candidatos con respecto a la
distancia del arbol vascular y cual es la forma del arbol vascular para poder de�nir si es
o no una embolia pulmonar.
Página 42
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
3.3. Marco de trabajo
El marco de trabajo, es el entorno de desarrollo, los programas, las librerías y las
funciones que se necesitan para desarrollar, probar y ejecutar la implementación del
presente trabajo de grado. A continuación se presenta la descripción de cada componente.
3.3.1. Descripción del marco de trabajo
La implementación del algoritmo se realizó utilizando los siguientes programas, entre
los cuales se encuentran el sistema operativo, las librerías, y las herramientas utilizadas
para desarrollar el programa.
Linux Ubuntu: Ubuntu es un sistema operativo de tipo Linux de código abierto,
que se basa en el sistemas operativo Unix.
Librería ITK: El kit de desarrollo de ITK (por su nombre en ingles �Insight Tool-
kit�) es un sistema de código abierto, multiplataforma, que provee a los desa-
rrolladores un extenso conjunto de herramientas de software para el análisis de
imágenes.
Herramienta CMake: CMake es usado para controlar el proceso de compilación de
software, usando una plataforma simple y archivos de con�guración independientes.
Slicer 3D: Es una aplicación de código abierto (licencia BSD), es una plataforma
�exible y modular para la visualización y el análisis de imágenes.
JROCFIT: Análisis ROC: calculadora basada en la web para las curvas ROC [46].
3.4. Implementación del algoritmo
3.4.1. Diseño del Algoritmo
La implementación del algoritmo se relizó en ITK, se baso en el algoritmo de Bouma[7],
a continuación se presenta el diagrama de secuencia:
Página 43
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 3.3: Diagrama de actividad
Como en los algoritmos estudiados, la implementación de este trabajao de grado se
divide entres grandes etapas, una inicial en la cual se segmenta la imagen y se extrae
el arbol vascular utilizando Umbralización y FastMarching, esto permite reducir la bus-
queda en la imagen y realizar una detección incial de posibles candidatos de embolias
pulmonares, a continuación se realiza una selección de candidatos especí�ca, se ejecuta
una nueva umbralización con un rango mas pequeño de�niendo cuales pueden ser em-
bolos por medio de la intensidad, paralelamente por medio de los valores propios y la
transformación BotHat nos permite detectar los otros posibles candidatos dependiendo
de la forma, y en la última etapa se toman los candidatos de los pasos anteriores y se
veri�can por medio de la distancia a la parénquima y cual es la forma del arbol vascular,
dando un resultado �nal los embolos detectados.
En la primera parte se ejecuta una umbralización de la imagen original para extraer
el arbol vascular, a continuación se ejecuta el algoritmo fast marching para segmentar
de�nitivamente y extraer el arbol vascular,
Luego se ejecuta tres pasos para extraer los candidatos de embolia pulmonar, en
Página 44
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
el primer paso se ejecuta nuevamente una umbralización mas restringida para poder
identi�car embolos por una escala Houns�eld, en el paso 2 se realiza una comparación
de los valores propios para identi�car las estructuras parecidas a un embolo, y por
último se ejecuta una transformación BotHat para realzar las extructuras parecidas a
un Trombo.
Como lo presenta Bouma[7], para reducir la complejidad del algoritmo y para hacerlo
mas lijero a la hora de la ejecución, se ejecutan dos pasos adicionaes, el primero es medir
la tubularidad de las venas[47], y el otro paso es ubicar que tan cercano esta un punto
la parénquima, esta información se contrasta con los candidatos que se extrajeron con
los valores propios, la umbralización y BotHat[25], para presentar los embolos.
3.4.2. Resultado de los pasos intermedios
Con la imagen imagen estudiada de entrada:
Figura 3.4: Imagen de entrada
A continuación se ejecuta la umbralización para extraer el arbol vascular, se realiza
una Umbralización y se ejecuta el algoritmo de Fast Marching para la extracción
del arbol vascular:
Página 45
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 3.5: Arbol vascular
A continuación se muestra en la imagen la salida de la transformación BotHat,
Umbralización, y Valores propios,estos son los candidatos a embolos (�g.3.6):
Página 46
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Figura 3.6: Transformación BotHat
Uno de los últimos pasos es hacer una dilatación (�g. 3.7) para poder hacer el cruce
entre las imagenes de los pasos anteriores, y poder saber si los posibles embolos se
encuentran cerca del arbol vascular:
Página 47
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
Figura 3.7: Transformación BotHat
Y �nalmente como resultado del proceso se muestran los embolos detectados:
Figura 3.8: Final
Página 48
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
3.4.3. Filtros de ITK que se utilizan
A continuación se presentan los �ltros utilizados para la implementación del algorit-
mo:
Filtro : BinaryThresholdImageFilter
� Descripción :
Se utiliza para la binarización tanto en el primer paso para la extracción del árbol
vascular, como para la binarización para la extracción del los posibles émbolos en
el paso 2.
Filtro: FastMarchingImageFilter
� Descripción :
Se extrae el árbol vascular por medio del algoritmo Fast Marching en el paso 1.
Filtro : BlackTopHatImageFilter
� Descripción :
Se utiliza para resaltar los posibles émbolos con la transformación BotHat o
Black TopHat en el paso 2.
Filtro: VesselnessMeasureImageFilter
� Descripción :
Se utiliza para determinar por medio de los valores propios de la matriz
Hessian, la medición de objetos tubulares en el paso 2.
|λ1| < |λ2| < |λ3|
Filtro: BinaryDilateImageFilter
� Descripción :
Se utiliza en el paso 3, para determinar la cercanía a la parénquima de los
posibles émbolos seleccionados en el paso 2.
Filtro : HessianRecursiveGaussianImageFilter, Hessian3DToVesselnessMeasureImageFilter
� Descripción :
Se utiliza para medir la estructura de las venas del paso 3 utilizando el algoritmo
de Danielsson[47].
Página 49
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
3.5. Validación de resultados
Se debe probar el algoritmo seleccionado con un conjuntos de datos, estas pruebas
se harán validandolo contra imágenes con embolias detectadas por médicos. Validando
el algoritmo en termino de sensibilidad y especi�cidad.
Las pruebas se disponene de un número imágenes, cada una de las cuales tiene su
contraparte de la misma imagen pero con la detección de embolia pulmonar por parte
de un especialista medico.
A continuación se presenta la tabla de la prueba funcional:
Objetivo de Prueba: � Veri�car los resultados obtenidos, contra imágenesvalidadas por médicos
Técnica:Se ejecuta el programa de desarrollado contra las imágenes
médicas validas.� Ejecutar el programa dando como entrada las imágenes
originales.� Medir en términos de sensibilidad y especi�cidad los
puntos obtenidos, con respecto a su contraparte validadapor especialistas médicos.
Herramientas Requeridas:� Algoritmo desarrollado
� Slicer 3D� LibreO�ce para documentar
Criterios de Terminación: � Ejecutar el algoritmo, y comparar con la contrapartemedica, obteniendo los criterios de sensibilidad y
especi�cidad.
Cuadro 3.1: Tabla de Prueba Funcional
Los recursos necesarios para las pruebas del algoritmo son:
Recursos del SistemaRecurso Nombre / Tipo
Equipo en donde serealizaran de Pruebas
Equipo físico en donde se ejecutaran las pruebas necesarias.
Imágenes para segmentar Las imágenes originales con las cuales se validara elalgoritmo
Imágenes con la detección deembolias pulmonares
La contraparte de las imágenes, en las cuales se encuentrala detección de las embolias pulmonares.
Algoritmo Implementado Algoritmo implementado en este Trabajo de Grado
Cuadro 3.2: Tabla de Recursos
Las tareas para las pruebas del trabajo de grado con las siguientes:
Página 50
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
Implemente la prueba
� De�nir las imágenes con las cuales se realizara la prueba
� Identi�car la contraparte de la imagen con la embolia detectada.
Ejecute la prueba
� Ejecutar el programa con los valores de entrada de la imagen
Evalúe la prueba
� Después de ejecutar la prueba se debe validar el resultado con la contraparte
de las imágenes médicas.
� Extraer los criterios de sensibilidad y especi�cidad de los resultados
Con lo valores se genera un archivo plano que contiene los siguientes valores para ser
ejecutados en la herramientoa ROC Analysis utilizando el formato 1[46]:
Formato 1: Ordinal Rating Scale
En este formato de datos, cada línea representa un caso. En cada línea, hay dos
números. El primer número es "0" o "1", dependiendo de si el caso es verdaderamente
positivo ("1") ,o verdaderamente negativo ("0"). El segundo número es un número entero
que representa el índice de �abilidad para cada caso, con los números más altos indican
una mayor positividad. Se toma una escalade dos valores en donde las categorías tienen
el siguiente signi�cado:
1. De�nitivamente negativo
2. De�nitivamente positivo
Con esta información se generan los valores de sensibilidad y especi�cidad del algoritmo,
y adicionalmente la curva ROC.
Página 51
Capítulo 4
Conclusiones
1. Para trabajos futuros, se puede calcular el mediastino, para automaticamente cal-
cular el punto de entrada del algoritmo de FastMarching y generar el arbol vascular
sin intervención del médico.
2. El algoritmo seleccionado de Bouma fue el correcto ya que recoge parte de los algo-
ritmos estudiados; porque utiliza la binarizacion para ubicar los posibles embolos
y lo busca por intensidad , forma y tamaño de un émbolo, y tambien lo clasi�ca
no solo por las caracteristicas si no tambien por su entorno, su cercania al arbol
vascular y forma del arbol vascular.
3. Muchos de los pasos del algoritmo desarrollado tienen su contraparte en �ltros
de ITK, algunos otros se deben desarrollar, pero la aplicación �nalmente resulta
en componer el sistema de los �ltros necesarios conectados y parametrizados para
encontrar embolias pulmonares y contruyendo el sistema por medio del patrón de
diseño de tubos y �ltros.
53
Capítulo 5
Glosario
1. Angiografía :Es el estudio de los vasos sanguíneos que no pueden ser visibles en la
radiografías estándar. También es conocido como arteriografía.
2. Angioplastía: es el estudio acerca de la enfermedad conocida como aneurisma.
3. CAD: Diagnóstico asistido por computador (por sus siglas en inglés Computer
Aided Diagnosis).
4. Curva ROC: Representación grá�ca de la sensibilidad frente a (1 � especi�cidad)
para un sistema clasi�cador binario según se varía el umbral de discriminación.
5. DIP: Imagen de procesamiento digital.
6. Escala Houns�eld: Es una escala cuantitativa para describir radiodensidad.
7. Especi�cidad: Caracteriza la capacidad de la prueba para detectar la ausencia de
la enfermedad en sujetos sanos.
8. Estenosis: Enfermedad de tipo arterial que ocurre cuando se forma un estrecha-
miento de un conducto de un vaso sanguíneo el cual reduce el paso sanguíneo y
puede ocasionar una pérdida importante de sangre.
9. Fast Marching : algoritmo que expande o contrae los bordes de una región con
respecto a una función de velocidad, es frecuentemente utilizada para segmentar
una imagen por medio de criterios de parada.
10. GUI: interfaz grá�ca de usuario( por su nombre en inglés �Graphic User interfaz�).
11. KBANN: Redes neuronales basadas en conocimiento, por sus siglas en ingles
knowledge-based arti�cial neural network.
55
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
12. MRA: Angiografía de resonancia magnética.
13. MRI : Imagen de resonancia magnética.
14. TAC : Tomografía axial computarizada
15. TEP Tromboembolismo pulmonar
16. Tipos de arteria:
a) Arteria: vasos sanguíneos que transportan sangre fuera del corazón.
b) Arteria carótida: es la que suministra sangre al cerebro.
c) Arteria femoral : gran arteria que suministra sangre a la extremidad inferior.
d) Arterias coronarias: arterias que suministran sangre fresca oxigenada al múscu-
lo del corazón.
17. Procesamiento de imágenes: Conjunto de técnicas que permiten modi�car una
imagen numérica con el �n de mejorar o extraer información.
18. Sensibilidad: Caracteriza la capacidad de la prueba para detectar la enfermedad
en sujetos enfermos.
19. Vóxel: (la palabra proviene de la contracción del término en inglés "volumetric
píxel") es la unidad cúbica que compone un objeto tridimensional.
Página 56
Bibliografía
[1] OMS, �Organización mundial de la salud.� on line.
[2] MedlinePlus, �Embolia pulmonar.� on line.
[3] D. R. Gil D, �Embolia pulmonar,� RREVISTA.indd, pp. 103�109, 2007.
[4] D. K. Masutani Y, MacMahon H, �Computerized detection of pulmonary em-
bolism in spiral ct angiography based on volumetric image analysis,� IEEE
Trans Med Imaging, vol. 21(12), pp. 1517�23, 2002.
[5] s. M. O. Juan Carlos Prieto, �Vascular tree segmentation in ct 3d images
aiding the diagnosis of pulmonary embolism,�
[6] R. Sebbe, Computer-aided Diagnosis of Pulmonary Embolism in Opaci�ed
CT Images. PhD thesis, Faculté Polytechnique de Mons Université d'Prléans,
November 2006.
[7] V. A. G. F. Bouma H, Sonnemans JJ, �Automatic detection of pulmonary
embolism in cta images,� IEEE Trans Med Imaging, vol. 28(8), pp. 1223�30,
2009.
[8] S. H. C. R. Tourassi GD, Floyd CE, �Acute pulmonary embolism: arti�cial
neural network approach for diagnosis,� Radiology, vol. 189(2), pp. 555�8,
1993.
[9] D. R. Simon J. Scurell, Tshilidzi Marwala, �Detection of pulmonary embolism
using computational intelligence,� 3 Jun 2007.
[10] Serpen, �A knowledge-based arti�cial neural network for pulmonary embolism
diagnosis: Development and conceptual aspects,�
[11] Z. B. Park SC, Chapman BE, �A multistage approach to improve performance
of computer-aided detection of pulmonary embolisms depicted on ct images:
Preliminary investigation,� IEEE Trans Biomed Eng, vol. 58(6), pp. 1519�27,
2011.
57
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
[12] U. F. Marroquín, �Sídrome de la clase turista.� on line.
[13] T. Adviser, �thrombosisadviser.� on line.
[14] U. C. de Chile, �Manual de patología general.� on line.
[15] R. H. Care. http://www.reshealth.org.
[16] N. I. N. del Corazón los Pulmones y la Sangre. http://www.nhlbi.nih.gov/.
[17] RadiologyInfo, �The radiology information, resource for patients.� on line.
[18] Y. T. Health, �Your total health: a service of nbc and ivillage.� on line.
[19] RadiologyInfo, �Imagen tomada de : The radiology information resource for
patients.� on line.
[20] N. E�ord, Digital Image Processing: A Practical Introduction Using Java.
2000.
[21] A. N. Al-Raisi, �Iris recognition and the challenge of homeland and border
control security in uae,� ACM, 2008.
[22] I. Pitas, Digital Image Processing Algorithms and Applications. Wiley, 2000.
[23] I. P. N. Nikolaidis, 3-D Image Processing Algorithms. Wiley, 2001.
[24] E. Coto, �Métodos de segmentación de imágenes médicas,� 2003.
[25] Gleb Tcheslavski, �Morphological image processing: gray-scale morphology.�
on line.
[26] Wolfram, �Bottomhattransform.� on line.
[27] E. W. Dijkstra, �A note on two problems in connexion with graphs,� Nume-
rische Matematik, vol. 1, pp. 269�271, 1959.
[28] B. V. M. V. W. N. O. Wink, A.F Frangi, �3d mra coronary axis determina-
tion using a minimum cost path approach,� Magnetic Resonance in Medicine,
vol. 47, pp. 1169�1175, 2002.
[29] J. Sethian, �Fast marching methods,� SIAM Review, vol. 41 No.2, pp. 199�235,
1999.
[30] J. Sethian, Tracking interfaces with level sets. American Scientist, 1997.
[31] J. Sethian, A fast Marching level set method for monotonically advancing
fonts. Nat.Acad. Sci., 1996.
[32] J. Sethian, Level set methods and fast marching methods. Evolving interfaces
in computational geometry, �uid mechanics, computer vision, and materials
science. Cambridge university press, 1999.
Página 58
Ponti�cia Universidad Javeriana Memoria de Trabajo de Grado - Investigación
[33] A. V. J. A. Sethian, �Fast methods for the eikonal and related hamiltonjacobi
equations on unstructured meshe,� Proc Natl Acad Sci U S A, vol. Published
online 2000 May 16., 2000.
[34] L. A. A. Caicedo, �Aplicación del algoritmo fast marching en ambientes tridi-
mensionales: Caso de estudio en imágenes médicas.� Trabajo de Grado.
[35] K. L. V. M. A. V. Alejandro F. Frangi, Wiro J. Niessen, �Multiscale vessel
enhancement �ltering,� 1998.
[36] H. A. T. K. G. G. S. Y. R. K. Yoshinobu Sato, Shin Nakajima, �3d multi-
scale line �lter for segmentation and visualization of curvilinear structures in
medical images,� 1997.
[37] C. W. Gady Agam, Samuel G. Armato, �Vessel tree reconstruction in thoracic
ct scans with application to nodule detection,� IEEE TRANSACTIONS ON
MEDICAL IMAGING, vol. 24, 2005.
[38] A. C. C. Max W.K. Law, �Three dimensional curvilinear structure detection
using optimally oriented �ux,� 2008.
[39] A. T. Sylvain Bouix, Kaleem Siddiqi, �Flux driven automatic centerline ex-
traction,� 2004.
[40] M. H. H. Juan F. Carrillo, Maciej Orkisz, �Extraction of 3d vascular tree
skeletons based on the analysis of connected components evolution,� 2005.
[41] H. A. J. J. P. M. d. B. Pechin Lo, Jon Sporring, �Vessel-guided airway tree
segmentation: A voxel classi�cation approach,� 2010.
[42] P. C. D. M. Hernandez Hoyos, M. Orkisz and I. E. Magnin., �Assessment
of carotid artery stenoses in 3d contrast-enhanced magnetic resonance angio-
graphy, based on improved generation of the centerline,� Machine Graphics
and Vision, pp. 14:349�378� 2005.
[43] J. Sethian, Level set methods and fast marching methods. Evolving interfaces
in computational geometry, �uid mechanics, computer vision, and materials
science. Cambridge university press, 1999.
[44] M. S. C. MIN MA, �A fully parallel 3d thinning algorithm and its applica-
tions,� COMPUTER VISION AND IMAGE UNDERSTANDING, 1996.
[45] A. B. Tao Wang, �A note on .a fully parallel 3d thinning algorithm and its
applications",� 2006.
[46] J. Eng, �Roc analysis: web-based calculator for roc curves.� on line.
Página 59
Ingenieria de Sistemas Takina - PI113-04-DetecEmbolAuto
[47] Q. L. Per-Erik Danielsson and Q.-Z. Ye, �E�cient detection of second-degree
variations in 2d and 3d images,� Journal of Visual Communication and Image
Representation, vol. 12, p. 255 a 305, September 2001.
Página 60