Logo Studenta

segmentación automática de estructuras craneales a partir de imágenes de Tomografía Axial Computarizada.

¡Este material tiene más páginas!

Vista previa del material en texto

RESUMEN 
 
i 
 
 
Resumen 
 
En este proyecto se ha desarrollado un método de segmentación automática de estructuras 
craneales a partir de imágenes de Tomografía Axial Computarizada. El algoritmo se ha 
basado en técnicas de aprendizaje profundo y redes neuronales convolucionales. 
 
El objetivo final es realizar un modelo alternativo de segmentación de imágenes 
médicas bidimensionales de corte axial que sirva de herramienta de guiado durante las 
cirugías craneales y de apoyo al diagnóstico. 
 
Debido a la aparición de determinados tipos de Inteligencia Artificial como el 
Deep Learning, han surgido nuevas técnicas de segmentación semántica que han 
proporcionado la posibilidad de segmentar imágenes en tiempos de ejecución realmente 
bajos. La metodología del proyecto opta por la implementación de una red neuronal 
convolucional que se entrenará desde cero con el propósito de obtener imágenes 
segmentadas bidimensionales de corte axial de cualquier paciente. 
 
El resultado esperado es un conjunto de máscaras que proporcionarán una vista de 
las regiones de tejido óseo de las imágenes originales. 
 
 
 
 
 
 
 
 
 
 
 ABSTRACT 
 
iii 
 
 
Abstract 
 
An automatic segmentation method related to computed tomography scan is performed 
in this project. Moreover, the algorithm is based on Deep Learning and Convolution 
Neuronal Networks. 
 
The main purpose is to execute an alternative segmentation model of 
bidimentional axial cut images in order to develop a tool for an image-guided system of 
craneal surgeries and to dictate diagnoses. 
 
New semantic segmentation techniques have appeared due to the implementation 
of artificial intelligence types as Deep Learning. These ones, make posible to segment 
images on really low run times. This project performs a Convolution Neuronal Networks 
that it is trained from the beginning, with the purpose of getting bidimentional axial cut 
segmented images coming from any patient. 
 
The expected result is a series of masks that provide a bone tissue regions view 
from the original images. 
 
 
 
 
 
 
 
 
 
 
 
 AGRADECIMIENTOS 
 
v 
 
 
Agradecimientos 
 
A mis padres, por dejaros la piel para que pueda cumplir mis metas y sueños. Vicenta, mi 
madre, gracias por ser siempre la luz que ilumina mi camino. Paco, mi padre, gracias por 
ser la voz crítica que intenta inculcarme valores como el sacrificio y la constancia. 
 
A mis hermanos Paco y Álvaro, por ser las principales causantes de que sea feliz. 
Sigamos quemando etapas, capítulos y aventuras juntos. 
 
A Bea, por aparecer en nuestras vidas, formar parte de nuestra familia y ser un 
ejemplo para mí. 
 
A mis amigos de toda la vida, Miguel, Daniel, Alfonso y Victor, por subirse al 
tren y querer soñar junto a mí. 
 
A mis amigos de la universidad, Elías, Javier, Daniel, Pedro y Guillermo, por 
acompañarme en esta preciosa vida universitaria. Horas y horas de biblioteca, cantina y 
sala de ordenadores han merecido la pena solo por el simple hecho de estar con vosotros. 
 
A Elia, mi compañera de viaje, por cuidarme, por mantenerme los pies en el suelo, 
por confiar y hacer de mí una mejor persona. 
 
A mi tutor, Juan Ignacio, por darme la oportunidad de disfrutar de este proyecto. 
Gracias por mostrarme el camino del buen hacer. Mi devoción por las nuevas tecnologías 
es mayor gracias a ti. 
 
 Gracias a todos los que perdéis tiempo de vuestras vidas para preocuparos por mí 
y ser partícipes de mi desarrollo persona
 ÍNDICE 
 
vii 
 
 
Índice 
 
Índice ...................................................................................................................... vii 
Introducción ............................................................................................................. 3 
Objetivos................................................................................................................... 5 
Revisión de técnicas y conceptos............................................................................... 7 
3.1 Estructuras anatómicas craneales ................................................................... 7 
3.2 Tomografía Axial Computarizada.................................................................. 9 
3.3 DICOM ...................................................................................................... 10 
3.4 Machine Learning ....................................................................................... 12 
3.5 Redes Neuronales Artificiales ..................................................................... 15 
3.6 Deep Learning ............................................................................................ 19 
3.7 Aspectos importantes de la CNN ................................................................. 21 
3.8 Tipos de Redes Neuronales Convolucionales ............................................... 23 
3.9 U-Net ......................................................................................................... 24 
3.10 Segmentación semántica de imágenes médicas ............................................ 25 
Estado de la cuestión .............................................................................................. 27 
Materiales y métodos .............................................................................................. 29 
5.1 Conjunto de datos ....................................................................................... 29 
5.2 Partición del conjunto de datos .................................................................... 31 
5.3 Preprocesado digital de conjunto de datos .................................................... 31 
5.4 Entorno de trabajo y herramientas computacionales ..................................... 33 
5.5 Librerías empleadas .................................................................................... 34 
5.6 Método propuesto ....................................................................................... 35 
5.7 Arquitectura de la red.................................................................................. 35 
5.8 Detalles de la red ........................................................................................ 37 
5.9 Procesado final ........................................................................................... 37 
Resultados............................................................................................................... 39 
Discusión................................................................................................................. 53 
Conclusiones ........................................................................................................... 59 
Anexo 1 ................................................................................................................... 61 
Anexo 2 ................................................................................................................... 69 
Referencias ............................................................................................................. 73 
ÍNDICE 
 
viii 
 
 
Índice de figuras 
 
Figura 1. Vista frontal del cráneo con las estructuras óseas principales. Imagen adaptada 
[15] ............................................................................................................................ 7 
Figura 2. Vista lateral del cráneo con las estructuras óseas principales. Imagen adaptada 
[15] ............................................................................................................................ 8 
Figura 3. Localización de estructuras anatómicas en el cráneo. Imagen adaptada [16] ... 8 
Figura 4. Slice de un corte axial de TAC de la cabeza de un paciente............................ 9 
Figura 5. Slice de un corte coronal de TAC de la cabeza de un paciente...................... 10 
Figura 6. Slice de un corte sagital de TAC de la cabeza de un paciente....................... 10 
Figura 7. Esquema simplificado de la estructura de Entidades de DICOM. Imagen 
adaptada [21]............................................................................................................ 11 
Figura 8. Ejemplo de parámetros de un TAC en formato DICOM............................... 11 
Figura 9. Tipos de Machine Learning según el estilo de aprendizaje ........................... 13 
Figura 10. Procesos del aprendizaje supervisado. Imagen adaptada [25] ..................... 13 
Figura 11. Ejemplo esquemático de técnica de aprendizaje supervisado y aprendizaje no 
supervisado. Imagen Adaptada [26]........................................................................... 14 
Figura 12. Una simple neurona. Imagen adaptada [27] ............................................... 15 
Figura 13. Definición de perceptrón a alto nivel. Imagen adaptada [29] ...................... 16 
Figura 14. Función de activación ReLU. Imagen adaptada [30] .................................. 17 
Figura 15. Función de activación sigmoidal o sigmoide. Imagen adaptada [30] ........... 17 
Figura 16. Estructura básica de una red neuronal. Imagen adaptada [34] ..................... 18 
Figura 17. Clasificación de las Redes Neuronales Convolucionales según IBM. Imagen 
adaptada [35]............................................................................................................ 19 
Figura 18. Ejemplo de obtención de mapa de características en una convolución a partir 
de un kernel. Imagen adaptada [38] ........................................................................... 20 
Figura 19. Ejemplo de una estructura capa convolucional y capa pooling aplicada a una 
imagen ..................................................................................................................... 20 
Figura 20. Esquema de una red neuronal convolucional, Imagen adaptada [34]........... 21 
Figura 21. Arquitectura U-Net original desarrollada por Olaf Ronneberger, Philipp 
Fischer y Thomas Brox. Imagen adaptada [46] .......................................................... 25 
Figura 22. Ejemplo de segmentación de una imagen en persona y fondo. Imagen adaptada 
[47] .......................................................................................................................... 26 
Figura 23. Segmentación manual de slices 67, 90, 112 y 137 del paciente 5 ................ 30 
Figura 24. Exportar imágenes del corte axial en formato png desde Microdicom......... 31 
Figura 25. Imagen exportada de MicroDicom en formato png (a), imagen editada con 
GIMP en formato png (b).......................................................................................... 32 
Figura 26. Imagen preprocesada (a), máscara preprocesada (b)................................... 32 
Figura 27. Interfaz de línea de comandos de Ananconda ............................................ 33 
Figura 28. Entorno Jupyter Notebook para desarrollar el código del algoritmo ............ 34 
Figura 29. Segmentación de una imagen 2D del corte axial de una Tomografía Axial 
Computarizada ......................................................................................................... 35 
Figura 30. Arquitectura del algoritmo propuesto. Imagen adaptada [46] ..................... 36 
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676878
 ÍNDICE 
 
ix 
 
Figura 31. Error al intentar introducir en el algoritmo imágenes con una resolución de 
256x256 ................................................................................................................... 37 
Figura 32. Entrenamiento y validación con 120 épocas y tasa de aprendizaje 0.001..... 39 
Figura 33. Entrenamiento y validación con 120 épocas y tasa de aprendizaje 0.0001... 39 
Figura 34. Entrenamiento y validación con 20 épocas ................................................ 40 
Figura 35. Entrenamiento y validación con 50 épocas ................................................ 40 
Figura 36. Entrenamiento y validación con 90 épocas ................................................ 41 
Figura 37. Entrenamiento y validación con 120 épocas .............................................. 41 
Figura 38. Imágenes y máscaras (automáticas y manuales) de los slices 0, 10, 15 y 20 del 
TAC segmentado ...................................................................................................... 43 
Figura 39. Imágenes y máscaras (automáticas y manuales) de los slices 25, 31,34 y 38 
del TAC segmentado ................................................................................................ 44 
Figura 40. Imágenes y máscaras (manuales y automáticas) de los slices 42 ,50, 52 y 54 
del TAC segmentado ................................................................................................ 45 
Figura 41. Imágenes y máscaras (manuales y automáticas) de los slices 59, 61, 64 y 67 
del TAC segmentado ................................................................................................ 46 
Figura 42. Imagen original e imagen enventanada...................................................... 47 
Figura 43. Imágenes enventanadas y máscaras (automáticas y manuales) de los slices 0, 
15, 20 y 25 del TAC segmentado .............................................................................. 48 
Figura 44. Imágenes enventanadas y máscaras (manuales y automáticas) de los slices 34, 
42, 52 y 61 del TAC segmentado .............................................................................. 49 
Figura 45. Coeficiente DICE obtenido....................................................................... 50 
Figura 46. Reconstrucción 3D del TAC segmentado por el algoritmo propuesto ......... 51 
Figura 47. Máscara obtenida por el algoritmo y máscara obtenida por la segmentación 
manual ..................................................................................................................... 53 
Figura 48 . Comparación de resultados de los slices 25 y 59 del TAC segmentado ...... 54 
Figura 49 . Resultados a la altura de los senos etmoidales de los slices 42 y 52 del TAC 
segmentado .............................................................................................................. 55 
Figura 50. Resultados de la segmentación del slice 64 donde aparece el hueso frontal y 
parietal. Máscara automática y máscara manual ......................................................... 55 
Figura 51. Resultados de la segmentación del slice 67 donde aparece el hueso frontal y 
parietal. Máscara automática y máscara manual ......................................................... 56 
Figura 52. Resultados de segmentar slice 15 donde aparece el hueso occipital. Máscara 
automática y máscara manual................................................................................... 56 
Figura 53. Fila de arriba hacia abajo: (a) Imágenes originales, (b) imágenes enventanadas, 
(c) máscaras automáticas sin enventanar, (d) máscaras automáticas con enventanado y (e) 
máscaras manuales de los slices 42, 47 y 52 del TAC segmentado.............................. 57 
Figura 54. Comparación entre segmentación manual (verde) y segmentación automática 
enventanda (rojo). (a) slice 15, (b) slice 42, (c) slice 52 y (d) slice 67 del TAC segmentado
 ................................................................................................................................ 58 
Figura 55. Lanzamiento de versiones python de [57].................................................. 61 
Figura 56. Comprobación controlador NVIDIA de [66] ............................................. 62 
Figura 57. Versiones de instalación CUDA de [58] .................................................... 62 
Figura 58. Versiones de instalación cuDNN de [59] ................................................... 62 
Figura 59. Ejemplo de creación de un entorno virtual................................................. 63 
Figura 60. Activación del entorno virtual...................................................................63 
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676902
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676902
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676909
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676909
file:///D:/t727327/Desktop/borrador_memoria_v8.docx%23_Toc74676909
ÍNDICE 
 
x 
 
Figura 61. Comprobación de la instalación correcta de Tensorflow y Keras en un entorno 
virtual ...................................................................................................................... 63 
Figura 62. Ejecución de Jupyter Notebook................................................................. 64 
Figura 63. Interfaz gráfica de Jupyter Notebook......................................................... 64 
Figura 64. Interfaz gráfico y celdas del código ........................................................... 64 
Figura 65. Introducir en la variable data_path la ruta raíz ..................................... 65 
Figura 66. Introducción del directorio donde se van a guardar las máscaras obtenidas . 65 
Figura 67. Introducir ruta de directorios de los datos de entrenamiento y validación.... 66 
Figura 68. Introducir ruta de los pesos de entrenamiento ............................................ 66 
Figura 69. Introducir ruta del fichero numpy de las máscaras automáticas obtenidas ... 66 
Figura 70. Introducir nombre de la caperta que se va a generar con las máscaras 
automáticas .............................................................................................................. 67 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 ACRÓNIMOS 
 
1 
 
 
Acrónimos 
 
 
TAC: Tomografía Axial Computarizada 
IA: Inteligencia Artificial 
ML: Machine Learning 
DL: Deep Learning 
RNA: Red Neuronal Artificial 
CNN: Red Neuronal Convolucional 
RAM: Memoria de Acceso Aleatorio 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 INTRODUCCIÓN 
 
3 
 
Capítulo 1 
 
 
 
Introducción 
 
Durante las últimas décadas, la segmentación de estructuras craneales ha sido una técnica 
de procesado de gran importancia en el ámbito de la Medicina y la Bioingeniería. Algunas 
de las aplicaciones, que implican un segmentado, son el guido asistido en cirugías [1-3], 
simulaciones quirúrgicas [4-5] y creaciones de modelos a escala real de estructuras como 
el cráneo [6]. 
Una segmentación precisa resulta compleja debido a la variabilidad del tamaño, 
densidad y número de estructuras anatómicas en cada paciente. En muchos casos, prótesis 
o deformaciones patológicas introducen dificultades a la hora de segmentar las imágenes. 
Además, el proceso de obtención las imágenes, el tipo de imagen y la calidad de la propia 
imagen influyen en el proceso de segmentación. Parámetros como una mala resolución o 
ruido excesivo pueden suponer una pérdida de precisión llegando incluso a causar 
situaciones en las que no se distinga entre una región de hueso, tejido blando o aire. Todo 
el conjunto provoca el desafío de buscar nuevas técnicas que proporcionen resultados 
precisos en tiempos de cómputo relativamente bajos. 
La irrupción de tipos de Inteligencia Artificial (IA) como el aprendizaje profundo 
ha supuesto la aparición de algoritmos automáticos de segmentación basados en la 
experiencia [7-9] como alternativa a los modelos tradicionales [10-11]. Gracias a la 
aparición del Big Data, la aportación de la Inteligencia Artificial, y la posibilidad de 
manejar recursos de cómputo de altas capacidades, ha sido posible estrechar la relación 
entre la precisión, el esfuerzo y los tiempos de cómputo. 
En este documento se propone un algoritmo de segmentación automática de 
estructuras craneales de imágenes bidimensionales (2D) basado en técnicas de 
aprendizaje profundo. 
Las imágenes 2D corresponden con las rebanadas (slices) del corte axial de la 
Tomografía Axial Computarizada (TAC) de diferentes pacientes. El conjunto de datos ha 
sido cedido por el Hospital Gregorio Marañón de Madrid y fue obtenido a partir de la 
tomografía computarizada por rayos X realizada por un tomógrafo helicoidal. 
Las imágenes son segmentadas de manera manual para obtener las máscaras que 
se han usado en el entrenamiento y validación del algoritmo. Se escoge realizar una 
segmentación manual para intentar proporcionar la máxima precisión en los contornos de 
los tejidos óseos. La cabeza presenta estructuras anatómicas, como los huesos etmoidales, 
que varían en número en cada paciente, que presentan grosores muy finos y que requieren 
de un gran cuidado a la hora de distinguir que tipo de tejido corresponde con cada región 
de la imagen. 
INTRODUCCIÓN 
4 
 
Una vez adaptado los parámetros y validado el entrenamiento, el algoritmo 
segmenta imágenes craneales de manera automática. 
Finalmente, se procede a exponer los resultados obtenidos y se indica las ventajas 
e inconvenientes que se han detectado durante el proyecto. 
El propósito del proyecto consiste en proporcionar un modelo de segmentación 
que pueda reducir esfuerzos, que no sea tan costoso como una segmentación manual y 
que el tiempo de ejecución de un TAC sea relativamente bajo. Es decir, plantear una 
posible alternativa de segmentación de estructuras anatómicas craneales. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 OBJETIVOS 
5 
 
 
Capítulo 2 
 
 
 
 
Objetivos 
 
El proyecto académico tiene como objetivo principal la implementación de un algoritmo 
basado en técnicas de aprendizaje profundo cuya funcionalidad es la segmentación y 
clasificación de estructuras craneales a partir de un conjunto de TAC. 
 
Además, se establecen los siguientes objetivos secundarios: 
 
• Adaptar una red neuronal convolucional (CNN) U-Net al problema de segmentar 
estructuras anatómicas craneales. 
 
 
• Entrenar un algoritmo basado en técnicas de aprendizaje profundo y comprobar 
su funcionamiento. 
 
 
 
 
• Diseñar un modelo que segmente imágenes médicas de TAC en tiempos de 
cómputo relativamente bajos. 
 
 
• Comparar resultados obtenidos con un algoritmo de segmentación automática y 
una segmentación manual de imágenes. 
 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
7 
 
Capítulo 3 
 
 
 
Revisión de técnicas y conceptos 
 
En este capítulo se procede a repasar las técnicas y conceptos que se han empleado 
durante el desarrollo del algoritmo de clasificación propuesto para la segmentación de 
estructuras craneales. 
 
3.1 Estructuras anatómicas craneales 
 
El cráneo, según la Real Academia Española (RAE), se define como “una caja ósea en 
la que está contenido el encéfalo” [12]. En términos de anatomía, el cráneo es una 
estructura formada por dos regiones: craneal y facial [13]. La región craneal recubre el 
encéfalo y el resto de las estructuras óseas del cráneo se localizan en la región facial. 
El cráneo está formado por una gran variedad de estructuras anatómicas [14], por 
consiguiente, resulta complejo abarcar todo el conjunto sin llevar a cabo un estudio 
profundo de su anatomía. Por esa razón, el proyecto académico se centra en el estudio de 
los resultados obtenidos de la segmentación de los principales tejidos óseos (figura 1 y 
2). 
 
Figura 1. Vista frontal del cráneo con las estructuras óseas principales. Imagen adaptada [15] 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
8 
 
 
Figura 2. Vista lateral del cráneo con las estructuras óseas principales. Imagen adaptada [15] 
 
Además, el cráneo consta de una variedad estructuras como las cavidades y los 
tejidos blandos, o senos, como indica la literatura [14]. La figura 3 muestra ejemplos de 
estructuras anatómicas que componen el interior del cráneo. 
 
 
Figura 3. Localización de estructuras anatómicas en el cráneo. Imagen adaptada [16] 
 
Para la interpretación y localización de las estructuras craneales en las imágenes 
médicas, usadas en elproyecto, se ha consultado la literatura [17]. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
9 
 
 
3.2 Tomografía Axial Computarizada 
 
La tomografía es un método de obtención de una secuencia de imágenes por cortes de un 
área u objeto. Existen diferentes técnicas de tomografía: tomografía computarizada por 
rayos X (TAC), tomografía por resonancia magnética (IRM) o tomografía por emisión de 
positrones (PET) entre otras [10]. 
La tomografía computarizada, también conocida como tomografía axial 
computarizada (TAC), es una técnica de captación de imágenes que emplea rayos X. Con 
el paso del tiempo se ha convertido en un método universal de obtener imágenes 
tridimensionales de cualquier estructura anatómica. Actualmente la TAC se aplica al 
estudio y seguimiento de tratamientos para pacientes en cualquier ámbito de la medicina 
[18]. 
El principio del TAC está fundamentado en la detección de las proyecciones 
originadas a partir de la rotación del tubo de rayos X alrededor del paciente. Cuanto mayor 
sea el número de proyecciones, más precisa es la reconstrucción del objeto. 
El valor de cada píxel, que compone la imagen originada, presenta una relación 
directamente proporcional a la atenuación del tejido correspondiente. Es decir, se 
establece una relación entre la intensidad del haz inicial del rayo X y el coeficiente de 
atenuación lineal del tejido del material anatómico [18]. Las imágenes se obtienen a partir 
del empleo de algoritmos de reconstrucción [19]. 
Los cortes, conocidos como axiales, coronales o sagitales, proporcionan una vista 
bidimensional de las estructuras en función del plano establecido. Las figuras 4, 5, 6 son 
ejemplos de imágenes (slices) bidimensionales de los tres cortes de un TAC de cabeza: 
corte axial, coronal y sagital. 
 
 
Figura 4. Slice de un corte axial de TAC de la cabeza de un paciente 
 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
10 
 
 
 
Figura 5. Slice de un corte coronal de TAC de la cabeza de un paciente 
 
 
 
Figura 6. Slice de un corte sagital de TAC de la cabeza de un paciente 
 
3.3 DICOM 
 
DICOM (Digital Imaging and Communication On Medicine) es un protocolo de 
almacenamiento y transmisión de imágenes biomédicas y de sus metadatos asociados 
entre herramientas de diagnóstico. Su aparición supuso la solución a la falta de 
interoperabilidad entre equipos. 
El estándar, como punto de referencia para medir o valorar imágenes, permite 
funcionalidades como visualizar, almacenar, procesar y transmitir imágenes obtenidas a 
partir de métodos como la tomografía computarizada. 
El protocolo se basa en una sintaxis binaria y permite una gran resolución de 
imágenes [20]. La estructura genérica de entidades del protocolo se presenta en la figura 
7 de manera simplificada. 
 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
11 
 
 
Figura 7. Esquema simplificado de la estructura de Entidades de DICOM. Imagen adaptada [21] 
 
Los archivos DICOM, con formato .dcm, contienen metadatos como el número 
del slice, dimensiones, parámetros de adquisición, datos del paciente o el estudio 
aplicado, entre otros. Algunos de los parámetros más relevantes del proyecto son el 
espesor nominal del slice (slice Thinkness), el ancho de la ventana (window width) o el 
centro de la ventana (window center). MicroDicom [22] permite la funcionalidad de 
manipular estos dos últimos parámetros con la finalidad de enventanar las slices de los 
TAC. Los valores de anchura y centro de la ventana dependen del contraste necesario 
para percibir con mayor claridad unos tejidos u otros. 
En la figura 8 se pueden apreciar algunos de los ejemplos de metadatos de un 
TAC, en formato .dcm, mediante el software MicroDicom. 
 
 
Figura 8. Ejemplo de parámetros de un TAC en formato DICOM. 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
12 
 
 
3.4 Machine Learning 
 
El aprendizaje profundo (Machine Learning - ML) es un campo de las ciencias de la 
computación y rama de la Inteligencia Artificial (IA). 
La IA se pude describir como un conjunto de técnicas capaces de simular ciertos 
comportamientos inteligentes propios del ser humano. Máquinas, ordenadores y sistemas 
computacionales buscan aprender a base de técnicas con el fin de percibir el entorno, 
entender su comportamiento y actuar sobre él [23]. Los principios fundamentales son la 
imitación de las funciones cognitivas de la mente humana y la búsqueda del aprendizaje 
de una manera análoga a la desarrollada por el ser humano a medida que va creciendo y 
adquiriendo experiencia. Sin embargo, esto no hubiera sido posible sin la irrupción del 
Big Data y la posibilidad de acceder y procesar grandes cantidades de datos. No obstante, 
las compañías tecnológicas han tenido que reinventarse para desarrollar dispositivos con 
recursos capaces de procesar grandes conjuntos de datos. 
El ML persiste en la búsqueda de desarrollar sistemas que resuelvan tareas que a 
priori requieren de la inteligencia humana. Para ello, es necesario la colaboración de 
diferentes ramas como la ingeniería, matemáticas, estadística, psicología o neurociencia. 
En términos de la ingeniería computacional, ML se define como un área de la IA 
que se centra en el desarrollo de técnicas que busquen patrones para establecer modelos 
de procesado de datos. 
El aprendizaje automático subyace en la idea de comprender el comportamiento 
de los seres humanos cuando reaccionan a un estímulo o desarrollan una educación basada 
en ensayo, prueba y error. Un concepto clave, aportado por la neurociencia, es la 
categorización de conceptos y objetos a partir de atributos o características. 
La categorización se describe como una regla inicial que se modifica a medida 
que el humano se enfrenta a nuevos ejemplos. 
Como propósito de implementación se establece la posibilidad de automatizar y 
simplificar procesos tediosos y complejos mediante métodos de análisis matemático y 
estadístico. Dicho lo cual, es fundamental el desarrollo de modelos genéricos con salidas 
precisas. La precisión de los modelos es una variable que tiene una relación directamente 
proporcional a la cantidad de datos que se manejen. 
Entre las numerosas ventajas que pueden proporcionar este tipo de sistemas, se 
pueden mencionar la resolución de tareas complejas con solidez, la utilización de datos 
reales en lugar de datos teóricos y la adaptabilidad a situaciones desconocidas. 
Existen varias formas de crear algoritmos según el estilo del aprendizaje 
empleado. Según esta taxonomía y como se muestra en la figura 9, el aprendizaje 
automático se agrupa en: aprendizaje supervisado (supervised learning), no supervisado 
(unsupervised learning), semi-supervisado (semi-supervised learning) y por refuerzo 
(reinforcement learning) [24]. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
13 
 
 
Figura 9. Tipos de Machine Learning según el estilo de aprendizaje 
 
Los algoritmos de aprendizaje supervisado asignan entradas específicas a salidas 
conocidas. La principal aplicación es la clasificación por clases o etiquetas apoyada en el 
mapeo del vector entrada-salida. Es decir, se les asigna etiquetas, previamente conocidas 
y variables en función de la salida, a los datos de entrada. La figura 10 describe, de manera 
simplificada, los procesos y flujos empleados en algoritmos de aprendizaje supervisado. 
Un aspecto importante es la necesidad de ayuda humana como supervisor externo para 
orientar el camino [25]. 
 
 
Figura 10. Procesos del aprendizaje supervisado. Imagen adaptada [25] 
 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
14 
 
Los algoritmos basados en aprendizaje no supervisado configuran el conjunto de 
entradas, aunque las salidas no están disponibles para su modelado en la búsqueda de la 
precisión del modelo. El sistema no tiene datos de referencia y por lo general el algoritmoaprende de la información de entrada del problema en cuestión. La red determina el error 
y ajusta los parámetros para minimizarlo. A diferencia de los algoritmos de aprendizaje 
supervisado y como se puede apreciar en la figura 11, los datos de entrada no son 
clasificados a priori, sino que las técnicas de aprendizaje deben categorizarlos de manera 
correcta encontrando características comunes durante el procesado. Por lo tanto, los 
algoritmos buscan patrones en conjuntos de datos que no tienen respuestas etiquetadas. 
Hay que mencionar que no es necesario un supervisor externo como en el caso de las 
técnicas de aprendizaje supervisado. 
 
 
Figura 11. Ejemplo esquemático de técnica de aprendizaje supervisado y aprendizaje no supervisado. 
Imagen Adaptada [26] 
 
Los algoritmos de aprendizaje semi-supervisado combinan conjuntos etiquetados 
y no etiquetados para generar la función o clasificador apropiado [24]. 
Los modelos basados en técnicas de aprendizaje por refuerzo se basan en realizar 
una serie de acciones que tienen algún impacto en el entorno, y este, a su vez, proporciona 
reportes para establecer un guiado hacía el modelo ideal [25]. En pocas palabras, las 
técnicas de aprendizaje por refuerzo buscan establecer un sistema que aprenda a partir de 
las interacciones con el entorno. Posteriormente, estas se traducen en recompensas y 
penalizaciones a medida que se aproximan o se alejan del objetivo. Además, existen 
agentes externos que determinan cuál debe ser el comportamiento del proceso y deciden 
sobre las acciones a aplicar dependiendo del resultado obtenido. Las compañías punteras 
en el ámbito de la tecnología como el caso de Internal Bussiness Machines Corporation 
(IBM), Apple o Google están realizando grandes inversiones en investigación de 
algoritmos de aprendizaje por refuerzo debido a que pretenden desarrollar aplicaciones 
como el entrenamiento a robots con el propósito de que realicen tareas sencillas de manera 
autónoma. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
15 
 
 
3.5 Redes Neuronales Artificiales 
 
Las redes neuronales artificiales (RNAs) son modelos electrónicos basados en la 
estructura neuronal del cerebro, gracias a la cual, el cerebro almacena información en 
patrones. 
Para describir las RNAs, es necesario comentar el papel de la neurona en el 
cerebro. En primer lugar, ella misma recibe entradas de distintas fuentes, que después, se 
combinan mediante operaciones lineales o no lineales generando un resultado. 
La neurona está formada, como muestra la figura 12, por cuatro componentes 
básicos: dendritas, soma, axón y sinapsis. Las primeras reciben la información de 
impulsos nerviosos a través de la sinapsis con otras neuronas y transportan la información 
hacia el soma. 
El soma es la parte central del cuerpo de la célula y el núcleo para el tratamiento 
de los procesos. 
El axón es la ramificación extendida del soma que comunica la información 
procesada a otras neuronas. 
La sinapsis es la estructura que establece la conexión entre la parte terminal del 
axón y las dendritas de la siguiente neurona. 
 
 
Figura 12. Una simple neurona. Imagen adaptada [27] 
 
A medida que la neurociencia proporciona un mejor entendimiento de las 
neuronas, el avance en el desarrollo y adaptación de modelos de RNA va incrementando 
[27]. 
 
 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
16 
 
Las investigaciones en redes neuronales artificiales pretenden adaptar los 
componentes de la neurona a unidades de cómputo que permitan resolver problemas de 
una manera semejante alejado de los sistemas de computación tradicional. Frank 
Rosenblatt propuso el perceptrón [28] como unidad básica de procesamiento de una red 
neuronal artificial. 
En la figura 13 se pueden apreciar los conceptos básicos de un perceptrón basados 
en las ecuaciones Ec(1) y Ec(2). La suma ponderada, Z, combina varias entradas, xi . En 
la ecuación Ec(1), cada una de las entradas tiene asignada unos pesos, wi, cuyo valor 
tiene una relación directamente proporcional a la importancia que se le proporcione a la 
entrada. 
En la ecuación Ec(1) aparece un concepto estadístico denominado sesgo, b, que 
se describe como una constante obtenida a partir de la diferencia entre el valor del 
parámetro y su valor esperado. Además, es atribuido al error humano o sistemático que 
poseen los sistemas. A medida que se ejecuta el entrenamiento, el sesgo es menor. 
Z = b + ∑ wi xi
n
i=0
 Ec(1) 
o = g(Z) Ec(2) 
 
Figura 13. Definición de perceptrón a alto nivel. Imagen adaptada [29] 
 
La función de activación, g(.) de la Ec(2), es una función de transferencia que se 
encarga de transformar las salidas a un formato no lineal, dependiendo de las necesidades, 
para su posterior transmisión a la siguiente capa. En términos generales, la función de 
transferencia define un valor umbral que indica si la neurona debe activarse o no. Es decir, 
la neurona se activa en caso de que el valor de la entrada sea superior al umbral 
establecido. 
El empleo de funciones de activación proporciona a la red neuronal dinamismo, 
salidas coherentes en función de los datos aleatorios de entrada y optimización de errores 
que llegan a propagar los pesos. Existe diversas funciones de activación que se clasifican 
en lineales o no lineales [30]. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
17 
 
Para escoger la función de activación correcta es necesario un estudio de la red 
basado en comparar los diferentes resultados que proporcionan cada una de ellas. En 
nuestro caso, el algoritmo usa las funciones unidad lineal rectificada (ReLU) y sigmoidal 
(sigmoide) como operadores de las capas de activación. 
La función ReLU es una función de activación no lineal que se emplea de manera 
frecuente en las redes neuronales. Los valores negativos de entrada se transforman en 
valores nulos y los positivos se mantienen igual (Ec(3)). Los perceptrones no se activan 
al mismo tiempo y se desactivan a medida que la salida de la transformación es cero [30]. 
La función ReLU presenta un buen comportamiento en entornos cuyas entradas son 
imágenes. En la figura 14 se muestra la gráfica de la función ReLU. 
g(x) = max (0, x) Ec(3) 
 
Figura 14. Función de activación ReLU. Imagen adaptada [30] 
 
La función sigmoidal es una función de activación no lineal que transforma las 
entradas a valores (0,1) interpretándose como una probabilidad (Ec(4)). Por lo tanto, los 
valores altos tienden a 1 y los valores bajos a 0. La función presenta un buen rendimiento 
en la última capa de la red neuronal [30]. En la figura 15 se muestra la gráfica de la 
función sigmoidal. 
g(x) = 
1
1+ e−x
 Ec(4) 
 
Figura 15. Función de activación sigmoidal o sigmoide. Imagen adaptada [30] 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
18 
 
La RNA combina diversas capas que se encuentran interconectadas mediante 
perceptrones en las que la entrada de una capa se corresponde con la salida de la capa 
anterior [31]. Como se puede ver en la figura 16, la red neuronal artificial está formada 
por tres tipos de capas: capa de entrada, capas ocultas y capa de salida. 
Para entender el funcionamiento de una RNA, hay que introducir el concepto de 
propagación hacia delante. Método en el cual el conjunto de datos realiza una pasada por 
cada una de las capas proporcionando una salida. El resultado final es comparado con la 
etiqueta real y en función del error arrastrado se ajustan de manera progresiva los pesos 
[32]. 
Una vez estimado el error, se suele ejecutar un algoritmo de propagación hacia 
atrás (backropagation) [33] encargado de ajustar los pesos capa a capa hasta alcanzar la 
primera capa, también conocida como la capa de entrada. 
El proceso de propagación hacia delante y backropagation es iterativo y se repite 
hasta adquirir una etiqueta óptima. La importancia de este proceso recae en la ideade 
proporcionar a las neuronas de las capas ocultas una autonomía para organizarse, y así 
poder reconocer características a lo largo de la ejecución de iteraciones y entrenamientos. 
En general, la RNA no requiere de conocimientos previos de la red y sencilla de 
programar. Un aspecto que se puede considerar negativo es su alto coste computacional, 
sin embargo, las unidades de procesamiento gráfico (graphics processing units – GPUs) 
actuales han hecho posible su ejecución [33]. 
La estructura mencionada resulta útil para redes neuronales artificiales que 
trabajen en proyectos propensos a errores, como puede ser el caso de aplicaciones de 
segmentación de imágenes. 
 
 
Figura 16. Estructura básica de una red neuronal. Imagen adaptada [34] 
 
Cada neurona de la capa oculta se encuentra conectada con otras y cada una de las 
interconexiones tiene adjudicada un peso. El número de capas depende de la naturaleza 
del problema y del tamaño del conjunto de datos de entrada. Además, un número elevado 
de capas supone una mayor complejidad en el diseño y desarrollo. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
19 
 
 
3.6 Deep Learning 
 
Las redes neuronales artificiales se pueden clasificar dependiendo del número de capas 
ocultas (hidden layer). En el caso de diseñar un modelo compuesto por una sola capa 
oculta, la red se denomina red neuronal poco profunda o superficial. Si la red está formada 
un conjunto de capas ocultas, se llama red neuronal profunda (Deep Learning). 
Las redes basadas en aprendizaje profundo (Deep Learning) son redes neuronales 
artificiales formadas por un número de capas ocultas en función de las necesidades del 
problema. 
Existen diferentes maneras de organizar y clasificar los algoritmos profundos. Un 
ejemplo de clasificación, como muestra la figura 17, es la propuesta realizada por la 
empresa estadounidense IBM, distinguiendo entre algoritmos supervisados y no 
supervisados [35]. En nuestro caso, nos centramos en la red neuronal convolucional 
(Convolucional Neuronal Network - CNN) ya que la propuesta del proyecto consiste en 
un algoritmo de red neuronal convolucional. 
 
 
Figura 17. Clasificación de las Redes Neuronales Convolucionales según IBM. Imagen adaptada [35] 
 
La CNN es una red neuronal multicapa. La principal diferencia con el resto de las 
arquitecturas es el empleo del operador convolución en las capas de la red. Este tipo de 
red presenta una arquitectura que se adapta a la complejidad del problema [34]. 
A diferencia de clasificadores tradicionales, la CNN permite extraer 
características sin necesidad de un procesado previo. Las operaciones responsables de la 
ejecución de este método son las convoluciones [36]. 
La capa de entrada alimenta la red con datos, las capas profundas realizan las 
funciones de extracción de características y la capa de salida clasifica. Dependiendo de la 
capa, las operaciones implementadas son diferentes. Los datos, como puede ser el caso 
de una imagen, forman una matriz de MxN dimensiones y alimentan a la red por medio 
de la capa entrada. 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
20 
 
En las capas ocultas se realizan operaciones específicas en función de las 
características a extraer. Si los datos son imágenes, las características pueden ser aristas, 
líneas o contornos entre otras. 
Las características se pueden obtener a partir de repeticiones de etapas (stages). 
Una etapa es la combinación de una capa convolucional y una capa de agrupación 
(pooling) que se encuentran interconectas. En función de la complejidad del problema, la 
red está compuesta por más o menos etapas [37]. 
En la capa convolucional, como bien indica su nombre, se realiza la operación 
convolucional. Esta, como se muestra en la figura 18, se encarga de recorrer el array de 
datos y aplicar filtros a cada uno de los componentes. La salida de los filtros (kernels) son 
los mapas de características [34]. 
 
 
Figura 18. Ejemplo de obtención de mapa de características en una convolución a partir de un kernel. 
Imagen adaptada [38] 
 
El rol del operador convolución es fundamental en las capas ocultas, y, por 
consiguiente, en las redes neuronales convolucionales. Las primeras capas 
convolucionales de la red obtienen mapas de características simples, como el contorno de 
las imágenes, y a medida que se pasa por cada una de las sucesivas capas se obtienen 
características más complejas hasta la adquisición del mapa de características deseado. 
El operador de la capa de agrupación, como muestra la figura 19, simplifica el 
mapa de características obtenido de la capa convolucionales quedándose con las 
características más comunes. Aunque existen diversos métodos para reducir la matriz 
[37], la figura 16 hace referencia al método agrupación máxima (max-pooling) ya que es 
el método utilizado en el algoritmo de segmentación. 
 
 
Figura 19. Ejemplo de una estructura capa convolucional y capa pooling aplicada a una imagen 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
21 
 
Algunos diseños de CNN, dependiendo del problema, introducen entre la capa 
convolucional y de agrupación una capa intermedia para afinar el mapa de características. 
En estos casos se usan funciones de activación como operadores de la capa. La función 
de activación más común empleada es la unidad lineal rectificada (ReLU) [30]. 
Las redes neuronales convolucionales suelen tener en su diseño un clasificador 
como capa de salida que se encuentra totalmente conectada con la última capa oculta. 
Proporciona un vector de K elementos que contiene la probabilidad para cada clase de 
cualquier dato que se clasifique. El valor de K corresponde con el número de clases que 
la CNN es capaz de identificar [34]. La capa de salida está formada de tantas neuronas 
como clases sean necesarias. 
La figura 20 muestra un ejemplo esquemático de las distintas capas comentadas 
anteriormente y que forman una red neuronal convolucional. El ejemplo muestra la 
clasificación de la imagen de un coche entre las clases: coche, camión, bicicleta y tren. El 
valor P indica la probabilidad, entre 0 y 1, que tiene la imagen de ser cada una de las 
clases. 
 
 
Figura 20. Esquema de una red neuronal convolucional, Imagen adaptada [34] 
 
3.7 Aspectos importantes de la CNN 
 
A continuación, se enumeran una serie de conceptos importantes a la hora de desarrollar 
un algoritmo basado en redes neuronales convolucionales. 
 
• Fases de desarrollo de una CNN 
Una red neuronal convolucional consta de tres fases de desarrollo: entrenamiento, 
validación y test. 
El entrenamiento de la red es el proceso en el cual se generan los pesos (weigths) 
y se adaptan los parámetros en función de la arquitectura y el tipo de datos que se 
introducen. 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
22 
 
La validación es la fase donde la red evalúa los pesos y la precisión a partir de un 
conjunto de datos diferente al usado durante el entrenamiento. 
En la fase de prueba o test, la red realiza de manera automática la aplicación en 
cuestión. En nuestro caso, la red segmenta estructuras craneales de imágenes 
TAC. 
 
• Función de Coste 
La función de coste es una función que calcula la relación, denominado error, 
entre el valor esperado y el valor que obtiene la red. Resulta un parámetro 
imprescindible en la optimización de los diversos parámetros durante el 
entrenamiento de la CNN. 
 
• Optimizador 
El optimizador colabora en la fase de entrenamiento para reducir la función de 
coste a partir de la búsqueda de los pesos más adecuados. Para ello, es necesario 
establecer una tasa de aprendizaje óptima. Este último parámetro es un valor que 
se encarga de establecer la velocidad con la cual los pesos convergen durante el 
entrenamiento hacia el objetivo propuesto. 
Existen una variedad de optimizadores que se emplean en algoritmos basados en 
redesneuronales convolucionales. Un algoritmo usado habitualmente como 
elemento que proporciona los pesos de la red es el optimizador Adam [39]. 
 
• Métrica 
La métrica es el parámetro que mide el rendimiento de la red y la calidad de los 
datos de salida. En nuestro caso, se emplea, como métrica el coeficiente de 
Sorensen-Dice (DICE) cuya función es comparar la similitud entre dos muestras 
[40]. 
 
• Época 
La época es un parámetro que se define como el número de veces que se itera el 
conjunto completo de datos en el algoritmo durante la fase de entrenamiento, de 
validación o de prueba. El número de épocas se obtiene a partir de un proceso 
empírico ya que resulta variable en función de las necesidades de cada red. 
 
 
 
 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
23 
 
• Tamaño de lote 
El tamaño del lote (batch size) se define como el número de muestras que procesa 
la red a la vez durante una fase (de entrenamiento, validación o test). Dicho lo 
cual, una época se segmenta en lotes. El valor de este parámetro tiene una relación 
directamente proporcional con el tiempo que tarda el algoritmo en procesar una 
época. 
 
• Dropout 
El parámetro evita un sobreajuste de los datos durante el entrenamiento. Es una 
técnica de normalización que se suele usar en algoritmos donde los datos del 
entrenamiento son muy limitados. 
 
3.8 Tipos de Redes Neuronales Convolucionales 
 
Una de las ventajas que presenta la CNN es la posibilidad de adaptar su arquitectura a 
diversos problemas de la Ciencia de los Datos. Dicho lo cual, el diseño de una red 
neuronal convolucional no suele partir desde cero, sino que toma como referencia una red 
preentrenada que resuelva un problema similar. 
En la actualidad, existen diferentes tipos de redes neuronales convolucionales que 
suelen adaptarse para afrontar nuevos desafíos en el ámbito de la segmentación y 
clasificación de imágenes. 
 
• AlexNet 
AlexNet es una red neuronal convolucional creada por Alex Krizhevsky, Ilya 
Sutskever y Geoffrey E. Hinton que clasifica millones de imágenes en 1000 clases 
diferentes [41]. La implementación de la red aportó grandes avances en el ámbito 
del reconocimiento visual de imágenes. 
 
• VGG 
VGG es una red diseñada por Karen Simonyan y Andrew Zisserman que busca 
estandarizar un modelo de red neuronal profunda para el reconocimiento de 
imágenes. El desarrollo de la red se encuentra en la literatura [42]. 
 
• GoogLeNet 
La red es un modelo de red neuronal profunda que clasifica imágenes entre más 
de 1000 clases. La red se encuentra descrita en [43] y los autores emplearon la 
base de datos ImageNet [44] para su desarrollo. 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
24 
 
 
• ResNet 
La CNN se diseñó en 2016 como propuesta alternativa de modelo de 
reconocimiento de imágenes al resto de redes ya mencionadas anteriormente. El 
diseño y desarrollo de la red neuronal está publicado en [45]. 
 
• U-Net 
Olaf Ronneberger, Philipp Fischer y Thomas Brox han diseño una red neuronal 
convolucional que permite la segmentación y clasificación de imágenes a partir 
de convoluciones y deconvoluciones que manipulan la resolución de las imágenes 
[46]. 
 
El algoritmo propuesto presenta un diseño adaptado de la red neuronal U-Net. El 
motivo de esta elección se debe a la buena adaptación de la red a estudios de segmentación 
y clasificación de estructuras anatómicas, mencionados en el estado de la cuestión 
(capítulo 4), similares al objetivo principal del proyecto. 
 
3.9 U-Net 
 
U-Net es la red neuronal convolucional más conocida para algoritmos de clasificación y 
segmentación semántica de imágenes médicas (figura 21). 
La red se desarrolló en el Departamento de Ciencia de Computación de Friburgo 
y se basa en una red totalmente convolucional (Fully Convolutional Network). La 
arquitectura está formada por un camino de contracción (left side) y un camino de 
expansión (right side). 
El camino de contracción o codificador (encoder) busca reducir la resolución de 
las imágenes a medida que se va duplicando el número de características obtenidas. 
El camino de expansión o decodificador (decoder) busca aumentar 
progresivamente la resolución y tamaño de la imagen a partir de interpolaciones. 
El último paso del camino de contracción coincide con el primer paso del camino 
de extracción. Se puede denominar “cuello” y tiene un procesamiento específico al 
problema en cuestión. Esta parte de la U-Net es la encargada de obtener las características 
“más profundas” y complejas. 
La capa de entrada de la U-Net original se alimenta de una secuencia de imágenes 
en escala de grises por medio de un canal. La capa de salida de la U-Net es una operación 
convolución que mapea los canales del mapa de características al número de clases 
deseadas. 
 REVISIÓN DE TÉCNICAS Y CONCEPTOS 
 
25 
 
Durante el camino por los diferentes trayectos, se realizan diversas operaciones 
como convoluciones, submuestreo, deconvoluciones o concatenaciones. La explicación 
detallada de la arquitectura se encuentra publicada en [46]. 
Es una red flexible y adaptable a cualquier problema de segmentación de imágenes 
médicas. 
 
 
Figura 21. Arquitectura U-Net original desarrollada por Olaf Ronneberger, Philipp Fischer y Thomas 
Brox. Imagen adaptada [46] 
 
3.10 Segmentación semántica de imágenes médicas 
 
La segmentación de imágenes se define como el proceso de dividir la imagen en regiones 
o grupos de píxeles. Más concretamente, se describe como una clasificación que asigna a 
cada píxel una categoría en función de sus características. Las categorías se identifican 
con números enteros denominados etiquetas (labels). 
A nivel de aplicación, resulta una técnica de procesado imprescindible a la hora 
de realizar diagnósticos ya que proporciona una máscara muy representativa de los datos 
que componen las imágenes. 
Existen diferentes tipos de segmentación, sin embargo, se ha escogido la técnica 
de segmentación semántica para el algoritmo propuesto. La segmentación semántica, 
como muestra la figura 22, asigna etiquetas a partir de algoritmos de procesado [47]. 
 
 
 
REVISIÓN DE TÉCNICAS Y CONCEPTOS 
26 
 
 
 
Figura 22. Ejemplo de segmentación de una imagen en persona y fondo. Imagen adaptada [47]
ESTADO DE LA CUESTIÓN 
27 
 
Capítulo 4 
 
 
 
Estado de la cuestión 
 
En la actualidad, existe una amplia variedad de estudios de algoritmos de segmentación 
de estructuras anatómicas de diferentes partes del cuerpo basadas en técnicas de 
aprendizaje profundo. 
El departamento de Diagnóstico de Imágenes y Medicina Nuclear de la 
Universidad de Kyoto de Japón propone un algoritmo de segmentación automático de 
imágenes TAC de huesos de todo el cuerpo a partir de una red neuronal convolucional 
[48]. Dicho lo cual, los autores han adaptado la arquitectura de la red U-Net desarrollada 
por Olaf Ronneberger, Philipp Fischer y Thomas Brox [46]. Para validar la precisión, 
han empleado tres conjuntos de datos diferentes, técnicas de aumento de datos y han 
comparado resultados con una umbralización tradicional. Los autores concluyen que los 
resultados más favorables son obtenidos a partir del empleo de técnicas de aumento de 
datos y con el uso del coeficiente DICE como métrica de entrenamiento y validación. El 
valor del coeficiente DICE obtenido, para los tres conjuntos de datos, ha sido de 0.979 ± 
0.004, 0.946 ± 0.009 y 0.954 ± 0.007 respectivamente. 
Un grupo de investigadores de diferentes universidades de Suecia y Dinamarca 
proponen un algoritmo de segmentación automática de 49 tipos de hueso de diferente 
tamaño y grosor [49]. Los autores han diseñado una red neuronal totalmente 
convolucional cuya precisión ha sido comparada con una segmentación manual realizada 
por expertos en radiología y medicina nuclear. La métrica que se ha empleado para 
realizaruna valoración objetiva ha sido el coeficiente DICE. El algoritmo propuesto ha 
reportado, para el conjunto de datos, unos resultados con una precisión de: 0.84 para la 
séptima costilla derecha, 0.86 para la séptima vértebra torácica, 0.88 para el sacro o 0.83 
para el esternón. 
Varios departamentos de la Universidad de Linköping y el hospital universitario 
de Karolishka han colaborado en la implementación de un algoritmo de segmentación de 
huesos para la representación en 3D del área del abdomen y la pelvis [50]. El algoritmo 
que proponen es una adaptación de la arquitectura 3D U-Net y el conjunto de datos está 
constituido por imágenes TAC de diferente procedencia. Los resultados obtenidos han 
mostrado un coeficiente DICE por slice de 0.9620 ± 0.027 y 0.9626 ± 0.033 en los 
respectivos conjuntos de datos. 
 
 
ESTADO DE LA CUESTIÓN 
28 
 
Jordi Minnema y otros [51], han desarrollado una segmentación automática de 
tomografía axial computarizada de estructuras craneales para la reconstrucción en 3D de 
las propias estructuras. El modelo de segmentación que propone está basado en técnicas 
de CNN y adaptado de la solución expuesta por N. Aldenborgh como segmentación del 
cerebro [52]. Las capas ocultas de la red están formadas por una secuencia de bloques o 
etapas compuestas por una capa convolucional, capa de activación, capa de normalización 
y capa de agrupación. Las máscaras para el entrenamiento han sido obtenidas a partir de 
la técnica de umbral global combinado con correcciones manuales realizadas en un 
software de edición. Los TAC segmentados de manera automática presentan un 
coeficiente DICE de similitud de 0.92 ± 0.04 con las máscaras semi-automáticas. 
Martin Torriani y otros [53], proponen una red neuronal convolucional para la 
segmentación de imágenes TAC de los distintos tejidos que componen la pelvis. Los 
resultados de las segmentaciones de la red son comparados con una segmentación 
semiautomática en la cual se emplean técnicas de umbralización supervisadas por un 
especialista en segmentación de imágenes. La red neuronal es una adaptación de la 
arquitectura U-Net en la cual la capa de salida clasifica las imágenes en 6 clases de tejidos 
de la pelvis. Entre los tejidos estudiados, los autores proporcionan una segmentación 
automática con un coeficiente DICE de 0.97 para músculo o 0.92 para tejido óseo. 
Francesco La Rosa expone en su estudio un algoritmo de segmentación 
automática de huesos a partir de imágenes TAC y basándose en técnicas de aprendizaje 
profundo [54]. La red proporciona una máscara segmentada de la imagen original e indica 
el tipo de hueso que es en función de la clasificación. La red neuronal convolucional que 
propone es una red adaptada de la U-Net original [46] en la que se ha modificado la 
entrada a la resolución del conjunto de datos y la salida a un modelo que clasifique las 
imágenes entre 6 tipos de huesos (columna vertebral, cadera, esternón, costilla, sacro y 
femoral). El algoritmo presenta una precisión de 0.91467 para columna vertebral, 0.96160 
para cadera, 0.95506 para esternón, 0.98573 para costilla, 0.96617 para sacro, 0.98404 
hueso femoral y 0.96153 para otros huesos segmentados. 
Los algoritmos basados en técnicas de aprendizaje profundo también han 
proporcionado resultados muy precisos en segmentación de múltiples órganos dentro de 
una misma imagen [55]. 
Una vez enumerado un conjunto de algoritmos de segmentación de diferentes 
estructuras anatómicas del cuerpo humano, se observa una tendencia a investigar y 
desarrollar nuevas técnicas de segmentación basados en técnicas de aprendizaje profundo 
y más concretamente, en redes neuronales convolucionales. 
 
 
 
 
 
MATERIALES Y MÉTODOS 
29 
 
Capítulo 5 
 
 
 
Materiales y métodos 
 
A lo largo del capítulo se enumeran los diversos métodos y materiales empleados para el 
desarrollo del algoritmo propuesto: la segmentación de estructuras craneales a partir de 
técnicas de aprendizaje profundo. 
 
5.1 Conjunto de datos 
 
El estudio del algoritmo de segmentación incluye un conjunto de datos formado por 6 
TAC de cabeza. Los TAC, obtenidos a partir de un tomógrafo Aquilon de Toshiba, han 
sido cedidos por el departamento de Radiología del Hospital Gregorio Marañón de 
Madrid. Los parámetros utilizados en la tomografía axial computarizada están resumidos 
en la Tabla 1. 
Para el desarrollo del algoritmo, se han utilizado las imágenes bidimensionales 
(2D) del corte axial. Las mismas son visualizadas por el software MicroDicom [22] ya 
que muestra las imágenes de manera ordenada permitiendo conocer a qué altura de la 
cabeza corresponde cada imagen. Las imágenes 2D presentan una resolución de 512x512 
píxeles. 
 
Tabla 1. Parámetros del tomógrafo 
 
 
 
 
MATERIALES Y MÉTODOS 
30 
 
Las máscaras de las imágenes, como se pueden apreciar en la figura 23, se han 
obtenido a partir de una segmentación manual realizada mediante el software de edición 
GIMP [56]. En primer lugar, se ha procedido a realizar el contorno de las estructuras 
óseas y posteriormente se ha realizado una máscara distinguiendo entre estructura ósea y 
fondo. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Imagen original Contorno de hueso Máscara manual 
Figura 23. Segmentación manual de slices 67, 90, 112 y 137 del paciente 5 
MATERIALES Y MÉTODOS 
31 
 
5.2 Partición del conjunto de datos 
 
Los 6 TAC se dividen en tres conjuntos de datos: datos de entrenamiento, de validación 
y de pruebas o test. 
Los datos de entrenamientos están formados por 4 TAC compuesto por 277 
imágenes de 2D de corte axial y sus respectivas máscaras manuales. El conjunto de datos 
de entrenamiento se usa para alimentar el algoritmo de segmentación durante el 
entrenamiento de la red. 
Los datos de validación están formados por 1 TAC compuesto por 65 imágenes 
2D de corte axial y sus respectivas máscaras manuales. El conjunto de datos de validación 
se emplea para validar la precisión del entrenamiento una vez que haya terminado. 
Los datos de prueba están formados por 1 TAC compuesto por 70 imágenes 2D 
de corte axial y sus respectivas máscaras manuales. Las imágenes originales se introducen 
en la red para ser segmentadas. Las máscaras manuales se comparan con los resultados 
obtenidos de la segmentación automática del TAC para obtener una valoración final de 
la precisión de la red. 
 
5.3 Preprocesado digital de conjunto de datos 
 
Las imágenes de corte axial se encuentran en formato DICOM y los valores de los píxeles 
se encuentran codificados en 12 bits. Por lo tanto, los valores varían entre -2048 (fondo) 
y 2047 (hueso). 
Sin embargo, necesitamos extraer el conjunto de datos en un formato estándar de 
imágenes. Para ello, se ha escogido el formato Gráficos de Red Portátiles, png, que 
exporta las imágenes desde el MicroDicom (figura 24) a partir de un algoritmo de 
compresión sin pérdidas. El protocolo dispone de diversas codificaciones, pero en nuestro 
caso consiste en una codificación de 8 bits entre 0 y 255. 
 
 
Figura 24. Exportar imágenes del corte axial en formato png desde Microdicom 
MATERIALES Y MÉTODOS 
32 
 
La segmentación manual se realiza a partir de imágenes en formato png que 
alimentan el algoritmo de segmentación automático. Previamente, dichas imágenes han 
sido adaptadas a niveles de grises. 
Alguna de las imágenes 2D de los pacientes presentan artefactos detectados 
durante la tomografía axial computarizada. En ese caso, se eliminan los artefactos de las 
imágenes de manera manual, como se muestra en la figura 25, mediante el programa de 
edición. 
Debido a las limitaciones de la GPU del ordenador y la arquitectura del algoritmo, 
que se comenta posteriormente, es necesario realizar un diezmado para reducir el tamaño 
de las imágenes y las máscaras manuales a una resolución de 128x128. Esta técnica 
implica eliminar píxeles de la imagen conllevando la pérdida de información que, en 
nuestrocaso, puede ser tejido óseo. 
Se muestra en la figura 26 un ejemplo de imagen y su correspondiente máscara de 
un TAC, una vez aplicado el preprocesado, que se introduce en el algoritmo durante el 
entrenamiento. 
Cabe mencionar que previamente, se procede a realizar una normalización de la 
amplitud de las imágenes y máscaras para tener valores comprendido entre 0 y 1. 
 
 
Figura 25. Imagen exportada de MicroDicom en formato png (a), imagen editada con GIMP en formato 
png (b) 
 
 
Figura 26. Imagen preprocesada (a), máscara preprocesada (b) 
MATERIALES Y MÉTODOS 
33 
 
5.4 Entorno de trabajo y herramientas computacionales 
 
Tanto el despliegue del entorno virtual como el desarrollo del código están 
implementados en Python 3.6.13 [57]. 
Resulta imprescindible desplegar un entorno estable para garantizar un correcto 
desarrollo del software y el máximo rendimiento de los recursos computaciones. 
En nuestro caso, se ha creado un entorno virtual en un Windows 10 que corre en 
un ordenador HP con procesador i7, una Memoria de Acceso Aleatorio, RAM, de 16 GB 
y una tarjeta gráfica NVIDIA GeForce GTX 1050. 
Se ha optado por ejecutar las librerías de deep learning sobre un entorno virtual 
nuevo, en vez de sobre el entorno base de Windows, para proporcionar un espacio 
dedicado de manera íntegra al desarrollo del proyecto. 
Un entorno virtual dedicado a trabajar con la unidad de procesamiento del 
ordenador (GPU) requiere la instalación de Cuda Toolkit [58] y CuDNN [59]. 
CUDA es una plataforma de computación en paralelo desarrollada por NVIDIA 
que busca explotar los recursos y ventajas de las tarjetas gráficas. CuDNN es una librería 
para técnicas de aprendizaje profundo que permite la aceleración de Tensorflow [60] y 
Keras [61]. 
Un requisito necesario es la compatibilidad de versiones entre la plataforma, la 
librería de NVIDIA y el controlador (driver) de la tarjeta gráfica. Las versiones dependen 
de la GPU que disponga el dispositivo en cuestión. 
En nuestro caso y siguiendo las recomendaciones del fabricante, las versiones 
instaladas han sido: 
• Controlador NVDIA de la tarjeta gráfica: 466.47 
• Cuda Toolkit: 11.3 
• CuDNN: 8.2.0 
 
Anaconda, una distribución libre y abierta para lenguajes como Python [62], ha 
sido empleada como interfaz para crear y trabajar con el entorno (figura 27). Se ha 
utilizado la versión 3 de anaconda. 
 
 
Figura 27. Interfaz de línea de comandos de Ananconda 
MATERIALES Y MÉTODOS 
34 
 
El código del algoritmo de segmentación ha sido implementado sobre Jupyter 
Notebook, un entorno de desarrollo extensible, modular e interactivo basado en web y 
celdas de trabajo [63] (figura 28). 
 
 
Figura 28. Entorno Jupyter Notebook para desarrollar el código del algoritmo 
 
Sobre la librería Keras trabaja el código del algoritmo de aprendizaje profundo. 
Sin embargo, requiere de Tensorflow para la ejecución de las instancias. En nuestro caso, 
Tensorflow ejecuta el código sobre la GPU del ordenador. 
 
5.5 Librerías empleadas 
 
Las librerías empleadas en el entorno de trabajo son las siguientes: 
• Python: 3.6.13 
• Tensorflow: 2.1.0 
• Keras: 2.3.1 
• Numpy: 1.19.2. Análisis numérico y aritmético. 
• Matplotlib: 3.3.4. Generación de gráficos. 
• Imageio: 2.9.0. Interfaz para leer y escribir archivos de imágenes. 
• OpenCV: 4.5.2.52. Análisis y tratamiento de imágenes. 
• Pillow: 8.2.0. Edición de imágenes en Python. 
 
 
 
MATERIALES Y MÉTODOS 
35 
 
5.6 Método propuesto 
 
El método propuesto es un algoritmo automático de segmentación de estructuras 
craneales basado en técnicas de aprendizaje profundo 
El algoritmo presenta un modelo adaptado de la red original U-Net [46] basado 
en redes neuronales convolucionales. El propósito de la red, como se muestra en la figura 
29, consiste segmentar y clasificar una imagen 2D de corte axial entre dos clases: hueso 
y fondo. 
La capa de entrada del algoritmo se alimenta de imágenes de resolución 128x128 
con valores de nivel de grises, y la red neuronal convolucional proporciona las máscaras 
con las imágenes segmentadas de 128x128 píxeles en la capa de salida. 
 
 
Figura 29. Segmentación de una imagen 2D del corte axial de una Tomografía Axial Computarizada 
 
5.7 Arquitectura de la red 
 
La arquitectura y la estrategia para el desarrollo del algoritmo están diseñadas a partir de 
una red neuronal convolucional propuesta en [54] y de una red U-Net adaptada para 
segmentar la rodilla [64]. 
La arquitectura, como muestra la figura 30, tiene una forma simétrica en forma de 
U y está compuesta por dos caminos: camino de contracción y camino de expansión. 
Para entender mejor la arquitectura del algoritmo se define un concepto que 
denominamos etapa. Una etapa es un conjunto de capas ocultas formadas por una capa de 
convolución con kernel 3x3 y una capa de activación con operador la función ReLu [30]. 
El camino de contracción está constituido por cinco bloques que reducen la 
resolución de las imágenes de 128x128 a 8x8. Los tres primeros bloques están formados 
por dos etapas y una operación de agrupación máxima de 2x2 para reducir el tamaño. El 
cuarto bloque tiene dos etapas, un dropout y una agrupación máxima de 2x2. El quinto 
bloque, correspondiente con el primer bloque del camino de expansión, está constituido 
por dos etapas y un dropout. 
 
MATERIALES Y MÉTODOS 
36 
 
El camino de expansión se basa en cinco bloques que realizan una serie de 
interpolaciones que aumentan la resolución de las imágenes de 8x8 al tamaño de entrada 
de la imagen, en este caso 128x128. El primer bloque corresponde con el último bloque 
del camino de contracción más la aplicación de un muestro ascendente (upsampling) para 
aumentar el tamaño. Los tres siguientes bloques están formados por la misma estructura: 
una operación de concatenación, dos etapas y un muestro ascendente. El último bloque 
consta de una concatenación, tres etapas y otra etapa adaptada a la salida. 
La etapa adaptada a la salida está formada por una capa convolucional con kernel 
1x1 seguida de una capa de activación. El operador de activación es la función sigmoide 
[30] ya que la salida esperada es una clasificación entre dos clases. 
Cuando se menciona el muestreo ascendente, se hace referencia al aumento de 
tamaño y la aplicación de una función ReLu a la salida del muestro. 
 
 
 
Figura 30. Arquitectura del algoritmo propuesto. Imagen adaptada [46] 
 
 
 
 
 
 
 
 
MATERIALES Y MÉTODOS 
37 
 
5.8 Detalles de la red 
 
La capa de entrada tiene que alimentarse de imágenes 128x128 píxeles por limitación de 
la GPU. Para tamaños superiores, la GPU reporta un error, figura 31, mostrando que el 
procesado de las imágenes no es soportado. 
 
 
Figura 31. Error al intentar introducir en el algoritmo imágenes con una resolución de 256x256 
 
Durante el entrenamiento y validación se introducen las máscaras manuales junto 
con las imágenes originales con el propósito de adaptar la red al problema en cuestión y 
evaluar la precisión. Las máscaras manuales alimentan a la red con la misma resolución 
que las imágenes originales, 128x128 píxeles en formato de grises. 
La capa de salida presenta la función de activación sigmoide para proporcionar la 
clasificación entre hueso y fondo. 
El algoritmo emplea el optimizador Adam para actualizar los pesos durante el 
entrenamiento. La tasa de aprendizaje asignada para el optimizador es de 0.0001. 
La métrica usada para validar la precisión es el coeficiente DICE que compara la 
similitud entre la imagen original y la máscara manual. 
La función de pérdidas definida para el algoritmo tiene una relación inversamente 
proporcional al coeficiente DICE (𝐷). 
El algoritmo ha sido entrenado usando 50 épocas y un tamaño del lote de 8. El 
tamaño del lote de la prueba es de 6. 
 
5.9 Procesado final 
 
Las máscaras son extraídas del algoritmo con una resolución de 128x128 píxeles. Las 
imágenes originales se encuentran conuna resolución de 512x512, por lo tanto, la 
adaptación de las máscaras a esa resolución requiere de alguna técnica de procesado que 
incremente el tamaño. Un ejemplo puede ser una interpolación bicúbica. 
Sin embargo, hay que tener en cuenta que la resolución es afectada cuando se 
incrementa por cuatro la resolución de la imagen. 
 
RESULTADOS 
39 
 
Capítulo 6 
 
 
 
Resultados 
 
Alguno de los parámetros mencionados en el apartado 5.8 han sido obtenidos mediante 
un proceso empírico. Para ello, se comprueba el histórico de la función de pérdidas (model 
loss) y la precisión (model accuarcy) durante el entrenamiento (train) y validación 
(validation) del algoritmo. La precisión se mide con el coeficiente DICE (Dice function). 
En primer lugar, se pretende obtener el valor de la tasa de aprendizaje a introducir 
en el optimizador Adam, (figuras 32 y 33). Para la prueba se ha fijado en 120 el número 
de épocas. 
 
 
Figura 32. Entrenamiento y validación con 120 épocas y tasa de aprendizaje 0.001 
 
 
Figura 33. Entrenamiento y validación con 120 épocas y tasa de aprendizaje 0.0001 
RESULTADOS 
40 
 
 
La tabla 2 indica los valores de precisión y función de pérdidas obtenidas en 
función de la tasa de aprendizaje. El valor escogido es 0.0001 ya que presenta mejores 
resultados. 
 
Tabla 2. Coeficiente DICE y pérdidas en función de la tasa de aprendizaje 
 
Posteriormente, es necesario obtener el número óptimo de épocas para realizar un 
entrenamiento adecuado (figuras 34, 35, 36 y 37). 
 
 
Figura 34. Entrenamiento y validación con 20 épocas 
 
 
Figura 35. Entrenamiento y validación con 50 épocas 
RESULTADOS 
41 
 
 
Figura 36. Entrenamiento y validación con 90 épocas 
 
 
 
 Figura 37. Entrenamiento y validación con 120 épocas 
 
 
La tabla 3 indica los valores de precisión y función de pérdidas obtenidas en 
función del número de épocas. 
Para elegir el número adecuado de épocas es necesario comprobar que la curva 
exponencial de la precisión del entrenamiento se mantiene prácticamente constante en un 
valor cercano a 0. 
En nuestro caso, se escoge 50 épocas ya que un valor muy alto de épocas puede 
provocar un sobreentrenamiento. Un valor óptimo es escoger un valor intermedio de la 
curva de la precisión cuando el coeficiente DICE es prácticamente constante. Además, 
hay que tener en cuenta el tiempo de ejecución y valorar si un mayor tiempo entrenando 
proporciona un incremento notable de la precisión. 
 
RESULTADOS 
42 
 
Tabla 3. Coeficiente DICE y pérdidas en función del número de épocas 
 
Una vez finalizado el proceso empírico, se realiza el entrenamiento y validación 
con los siguientes parámetros: 
• Tasa de aprendizaje para optimizador Adam: 0.0001 
• Número de épocas: 50 
• Tamaño de lotes de entrenamiento: 8 
• Tamaño de lotes del test: 6 
• Resolución de las imágenes: 128x128 
• Resolución de las máscaras de entrenamiento y validación: 128x128 
• Métrica del modelo: coeficiente DICE 
 
El tiempo de ejecución del entrenamiento y la validación es de 15 minutos. 
A continuación, se ejecuta la fase de prueba o test del algoritmo. El algoritmo 
segmenta el TAC de prueba en 10 segundos. 
Las figuras 38, 39, 40 y 41 muestran: 
• Las imágenes originales que se introducen en la capa de entrada del algoritmo. 
• Las imágenes segmentadas (máscaras automáticas) obtenidas del clasificador de 
la red. 
• Las máscaras manuales. 
 
Las máscaras manuales son imágenes obtenidas a partir de una segmentación manual 
mediante un programa de edición. Las imágenes segmentadas tienen una resolución 
512x512 y han sido exportadas en formato png y en niveles grises. Sin embargo, se aplica 
el diezmado a las máscaras manuales para alimentar la red durante el entrenamiento y la 
fase de validación. 
 
 
 
 
 
RESULTADOS 
43 
 
 
 
 
Figura 38. Imágenes y máscaras (automáticas y manuales) de los slices 0, 10, 15 y 20 del TAC 
segmentado 
Máscara automática Imagen original Máscara manual 
RESULTADOS 
44 
 
 
 
 
Figura 39. Imágenes y máscaras (automáticas y manuales) de los slices 25, 31,34 y 38 del TAC 
segmentado 
 
Máscara automática Imagen original Máscara manual 
RESULTADOS 
45 
 
 
 
 
Figura 40. Imágenes y máscaras (manuales y automáticas) de los slices 42 ,50, 52 y 54 del TAC 
segmentado 
 
 
Máscara automática Imagen original Máscara manual 
RESULTADOS 
46 
 
 
 
 
Figura 41. Imágenes y máscaras (manuales y automáticas) de los slices 59, 61, 64 y 67 del TAC 
segmentado 
 
Máscara manual Máscara automática Imagen original 
RESULTADOS 
47 
 
Posteriormente, se realiza una prueba aplicando un enventanado, durante el 
preprocesado, al conjunto de datos de pruebas para comprobar si la segmentación de los 
huesos etmoidales y maxilar mejora. 
El enventanado realizado sobre las imágenes originales (figura 42): 
• Nivel de ventana (window level): 170 
• Ancho de ventana (window width): 180 
 
 
 
Figura 42. Imagen original e imagen enventanada 
 
Se introducen las imágenes enventanadas al algoritmo y las figuras 43 y 44 
muestran los resultados de la segmentación. 
 
 
 
 
Imagen original Imagen enventanada 
RESULTADOS 
48 
 
 
 
 
Figura 43. Imágenes enventanadas y máscaras (automáticas y manuales) de los slices 0, 15, 20 y 25 del 
TAC segmentado 
 
 
Imagen enventanda Máscara automática Máscara manual 
RESULTADOS 
49 
 
 
 
 
Figura 44. Imágenes enventanadas y máscaras (manuales y automáticas) de los slices 34, 42, 52 y 61 del 
TAC segmentado 
 
 
Imagen enventanda Máscara automática Máscara manual 
RESULTADOS 
50 
 
Después, se realiza una valoración objetiva de la precisión del algoritmo 
comparando la similitud entre las máscaras automáticas y las máscaras manuales. Para 
ello, empleamos el coeficiente DICE como métrica (tabla 4). 
La figura 45 muestra parte del código que calcula el coeficiente DICE entre el 
TAC segmentado manual y el TAC segmentado automáticamente a partir de las imágenes 
originales enventanadas. 
 
 
Figura 45. Coeficiente DICE obtenido 
 
Las máscaras automáticas enventanadas hacen referencia a las imágenes que 
segmenta el algoritmo a partir de las imágenes originales con enventanado. De la misma 
manera, las máscaras automáticas no enventandas hacen referencia a las imágenes 
segmentadas por la red cuando se alimenta de imágenes sin enventanado. 
 
Tabla 4. Coeficiente DICE obtenido en la fase test o prueba 
 
 
 
El algoritmo propuesto para la segmentación de imágenes TAC craneales tiene 
una precisión de 0.883±0.004. 
 
 
 
 
 
 
 
 
RESULTADOS 
51 
 
Finalmente, se lleva a cabo la reconstrucción en 3D del TAC de prueba 
segmentado a partir de las máscaras automáticas enventanadas (figura 46). La 
reconstrucción 3D se hace con el software 3DSlicer [65]. 
 
 
Figura 46. Reconstrucción 3D del TAC segmentado por el algoritmo propuesto
DISCUSIÓN 
53 
 
Capítulo 7 
 
 
 
Discusión 
 
A la hora de valorar los resultados, hay que mencionar que el conjunto de datos, utilizados 
durante las fases de desarrollo, ha sido muy limitado en comparación con otras técnicas 
de segmentación basadas en aprendizaje profundo. Los autores proponen un algoritmo de 
segmentación de hueso a partir del uso de más de 20.000 imágenes bidimensionales [41]. 
La red neuronal convolucional para segmentación de 6 huesos distintos del cuerpo usa un 
conjunto de datos de entrenamiento formado por 21 TAC, 15653 imágenes [47]. 
La limitación del conjunto de datos influye en la calidad de los resultados 
proporcionados por el modelo y más teniendo en cuenta la complejidad de segmentar 
ciertas estructuras anatómicas de cráneo como pueden ser los huesos etmoidales o los 
maxilares a cierta altura de la cabeza. 
Los resultados obtenidos indican que existe una pérdida de resolución de la 
imagen durante el proceso de segmentación. La figura 47 muestra una diferencia 
considerable entre la resolución de la máscara obtenida

Continuar navegando