Upload
truongduong
View
215
Download
0
Embed Size (px)
Citation preview
2
Resumen
El presente trabajo consiste en la segmentación y alineación de imágenes pulmonares
tomográficas. En la etapa de segmentación, se aplica un esquema basado en principios
de morfología matemática. La morfología matemática, consiste en la aplicación de
conceptos como la teoría de conjuntos, la topología y el algebra de retículos, entre otros,
para el análisis de estructuras espaciales. En la etapa de alineación se aplicaron
conceptos de los modelos de difusión, esto es, teniendo dos imágenes, los bordes de los
objetos en una de ellas, se consideran como membranas semi-permeables, la segunda
imagen se considera como un modelo de malla deformable que se difunde a través de la
interfaz por la acción de los efectores también llamados demonios, situados en las
membranas, los demonios son un concepto introducido por Maxwell para ilustrar la
paradoja de Gibbs, este concepto usado en termodinámica tiene aplicaciones para la
alineación de imágenes médicas.
3
Objetivos
Segmentación y alineación de imágenes pulmonares obtenidas en escaneos de
Tomografía Computarizada, CT (Computed Tomography). La segmentación se lleva a
cabo mediante un esquema combinado de umbralización y morfología matemática. La
alineación de las imágenes segmentadas se realiza aplicando principios de
termodinámica. La segmentación y la alineación de dichas imágenes conformarán la
primera etapa de un sistema de Detección de nódulos pulmonares asistida por
Computadora.
4
Índice 1 Introducción 6
2 CAD 6
2.1 Arquitectura de los sistemas CAD 6
3 CT (Computed Tomography) 7
3.1 Valores experimentales de la densidad del parénquima
pulmonar normal 8
3.2 Coeficientes de atenuación y número atómico efectivo 9
3.3 Coeficientes de atenuación lineal y números HU 10
3.4 Estándar DICOM 11
4 Segmentación 12
4.1 Definición de imagen 12
4.2 Definición de segmentación 12
4.3 Revisión de algunas técnicas de segmentación 12
4.4 Umbralización 13
4.5 Morfología matemática 13
4.6 Elemento estructural 14
4.7 Dilatación 14
4.8 Erosión 14
4.9 Apertura y cierre 14
4.10 Segmentación del parénquima pulmonar por medio
de umbralización 14
5 Alineación 15
5.1 Medida de similitud 15
5.2 Modelos de transformación 16
5.3 Transformaciones rígidas 16
5.4 Transformaciones no rígidas 16
5.5 Optimización 16
6 Segunda Ley de la Termodinámica 17
6.1 Demonios de Maxwell 17
6.2 Algoritmo demonio en termodinámica 18
6.3 Algoritmo demonio en la alineación
de imágenes médicas 18
6.4 Modelos de difusión 18
6.5 Métodos de flujo óptico 19
6.6 Flujo óptico y modelos de difusión 20
6.7 Extracción de demonios 20
5
7 Metodología 21
7.1 Creación de base de datos 21
7.2 Segmentación 22
7.2.1 Obtención de información DICOM 22
7.2.2 Conversión de unidades Hounsfield a pixeles 22
7.2.3 Umbralización global 22
7.2.4 Operadores morfológicos y aritmética de
la imagen 29
7.2.5 Reconstrucción morfológica 30
7.3 Alineación 34
7.3.1 Medida de similitud 36
7.3.2 Modelo de transformación 36
7.3.3 Detección de bordes 36
7.12 Elección de demonios 38
8 Resultados 43
9 Conclusiones y trabajo futuro 49
X Apéndices 51
A. Códigos de Matlab 51
Bibliografía 61
6
1 Introducción
El nódulo pulmonar solitario, SPN (Solitary Pulmonary Nodule) es una opacidad
radiográfica esférica que mide aproximadamente 30 mm de diámetro [1], el hallazgo de
este tipo de anormalidad en las radiografías torácicas suele ser incidental y altamente
común [2]. A pesar de que la mayoría de los SPN, tienen causas benignas, algunos
representan la etapa I de ciertos tipos de cáncer de pulmón. Si el cáncer es detectado en
esta etapa, es potencialmente curable.
El escaneo por medio de CT (Computed Tomography), es la modalidad imagenológica
más usada para la detección de nódulos pulmonares [3], debido a que presenta una
mejor resolución de contraste que la radiología convencional y en el caso de las
estructuras mediastinicas, estas quedan claramente demarcadas y la medición de los
valores de atenuación puede facilitar la caracterización histológica. Sin embargo, el
escaneo por CT, presenta el problema del gran número de cortes que deben ser
analizados por el médico. Lo anterior ha hecho necesario el desarrollo de sistemas cuyo
fin es asistir al radiólogo en la detección y caracterización de las lesiones, así como
reducir el tiempo para la obtención del diagnostico. Estos sistemas se denominan como
Computer Aided Detection o Computer Assisted Detection, comúnmente referidos como
CAD.
2 CAD
El uso de computadoras para asistir al médico radiólogo en la administración y
almacenamiento de imágenes médicas, PACS (Picture Archiving and Communication
Systems) así como en el reporte de las mismas RIS (Radiology Information Systems), es
una práctica bien establecida [4]. Recientemente se han desarrollado y aprobado,
programas computacionales que funcionan como soporte en la detección de
anormalidades potenciales en exámenes radiológicos de diagnostico.
El término Computer Assisted Detection se refiere a software que identifica
características particulares en la imagen médica y las lleva a la atención del médico
radiólogo, con el fin de asistirle en el diagnostico. El objetivo principal de los sistemas
CAD, es incrementar la detección de patologías reduciendo la tasa de falsos negativos,
debida a omisiones observacionales. Los algoritmos utilizados en los sistemas CAD,
buscan las mismas características que buscaría el médico durante la revisión de la
imagen. En el caso de CT pulmonar, la aplicación de sistemas CAD busca densidades
pulmonares que posean ciertas características físicas, como la esfericidad que puede
representar la presencia de un nódulo. Se han llevado a cabo diversos estudios sobre la
eficacia y utilidad de estos sistemas [5] [6], siendo la conclusión general que el uso de
sistemas CAD contribuye a la detección del cáncer pulmonar.
2.1 Arquitectura general de los sistemas CAD
Stoitsis et al., [7], refieren que la arquitectura típica de un sistema CAD, comprende 4
módulos principales, el pre-procesamiento de la imagen, la definición de la regiones de
interés, ROI (Region Of Interest), la extracción y selección de características y por
último la clasificación de la ROI seleccionada.
7
Figura 1. Diagrama esquemático que ilustra la incorporación de un sistema CAD dentro del diagnostico médico
[7].
El objetivo de esta etapa es la limpieza y mejoramiento de la imagen, en esta etapa, la
imagen es filtrada para reducir –tanto como sea posible- el ruido y los artefactos. El pre-
procesamiento es crucial dentro del desarrollo del sistema, ya que las tareas
subsecuentes dependen en gran medida de la calidad de la imagen.
La definición de las ROI requiere de la segmentación de la imagen. Este proceso se
puede llevar a cabo (a) usando metodologías manuales o semiautomáticas, donde el
usuario interactúa con el sistema o (b) con métodos totalmente automatizados. El
crecimiento por regiones es un ejemplo de un método semiautomático, mientras que los
modelos de contornos activos, o la umbralización se usan como métodos automatizados.
La extracción de características se refiere a mediciones cuantitativas de la imagen
medica, que son usadas para la toma de decisiones referente a la patología o estructura
de un tejido, [7]. La clasificación de las regiones de interés, cuyo objetivo es la
delimitación de las zonas a estudiar, se puede llevar a cabo con clasificadores
bayesianos, clasificadores de distancia mínima, etc.
3 CT (Computed Tomography)
La CT mide la atenuación de un haz de rayos X al atravesar un objeto, desde cientos de
ángulos diferentes. Las imágenes están basadas en análisis separados de series de
secciones continuas. La característica más importante de esta técnica es su gran
contraste en comparación con la radiología convencional, ya que permite la clara
diferenciación de tejido suave como lo es el hígado o el riñón [8]. La imagen de CT
presenta marcadas diferencias en los valores de intensidad entre los tejidos y el aire, esta
característica es particularmente útil en el caso las imágenes pulmonares.
Básicamente, la imagenología tomográfica se basa en la reconstrucción de una imagen
desde sus proyecciones. En el sentido estricto de la palabra, una proyección a un ángulo
dado es la integral de la imagen en la dirección especificada por dicho ángulo [9]. En un
8
sentido más amplio, la proyección significa la información derivada de las energías
transmitidas, cuando un objeto es iluminado desde un ángulo particular. En el caso de la
tomografía por rayos x, las proyecciones consisten en integrales de línea de los
coeficientes de atenuación.
3.1 Valores experimentales de la densidad del parénquima pulmonar normal
El pulmón es un órgano cuyo volumen está ocupado mayoritariamente por aire. El
parénquima pulmonar está compuesto por el tejido intersticial que soporta a los
bronquios y alvéolos rellenos de aire. En el intersticio discurre el sistema vascular,
fundamentalmente el pulmonar, que por su contenido sanguíneo tiene una densidad algo
superior a la del agua.
La acción de la gravedad provoca que en el decúbito supino, es decir en la porción
posterior del parénquima, exista una mayor cantidad de sangre, lo anterior provoca que
los valores de densidad de esta región, sean más altos que en el resto del parénquima.
Hopkins R. et al., [10] compara el comportamiento del pulmón con juguete Slinky®
, es
decir el pulmón se comporta como un resorte deformable que se distorsiona por efecto
de su propio peso. El mayor contenido de tejido pulmonar (capilares) en las regiones
dependientes (base) es análoga a un mayor número de espirales en la porción
dependiente del resorte orientado verticalmente.
Las densidades medidas mostraron que en la región no dependiente, la densidad
pulmonar promedio fue 0.28 + 0.09 g/cm3 misma que se incremento progresivamente en
la región intermedia con valores de 0.33 + 0.1 g/cm3 hasta llegar a 0.39 + 0.09 g/cm
3 en
las regiones dependientes.
Slinly
® es una marca registrada de Poof-Slinky Inc.
9
3.2 Coeficientes de atenuación y número atómico efectivo
Hubell (citado por Koç y Özyol, 2000) especifica que a bajas energías (<1.02 MeV), la
interacción total de los fotones con los tejidos biológicos, viene dada por la dispersión
coherente, la dispersión incoherente y el efecto fotoeléctrico. Hine (citado por Koç y
Özyol, 2000) subraya que el número atómico efectivo en materiales compuestos por
varios elementos, no se puede representar de forma única y la contribución debida a
cada interacción debe ser tomada en cuenta.
Usualmente, la sección transversal por átomo se define como directamente proporcional
a Zm. El exponente m depende en el tipo de proceso que se esta considerando y en la
energía fotónica [11]. De esta forma, la sección transversal atómica de un elemento en
el caso de un proceso parcial, se expresa:
( ) m
a K E Z (1)
Donde K (E) es una función de la energía fotónica para cada proceso parcial. Los
valores de m, varían dentro de un intervalo de 4-5 para efecto fotoeléctrico, de 2-3 para
la dispersión coherente Rayleigh, ≈ 1 la dispersión incoherente Compton y de 1-2 para
producción de pares. En la región energética que concierne al diagnostico por imagen
topográfica, es decir, la región entre 20 a 150 KeV, el efecto de producción de pares no
existe.
El coeficiente de atenuación lineal para cada elemento individual esta dado por
( ) ( ) ( )mA Aa
N NK E Z
A A
1( ) m
aK E n Z (2)
Donde NA, Z y A son la constante de Avogadro, el numero atómico y el peso atómico
respectivamente, na = Z (NA/A) es el numero de electrones por unidad de masa del
elemento con numero atómico Z y ρ la densidad electrónica del material absorbente.
Si el material absorbente consiste en un compuesto químico o una mezcla homogénea,
el coeficiente lineal de atenuación total, se puede obtener por medio de una regla de
mezcla, representada por la siguiente ecuación:
1 21 1
1 20 1 2[ ( ) ( ) ]m m
KN
en K E Z K E Z
(3)
Donde n0 es el número de electrones por unidad de masa del compuesto, m1 y m2 son los
exponentes de los números atómicos efectivos para el efecto fotoeléctrico y la
dispersión coherente respectivamente, mientras que KN
e corresponde a la sección
transversal de Klein-Nishina [12].
Los números atómicos efectivos para el efecto fotoeléctrico ( 1Z ) y dispersión coherente
( 2Z ), están dados por:
10
1 1
1
1 11 [ ]
m m
i i
i
Z Z
(4)
2 2
1
1 12 [ ]
m m
i i
i
Z Z
(5)
Donde λi es el contenido relativo del electrón en el i-ésimo elemento del compuesto, es
decir el numero fraccional del electrón. Si la contribución debida a la dispersión
coherente es pequeña, el compuesto puede ser caracterizado con un solo número
efectivo Z . Sin embargo el termino correspondiente a la sección transversal
incoherente, es estrictamente válido para comportamiento de electrón libre o para
energías gamma mucho mayores que las energías de ligadura del electrón.
Se han hecho análisis de ( )KN
e E y de /incoh
a Z que demuestran la existencia de
discrepancias sustanciales entre la variación de ( )KN
e E y /incoh
a Z para E<150 keV y
para elementos ligeros (Jackson y Hawkes citados por Koç y Özyol [11], 2000). Por lo
anterior, se puede decir, que el término de la sección transversal incoherente en la
ecuación (3) no es válido en la región de 20 a 150 keV.
Por lo anterior el coeficiente de atenuación total queda:
1 2 31 1 1
1 2 30 1 2 3[ ( ) ( ) ( ) ]m m m
n K E Z K E Z K E Z
(6)
Donde 3Z es el número atómico efectivo de la interacción incoherente. Koç y Özyol[11]
llegan a la determinación del numero atómico efectivo de distintos tipos de tejido
humano, por ser del interés de este trabajo, solo se tomaron algunos de los tejidos
tabulados en los resultados originales.
Energía (Mev) Hueso Músculo Pulmón Corazón Agua
2.000E-02 14.050 7.660 7.580 7.410 7.560
3.000E-02 14.150 7.650 7.570 7.390 7.540
4.000E-02 14.210 7.640 7.560 7.380 7.530
5.000E-02 14.230 7.630 7.550 7.370 7.520
6.000E-02 14.240 7.630 7.540 7.370 7.520
8.000E-02 14.240 7.610 7.530 7.350 7.510
1.000E-01 14.200 7.590 7.510 7.330 7.490
1.500E-01 14.070 7.560 7.480 7.310 7.250
Promedio 14.110 7.630 7.550 7.380 7.510
Tabla 1. Números atómicos efectivos, de varios tejidos humanos con datos tomados del articulo publicado por Koç y
Özyol [11].
3.3 Coeficientes de atenuación lineal y Números HU
Las imágenes obtenidas por un escáner CT son una matriz de números HU [9], [13],
definidos como:
11
( )*1000
material agua
agua
HU
(7)
Donde μmaterial es el coeficiente de atenuación lineal del material y μagua es el coeficiente
de atenuación lineal del agua. Esta definición solo es aplicable en el caso de que el haz
incidente sea monoenergético. En la práctica los coeficientes de atenuación lineales
obtenidos por el escáner CT provienen de un proceso de reconstrucción en el que se
aplican procedimientos correctores que tratan de conseguir que el haz tenga un
comportamiento mono energético.
De acuerdo con lo anterior, e introduciendo (6) en (7), se llega a la siguiente expresión:
1 2 3
1 2 3
1 1 1
1 2 10 1 2 3
1 1 1
1 2 10 1 2 3
[ ( ) ( ) ( ) ]( 1)*1000
[ ( ) ( ) ( ) ]
m m m
tejido tejido tejido
m m m
agua agua agua
n K E Z K E Z K E ZHU
n K E Z K E Z K E Z
(8)
Rosemblum et al., [14] proponen una simplificación de la ecuación anterior basándose
en el hecho de que el número atómico efectivo de los pulmones es de 7.55 y de que a
energías entre 120 y 140 KeV, el coeficiente de atenuación lineal es determinado
mayormente por la dispersión Compton, que es proporcional al producto de la densidad
física y la densidad masa electrón. A partir de estas premisas, dado que la densidad
masa electrón, es en la práctica una constante para la mayoría de los tejidos biológicos,
incluido el pulmón, se llega a la siguiente ecuación:
( 1)*1000tejidoHU (9)
A partir de la expresión (9), y con los datos obtenidos por Hopkins et al., [10], se
tabularon posibles valores para HU a distintas densidades. Los resultados se muestran
en la tabla 2.
HU
densidad
[g/cm3]
-810.000 0.190
-720.000 0.280
-700.000 0.300
-680.000 0.320
-670.000 0.330
-660.000 0.340
-630.000 0.370
-520.000 0.480
Tabla 2. Valores aproximados de HU, tomando como referencia las densidades medidas por Hopkins et al., [10]
3.4 Estándar DICOM
DICOM (Digital Imaging and Communications in Medicine) es el estándar para
transferir imágenes radiológicas y otra información médica entre computadoras [15].
12
El estándar describe el formato de archivos y la especificación de los datos primordiales
de un paciente en la imagen así como el encabezado requeridos, describiendo un leguaje
común a distintos sistemas médicos.
Un solo archivo de DICOM contiene una cabecera que almacena la información sobre
el nombre del paciente, el tipo de exploración, etc. Así como todos los datos de la
imagen que puedan contener la información en tres dimensiones.
4 Segmentación
4.1 Definición de imagen
La imagen es un mapeo, I, de un conjunto de coordenadas de pixeles, Sp, a un conjunto
G de valores tales que para cada vector de coordenadas, p = (r, c) en Sp, existe un valor
I (p) dado por G. Sp también es llamado el plano de la imagen [16].
4.2 Definición de segmentación
La segmentación de imágenes se define como la partición de una imagen en regiones
constituyentes no solapadas, las cuales son homogéneas con respecto a alguna
característica, como puede ser la intensidad o la textura [17]. Idealmente un método de
segmentación encuentra aquellos conjuntos que corresponden a distintas estructuras, y
en el caso de las imágenes medicas, los conjuntos que corresponden a regiones
anatómicas de interés dentro de la imagen.
4.3 Revisión de algunas técnicas de segmentación
Las aproximaciones a la segmentación se pueden clasificar de acuerdo a la información
extraída de la imagen y las técnicas utilizada para tal fin. La información incluye
intensidades de píxel, magnitudes de gradiente o mediciones de la textura.
Las técnicas de segmentación, se pueden dividir en tres grandes grupos:
1. Basadas en región
2. Basadas en bordes
3. Clasificación
La segmentación basada en regiones explota la similitud entre las regiones que
conforman la imagen. La idea principal consiste en clasificar la imagen en un
determinado número de regiones o clases. De tal forma que debemos estimar a que clase
pertenece cada píxel o vóxel.
El principio básico de este tipo de algoritmos [18] es la expansión de un píxel semilla
para llenar regiones coherentes de la imagen (es decir, regiones con similitud entre
pixeles), una vez que tenemos el píxel semilla definimos una medida de similitud, y un
umbral, la región de interés se forma a partir de la incorporación de pixeles que
satisfacen las condiciones establecidas. El proceso termina cuando no hay más
elementos que cumplan las condiciones.
13
Las técnicas basadas en bordes, generalmente son usadas para buscar fronteras –
explicitas o implícitas- entre regiones, dichas fronteras o límites corresponden a
diferentes tipos de tejido. Los métodos más comunes para este tipo de segmentación
son, la detección de cresta y la detección de bordes. Las técnicas de clasificación son
métodos de reconocimiento de patrones, que buscan particionar un espacio
característico derivado de la imagen mediante el uso de etiquetas predeterminadas [17].
Un espacio característico es el rango de espacio de cualquier función en la imagen, con
la característica más común. Un histograma es un ejemplo de espacio característico en
una dimensión.
4.4 Umbralización
La umbralización es una técnica para limpiar el ruido de señales e imágenes donde los
coeficientes pequeños son fijados en cero y los coeficientes más grandes (por encima de
cierto umbral) son disminuidos [19]. En el caso de las imágenes, el resultado es la
separación de las regiones en función de las intensidades que presentan. El primer paso
en la umbralización es la conversión de la imagen a una imagen binaria, es decir una
imagen cuyos pixeles tienen únicamente dos posibles valores de intensidad.
Al binarizar una imagen, se elimina un porcentaje de la información. ¿Cómo elegir
entonces el umbral por debajo del cual cierta cantidad de datos serán descartados?
Existen diversos algoritmos para elección de dicho umbral. El método de Otsu [20],
separa los pixeles en dos clases (fondo y objeto) y encuentra el nivel de umbralización
óptimo al maximizar la separabilidad del histograma, esto es, calcula la tasa de las
varianzas entre clases y a través de las mismas. En [20] se utiliza la desviación estándar
y el promedio. Los elementos de entrada son la imagen original así como los datos
estadísticos de una porción del fondo de la imagen, misma que es separada en NxN
ventanas. Se calcula la desviación estándar y el promedio de cada ventana, si la
desviación a través de la misma es menor a la desviación del fondo, entonces se
determina que se trata de fondo. En caso contrario, el umbral se calcula de la siguiente
manera:
tan
tan2
ven a fondo
ven a
prom desviaciónstdumbral
(10)
4.5 Morfología matemática
La morfología matemática, estudia y aplica transformaciones de conjuntos y funciones
haciendo énfasis en la forma de las mismos [21]. Una definición más formal nos habla
de una teoría de retículos para objetos u operadores en espacios continuos o discretos
haciendo uso de modelos topológicos y estocásticos [22].
La estructura básica de la morfología matemática es el retículo completo, es decir un
conjunto tal que está dotado de un ordenamiento parcial donde para cada familia de
elementos existe una cota inferior y una cota superior. Puesto que la estructura de los
retículos se basa en relaciones de orden, la cota superior y la cota inferior, las
operaciones básicas serán las que conservan estas leyes fundamentales. De esta manera
tenemos que la dilatación es la operación que conmuta con la cota superior y la erosión
con la cota inferior. Los operadores morfológicos necesitan dos tipos de dato como
entrada, esto es, la imagen binaria y un elemento estructural. Un elemento estructural, es
14
un patrón especificado como las coordenadas de un determinado número de puntos
discretos correspondientes a cierto origen.
4.6 Elemento estructural
Es una pequeña imagen aplicada como una ventana móvil con el fin de examinar la
imagen.
4.7 Dilatación
Sea A una imagen y B un elemento estructural, la dilatación de A por B está definida
como:
b
b B
A B A
(11)
La dilatación causa el efecto de incremento en el tamaño de la ROI.
4.8 Erosión
La erosión de A por B está dada por:
b
b B
A B A
(12)
La erosión provoca un efecto de disminución de tamaño del objeto.
4.9 Apertura y cierre
La apertura consiste en la erosión por B, seguida de la dilatación por B:
( )A B A B B (13)
La apertura es la mejor aproximación del frente de la imagen que puede hacerse con
copias del elemento estructural.
Sea B el elemento estructural rotado 180˚ alrededor de su origen, entonces el cierre
consiste en la dilatación por B seguida de la erosión por B sobre A:
( )A B A B B (14)
El cierre es la mejor aproximación del fondo de la imagen que puede obtenerse con
copias del elemento estructural.
4.10 Segmentación del parénquima pulmonar por medio de umbralización
Debido al intervalo de densidades que se presentan los pulmones, la umbralización es
una técnica ampliamente utilizada para la segmentación del parénquima. Silva et al.,
[23] propone un esquema el cual, a partir de la aplicación de un umbral global, genera
15
una imagen binaria a esta imagen se le procesa con varios operadores morfológicos
mismos, que depuran la segmentación.
5 Alineación
Narayan [24], refiere que la alineación es el proceso por el cual se determina una
transformación que relaciona la posición de los puntos en una imagen o espacio
coordenado con la posición del correspondiente punto en otra imagen o espacio
coordenado. El objetivo es maximizar estos puntos de correspondencia, es decir
maximizar la similitud entre dos o más imágenes. El problema a resolver es encontrar
una transformación adecuada para reducir al mínimo las diferencias entre las imágenes.
Crum et al., [25] dividen el problema general de la alineación, en tres componentes
básicos:
La medida de similitud.
El modelo de transformación.
El proceso de optimización.
5.1 Medidas de similitud
Es el criterio bajo el cual se pondera el grado de correspondencia entre las imágenes.
Este criterio, se puede aproximar geométricamente o por intensidad.Las aproximaciones
geométricas construyen modelos explícitos de elementos anatómicos identificables en
cada imagen. Usualmente estos elementos incluyen superficies funcionales, curvas y
puntos de marcaje que corresponden a sus contrapartes en una segunda imagen. Estas
correspondencias definen la transformación de una imagen a la otra.
La segunda aproximación hace uso de patrones de intensidad coincidentes en cada
imagen, usando normativas matemáticas o estadísticas de correspondencia, mismas que
definen una medida de la similitud de intensidad entre la imagen referencia y la imagen
objetivo. A su vez estos criterios ajustan la transformación hasta el punto donde la
medida de similitud es máxima, asumiendo que las imágenes son muy parecidas en la
alineación correcta.
Las medidas de similitud incluyen diferencias cuadradas en intensidades, coeficiente de
correlación, medidas basadas en flujo óptico así como medidas de información teórica
como la información mutua. La medida de similitud más sencilla es la suma de la
diferencia de cuadrados, la cual asume que las imágenes son idénticas en su registro,
excepto por el ruido gaussiano.
21( ( ) ( ( )))
X
SSD T x S t xN
(15)
Donde T(x) es la intensidad en la posición x de la imagen y S (t(x)) la intensidad en el
punto correspondiente dado por el estimado de la transformación t(x) y N el numero de
pixeles en la región de traslape.
16
El coeficiente de correlación supone que hay una relación lineal entre la imagen
referencia y la imagen objetivo. Ambas medidas de similitud se consideran adecuadas
para el registro monomodal donde las características de intensidad mantienen un gran
parecido. La utilización de características geométricas junto con características de
intensidad ha dado lugar a los algoritmos híbridos.
D.B Russakoff et al., [26] propone una medida de similitud hibrida para la alineación de
imágenes 2D y 3D, esta medida de similitud es una combinación por pesos de una
medida de similitud basada en intensidad una medida basada en un punto que incorpora
un marcador fiduciario único.
5.2 Modelos de transformación
Son modelos que especifican la forma en que una imagen objetivo puede ser cambiada
para ajustarse a una imagen referencia. Los modelos de transformación tienen dos fines:
el primero controlar como las características de una imagen se pueden mover en
relación a la otra con el objeto de mejorar la medida de similitud. Un segundo propósito
es la interpolación entre estas características para no tomar en cuenta la información
innecesaria.
5.3 Transformaciones rígidas
Este tipo de transformación se puede describir con 6 ó 12 parámetros que incluyen
traslaciones, rotaciones, escalamientos y deformaciones. Estos parámetros se aplican a
un vector localizado en una primera imagen para encontrar su correspondencia en la
segunda.
5.4 Transformaciones no rígidas
Estas clases de transformaciones, van desde variaciones regionales suaves descritas por
un pequeño número de parámetros, hasta campos de desplazamiento definidos para cada
vóxel. Una de las transformaciones más importantes es la compuesta por la familia de
los splines. Los algoritmos de registro basados en splines usan puntos de
correspondencia (control) en la imagen referencia y la imagen objetivo, a su vez utilizan
una función spline para definir las correspondencias lejos de estos puntos.
Cada punto de control perteneciente a un spline thin-plate tiene una influencia global en
la transformación, de esta forma, si la posición de control se perturba, el resto de los
puntos de la transformación cambian. Esta característica limita la posibilidad de
modelar deformaciones complejas, además conforme el número de puntos de control se
incrementa, se incrementa el costo computacional de mover cada uno de ellos. Los B-
splines se definen en la vecindad de cada punto de control, la perturbación en la
posición de alguno de estos puntos tiene consecuencias locales. Debido a lo anterior y a
la eficiencia computacional que presentan, este tipo de modelo de transformación es
ampliamente utilizado [27], [28].
5.5 Optimización
La optimización es la variación de los parámetros del modelo de transformación para
maximizar el criterio de correspondencias. En ciencias de la computación, el problema
17
de la optimización es aquel cuyo objetivo es encontrar la mejor de todas las soluciones
posibles, es decir, encontrar una transformación, en la región formada por el conjunto de
posibles soluciones, que tenga el mínimo (o máximo) valor de la función de costo.
Encontrar este mínimo de disimilitud o máximo de similitud entre las imágenes, es un
problema multidimensional, donde el número del mismo corresponde a los grados de
libertad que tiene la transformación [29]. Existen varios métodos para encontrar la
función de costo requerida, Beg et al., [30] aplica las ecuaciones de Euler-Lagrange para
solucionar el problema del mapeo métrico difeomórfico de gran deformación, en el cual
dos imágenes I0 e I1 están conectadas por un cambio difeormórfico de coordenadas, y
caracteriza los campos vectoriales minimizadores.
6 Segunda Ley de la Termodinámica
La segunda ley de la termodinámica puede formularse en los siguientes términos [31]:
“La entropía total del universo aumenta en todo proceso natural”
También puede ser descrita, como:
La energía calorífica no puede transformarse completamente en trabajo mecánico (y a la
inversa) en un proceso cíclico.
La primera frase implica que siempre abra un poco de pérdida de calor cuando la
energía se transforma en trabajo mecánico durante un proceso cíclico. La segunda ley de
la termodinámica indica la dirección en que se lleva a cabo un proceso termodinámico.
Los análisis teóricos microscópicos de muchos procesos posibles indican que un sistema
pasa espontáneamente de un estado más ordenado a otro más desordenado.
6.1 Demonios de Maxwell
Estos demonios fueron introducidos por James Clerk Maxwell para ilustrar la paradoja
de Gibbs [32]. En esta paradoja se supone que se tiene una caja llena con un gas
compuesto por una mezcla de dos tipos de partículas a y b. En la mitad de la caja se
encuentra una membrana semipermeable dividiendo la caja en dos.
Esta membrana contiene un conjunto de demonios, que observan las partículas y son
capaces de distinguir los dos tipos. Estos demonios solo permiten que las partículas a
difundan al lado A de la membrana y que las partículas b solo difundan al lado B de la
membrana. Al final del proceso, el lado A solo contendrá partículas tipo a, y el lado B
partículas b.
Los demonios estarían ocasionando un decremento de la entropía, lo cual contradice la
segunda ley de la termodinámica. La paradoja se resuelve porque los demonios estarían
generando entropía al reconocer las partículas, además los demonios y la membrana
ganarían entropía por el paso de las partículas a través de la misma, de manera que la
entropía total del sistema se incrementa.
18
6.2 Algoritmo Demonio en termodinámica [33]
1) El demonio tiene una energía (Ed), que puede intercambiar con el sistema Ed>0
2) Realizar cambios aleatorios de prueba en el grado de libertad del sistema.
3) Si ΔE < 0, darle energía extra al demonio.
4) Si ΔE > 0, el demonio proveer de energía al sistema.
5) El demonio tiene la energía, entonces el demonio le da la energía al sistema. De
otra manera el cambio se rechaza.
6) Se repiten los pasos 3 y 5 de forma iterativa hasta alcanzar el equilibrio.
6.3 Algoritmo Demonio en la alineación de imágenes médicas
En [34] Wood y Downs introducen cuatro algoritmos de optimización basados en el
algoritmo demon de termodinámica. Por otra parte Thirion [31] propone considerar la
alineación no lineal como un proceso de difusión y utiliza una analogía con los
demonios de Maxwell.
En la aplicación planteada por Thirion, se tiene una imagen modelo M que se quiere
hacer coincidir con una segunda imagen S, para hacer esto, M debe deformarse hasta
parecerse lo más posible a S.
Figura 2. Modelos de difusión. Una imagen deformada, considerada como una malla deformable difunde a través de
los contornos de los objetos en la imagen estática, debido a la acción de los efectores, llamados demonios, situados en
las interfases.
Asumiendo que el contorno del objeto O en la imagen S es una membrana
semipermeable, los demonios se ubican a lo largo de ese contorno. Para cada punto de
contorno en S se puede determinar localmente un vector perpendicular a dicho contorno
y orientado del interior al exterior del objeto (por ejemplo el gradiente de la imagen S).
M es una malla deformable cuyos vértices son partículas que se pueden clasificar como
“interiores” y “exteriores”. La rigidez de M esta determinada por las relaciones entre
estas partículas. M es un modelo de difusión, la polaridad (clasificación de los vértices),
es básica para este modelo.
6.4 Modelos de difusión
Se considera el caso de dos imágenes, que muestran un mismo disco. Restringiéndonos
al terreno de las transformaciones rígidas. Se muestrea el contorno del disco de la
imagen objetivo, cada punto es un demonio. Las fuerzas del demonio están orientadas
del interior hacia el exterior, si el correspondiente punto del modelo esta etiquetado
como “exterior”, en caso contrario, la polaridad es central.
19
El método es iterativo, en cada iteración el movimiento creado por todas las fuerzas
elementales es aplicado al modelo. Las magnitudes de las fuerzas inducidas por los
demonios y los puntos de atracción, son constantes e iguales en una misma iteración,
pero decrecen en la siguiente con el fin de alcanzar la convergencia.
6.5 Métodos de flujo óptico
El método del flujo óptico es usado para encontrar deformaciones pequeñas en
secuencias temporales de imágenes. Sea s la función de intensidad en S y m en M en un
punto dado P. La hipótesis básica del flujo óptico es considerar que la intensidad de un
objeto en movimiento es constante en el tiempo, lo que da para desplazamientos
pequeños, la ecuación del flujo óptico:
v s m s (16)
Dado que esta restricción no es suficiente para definir la velocidad v , se considera que
el punto final de v es el punto más cercano a la hípersuperficie m, con respecto a las
traslaciones espaciales (x, y, z), lo que lleva a la ecuación:
2
( )
( )
m s sv
s
(17)
Esta ecuación es inestable para valores pequeños de s , llevando a valores infinitos de
v . Idealmente, la expresión debería ser cercana a cero para pequeños s . Una solución
es multiplicar la ecuación (17) por
2
22( )
s
s m s
Lo que da como resultado:
22
( )
( )( )
m s sv
m ss
(18)
De esta forma el flujo óptico se puede calcular en dos pasos:
1) Cálculo del flujo óptico instantáneo para cada punto de la imagen estática.
2) Regularización del campo de deformación
En flujo óptico v , se considera una velocidad porque las imágenes son dos marcos de
tiempo sucesivos, sin embargo al considerar imágenes de distintos pacientes es más
conveniente considerar v como un desplazamiento.
20
6.6 Flujo óptico y modelos de difusión
Cada punto P de la imagen estática S donde 0s es equicontorno s = I, donde I = s
(P) es constante. Este equicontorno es la interfaz entre las regiones internas s < I y las
regiones externas s > I. La comparación de las intensidades de la imagen modelo M con
I da como resultado una forma automática de etiquetar los puntos de M como
“interiores” y “exteriores”.
El desplazamiento v [ecuación (18)] es comparable a la aplicación de la fuerza
elemental f durante un paso de la iteración, cuya dirección es la misma que s y cuya
orientación corresponde a s si m < s, esto es m < I y de acuerdo a s cando m> I.
La fuerza f empuja un punto P de M (m > I) hacia el exterior (esto es, s ) cuando la
etiqueta de P es “exterior” (m>I), y hacia el interior (esto es, s ) cuando la etiqueta P
es “interior” (m < I), lo cual es la definición que Thirion da a un demonio.
6.7 Extracción de demonios
El conjunto Ds de demonios puede cubrir la malla completa de la imagen (un demonio
por píxel o vóxel), en ese caso las interfases en esos puntos son los equicontornos. Los
demonios también pueden extraerse con métodos de detección de bordes. La
información adjunta a cada demonio puede ser:
Posición espacial P en S.
Una dirección d desde el interior al exterior (generalmente basándose en el
gradiente).
El desplazamiento actual de S a M en ese punto.
Información acerca de la interfase, como la intensidad en esa localización s (P).
La parte iterativa, se inicia con una deformación inicial To, en la iteración i, se tiene una
transformada estimada Ti, y cada iteración se compone de dos pasos:
Para cada demonio sP D , calcular la fuerza de demonio elemental asociada
( )if P la cual depende de la dirección del demonio sd en el punto P y en la
polaridad de M en el punto 1( )iT P .
Calcular 1iT de iT y desde todas fuerzas de demonio elementales
( ), si
f P P D .
21
7 Metodología
Figura 3. Metodología básica
7.1 Creación de base de datos.
Las imágenes utilizadas se recabaron en el departamento de Imagen y Radiodiagnóstico
del Hospital de Especialidades Dr. Belisario Domínguez. También se obtuvo material
de la base de datos del International Early Lung Cancer Action Program (I-ELCAP),
este material corresponde a los archivos anexos W0016-20000101, W0027-20000101
W0037-20000101 y W0023-20000101 respectivamente. .
22
7.2 Segmentación
Figura 4. Diagrama de flujo segmentación.
7.2.1 Obtención de información DICOM
Las imágenes salen del tomógrafo en formato DICOM, para leer la imagen se utilizo la
instrucción dicomread de MATLAB.
7.2.2 Conversión de unidades Hounsfield a pixeles
La instrucción dicominfo proporciona información acerca de la imagen. Entre los datos
que proporciona se encuentran los valores de pendiente e intersección, así como la
energía aplicada para el escaneo. La energía utilizada para todas las imágenes con las
que se trabajo fue de 120 KVP. Para la obtención del número Hounsfield se aplico la
siguiente transformación lineal:
_ * intHU valor pixel pendiente ersección (19)
7.2.3 Umbralización global
La función regiones, del programa, obtiene los datos de pendiente e intersección para
cada imagen. Estos valores, junto con la densidad media de cada imagen, nos dan el
número Hounsfield. Por ejemplo, los valores de pendiente e intersección para la imagen
61.23, son:
RescaleIntercept: -1024
RescaleSlope: 1
23
Esta imagen tiene una intensidad media de 401.2193, este valor se redondea al siguiente
entero con valor menor, por lo tanto, el valor de pixel que entra a la ecuación (19) es
401. Con estos datos obtenemos un HU de -623, este resultado es congruente con los
valores esperados, y especificados en la tabla 2. El valor de HU se utiliza para
umbralizar la imagen, la función segmentacion_morpho, calcula la intensidad de cada
imagen, para obtener un umbral más preciso.
Figura 5. Imagen CT 61.23, original y umbralizada
Figura 6. Imagen binarizada e imagen filtrada.
24
Figura 7. Complemento a la imagen filtrada y reconstrucción morfológica del complemento
Figura 8. Apertura morfológica y complemento a la apertura
Figura 9. Reconstrucción morfológica y complemento
28
Figura 16. Pulmones imagen 61.23, con filtro canny
Figura 17. Pulmones imagen 61.27 con filtro canny
29
Figura 18. Imagen deformable alineada
7.2.4 Operadores morfológicos y aritmética de la imagen
MATLAB, permite la implementación de las operaciones aritméticas estándar, sobre las
imágenes [34], operaciones como la suma, la resta, la multiplicación, la división y el
complemento. la instrucción para obtener el complemento de la imagen –es decir que
los pixeles con valor inicial 0 tomen el valor de 1 y viceversa- es imcomplement. En
nuestro caso utilizamos la instrucción para que tanto la pared como la tráquea, dejen de
ser visibles.
Figura 19. Imagen complemento de la imagen con filtro de mediana
30
7.2.5 Reconstrucción morfológica
La reconstrucción morfológica puede verse como la serie de dilataciones de una imagen
llamada imagen marcador, hasta que el contorno de esta imagen se ajusta a una segunda
imagen, llamada máscara. La instrucción de MATLAB que realiza esta operación es
imfill.
Figura 20. Resultado de la aplicación de imfill
Figura 21. Apertura morfológica
Figura 22. Complemento de la imagen con apertura morfológica
32
Figura 25. Sustracción de los elementos de la imagen con apertura morfológica, de los elementos de la imagen
complemento.
Figura 26. Complemento de la imagen de la figura 25
Figura 27. Imagen después de la aplicación de cierres y una erosión.
34
7.3 Alineación
Figura 29. Diagrama de flujo para alineación
Una vez obtenida la máscara pulmonar, se llama a la función dividir_pulmones. Esta
función recibe la imagen con la máscara pulmonar y devuelve las coordenadas donde se
separa cada lóbulo. Se hace la separación, pero la imagen contiene información
innecesaria.
35
Figura 30. (a) Pulmones izquierdo y derecho de la imagen referencia (27.66.61)
Figura 31. (a)Pulmones izquierdos y derecho de la imagen objetivo (27.66.62)
Se llama a la función segmentacion_paren para limpiar la imagen.
36
(a) (b)
Figura 32. (a)Pulmones izquierdo y derecho de la imagen referencia (27.66.61), (b) Imagen objetivo
(27.66.62)
7.3.1 Medida de similitud
Se utilizó la suma de la diferencia de cuadrados, ecuación (8), considerándose esta
medida conveniente debido a que se está aplicando registro monomodal.
7.3.2 Modelo de transformación
El modelo de transformación utilizado fue del tipo rígido.
7.3.3 Detección de bordes
Se aplico la detección de bordes a cada una de las imágenes segmentadas, se utilizo la
instrucción Canny de MATLAB. El método Canny encuentra bordes por medio de la
búsqueda de máximos locales en el gradiente de la imagen. El gradiente se calcula
usando la derivada del filtro gaussiano. El método utiliza dos umbrales para detectar
bordes fuertes y débiles e incluye los bordes débiles en la salida, únicamente si estos
están conectados a los bordes fuertes. Este método tiene la ventaja de ser poco sensible
al ruido y de detectar bordes débiles, es por eso, que a pesar de tener la imagen
erosionada, se utilizo este tipo de filtro, para la detección de bordes débiles.
37
(a) (b)
Figura 33. Detección de bordes con método Canny, pulmones izquierdo y derecho. (a) Corresponde a la
imagen estática, (b) imagen deformable.
En este punto del proceso, la diferencia entre las imágenes estática y deformable del
pulmón izquierdo es de 386.5 puntos y de 503 puntos en el caso del pulmón derecho.
Cada una de las imágenes recortadas es dividida en 4 ventanas, el tamaño de las
ventanas corresponde al tamaño de la imagen dividida en 4, esta división se lleva a cabo
para poder hacer las mediciones correspondientes al algoritmo, si introducimos la
imagen completa, el algoritmo no encuentra los puntos de referencia. En un principio se
trato de trabajar con la imagen completa, pero la división permite una mayor sencillez al
trabajar. Ya que la división no es exacta, se utilizo la función floor de MATLAB, para
redondear al entero más pequeño.
38
(a) (b)
(b) (d)
Figura 34. (a), (b), (c), (d) Corresponden a las 4 ventanas en las que se dividió la imagen, en este caso la
imagen estática pulmón derecho.
7.3.4 Elección de demonios
Se procede a una primera alineación en cada una de las ventanas, esta alineación se hace
con respecto al primer píxel distinto de cero de cada imagen, posteriormente, se
localizan los puntos donde el gradiente es distinto de cero, es decir se localizan los
demonios en los contornos dentro de las ventanas de la imagen estática.
39
Figura 35. Los puntos marcados en rojo corresponden a los demonios en la imagen estática pulmón
derecho.
42
Una vez localizados los demonios, se mide el desplazamiento de la imagen deformable
a la imagen estática en estos puntos. De esta forma se obtienen nuevas coordenadas que
corresponden al demonio más el desplazamiento, se aplica la ecuación de flujo óptico
(3) sobre estas nuevas coordenadas. Por último la imagen deformable se traslada a los
puntos con las coordenadas donde se aplico la ecuación de flujo óptico.
Figura 28. Imagen deformable pulmón izquierdo después de la alineación
43
8 Resultados
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.61 27.66.62 382.500 275.500 27.97385621
27.66.61 27.66.63 498.000 299.000 39.95983936
27.66.61 27.66.64 514.000 323.000 37.15953307
27.66.61 27.66.65 539.500 301.000 44.20759963
27.66.61 10.165.61 538.500 255.500 52.55338904
27.66.61 10.165.62 540.500 273.500 49.3987049
27.66.61 10.165.63 541.000 276.500 48.8909427
27.66.61 10.165.64 542.000 275.500 49.1697417
27.66.61 10.165.65 544.000 280.500 48.4375
27.66.61 33.84.61 587.500 279.000 52.5106383
27.66.61 33.84.62 592.000 269.000 54.56081081
27.66.61 33.84.63 599.000 255.500 57.34557596
27.66.61 33.84.64 596.500 258.000 56.74769489
27.66.61 33.84.65 624.000 290.000 53.52564103
Tabla 3. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón izquierdo
tomando la imagen (27.66.61) como referencia.
Gráfica 1. Porcentajes de decremento en las diferencias entre las imágenes estática y deformable, pulmón
izquierdo, 14 mediciones tomando la imagen (27.66.61) como referencia.
44
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.61 27.66.62 373.000 190.000 49.0616622
27.66.61 27.66.63 454.000 187.500 58.70044053
27.66.61 27.66.64 497.500 185.500 62.71356784
27.66.61 27.66.65 526.000 200.500 61.88212928
27.66.61 10.165.61 587.000 173.000 70.52810903
27.66.61 10.165.62 580.500 157.000 72.9543497
27.66.61 10.165.63 591.000 166.000 71.91201354
27.66.61 10.165.64 598.500 194.500 67.50208855
27.66.61 10.165.65 599.500 162.500 72.8940784
27.66.61 33.84.61 590.500 201.000 65.96104996
27.66.61 33.84.62 581.000 202.000 65.232358
27.66.61 33.84.63 616.000 190.000 69.15584416
27.66.61 33.84.64 605.500 186.500 69.19900908
27.66.61 33.84.65 599.500 188.000 68.64053378
Tabla 4. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón derecho,
tomando la imagen (27.66.61) como referencia.
Gráfica 2. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
derecho, 14 mediciones tomando la imagen (27.66.61) como referencia.
45
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.62 27.66.63 379.500 301.000 43.32344214
27.66.62 27.66.64 480.500 307.000 58.71254162
27.66.62 27.66.65 534.000 309.000 61.208577
27.66.62 10.165.61 542.000 254.500 74.74489796
27.66.62 10.165.62 543.000 290.000 73.5021097
27.66.62 10.165.63 544.500 280.000 73.80546075
27.66.62 10.165.64 546.500 274.500 72.73497036
27.66.62 10.165.65 547.500 285.500 71.64303586
27.66.62 33.84.61 596.000 302.500 66.638442
27.66.62 33.84.62 597.500 272.500 67.64705882
27.66.62 33.84.63 586.500 264.000 74.00318979
27.66.62 33.84.64 588.000 266.000 69.81132075
27.66.62 33.84.65 628.500 299.000 68.73449132
Tabla 5. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón izquierdo
tomando la imagen (27.66.62) como referencia.
Gráfica 3. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
izquierdo, 13 mediciones tomando la imagen (27.66.62) como referencia.
46
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.62 27.66.63 379.500 20.68511199 43.32344214
27.66.62 27.66.64 480.500 36.1082206 58.71254162
27.66.62 27.66.65 534.000 42.13483146 61.208577
27.66.62 10.165.61 542.000 53.04428044 74.74489796
27.66.62 10.165.62 543.000 46.59300184 73.5021097
27.66.62 10.165.63 544.500 48.57667585 73.80546075
27.66.62 10.165.64 546.500 49.77127173 72.73497036
27.66.62 10.165.65 547.500 47.85388128 71.64303586
27.66.62 33.84.61 596.000 49.24496644 66.638442
27.66.62 33.84.62 597.500 54.39330544 67.64705882
27.66.62 33.84.63 586.500 54.98721228 74.00318979
27.66.62 33.84.64 588.000 54.76190476 69.81132075
27.66.62 33.84.65 628.500 52.42641209 68.73449132
Tabla 6. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón derecho
tomando la imagen (27.66.62) como referencia.
Gráfica 4. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
derecho, 13 mediciones tomando la imagen (27.66.62) como referencia.
47
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.63 27.66.64 385.000 258.000 32.98701299
27.66.63 27.66.65 507.500 289.000 43.05418719
27.66.63 10.165.61 541.500 251.000 53.64727608
27.66.63 10.165.62 543.500 266.500 50.96596136
27.66.63 10.165.63 547.000 276.000 49.54296161
27.66.63 10.165.64 549.000 283.000 48.45173042
27.66.63 10.165.65 548.000 261.000 52.37226277
27.66.63 33.84.61 594.500 288.500 51.47182506
27.66.63 33.84.62 598.000 271.000 54.68227425
27.66.63 33.84.63 592.000 254.000 57.09459459
27.66.63 33.84.64 596.500 257.500 56.83151718
27.66.63 33.84.65 621.000 280.000 54.91143317
Tabla 7. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón izquierdo
tomando la imagen (27.66.63) como referencia.
Gráfica 5. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
izquierdo, 12 mediciones tomando la imagen (27.66.63) como referencia.
48
Referencia
Objetivo
Diferencia
Inicial Diferencia Final
Tasa de
decremento
27.66.63 27.66.64 350.500 194.000 44.65049929
27.66.63 27.66.65 459.000 203.000 55.77342048
27.66.63 10.165.61 581.000 161.000 72.28915663
27.66.63 10.165.62 593.500 157.000 73.54675653
27.66.63 10.165.63 596.000 178.000 70.13422819
27.66.63 10.165.64 592.500 164.500 72.23628692
27.66.63 10.165.65 597.500 168.500 71.79916318
27.66.63 33.84.61 582.500 196.500 66.26609442
27.66.63 33.84.62 581.000 192.000 66.9535284
27.66.63 33.84.63 621.000 183.500 70.45088567
27.66.63 33.84.64 610.500 188.500 69.12366912
27.66.63 33.84.65 603.500 181.000 70.008285
Tabla 8. Diferencias iniciales y finales entre las imágenes de estáticas y deformables, pulmón derecho
tomando la imagen (27.66.63) como referencia.
Gráfica 6. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
derecho, 12 mediciones tomando la imagen (27.66.63) como referencia.
Al aplicar el algoritmo de alineación utilizando los demonios de Maxwell, se observa
una reducción considerable entre las diferencias iniciales y las diferencias finales entre
las imágenes procesadas. Como se puede observar en las gráficas (1), (3), (5), el
porcentaje de reducción de las diferencias para los pulmones izquierdos se mantuvo
constante y más bajo que el porcentaje de reducción en los pulmones derechos, gráficas
(2), (4), (6).
49
Gráfica 7. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
izquierdo, total de las mediciones.
Gráfica 8. Porcentajes de decremento de diferencias entre las imágenes estática y deformable, pulmón
derecho, total de las mediciones.
El algoritmo implementado mostró mayor eficacia en imágenes provenientes de
distintos pacientes, como se pude observar de las gráficas (7) y (8), estos fueron los
resultados que arrojaron las mediciones, lo que no implica un resultado generalizado,
solo el resultado que se obtuvo con ciertas imágenes específicas.
9 Conclusiones y trabajo futuro
La segmentación basada en la umbralización, haciendo uso de las densidades presentes
en el tejido pulmonar, y la morfología matemática, mostró eficacia y sobretodo
sencillez, sin embargo es necesario automatizar la determinación del umbral, ya que las
densidades pulmonares cambian de acuerdo a la zona, y dependiendo del corte, el
umbral utilizado, puede no ser muy preciso. La alineación disminuyo las diferencias
entre las imágenes en porcentajes considerables, pero es posible que mediante un
50
modelo de transformación no rígido, presentara mejores resultados, sin embargo este no
se ocupo, por el aumento en el costo computacional.
Es necesario refinar la alineación y tratar de implementar un modelo de transformación
no-rígido, sin que esto implique un incremento en el costo computacional. Por otra
parte, el algoritmo solo evalúa ciertas características del parénquima.
Para que el programa constituya una solución al problema médico, es necesaria la
extracción y clasificación de nuevas características, bajo la asesoría continua de un
médico radiólogo.
51
X Apéndices
A. Códigos de MATLAB
Programa principal
IMAP =input ('\n Introduce el nombre del archivo con la imagen estática: ','s');
[img map]= dicomread (IMAP); %Imagen estática
IMAT=input ('\n Introduce el nombre del archivo con la imagen movible: ','s');
[imgt mapt]= dicomread (IMAT); %Imagen deformable
img=uint16(img);
imgt=uint16(imgt);
% Se hace una copia de cada imagen
copy_1 = img;
copy_2 = imgt;
% Segmentación
% Se llama a la función para segmentar parénquima
imref = segmentacion_paren(img);
imtar = segmentacion_paren(imgt);
ref_seg=imref;
tar_seg=imtar;
% La función devuelve la máscara del parénquima
% La cual se despliega sobre la imagen original
mr = imcomplement(imref);
copy_1(mr)=255;
mt = imcomplement(imtar);
copy_2(mt)=255;
%% Se trabaja nuevamente con la imagen sin complemento
%% Es decir imref (imagen referencia) e imtar (imagen target)
r1=ref_seg;
t1=tar_seg;
%% Limite para la división imagen referencia
limite_ref=dividir_pulmones(r1)
%% Limite para la división imagen objetivo
limite_tar=dividir_pulmones(t1)
%Pulmones izquierdos
% Referencia
lftlungs = img(1:512,limite_ref:512);
lis = segmentacion_paren(lftlungs);
ls = imresize(lis, [512,260]);
% Target
lftlungm = imgt(1:512,limite_tar:512);
lim = segmentacion_paren(lftlungm);
lm = imresize(lim, [512,260]);
% Pulmones derechos
% Referencia
rgthlungs = img(1:512,1:limite_ref+50);
ris = segmentacion_paren(rgthlungs);
rs = imresize(ris, [512,260]);
52
% Target
rgthlungm = imgt(1:512,1:limite_tar+50);
rim = segmentacion_paren(rgthlungm);
rm = imresize(rim, [512,260]);
% Alineación
%Pulmón izquierdo
leftlungs=double(ls);%pulmon izquierdo estatico
leftlungm=double(lm);%pulmon izquierdo movimiento
% %Detección de bordes
SD1 = edge(leftlungs,'canny');%imagen estatica
MD1 = edge(leftlungm,'canny');%imagen adaptable
SD1 = double(SD1);
MD1 = double(MD1);
%Pulmón derecho
%Detección de bordes
rigthlungss= double(rs);
rigthlungmm= double(rm);
SD2 = edge(rigthlungss,'canny');%imagen estatica
MD2 = edge(rigthlungmm,'canny');%imagen adaptable
SD2 = double(SD2);%estática der
MD2 = double(MD2);%adaptable der
%%Se llama a función para delimitar el área de trabajo
%%Izquierdos
est_izq_1=recorta(SD1);
def_izq_1=recorta(MD1);
%%Derechos
est_der_11=recorta(SD2);
def_der_1=recorta(MD2);
%Se verifica que las matrices tengan el mismo tamaño
[xx1 yy1]=size(est_izq_1);
warp1 = imresize(def_izq_1,[xx1 yy1]);
est_der_1 = imresize(est_der_11, [xx1 yy1]);
warp2 = imresize(def_der_1,[xx1 yy1]);
%% Similitud inicial
similitud_izq_inicial = dif_similitud (SD1,MD1)
similitud_der_inicial = dif_similitud (SD2,MD2)
iref=est_izq_1;
itar=warp1;
dref=est_der_1;
dtar=warp2;
%ventanas
%Izquierdos
l1=floor(xx1/2);
l2=floor(yy1/2);
ventizesta1 = iref(1:l1,1:l2);
ventizwarp1 = itar(1:l1,1:l2);
ventizesta2 = iref(1:l1,l2:yy1);
ventizwarp2 = itar(1:l1,l2:yy1);
ventizesta3 = iref(l1:xx1,1:l2);
53
ventizwarp3 = itar(l1:xx1,1:l2);
ventizesta4 = iref(l1:xx1,l2:yy1);
ventizwarp4 = itar(l1:xx1,l2:yy1);
% %%Derechos
xx2=xx1;
yy2=yy1;
l3=floor(xx2/2);
l4=floor(yy2/2);
ventdeesta1 = dref(1:l3,1:l4);
ventdewarp1 = dtar(1:l3,1:l4);
ventdeesta2 = dref(1:l3,l4:yy2);
ventdewarp2 = dtar(1:l3,l4:yy2);
ventdeesta3 = dref(l3:xx2,1:l4);
ventdewarp3 = dtar(l3:xx2,1:l4);
ventdeesta4 = dref(l3:xx2,l4:yy2);
ventdewarp4 = dtar(l3:xx2,l4:yy2);
% %Se llama a la función para alinear ventanas
% %%Izquierdos
MD3=alineawindow(ventizesta1,ventizwarp1);
MD4=alineawindow(ventizesta2,ventizwarp2);
MD5=alineawindow(ventizesta3,ventizwarp3);
MD6=alineawindow(ventizesta4,ventizwarp4);
def1=recorta(MD3);
def2=recorta(MD4);
def3=recorta(MD5);
def4=recorta(MD6);
[xx3 yy3]=size(def1);
w1 = imresize(def2,[xx3 yy3]);
w2 = imresize(def3,[xx3 yy3]);
w3 = imresize(def4,[xx3 yy3]);
di_1=cat(2,def1,w1);
di_2=cat(2,w2,w3);
warpi_1=vertcat(di_1,di_2);
similitud_izq_final = dif_similitud (iref,warpi_1)
[ss ww]=find(warpi_1);
%%Derechos
MD7=alineawindow(ventdeesta1,ventdewarp1);
MD8=alineawindow(ventdeesta2,ventdewarp2);
MD9=alineawindow(ventdeesta3,ventdewarp3);
MD10=alineawindow(ventdeesta4,ventdewarp4);
def5=recorta(MD7);
def6=recorta(MD8);
def7=recorta(MD9);
def8=recorta(MD10);
[xx4 yy4]=size(def5);
w4 = imresize(def6,[xx4 yy4]);
w5 = imresize(def7,[xx4 yy4]);
w6 = imresize(def8,[xx4 yy4]);
di_3=cat(2,def5,w4);
54
di_4=cat(2,w5,w6);
warpd_1=vertcat(di_3,di_4);
similitud_der_final = dif_similitud (dref,warpd_1)
[ss1 ww1]=find(warpd_1);
Funciones
Función para segmentar parénquima
function pulmon = segmentacion_paren(img)
%Segmentación parénquima
%Umbral global
%Tomamos el umbral como -350 HU
level=(1000-350)/100000;
im1=im2bw(img,level);
%Median filtering
imfilt = medfilt2(im1);
%Complemento
im2=imcomplement(imfilt);
%Reconstrucción morfológica
im5=imfill(im2,'holes');
%Apertura morfológica
im6=bwareaopen(im5,300);
%Complemento
im7=imcomplement(im6);
%Reconstrucción morfológica
im8=imfill(im7,'holes');
%Complemento
im9=imcomplement(im8);
%Sustracción
im10=imsubtract(im9,im6);
%Complemento
im11=imcomplement(im10);
%Apertura morfológica
im12=bwareaopen(im10,1000);
%Elemento structural
s1=strel('disk',2);
%Cierres
im14=imclose(im12,s1);
im15=imclose(im14,s1);
im16=imclose(im15,s1);
im17=imclose(im16,s1);
%Erosión
im18=imerode(im17,s1);
%Reconstrucción morfológica
im19=imfill(im18,'holes');
%Resultado
pulmon=im19;
Función para dividir el lóbulo izquierdo del derecho
55
function limite = dividir_pulmones(r1)
%%%La función recibe la imagen con ambos lóbulos y devuelve las
%%%Coordenadas para dividir la imagen sin perder información
%r1=ref_seg;
[rx1 ry2]=find(r1);
[fil colm]=size(r1);
r2=zeros([fil colm]);
for i=1:fil
for j=1:colm-2
if (r1(i,j)==1)&&(r1(i,j+1)==0)&&(r1(i,j+2)==0)
r2(i,j)=r1(i,j);
end
end
end
[rx2 ry2]=find(r2);
for m=1:length(ry2)-1
suma(m)=ry2(m+1)-ry2(m);
end
suma=suma(:);
maxi=max(suma);
mini=min(suma);
limi=find(suma==maxi);
% Límite para la división entre pulmones
limite=limi+mini;
Función para alinear las imágenes procesadas
function im_alineada = alineawindow (estatica,deformable)
%La función recibe como argumentos las imágenes estática y deformable
%Devuelve la imagen deformable alineada
ventizesta1=estática;
ventizwarp1=deformable;
%En que punto de la matriz comienza la imagen
%Imagen estatica
[stx,sty]=find(ventizesta1);
%Imagen movible
[moovx,moovy]=find(ventizwarp1);
if (numel(stx)==0)
im_alineada=ventizwarp1;
56
else
%mínima coordenada en x de la imagen estática
minstx=min(stx);
%mínima coordenada en x de la imagen deformable
minmvx=min(moovx);
%mínima coordenada en y de la imagen estática
minsty=min(sty);
%mínima coordenada en y de la imagen deformable
minmvy=min(moovy);
if (minstx<minmvx)
c1=minstx;
else
c1=minmvx;
end
if (minsty<minmvy)
c2=minsty;
else
c2=minmvy;
end
cdx1=minstx-minmvx;
[mx,my]=size(ventizesta1);
MD2=ventizwarp1;
MD3=zeros(size(MD2));
for cx=c1:mx
for cy=c2:my
MD3(cx+cdx1,cy)= MD2(cx,cy);
end
end
im_alinead=MD3;
%se llama a la función hell para obtener los puntos demonio
[x_d y_d diablo1]=hell(ventizesta1);
%Se llama a la funcion inferna para obtener el desplazamiento
[angelx angely]= inferna(ventizesta1, im_alinead, x_d, y_d, diablo1);
[mvx mvy]=find(im_alinead);
[esx esy]=find(ventizesta1);
if (numel(angelx))<=(numel(mvx))
57
indx=length(angelx);
else
indx=length(mvx);
end
indxx=indx;
for cont=1:indxx
sumax(cont)=angelx(cont)+mvx(cont);
sumay(cont)=angely(cont)+mvy(cont);
end
s1x=length(sumax);
s1y=length(sumay);
MD6=zeros(s1x,s1y);
MD7=im_alinead;
for vq=1:s1x
if(sumax(vq)>0)&&(sumay(vq)>0)
MD6(sumax(vq), sumay(vq))=MD7(mvx(vq),mvy(vq));
end
end
MD8=MD6;
[x10 y10]=size(ventizesta1);
im_alineada = imresize(MD8,[x10 y10]);
end
Función para localizar demonios
function [x1, y1, diablo] = hell(SD1)
%La función recibe la imagen y devuelve los puntos demonio
%Gradiente distinto de cero
[fx,fy] = gradient(SD1);
[m,n]= size (fx);
u=fx;
v=fy;
for i=1:m
for j=1:n
58
dem(i,j)=u(i,j)+ v(i,j);
end
end
diablo=dem;
%Indices de los elementos distintos de cero
%gradiente
[x1,y1]=find(dem ~= 0); %demonios
Función inferna para obtener el desplazamiento
function [angelx angely]= inferna(SD1, warp, x1, y1, diablo)
%La función toma como argumentos las imágenes estática y deformable así
%como los puntos demonio y devuelve las coordenadas después de aplicar la
%ecuación de flujo óptico
function [angelx angely]= inferna(SD1, warp, x1, y1, diablo)
%La función toma como argumentos las imágenes estática y deformable así
%como los puntos demonio y devuelve las coordenadas después de aplicar la
%ecuación de flujo óptico
lux=x1;
luy=y1;
estat=SD1;
movim=warp;
dem=diablo;
[esx esy]=find(estat);
[mvx mvy]=find(warp);
%Medición del desplazamiento de S a M en el punto P
for bv=1:100
cx(bv)=lux(bv);
cy(bv)=luy(bv);
if (cx(bv)<=numel(mvx))
gradem(bv)=dem(cx(bv),cy(bv));
distx(bv)=abs(mvx(cx(bv))-esx(cx(bv)));
disty(bv)=abs(mvy(cy(bv))-esy(cy(bv)));
%Obtenemos los puntos P'
59
%P'=P+desplazamiento
px2(bv) = round(mvx(cx(bv))+distx(bv));
py2(bv) = round(mvy(cy(bv))+disty(bv));
%Ecuación de flujo óptico
if ((px2(bv))<=(numel(mvx)))&&((py2(bv))<=(numel(mvy)))
mnxx(bv) = ((mvx(px2(bv))-esx(cx(bv))))*(gradem(bv))/
(((gradem(bv))^2)+(((mvx(px2(bv))-esx(cx(bv))))^2));
mnyy(bv) = ((mvy(py2(bv))-esy(cy(bv))))*(gradem(bv))/
(((gradem(bv))^2)+(((mvy(py2(bv))-esy(cy(bv))))^2));
mnx(bv) = round(mnxx(bv));%angel_x
mny(bv) = round(mnyy(bv));%angel_y
end
end
end
angelx=mnx;
angely=mny;
Función de medida de similitud
function similitud = dif_similitud (imr,imt)
fixed= imr;
moved= imt;
[r c]=size(moved);
for i=1:r
for j=1:c
parec(i,j)=(fixed(i,j)-moved(i,j));
end
end
magd2=parec.^2;
sumat=sum(magd2(:));
ovs = length(sumat);
sim1=(0.5./ovs)*(sumat);
similitud=sim1;
Función para delimitar áreas de trabajo
60
function delineada = recorta (im)
%%La función recibe la imagen y la devuelve recortada
SD1=im;
[w u]=find(SD1);
miniw=min(w);
miniu=min(u);
maxiw=max(w);
maxiu=max(u);
lim_inf_x=miniw;
lim_inf_y=miniu;
lim_sup_x=maxiw;
lim_sup_y=maxiu;
delineada=SD1(lim_inf_x:lim_sup_x,lim_inf_y:lim_sup_y);
61
Bibliografía
[1] Swanson SJ, Jaklitsch MT, Mentzer SJ, Bueno R, Lukanich JM, Sugarbaker DJ.
Management of the solitary pulmonary nodule: role of thoracoscopy in diagnosis
and therapy. Chest. 1999.
http://www.ncbi.nlm.nih.gov/pubmed/10619524?dopt=Abstract
[2] Erasmus J., Connolly J., McAdams H., Roggli V. Solitary Pulmonary Nodules:
Part I. Morphologic Evaluation for Differentiation of Benign and Malignant
Lesions. Radiographics. 2000;20:43-58
http://radiographics.rsnajnls.org/cgi/content/full/20/1/43
[3] Messay, T., Hardie, R.C., Rogers, S.K., A New Computationally Efficient CAD
System for Pulmonary Nodule Detection in CT Imagery. Medical Image Analysis
(2010), doi; 10.1016/j.media.2010.02.004
[4] Castellino Ronald A. Computer aided detection (CAD): an overview. Cancer
Imaging. 2005; 5(1): 17–19.
Published online 2005 August 23. doi: 10.1102/1470-7330.2005.0018.
http://www.pubmedcentral.nih.gov/articlerender.fcgi?artid=1665219
[5] Li F, Arimura H, Suzuki K, Shiraishi J, Li Q, Abe H, Engelmann R, Sone S,
MacMahon H, Doi K.
Computer-aided detection of peripheral lung cancers missed at CT: ROC analyses
without and with localization. Radiology. 2005 Nov;237(2):684-90.
http://www.ncbi.nlm.nih.gov/pubmed/16244277?dopt=Abstract
[6] P. Korfiatis , C. Kalogeropoulou , L. Costaridou. Computer Aided Detection of Lung
Nodules in Multislice Computed Tomography. 2006
http://medlab.cs.uoi.gr/itab2006/proceedings/Medical%20Imaging/109.pdf
[7] Stoitsis J., Valavanis I., Mougiakakou S. G., Golemati S., Nikita A., Nikita S. K.,.
Computed aided diagnosis based on medical image processing and artificial intelligence
methods. Nuclear Instruments and Methods in Physics Research A 569 (2006) 591-595
[8] Hounsfield Godfrey N. Nobel Lecture. 1979
http://nobelprize.org/nobel_prizes/medicine/laureates/1979/hounsfield-lecture.pdf
[9] A. C. Kak and Malcolm Slaney. Principles of Computerized Tomographic
Imaging. IEEE Press 1988. Electronic copy (C) 1999
http://www.slaney.org/pct/pct-toc.html
62
[10] Hopkins SR, Henderson AC, Levin DL, Yamada K, Arai T, Buxton RB, Prisk
GK.Vertical gradients in regional lung density and perfusion in the supine human
lung: the Slinky effect. Department of Medicine, University of California, San Diego,
La Jolla, California 92093, USA. J Appl Physiol. 2007 Jul;103(1):240-8. Epub 2007
Mar 29.
http://www.pubmedcentral.nih.gov/articlerender.fcgi?tool=pubmed&pubmedid=17395757
[11] Koç N., Özyol H. -dependence of partial and total photon interactions in
some biological samples. Radiation Physics and Chemistry, Volume 59, Issue 4,
1 October 2000, Pages 339-345
[12] Klein, O; Nishina, Y. Über die Streuung von Strahlung durch freie Elektronen
nach der neuen relativistischen Quantendynamik von Dirac, 1929. Z. Phys. 52 (11-
12): 853 and 869
[13] Martínez, L.C., Rodríguez C., Muñoz C., López A. Un método para la
conversión del número Hounsfield en densidad electrónica y para la obtención de
la energía efectiva en los escáneres CT. Revista de Física Médica 2002; 3(1): 19-25
http://www.sefm.es/revista/publicaciones/revistas/revistav3n1/unmetodo.pdf
[14] Rosenblum LJ, Mauceri RA, Wellenstein DE, Thomas FD, Bassano DA, Raasch
BN, Chamberlain CC, Heitzman ER. Density patterns in the normal lung as
determined by computed tomography. Radiology. 1980 Nov;137(2):409-16.
[15] http://www.rsna.org/Technology/DICOM/index.cfm
[16] Richard Alan Peters II. Lecture Notes on Mathematical Morphology: Binary
Images. Department of Electrical Engineering and Computer Science. Vanderbilt
University School of Engineering. Fall Semester 2007.
http://ia350625.us.archive.org/2/items/Lectures_on_Image_Processing/EECE253_17_BinaryM
orphology.pdf
[17] Pham Dzung L., Chenyang X., Prince Jerry L. A Survey on Current Methods in
Medical Image Segmentation. Annual Review of Biomedical Engineering. 1998
[18] Morse Bryan S. Lecture 18: Segmentation (Region Based). Brigham Young
University. 2000
http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MORSE/region.pdf
[19] M. Fornasier, H. Rauhut. Iterative thresholding algorithms, Applied and
Computational Harmonic Analysis. Doi:10.1016/j.acha.2007.10.005.
http://www.dsp.ece.rice.edu/cs/soft-hard.pdf
[20] Rodriguez Roberto. Segmentation of Blood Vessels Based on a Threshold that
Combines Statistical and Scale Space Filters. Institute of Cybernetics, Mathematics
and Physics (ICIMAF). Digital Signal Processing Group.
63
http://www.ejournal.unam.mx/cys/vol09-02/CYS09202.pdf
[21] Christer O. Kiselman. Digital Geometry and Mathematical Morphology.
Lecture Notes, Spring Semester 2004.
http://www.math.uu.se/~kiselman/dgmm2004.pdf
[22] Serra Jose. Introduction à la Morphologie Mathématique. Cahiers du Centre de
Morphologie Mathématique, Fascicule n° 3, Ecole des Mines de Paris 1969
[23] Silva Aristófanes, Carvalho Paulo Cezar P., Nunes Rodolfo A. Segmentation and
Reconstruction of the Pulmonary Parenchyma. VI Workshop de Informática Médica
- WIM2006. 2001
http://www.visgraf.impa.br/Projects/vismed/lung/doc1/LungSeg.pdf
[24] Ramkrishnan Narayanan. Diffeomorphic transformations for automatic multi-
modality image registration. A dissertation submitted in partial fulfillment of the
requirements for the degree of Doctor of Philosophy (Biomedical Engineering)
in The University of Michigan. 2007
http://www.eecs.umich.edu/~fessler/student/diss/07,narayanan.pdf
[25] W. R. Crum, T. Hartkens, D.L.G. Hill. Non-rigid image registration: theory and
practice. The British Journal of Radiology, 77 (2004), S140–S153 E 2004 The British
Institute of Radiology.
http://bjr.birjournals.org/cgi/reprint/77/suppl_2/S140
[26] D. B. Russakoff, T. Rohlfing, R. Shahidi, D. H. Kim, J. R. Adler, Jr., C. R. Maurer,
Jr. Intensity-based 2D-3D spine image registration incorporating one fiducial
marker
Proceedings of the 6th International Conference on Medical Image Computing and
Computer-Assisted Intenvention (MICCAI), LNCS 2878, November 2003, pp. 287-294.
http://robotics.stanford.edu/~russakof/papers/2003/Russakoff_MICCAI_2003a.pdf
[27] K. Wang, Y. He, and H Qin. Incorporating rigid structures in non-rigid
registration using triangular B-splines. In Variational, Geometric and Level Set
Methods in Computer Vision, volume 59, pages 235-246, 2005.
[28] Hansen M.S., Larsen R., Glocker B., Navab N. Adaptive Parametrization of
Multivariate B-splines for Image Registration. Computer Vision and Pattern
Recognition, 2008. CVPR 2008. IEEE Conference on
[29] Zitová B., Flusser J. Image registration methods: a survey. Image and Vision
Computing 21 (2003) 977-1000
64
[30] M. Faisal Beg; Michael I. Miller; Alain Trouvé; Laurent Younes. Computing
Large Deformation Metric Mappings via Geodesic Flows of Diffeomorphisms.
International Journal of Computer Vision, Volume 61, Number 2, February 2005 ,
pp.139-157(19)
[31] Wilson J. D. Física con aplicaciones. McGraw-Hill. México. 1990. Traducido de
la segunda edición en Inglés de Technical College Physics.
[32] Thirion J.-P. Image matching as a diffusion process: an analogy with
Maxwell’s demons. Medical Image Analysis (1998) volume 2, number 3, pp 243–260
°c Oxford University Press.
[33] Harvey Gould, Wolfgang Christian, Jan Tobochnik, Hui Wang, Kipton Barros,
Natali Gulbahce, Joshua Gould. Teaching Statistical and Thermal Physics Using
Computer Simulations. Tutorial T2, 4 March 2007
http://physics.clarku.edu/~hgould/talks/STPtutorial2007.pdf
[34] Wood, I. Downs, T. Demon algorithms and their application to optimization
problems. Neural Networks Proceedings, 1998. IEEE World Congress on
Computational Intelligence. The 1998 IEEE International Joint Conference on
Publication Date: 4-9 May 1998
[35] www.mathworks.com