Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
i
, junio 2019
Departamento de Automática y Sistemas Computacionales
Título: Clasificación de lesiones mamarias sobre la base de inteligencia
artificial
Autor: Luis Alberto López Rodríguez
Tutores: DrC. Marlen Pérez Díaz, MSc. José Daniel López Cabrera
i
Este documento es Propiedad Patrimonial de la Universidad Central “Marta Abreu” de
Las Villas, y se encuentra depositado en los fondos de la Biblioteca Universitaria “Chiqui
Gómez Lubian” subordinada a la Dirección de Información Científico Técnica de la
mencionada casa de altos estudios.
Se autoriza su utilización bajo la licencia siguiente:
Atribución- No Comercial- Compartir Igual
Para cualquier información contacte con:
Dirección de Información Científico Técnica. Universidad Central “Marta Abreu” de Las
Villas. Carretera a Camajuaní. Km 5½. Santa Clara. Villa Clara. Cuba. CP. 54 830
Teléfonos.: +53 01 42281503-1419
ii
PENSAMIENTO
“No entiendes algo hasta que lo aprendes a hacer de más de una forma”.
Marvin Minsky
iii
DEDICATORIA
A todas aquellas personas que han tenido el infortunio de padecer cáncer de mama.
iv
AGRADECIMIENTOS
A toda mi familia, en especial a mi mamá, mi papá, mi hermano y mi abuela por sacrificarse
tanto por mí en todos los momentos de mi vida.
A mis tutores, la DrC. Marlen Pérez Díaz y el MSc. José Daniel López Cabrera, por su apoyo
incondicional y hacerme sentir que la presente tesis era tanto de ellos como mía.
A todos mis amigos, aunque ellos no lo sepan y posiblemente ni se lo crean si se los digo,
por haber sido mi principal fuente de conocimiento en todos estos años de estudio.
A mi amiga Elizabeth por asistirme durante el trabajo de la presente tesis.
A mi novia Karla por ayudarme en los momentos de dificultad de esta importante parte de
mi vida.
v
RESUMEN
El cáncer de mama es el más frecuente en el sexo femenino. La mamografía ha demostrado
ser el método más eficaz para la detección precoz del cáncer de mama, permitiendo
diagnosticar la enfermedad en su etapa inicial. Las imágenes mamográficas resultan en
ocasiones de difícil comprensión, producto de la propia naturaleza de las anomalías de
mamas, al bajo contraste imagen y por la composición de los tejidos mamarios, así como a
factores tecnológicos diversos como la resolución espacial de la imagen o el ruido. Los
sistemas de diagnósticos asistidos por computadora (CAD), se han desarrollado para
aumentar la exactitud de los exámenes mamográficos y ser usados por los médicos como
segunda opinión para obtener el diagnóstico final, con el objetivo de lograr disminuir los
errores humanos. Las redes neuronales convolucionales son tendencia actual en la
clasificación automática de lesiones en mamografía, debido al gran desempeño que han
logrado. La presente tesis se basó en este tipo de redes para clasificar las lesiones mamarias
detectadas, en benignas o malignas. Debido a que la base de datos miniMIAS utilizada,
cuenta con una baja cantidad de imágenes, para entrenar este tipo de redes neuronales, se
aplicó la técnica “transfer learning” de redes ya pre-entrenadas “Inceptionv3” y
“Googlenet”. Se les modificaron las últimas capas, y se volvió a entrenar con la base de datos
miniMIAS para que se ajustara al problema planteado. Se implementaron 2 arquitecturas de
redes neuronales convolucionales obteniéndose, en la arquitectura con 3 clases, un 86.05 %
de exactitud, con 30 clasificaciones erróneas; mientras que, en la arquitectura con 2 redes
neuronales en serie, se alcanzó una exactitud de 88,2 % con 5 falsos positivos y 5 falsos
negativos totales.
vi
ABSTRACT
Breast cancer is the most frequent in females. Mammography has proven to be the most
effective method for the early detection, allowing diagnosis in its initial stage.
Mammographic images are sometimes difficult to understand, due to the nature of breast
abnormalities, the low contrast due to the composition of mammary tissues and various
technological factors, such as spatial resolution and noise. Computer-aided diagnosis systems
(CAD) have been developed to increase the accuracy of mammographic examinations and
they have been used by physicians as a second opinion to obtain the final diagnosis, with the
aim of reducing human errors. The convolutional neural networks are current trend in
automatic classification of lesions in mammography, due to the great performance they have
achieved. The present thesis was based on this type of networks to classify breast lesions
detected in benign or malignant. Because the miniMIAS database used, has a low number of
images, to train this type of neural networks, the "transfer learning" technique of pre-trained
networks "Inceptionv3" and "Googlenet" was applied. The last layers were modified, and the
miniMIAS database was re-trained to fit the problem. Two convolutional neural network
architectures were implemented, obtaining in the architecture with 3 classes, 86.05%
accuracy, with 30 erroneous classifications; whereas, in the architecture with 2 neural
networks in series, an accuracy of 88.2% was reached with 5 false positives and 5 false
negatives.
vii
TABLA DE CONTENIDOS
PENSAMIENTO ................................................................................................................... ii
DEDICATORIA ................................................................................................................... iii
AGRADECIMIENTOS ......................................................................................................... iv
RESUMEN ............................................................................................................................. v
ABSTRACT ........................................................................................................................... vi
GLOSARIO ............................................................................................................................ 1
INTRODUCCIÓN .................................................................................................................. 2
Organización del informe ................................................................................................... 5
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA ................................................................. 6
1.1 Imagen médica ......................................................................................................... 6
1.2 Imagen médica digital .............................................................................................. 7
1.3 Fundamentos físicos de la obtención de imágenes por rayos X ............................... 8
1.3.1 Detectores de rayos X ....................................................................................... 9
1.4 Calidad de imagen .................................................................................................. 10
1.4.1 Contraste imagen ............................................................................................ 10
1.4.2 Resolución Espacial ........................................................................................ 10
1.4.3 Ruido ............................................................................................................... 11
1.4.4 Artefactos ........................................................................................................ 11
viii
1.5 Lesiones mamarias ................................................................................................. 11
1.6 Mamografía ............................................................................................................ 13
1.7 Sistemas CAD ........................................................................................................ 15
1.7.1 Preprocesamiento ............................................................................................ 15
1.7.2 Segmentación .................................................................................................. 16
1.7.3 Extracción de características ........................................................................... 16
1.7.4 Clasificación ................................................................................................... 16
1.8 Redes neuronales artificiales y convolucionales para clasificación ....................... 16
1.8.1 Breve historia .................................................................................................. 17
1.8.2 Elementos de la red neuronal artificial ........................................................... 17
1.8.3 Redes Neuronales Convolucionales ................................................................ 19
1.9 Utilización de las redes neuronales convolucionales dentro de los sistemas CAD
para clasificar lesiones ...................................................................................................... 22
CAPÍTULO 2. MATERIALES Y MÉTODOS ................................................................ 24
2.1 Base de datos .......................................................................................................... 24
2.2 Software MATLAB ............................................................................................... 25
2.2.1 Image Processing Toolbox .............................................................................. 25
2.2.2 Deep Learning Toolbox .................................................................................. 27
2.2.3 Parallel Computing Toolbox .......................................................................... 32
2.3 Hardware ............................................................................................................... 32
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN ............................................................. 35
3.1 Resultados .............................................................................................................. 35
3.1.1 Arquitectura con tres clases ............................................................................ 35
3.1.2 Arquitectura con dos redes neuronales en serie .............................................. 38
ix
3.2 Comparación de resultados con la literatura científica .......................................... 44
3.2.1 Trabajos Nacionales ........................................................................................ 44
3.2.2 Trabajos Internacionales ................................................................................. 44
3.3 Análisis económico ................................................................................................ 45
3.4 Conclusiones del capítulo ...................................................................................... 45
CONCLUSIONES Y RECOMENDACIONES ................................................................... 47
Conclusiones ..................................................................................................................... 47
Recomendaciones ............................................................................................................. 47
REFERENCIAS BIBLIOGRÁFICAS ................................................................................. 48
ANEXOS .............................................................................................................................. 54
Anexo I Código del programa para entrenar la red ...................................................... 54
Anexo II Código del programa para extraer las regiones de interés y conformar la
base de datos de dos clases ............................................................................................... 56
Anexo III Código del programa para extraer las regiones de interés y conformar la base
de datos de 3 clases ........................................................................................................... 59
GLOSARIO 1
GLOSARIO
• BD (Base de Datos): Imágenes de mamografía “MiniMammographic”.
• CAD: Sistema de diagnóstico asistido por computadora.
• ML: “Machine Learning” Aprendizaje Automático.
• DL: “Deep Learning” Aprendizaje Profundo.
• CNN: “Convolutional Neural Network” Redes Neuronales Convolucionales.
INTRODUCCIÓN 2
INTRODUCCIÓN
El cáncer de mama es una enfermedad que tiene origen una vez que las células empiezan a
crecer en forma descontrolada formando un tumor, el cuál es maligno si crece invadiendo los
tejidos circundantes o se propaga a áreas distantes del cuerpo. El tumor normalmente se
puede observar en una radiografía o se puede palpar como una protuberancia. El cáncer de
mama puede ocurrir en los dos sexos, pero en el caso de los hombres su incidencia es solo
de un 1 %, siendo mucho más común en el caso de las mujeres (American Cancer Society,
s. f.).
Según datos de la Organización Mundial de la Salud (OMS), el cáncer de mama constituye
un grave problema de salud global, por su morbilidad y mortalidad, con aproximadamente
1,5 millones de casos nuevos cada año, y es el cáncer más frecuente en el sexo femenino a
nivel mundial, con un 16% del total. Cuba no es un país que difiera de estas estadísticas, ya
que, según datos del Registro Nacional del Cáncer, más de 3 000 mujeres son diagnosticadas
cada año con esta enfermedad. Asimismo, según el Anuario Estadístico de Salud del año
2017, el cáncer de mama ocupa el segundo puesto, tanto para la tasa de mortalidad como la
de incidencia (Granma, 2018).
Las mejores estrategias para evitar la enfermedad se basan en la prevención primaria y el
diagnóstico precoz, razón por la que el autoexamen de mamas desempeña un papel vital.
Varios factores de riesgo, como los genes y los antecedentes familiares, no se pueden
controlar; sin embargo, realizar algunos cambios en el estilo de vida puede reducir la
probabilidad total de sufrir este tipo de patología. Entre los factores de riesgo relacionados
con los estilos de vida que contribuyen en gran medida a la aparición del cáncer de mama, se
pueden señalar: exceso de peso, consumo de alcohol, hábito de fumar, factores dietéticos,
INTRODUCCIÓN 3
exposición a radiación, exposición a campos magnéticos, exposición a plaguicidas, entre
otros (Cuba, 2016).
La prevención de enfermedades es el principal factor a tener en cuenta desde el punto de vista
del tratamiento de cualquier enfermedad en la medicina. Por esto es que se recomienda que
las mujeres con probabilidades altas de riesgo de tener cáncer se realicen un diagnóstico por
lo menos una vez al año como medida preventiva. Se ha demostrado, que las mujeres que se
realizan estudios mamográficos frecuentes, se les detecta el cáncer en sus primeras etapas,
allí donde los métodos actuales son más efectivos; logrando un descenso en la mortalidad
(Torres et al., 2007).
La mamografía ha demostrado ser el método más eficaz para la detección precoz del cáncer
de mama, permitiendo diagnosticar la enfermedad en su etapa inicial. Otras técnicas, como
el ultrasonido, la imagen de resonancia magnética, la tomografía computacional, han
demostrado su utilidad para el estudio e identificación de estas anomalías, pero no son tan
eficaces para la detección temprana (Frutos Arenas et al., 2011).
El cáncer de mama se manifiesta básicamente por algunos tipos de lesiones características
como son: masas (tumores grandes, de muy bajo contraste imagen respecto al tejido normal
que pueden ser malignos o benignos); microcalcificaciones, que son diminutos puntos de
hidroxiapatita u oxalato de calcio, que cuando están presentes, son señal de una mama
enferma o que pronto se va a enfermar. Son tan diminutas que si la imagen presenta mucho
ruido, el contraste no es bueno o la resolución espacial del equipo no es suficiente, no son
apreciables; y por último, conductos galactóforos con anomalías, como puede ser la
infiltración cancerígena (Rodríguez López, 2012).
El fallo durante la detección de una lesión de mama no solo depende del tamaño de esta o el
nivel de contraste, sino también de la sensibilidad del mamógrafo, así como la habilidad del
radiólogo que las detecta y de las condiciones bajo las que las visualiza (Perez-Diaz, 2014).
Los sistemas de diagnósticos asistidos por computadora o computer aided diagnosis (CAD)
se han desarrollado para aumentar la sensibilidad de los exámenes mamográficos, al marcar
regiones sospechosas en mamografías como microcalcificaciones y masas (Henriksen,
Carlsen, Vejborg, Nielsen, & Lauridsen, 2019). Antes del avance de la inteligencia artificial,
la mayoría de estos sistemas constaban de cuatro etapas: pre-procesamiento de datos,
INTRODUCCIÓN 4
segmentación de la lesión, extracción de características, y clasificación (Landin, 2008). En
la actualidad, con el avance de las técnicas de aprendizaje profundo o deep learning, la
extracción de características queda implícita dentro del método de clasificación. De hecho,
los sistemas CAD han adquirido un significado más amplio con este enfoque.
El objetivo principal del sistema automatizado es mejorar la precisión del diagnóstico. Los
médicos utilizan los sistemas CAD como segunda opinión para obtener el diagnóstico final
con el objetivo de lograr disminuir los errores humanos. Se ha apreciado que las
computadoras, una vez entrenadas, pueden obtener clasificaciones mucho más rápidas que
los médicos, por lo que esto ayuda en la clasificación en tiempo real.
El “Machine Learning” (ML) para el diagnóstico de cáncer de mama ha logrado un gran
desarrollo en los últimos años. Las redes neuronales convolucionales o Convolutional Neural
Network (CNN) están muy extendidas, representan arquitecturas de DL y tienen resultados
alentadores para las aplicaciones de reconocimiento de imágenes, incluidas las imágenes
médicas (Benzebouchi, Azizi, & Ayadi, 2019).
Durante la tesis desarrollada por (Suárez, 2018) se desarrolló un sistema CAD, el cual
contaba con 3 de las 4 etapas mencionadas anteriormente; faltando solamente la etapa de
clasificación, para que fuera un sistema CAD propiamente dicho. Debido a esto es que, en la
presente tesis, se desarrolla un algoritmo basado en CNN para la clasificación de lesiones
mamarias, con el objetivo de mejorar el sistema CAD anteriormente mencionado.
Justificación de la investigación
Las imágenes mamográficas resultan en ocasiones de difícil comprensión, producto de la
propia naturaleza de las anomalías de mamas, al bajo contraste que se produce en las
imágenes por la composición de los tejidos mamarios y a factores tecnológicos diversos como
la resolución de la imagen o el ruido. Las lesiones pueden ser imperceptibles, o se pueden
confundir patrones, arrojando falsos positivos o falsos negativos. La doble lectura de las
mamografías (dos radiólogos analizan la misma mamografía) es recomendado para disminuir
el margen de error. Actualmente, la biopsia sirve como estándar dorado para confirmar si el
paciente tiene cáncer de mama o no. Desafortunadamente la biopsia está conectada a un
proceso invasivo que, en algunos casos, se hace innecesariamente, debido a un mal
diagnóstico o ambigüedad. En este sentido, crear un sistema CAD con una etapa de
INTRODUCCIÓN 5
clasificación, basada en redes neuronales, que pueda clasificar con un alto nivel de
sensibilidad y especificidad las regiones anómalas con microcalcificaciones y masas en
benignas o malignas, sería de gran ayuda para el especialista.
Problema de investigación
La dificultad a la que se enfrentan los radiólogos a la hora de detectar y clasificar las lesiones
de mama, en las imágenes digitales mamográficas, debido al bajo contraste que presentan
estas respecto al tejido sano.
Hipótesis
Es posible mejorar el sistema diagnóstico asistido por computadora ya desarrollado mediante
el empleo de redes neuronales para la clasificación de las lesiones mamarias detectadas en
malignas o benignas.
Objetivo general
Implementar una red neuronal que sea capaz de clasificar las principales lesiones mamarias
detectadas en benignas o malignas.
Objetivos específicos
1. Seleccionar las arquitecturas de redes neuronales más eficientes en la
clasificación de objetos en imágenes, que sea aplicable a imágenes de mamografía
digital.
2. Construir redes neuronales, entrenarlas y de acuerdo con sus resultados realizar
ajustes de optimización.
3. Valorar los resultados de la clasificación de las lesiones mamarias a través de las
redes neuronales implementadas contra la realizada por la anotación de una base
de datos.
Organización del informe
La presente tesis está organizada de la siguiente manera: Introducción, 3 Capítulos,
Conclusiones, Recomendaciones, 50 referencias bibliográficas y 2 anexos, contando con 63
páginas, donde se incluyen 15 figuras y 7 tablas.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 6
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA
En el presente capítulo primeramente se tratan los conceptos de imagen médica e imagen
médica digital, luego se ofrecen los fundamentos físicos que soportan las imágenes de la
mama mediante rayos X, así como los principales parámetros físicos a tener en cuenta en la
calidad de la imagen. Además, se describen las características que poseen las mamas para
una mejor comprensión de las bondades de la mamografía como principal método para
detectar el cáncer. También, se explica el papel de los sistemas CAD en la detección de
lesiones dudosas y el papel que juegan las redes neuronales, como una técnica de inteligencia
artificial útil, en la etapa de clasificación de los sistemas anteriormente mencionados.
1.1 Imagen médica
Las imágenes médicas son el resultado de las técnicas y procesos utilizados para crear
imágenes del cuerpo humano (o partes del mismo) para diversos fines clínicos, incluido el
estudio de la anatomía y función normales (Ganguly, Chakraborty, Balitanas, & Kim, 2010).
En el contexto clínico, las imágenes médicas más utilizadas son las provenientes de la
radiología o "imágenes clínicas". Muchas de las técnicas desarrolladas para imágenes
médicas también tienen aplicaciones científicas e industriales (Ganguly et al., 2010).
Las imágenes médicas abarcan diferentes modalidades y procesos de imagen para obtener
imágenes del cuerpo humano con fines de diagnóstico y tratamiento y, por lo tanto,
desempeñan un papel importante en las iniciativas para mejorar la salud pública de todos los
grupos de población. Además, las imágenes médicas con frecuencia se justifican en el
seguimiento de una enfermedad ya diagnosticada y / o tratada (World Health Organization,
s. f.).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 7
Las imágenes médicas surgieron en noviembre de 1895 cuando Wilhelm Conrad Roentgen
descubrió los rayos-X. Más adelante se desarrollaron las imágenes radiológicas en tiempo
real, denominadas "fluoroscopia". En la década de 1920, los radiólogos comenzaron a dar a
los pacientes bario radiopaco en forma de enema y tomaron películas cuando el bario
atravesaba el tracto gastrointestinal, mejorando el contraste de las radiografías (Bradley,
2008).
Para 1973, George Luckey, de la compañía Kodak, presentó una solicitud de patente para
capturar imágenes de rayos X basadas en fotosensores, los cuales sustituían a la placa
fotográfica tradicional para la captura de la imagen. Fue entonces cuando aparece la era
digital en la radiografía, conocida como Radiografía Computarizada (CR por sus siglas en
inglés). En 1983 la compañía japonesa Fuji presenta el primer sistema CR comercial. Desde
entonces, se han desarrollado nuevos sistemas CR (variando la energía utilizada en los rayos
X e incorporando nuevos sensores) que son capaces de generar imágenes ya no solo de
estructuras óseas, sino de otros tejidos para diferentes tipos de estudios. Ejemplo de ello son
los estudios de mamografías, donde se usan los rayos X para la detección de
microcalcificaciones y masas, que tienen una densidad diferente con respecto al tejido
adiposo que lo rodea (Ortíz, Olmos Pineda, & Olvera López, 2015).
1.2 Imagen médica digital
Físicamente una imagen puede considerarse un objeto plano cuya intensidad luminosa y color
puede variar de punto a punto. Las imágenes monocromáticas (blanco y negro) se pueden
representar como una función continua y bidimensional de la luz y la intensidad, f(x,y), donde
para cada punto de la imagen (x,y), la función devuelve el valor de la intensidad luminosa
(nivel de gris) de la imagen (Ortiz Zamora, 2002).
Para que una imagen pueda ser procesada por una computadora es preciso someter la función
f(x,y) a un proceso de discretización. A este proceso se le denomina digitalización. La
digitalización descompone la imagen en una matriz de M x N celdas (píxeles), donde cada
píxel posee un valor de luminancia en niveles de gris. La función continua se divide en un
rango de n intervalos y se pueden enmarcar por ejemplo en 256 niveles de gris (8 bits). Los
sistemas modernos son capaces de discriminar 216 niveles de gris (16 bits) (Gonzalez &
Woods, 2002).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 8
De acuerdo con lo anterior, una imagen médica digital es la representación gráfica
bidimensional de una estructura, región, órgano o tejido del cuerpo humano con fines
médicos a través de una matriz numérica.
Este avance trae consigo muchos beneficios:
▪ La imagen puede mostrarse en pantalla, almacenarse, trasmitirse por los
diferentes sistemas de comunicación para consultas remotas con otros médicos,
permitiendo la opinión de múltiples especialistas sin muchas complicaciones.
▪ La imagen puede ser manipulada, permitiendo mejorar diferentes parámetros de
la misma a través de técnicas de procesamiento digital.
▪ La imagen no es revelada por métodos químicos, por lo que su obtención es
mucho más rápida aumentando la agilidad y eficiencia en todo el proceso.
▪ Para una misma calidad de imagen el paciente es sometido a una menor cantidad
de radiación.
1.3 Fundamentos físicos de la obtención de imágenes por rayos X
La mayoría de las imágenes encontradas en la medicina clínica se generan al registrar las
propiedades físicas del tejido cuando se exponen a cierto tipo de radiación electromagnética.
La radiación electromagnética se compone de objetos cuánticos, llamados fotones. De
acuerdo con esto, podemos clasificar diferentes tipos de radiaciones electromagnéticas de
acuerdo a su frecuencia, siendo los rayos X aquellas que poseen una frecuencia entre 1018 y
1020 Hz (Birkfellner, 2016).
Los rayos X se generan cuando los electrones rápidos interactúan con objetos metálicos. La
energía cinética de un electrón adquirido durante la aceleración por un alto voltaje se
transforma parcialmente en energía electromagnética. Las máquinas de rayos X proporcionan
una gran cantidad de electrones enfocados en un punto pequeño (llamado punto focal) en un
material metálico, el ánodo. A medida que aumenta la energía cinética de los electrones, tanto
la intensidad (es decir, el número de fotones de rayos X) como la energía (que está
relacionada con la capacidad de los rayos X para penetrar en los tejidos y materiales sólidos)
de la radiación se incrementan también. En general, más del 99% de la energía cinética de
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 9
los electrones se convierte en calor, dejando menos del 1% disponible para la producción de
radiación x (Birkfellner, 2016). La Figura 1.1 muestra el principio de funcionamiento de un
tubo de rayos X.
Figura 1.1 Esquema del funcionamiento básico de un tubo de rayos X.
Las dos cantidades que definen la calidad y la intensidad de la radiación son el número de
electrones del filamento calentado y el voltaje utilizado para la aceleración, estos
generalmente se dan en unidades de miliamperes segundos [mAs] y kilovoltios [kV]
respectivamente (Birkfellner, 2016).
1.3.1 Detectores de rayos X
Los detectores de rayos X se pueden clasificar como detectores directos e indirectos o
detectores analógicos y digitales. Los detectores directos miden la carga eléctrica que resulta
de la ionización de los átomos en el detector. Los sistemas indirectos están basados en
centelladores. Los rayos X interactúan con materiales luminiscentes; estos emiten luz en o
cerca del rango visible cuando son golpeados por un fotón de rayos X. Estos fotones de luz
convertidos se envían a un fotodetector que registra el patrón como una imagen. Los
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 10
detectores analógicos cubren la forma "clásica" de imágenes, como películas radiográficas,
pantallas intensificadoras y placas radiográficas computadas. Solo el primero de estos tres
funciona como un sistema directo; los dos últimos son sistemas indirectos (Birkfellner,
2016).
1.4 Calidad de imagen
La calidad de una imagen médica está determinada por el método de imagen, las
características del equipo y las variables de imagen seleccionadas por el operador. Para que
estas imágenes sean válidas y útiles para el radiólogo, es necesario tener en cuenta varios
parámetros físicos que influyen en la calidad de estos. Los parámetros que determinan la
calidad de la imagen son el ruido aleatorio, la no presencia de artefactos, la resolución
espacial y el contraste imagen.
1.4.1 Contraste imagen
Es la diferencia de intensidad luminosa entre dos zonas u objetos distintos. La mama está
compuesta por tejidos blandos y las anomalías no difieren mucho de las zonas sanas en cuanto
a atenuación de los fotones X. Por esta razón es importante lograr un contraste adecuado, el
cual depende fundamentalmente de la diferencia de potencial pico entre cátodo y ánodo
(kVp), además de la calidad de la radiación que está determinada por la corriente que
alimenta el tubo de rayos X (mAs), el filtrado de los rayos X de menor energía y de la cantidad
de radiación dispersa presente en la imagen (Efecto Compton) (Seeram, 2019).
1.4.2 Resolución Espacial
Se entiende el número de píxeles mostrados en la imagen por unidad de longitud. A mayor
resolución espacial, detalles de menor tamaño pueden ser apreciados sobre la imagen, lo que
es muy importantes para definir por ejemplo los pequeños puntos que representan las
microcalcificaciones. Si la resolución no es la suficientemente buena, no se podrían observar
o bien se mostrarían como puntos pocos definidos, unidos o borrosos, provocando una
incorrecta interpretación de la imagen. De igual modo, los bordes de estructuras y masas
tienden a emborronarse.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 11
Elementos como el tamaño del punto focal, la colimación del haz, el tamaño de la matriz de
adquisición (tamaño del píxel) o el espesor de los detectores, determinan la resolución
espacial existente (Esteban, 2008).
1.4.3 Ruido
El ruido limita la visibilidad o capacidad de detección de los detalles de pequeño tamaño y
de los objetos de bajo contraste. Se describe como variaciones aleatorias de la intensidad
como consecuencia de la variación estadística del número de fotones que llegan al detector.
El elemento de adquisición que fundamentalmente determina el nivel de ruido aleatorio es la
corriente de tubo y el tiempo de adquisición (mAs). A medida que se incrementa este
producto, aumenta el flujo de electrones de cátodo a ánodo, produciendo un mayor número
de rayos X desprendidos, que van hacia el cuerpo del paciente y así aumenta la estadística de
señal útil presente en la imagen, disminuyendo el ruido aleatorio. En las imágenes por rayos
X, la distribución de ruido sobre la imagen responde a la estadística de Poisson (Bushberg &
Boone, 2011), donde la componente de ruido es la desviación típica de la media de la señal
(Intensidad del píxel).
1.4.4 Artefactos
Son elementos presentes en la imagen que no forman parte del objeto de estudio. Pueden
aparecer por movimientos voluntarios o involuntarios del paciente y suciedades en los
detectores, o variaciones en la densidad óptica de la imagen, que no reflejan las verdaderas
diferencias de atenuación de la radiación en el tejido (Huo, Li, & Lu, 2016).
1.5 Lesiones mamarias
La mama consiste principalmente como se puede observar en la Figura 1.2 en lobulillos que
son las glándulas productoras de leche, los conductos que son tubos diminutos que llevan la
leche desde los lobulillos hasta el pezón, tejido adiposo o grasa, tejido conectivo que es el
que rodea los conductos y los lobulillos y los vasos sanguíneos y linfáticos. La mayoría de
los cánceres de mama comienzan en las zonas alrededor de los conductos, pero tienen
posibilidades de formarse en otros tejidos (Chávez Guadarrama & González Flores, 2016).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 12
Figura 1.2 Anatomía de la mama desde una vista frontal
En 1993 el Colegio Americano de Radiología o American College of Radiology (ACR)
desarrolló el sistema Breast Imaging Reporting and Data System (BI-RADS), que es un
método para clasificar los hallazgos mamográficos. Actualmente se considera el idioma
universal en el diagnóstico de la patología mamaria. Este permite estandarizar la terminología
en los informes mamográficos; además, categoriza las lesiones estableciendo el grado de
sospecha y asigna la actitud a tomar en cada caso (Aibar et al., 2011).
Según el BI-RADS existe un gran número de lesiones o anormalidades que pueden estar
presentes en la mama. Algunos de estas anormalidades, que pueden ser indicadores de cáncer
de mama y que un radiólogo busca al analizar una mamografía, son asimetría, distorsión de
la arquitectura, microcalcificaciones y masas (Rodríguez López, 2012).
Al analizar una mamografía, una de las primeras tareas que realiza un radiólogo, es comparar
las mamografías de ambas mamas para detectar si existe una asimetría entre éstas. Las
asimetrías son áreas de tejido de densidad fibroglandular que son más extensas en una mama
que en la otra. La asimetría puede ser el indicador de la presencia de una masa o de una
variación en la distribución del tejido normal (Rodríguez López, 2012).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 13
La distorsión de la arquitectura es definida como una distorsión focal de la arquitectura
normal de la mama sin la presencia de masas visibles. Se puede visualizar como espículas
que irradian desde un punto común, formando un patrón similar al de una estrella. La
distorsión de la arquitectura puede ser un indicador de malignidad cuando es complementado
con la identificación de masas, calcificaciones o asimetrías (Rodríguez López, 2012).
Las microcalcificaciones son diminutas acumulaciones cristalinas de calcio en el tejido
mamario. Su patrón de agrupación y morfología son indicadores de malignidad. Por regla
general, las microcalcificaciones más grandes con forma oval o redonda y tamaño uniforme,
están asociadas a procesos benignos, mientras que las asociadas a procesos malignos son más
pequeñas, irregulares, polimórficas y con variaciones en su tamaño (Rodríguez López, 2012).
Una masa es una estructura tridimensional que tiene, total o parcialmente, bordes externos
convexos y es evidente en al menos dos proyecciones de la mama. Cuando una masa es sólo
vista en una de las proyecciones se le denomina asimetría hasta que un análisis confirme su
tridimensionalidad. Regularmente, los radiólogos caracterizan una masa por su densidad, sus
márgenes y su forma. La clasificación de estas masas depende en gran parte de su forma. Si
es redonda, tiene una alta probabilidad de asociarse con una patología benigna, mientras que
si es espiculada, tiene mayor probabilidad de ser maligna (Rodríguez López, 2012).
1.6 Mamografía
El término mamografía o mamografía convencional, se refiere al proceso de obtención de
radiografías de la totalidad de la mama, mediante la emisión de rayos x y recepción de la
imagen en película radiográfica, sin la utilización de medios de contraste o detector digital.
Al estudio de la mama mediante la mamografía, se han ido incorporando nuevas tecnologías
que hoy por hoy, son complementarias de la misma (Andrés, 2007).
Los inicios de la mamografía se remontan a la primera mitad del siglo pasado, desde entonces
los estudios radiográficos han crecido vertiginosamente hasta convertirse en una de las ramas
más importantes de la medicina moderna. Tanto así que en los años 90 surge y se desarrolla
la mamografía digital, primero utilizando la técnica “Computed Radiography”, un método
digital indirecto, y luego utilizando una técnica completamente digitalizada, “Digital
Radiography” en sus variantes directa e indirecta (Frutos Arenas et al., 2011).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 14
Los mamógrafos poseen características particulares que los diferencian del resto de los
equipos de rayos X. Los rangos de kV son más bajos, (de 22 a 40 kilo volts) para mejorar el
contraste imagen. El punto focal es pequeño, de 0.1mm a 0.3mm para mejorar la resolución
espacial. El ánodo y los filtros son usualmente de molibdeno (Ortíz et al.), rodio (Rh) o
wolframio (W), materiales que, en dependencia del espesor y densidad de las mamas
proporcionan mejores relaciones de contraste y bajo ruido. La distancia foco –detector es del
orden de los 65 cm para disminuir la distorsión (Sprawls, 2003).
En general, se puede considerar que la frase calidad de imagen mamográfica indica la
claridad con la que se pueden percibir detalles radiológicamente significativos en una
imagen. A su vez, la alta calidad de la imagen mamográfica debería contribuir a un alto
rendimiento en la detección y el diagnóstico del cáncer de mama. Sin embargo, no existe un
estándar bien definido para especificar la calidad de la imagen mamográfica (Haus & Yaffe,
2000). Aun logrando la optimización de la calidad de imagen no es suficiente, ya que existen
dificultades al diferenciar el tejido sano de las microcalcificaciones y las masas, debido al
bajo contraste que existe entre ellos.
La diferencia de composición y densidad entre los tejidos adiposos y glandular de la mama
deben ser suficientes para que se produzcan diferencias en la absorción (por efecto
fotoeléctrico) y la dispersión (por efecto Compton) de los fotones de rayos X, al atravesar la
mama, cuando su energía es adecuada. Esto se traduce en diferencias de contraste sobre la
imagen. El contraste imagen debe expresar las diferencias de absorción y dispersión entre el
tejido glandular y las masas tumorales. Las diferencias más pronunciadas se obtienen con
fotones de baja energía. Sin embargo, aún para estas energías, las diferencias
correspondientes al tejido glandular y los carcinomas son pequeñas. Las diferencias entre las
calcificaciones y el tejido glandular son más acusadas, pero su diminuto tamaño hace que se
necesite muy buena resolución para que sean visibles en la imagen mamográfica (Baños &
Alegría, 2003).
Una posibilidad de mejorar el diagnóstico y disminuir el número de falsos negativos y falsos
positivos, consiste en utilizar sistemas CAD. Un sistema de CAD analiza la imagen médica
y trata de detectar zonas sospechosas de contener alguna anomalía. Estas zonas son marcadas
sobre la propia imagen con un doble objetivo: llamar la atención del profesional hacia la zona
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 15
sospechosa y aportar una hipótesis plausible respecto al diagnóstico (Rodríguez López,
2012).
1.7 Sistemas CAD
Gracias a que la tecnología digital ha revolucionado la radiografía, es que se han desarrollado
muchos sistemas de diagnóstico asistidos por ordenador o Computer Aided Diagnosis
(CAD), siendo objeto de estudio para muchos investigadores y radiólogos (Landin, 2008).
La doble lectura de mamografías (dos radiólogos leen las mismas mamografías) ha sido
recomendada para reducir la proporción de posibles tumores no detectados, pero la carga de
trabajo y los costos asociados son muy elevados. Sin embargo, con la introducción de los
sistemas CAD, sólo sería necesario el empleo de un radiólogo (Ramírez de la Espriella,
2011).
Para los investigadores existen varios temas de interés relacionados con la detección del
cáncer y los sistemas CAD, tales como: alta eficiencia y alta precisión en los algoritmos de
detección de lesiones patológicas (calcificaciones, masas, distorsiones de la arquitectura y
asimetrías bilaterales). Por otra parte, los radiólogos inclinan su atención a la efectividad
obtenida por la aplicación clínica de los sistemas CAD (Ramírez de la Espriella, 2011).
La mayoría los sistemas CAD constan de cuatro etapas: preprocesamiento, segmentación de
la lesión, extracción de características, y clasificación (Landin, 2008).
1.7.1 Preprocesamiento
Los procesos de mejora de la imagen consisten en una colección de técnicas que buscan
mejorar la apariencia visual de una imagen, adecuado para el análisis por un ser humano o
una máquina. La finalidad principal de este proceso es aumentar las diferencias de intensidad
entre las anomalías y el tejido sano (mejora del contraste imagen), así como realzar bordes,
lo cual implica mejorar la resolución espacial y se puede, además, disminuir el ruido aleatorio
(Suárez, 2018).
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 16
1.7.2 Segmentación
La segmentación es un paso fundamental. Su objetivo es la detección y separación de los
objetos de interés, del fondo que los rodea (Chen, 2011). Puede hacerse de modo manual o
automático.
En la práctica es común el uso de procedimientos de binarización en escala de grises; es decir,
clasificando los valores de intensidad de sus píxeles que tienen características homogéneas
en solo dos clases; (blancos para las estructuras de alta intensidad de píxeles y negro para las
de baja intensidad), etiquetados como primer plano u objetos, y sistemas de fondo (Suárez,
2018).
1.7.3 Extracción de características
Una vez segmentada la imagen, puede ser necesario extraer características de las distintas
regiones de interés seleccionadas, para facilitar la detección de anomalías. El espacio de
características puede ser muy grande y complejo, debido a la gran variabilidad que puede
darse tanto en el tejido sano como en el tejido normal. Para la selección y extracción de
características se pueden implementar métodos basados en características de intensidad,
textura y morfología (Wang et al., 2014).
1.7.4 Clasificación
Esta etapa constituye la etapa más fina y culminante de un sistema automatizado completo
para la detección de anomalías.
La clasificación consiste en buscar patrones que permiten ubicar cada anomalía detectada en
un grupo asociado a un diagnóstico determinado; por ejemplo: una microcalcificación
benigna o maligna, masa espiculada, circunscrita, estrellada, lobular, etc. Los clasificadores
que se implementan generalmente en estos sistemas son: los gaussianos, los K-media o las
redes neuronales. En ocasiones suelen combinarse proporcionando un mayor rendimiento
(Byra, Nowicki, Wróblewska-Piotrzkowska, & Dobruch-Sobczak, 2016).
1.8 Redes neuronales artificiales y convolucionales para clasificación
Las redes neuronales artificiales (RNA) están inspiradas en las redes neuronales biológicas
del cerebro humano, las cuales están constituidas por elementos que se comportan de forma
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 17
similar a la neurona biológica en sus funciones más comunes y que se encuentran organizados
de una forma parecida a la que presenta el cerebro humano. Debido a esto, las RNA presentan
ciertas características propias del cerebro, por ejemplo, las RNA aprenden de la experiencia,
generalizan de ejemplos previos a ejemplos nuevos y abstraen las principales características
de un conjunto de datos. De acuerdo con lo anterior, las RNA se puedan utilizar con éxito en
una gran variedad de aplicaciones en diferentes campos, como por ejemplo clasificación de
patrones en el campo de la medicina (Tepán & Cristina, 2013).
1.8.1 Breve historia
Las redes neuronales artificiales datan de 1943 cuando Warren McCulloch y Walter Pitts
crearon un modelo de neurona basado en algoritmos matemáticos. Seis años después, en
1949, el psicólogo Donald Hebb presenta una regla de aprendizaje “aprendizaje de Hebb”, la
cual planteaba que el valor de una conexión sináptica se incrementa si las neuronas de ambos
lados de dicha sinapsis se activan repetidas veces de forma simultánea. En 1957, Frank
RosenBlatt desarrolla el Perceptron, considerada la red neuronal más antigua. Se crearon
grandes expectativas con las posibles aplicaciones del Perceptron hasta que en 1969 Minsky
y Papert demostraron las grandes limitaciones que poseía esta red como el problema de la
función or-exclusiva y la segunda cuestión importante era que los ordenadores no tenían
suficiente poder de procesamiento para manejar eficazmente el gran tiempo de ejecución
requerido por las grandes redes neuronales. En los años 80’ se produce el renacimiento del
interés por el campo gracias a Rumelhart, Williams y Hinton los cuales realizaron
publicaciones de gran influencia utilizando ya el algoritmo de retropropagación creado por
Paul Werbos en 1975 que soluciona los problemas planteados de Minsky y Papert sobre el
Perceptrón y de manera general la velocidad de entrenamiento de las redes neuronales con
múltiples capas (Walczak, 2019).
1.8.2 Elementos de la red neuronal artificial
La unidad básica de toda red neuronal artificial son las neuronas, estas procesan un vector de
entradas y producen una salida única. En la Figura 1.3 se pueden observar los principales
elementos de la neurona:
• Las entradas son las señales que recibe de las neuronas de la capa anterior.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 18
• Los pesos son el factor de importancia que poseen cada una de las conexiones
entre neurona y neurona. Estos pesos son valores numéricos que se modifican
durante el entrenamiento de la red neuronal hasta lograr un error permitido entre
la señal de salida de la red y la deseada.
• La función de propagación es una función propia de la neurona. La más
comúnmente usada es la suma ponderada de todas las entradas de la neurona.
• El “sesgo” es un valor numérico proveniente de una neurona de valor siempre 1
(es decir activada) con un peso b el cual se le agrega a la suma ponderada.
• La función de activación es la encargada de filtrar el valor obtenido por la función
de propagación con el objetivo de acotarlo. Dependiendo del objetivo por el que
se desea entrenar la red se escoge una u otra función de activación.
Figura 1.3 Principales elementos de una neurona artificial
Las redes neuronales artificiales están agrupadas por capas teniendo siempre una capa de
entrada y otra de salida, variando la cantidad de capas internas, o capas ocultas como también
se le conocen, y el número de neuronas por capas dependiendo de la aplicación o el problema
que se quiera resolver con la red neuronal. En la Figura 1.4 se puede observar una arquitectura
básica de una red neuronal artificial.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 19
Figura 1.4 Arquitectura básica de las redes neuronales
1.8.3 Redes Neuronales Convolucionales
Las redes neuronales convolucionales o convolutional neural network (CNN) son una
estructura de red neuronal profunda, especializada en el reconocimiento de imágenes.
Realmente es una técnica “antigua” ya que fue desarrollada entre los años 1980 y 1990. Sin
embargo, fueron olvidadas por un tiempo y no fue hasta el 2012 que fueron retomadas. En la
actualidad han conquistado la mayoría de los campos de la visión por computadora y están
creciendo a un ritmo rápido.
Las CNN no son solo una red neuronal profunda que tiene muchas capas ocultas. Es una red
profunda que imita, cómo la corteza visual del cerebro procesa y reconoce las imágenes. Eso
es lo que distingue a las CNN en concepto y operación de las redes neuronales anteriores (P.
Kim, 2017).
Antes de las CNN, las extracciones de características habían sido diseñadas por expertos en
áreas específicas. Por lo tanto, requirió una cantidad significativa de costo y tiempo, mientras
que produjo un nivel de rendimiento inconsistente. Estos extractores de características eran
independientes de la técnica de ML a utilizar. Las CNN incluyen el extractor de
características en el proceso de entrenamiento en lugar de diseñarlo manualmente, y el simple
hecho de convertir el diseño de extracción manual de características en un proceso
automatizado, es su principal ventaja (P. Kim, 2017). La arquitectura básica de una CNN se
puede observar en la Figura 1.5.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 20
Figura 1.5 Arquitectura básica de una CNN
Las capas de convolución generan nuevas imágenes llamadas mapas de características. Los
mapas de características acentúan las características únicas de la imagen original. La capa de
convolución opera de una manera muy diferente en comparación con las otras capas de la red
neuronal. Esta capa no emplea pesos de conexión y suma ponderada. En su lugar, contiene
filtros que generan imágenes, a estos filtros se les llama: filtros de convolución (P. Kim,
2017). El proceso de entrada de la imagen a través de los filtros de convolución produce los
mapas de características tal y como se ve en la Figura 1.6.
Figura 1.6 Filtros convolucionales y mapas de características
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 21
Las CNN son versiones regularizadas de perceptrones multicapa. Los perceptrones multicapa
generalmente se refieren a redes totalmente conectadas, es decir, cada neurona en una capa
está conectada a todas las neuronas en la siguiente capa. La "conexión total" de estas redes
las hace propensas a sobrecargar los datos. Las formas típicas de regularización incluyen
agregar alguna forma de medición de la magnitud de los pesos a la función de pérdida. Sin
embargo, las CNN adoptan un enfoque diferente hacia la regularización: aprovechan el
patrón jerárquico de los datos y ensamblan patrones más complejos utilizando patrones más
pequeños y más simples (P. Kim, 2017).
Las redes convolucionales se inspiraron en procesos biológicos en el sentido de que el patrón
de conectividad entre las neuronas se asemeja a la organización de la corteza visual animal.
Las neuronas corticales individuales responden a los estímulos solo en una región restringida
del campo visual conocida como campo receptivo. Los campos receptivos de diferentes
neuronas se superponen parcialmente de tal manera que cubren todo el campo visual (P. Kim,
2017).
Las CNN utilizan relativamente poco preprocesamiento, en comparación con otros
algoritmos de clasificación de imágenes. Esto significa que la red aprende y asimila los
filtros, mientras que en los algoritmos tradicionales se diseñaban a mano, como se hizo en
(Suárez, 2018).
Una red neuronal convolucional consta de una entrada y una capa de salida, así como
múltiples capas ocultas. Las capas ocultas de una CNN suelen consistir en capas
convolucionales (Convolutional Layer), capa RELU (RELU Layer) como función de
activación, capas agrupadas (Pooling Layer), capas completamente conectadas (Fully
Conected Layer) y capas de normalización (Normalization Layer).
En resumen, las CNN consisten en la conexión en serie de una red de extracción de
características y la red de clasificación. A través del proceso de entrenamiento, se determinan
los pesos de ambas capas. La capa de extracción de características tiene pares apilados de las
capas de convolución y agrupación. La capa de convolución convierte las imágenes a través
de la operación de convolución, la capa de agrupación reduce la dimensión de la imagen.
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 22
1.9 Utilización de las redes neuronales convolucionales dentro de los sistemas CAD
para clasificar lesiones
Antes de las CNN, se utilizaban otros clasificadores en los sistemas CAD. Destaca el trabajo
realizado en (Srivastava, Sharma, Singh, & Srivastava, 2013), en el cual se analizan varios
clasificadores con la base de datos MIAS obteniendo el mejor resultado con una máquina de
soporte de vectores o SVM (de las siglas en inglés de support vector machine) con una
exactitud de 84.57% una sensibilidad de 0.8261 y una especificidad de 0.8889.
El DL ha transformado profundamente el enfoque de análisis de imágenes asistidas por
computadora, distinguiéndolo fundamentalmente de los métodos CAD tradicionales (Gao,
Geras, Lewin, & Moy, 2019).
En (E.-K. Kim et al., 2018) se realizó un estudio con alrededor de 29 000 imágenes
mamográficas de 5 diferentes instituciones utilizando un clasificador basado en una CNN
con una sensibilidad de 76.1% y especificidad de 88.6% y un área bajo la curva o area under
curve (AUC) de 0.906. En (Benzebouchi et al., 2019) se propuso una CNN para la detección
y clasificación automática del cáncer de mama utilizando segmentos de la base de datos
Digital Database for Screening Mammography (DDSM) con una especificidad de 96.9%,
una sensibilidad de 98.9% obteniendo 3 falsos negativos y 1 falso positivo. En (Ribli,
Horváth, Unger, Pollner, & Csabai, 2018) se implementó un sistema CAD basado en una de
las plataformas de clasificación de objetos con más éxito, la Faster R-CNN. A partir de esta
arquitectura de red alcanzaron el segundo lugar en la competencia Digital Mammography
DREAM Challenge con un AUC de 0.85. En (Lotter, Sorensen, & Cox, 2017) se logró
alcanzar un AUC de 0.92 en la base de datos DDSM. En (Chougrad, Zouaki, & Alheyane,
2018) se desarrolló un sistema CAD basado en CNN logrando un AUC de 0.98 en la base de
datos DDSM, de 0.97 en la base de datos INbreast, 0.96 en la BCDR y 0.99 en la base de
datos MIAS.
1.10 Conclusiones del capítulo
A modo de conclusiones se puede plantear que mucho ha evolucionado la adquisición y
procesamiento de las mamografías; sin embargo, debido al bajo contraste y/o tamaño que
pueden tener las lesiones como las microcalcificaciones y las masas, en muchos casos siguen
siendo difíciles de detectar y aún más difíciles de clasificar en benignas o malignas. Los
CAPÍTULO 1. REVISIÓN BIBLIOGRÁFICA 23
sistemas CAD surgieron para ayudar a paliar este problema, y en específico las técnicas de
inteligencia artificial, como por ejemplo las redes neuronales convolucionales, las cuales son
tendencia actual en la clasificación automática de lesiones en mamografía debido a la mejora
de desempeño que han logrado.
CAPÍTULO 2. MATERIALES Y MÉTODOS 24
CAPÍTULO 2. MATERIALES Y MÉTODOS
En el presente capítulo se describe la base datos y el software utilizados. También, se analizan
los métodos empleados para aumentar la base de datos y se explica la arquitectura de la red
neuronal convolucional seleccionada, así como su proceso de entrenamiento. Además, se
caracteriza el hardware con el que se procesó toda la información y las capacidades de este
para el trabajo con redes neuronales convolucionales.
2.1 Base de datos
Se utilizó la base de datos de la Sociedad de Análisis de Imagen Mamográfica (MIAS
Database, por sus siglas en inglés, de Mammographic Image Analysis Society Database).
Se trata de un conjunto de 322 imágenes, originalmente obtenidas en película fílmica, que
fueron digitalizadas con un escáner Joyce-Loebl, con rango de densidad óptica entre 0 y 3.2,
y donde cada píxel se representa en 8 bits. Es una base de datos anotada por radiólogos. Todas
las imágenes tienen una resolución de 1024x1024 píxeles.
El archivo adjunto a la base de datos contiene toda la información necesaria para su análisis,
distribuidas en siete columnas, como se explica seguidamente:
1. Número de referencia de la imagen
2. Características del tejido de la mama
3. Tipo de lesión presentada
4. Severidad de la lesión
5. Coordenada x del centro de la lesión
6. Coordenada y del centro de la lesión
7. Radio (en píxeles) de una circunferencia que engloba la lesión
CAPÍTULO 2. MATERIALES Y MÉTODOS 25
De este archivo se puede extraer la siguiente información representada en la tabla 1.
Tabla 1. Composición de la base de datos MIAS según la presencia de anomalías
Cantidad
total de
imágenes
Cantidad
de
imágenes
sin
anomalías
Cantidad
de
imágenes
con
anomalías
Cantidad
de
imágenes
con
lesiones
benignas
Cantidad
de
imágenes
con
lesiones
malignas
322 200 122 68 54
Para el trabajo con redes neuronales convolucionales se requiere una gran cantidad de datos
de entrenamiento, por lo que la cantidad de datos de la BD MIAS no es suficiente. Esto
ocasionó la necesidad de utilizar técnicas descritas en (Zhao, Wang, & Wang, 2018) para el
aumento de los datos, que se explicará posteriormente.
2.2 Software MATLAB
Para realizar la presente tesis se utiliza el software MATLAB y sus cajas de herramientas o
Toolbox. Específicamente se utilizó para el procesamiento de imágenes el Image Processing
Toolbox, para el trabajo con las CNN Deep Learning Toolbox, y para el procesamiento en
paralelo acelerado por GPU el Parallel Computing Toolbox.
Uno de los puntos fuertes del software MATLAB es que sus Toolboxs poseen numerosas
funciones de código abierto, además permite construir funciones y herramientas propias y
reutilizables, guardadas en extensión .m (extensión propia de MATLAB).
2.2.1 Image Processing Toolbox
En el presente trabajo la principal función para la que se utiliza este toolbox es para aumentar
la base datos y extraer las regiones de interés. Aun cuando el Deep Learning Toolbox posee
una función dedicada al aumento de bases de datos (función que será explicada en el siguiente
epígrafe), se hizo necesario aplicar otras técnicas que no venían implementadas dentro de la
función, como otorgarle a las imágenes colores diferentes, con el objetivo de que la red no
CAPÍTULO 2. MATERIALES Y MÉTODOS 26
los tomara en cuenta y se centrara más en el contorno, la intensidad, la forma y los bordes de
las lesiones; rasgos que indican la existencia de tumores así como su posible malignidad.
Para la extracción de las regiones de interés se realizó un programa propio, el cual extraía la
información del archivo adjunto a las imágenes de la base de datos (la malignidad de la lesión,
si presentaba el píxel central de la lesión mamaria, así como el radio). Se recorría mediante
un for todas las imágenes, recortando las imágenes de acuerdo al píxel central de la lesión y
el radio, y guardándolas en sus respectivas carpetas, de acuerdo con su severidad, para luego
usarlas como etiquetas. Se crea así una nueva base de datos, constituida no por imágenes
completas, sino por regiones de interés (ROI). Es decir, en lugar de usar 322 imágenes para
implementar y entrenar la red, se dispuso de más de 6000 regiones de interés después de
terminar todo el proceso del aumento de la base de datos. En aquellas imágenes que no tenían
lesiones, (clasificadas como normales en la anotación de la BD), se escogieron regiones de
interés aleatoriamente. Se obtuvieron cinco ROI por cada imagen normal, generando
aleatoriamente el centro y el radio. De esta forma, ninguna región de interés sobrepasaba los
bordes exteriores de las imágenes.
De este conjunto total de regiones de interés (que a partir de ahora son las nuevas imágenes)
se pasó a escoger la cantidad de imágenes que conformarían el set de entrenamiento y el set
de prueba. Como no están equiparados el número de imágenes normales y anormales, ni el
número de lesiones benignas y malignas; se escoge el 70 % de las imágenes con lesiones
malignas, que es siempre el conjunto menor, y se le añade igual número de imágenes
normales y de imágenes con lesiones benignas para entrenar la red. El resto de todas las
imágenes se incluyó en el set de prueba. Este procedimiento se hizo para mantener
balanceado el entrenamiento de la red.
El código del programa se presenta en el Anexo 2 y el Anexo 3.
Las principales funciones utilizadas fueron:
• imread(): Lee las imágenes y las guarda en una variable
• figure() : Crea una ventana en la cual se puede mostrar la imagen
• imshow(): Muestra la imagen
• imwrite(): Guarda un archivo en uno de los formatos de imagen de una variable,
especificando el nombre del nuevo archivo y el destino.
CAPÍTULO 2. MATERIALES Y MÉTODOS 27
2.2.2 Deep Learning Toolbox
El Deep Learning Toolbox proporciona un entorno para diseñar e implementar redes
neuronales profundas. Contiene algoritmos, modelos pre-entrenados y aplicaciones. Se
pueden programar redes neuronales convolucionales para realizar la clasificación y regresión
de imágenes. Las aplicaciones y los gráficos que tiene incluidos ayudan a editar las
arquitecturas de red y monitorear el progreso del entrenamiento y aprendizaje.
Se utilizan un conjunto de funciones, más abajo descritas, para tomar toda la base datos y
conformar un solo archivo, lo cual disminuye el costo computacional y el tiempo de ejecución
del proceso de entrenamiento. Esto, al mismo tiempo, sirve para etiquetar cada imagen.
Además, se activa el uso de la GPU para el entrenamiento y para clasificar imágenes no
usadas en el entrenamiento, creando en conjunto un programa generalizador de identificación
y clasificación de lesiones mamarias en imágenes mamográficas.
El Deep Learning Toolbox posee también funciones dirigidas a aumentar la base de datos.
Se aplicaron sobre las imágenes traslaciones aleatorias entre -15 a 15 píxeles en ambos ejes,
rotaciones aleatorias entre 0° y 360°, y la técnica de espejo, usando cualquiera de los dos ejes
como referencia. Esto genera nuevas variaciones de imágenes que en la práctica no se ven,
pero que aumentan la base de datos, en aras de mejorar la estadística de entrenamiento. Este
es un algoritmo interno del toolbox.
Las principales funciones utilizadas fueron:
• imageDatastore(): Crea un objeto de tipo imageDatastore que incluye las imágenes y
la etiqueta correspondiente a cada una, propiciando el trabajo acelerado y con menos
requerimiento computacional, al tener todos los archivos en uno solo.
• imageDataAugmenter(): Configura un conjunto de opciones para al aumento de los
datos como el desplazamiento, la rotación y/o la reflexión.
• augmentedImageDatastore(): Transforma un grupo de datos como un objeto
imageDatastore, según las opciones configuradas en la función anterior, así como
especifica un tamaño de salida para las nuevas imágenes.
• trainingOptions(): Configura las opciones del entrenamiento de la red.
• trainNetwork(): Inicia el proceso de entrenamiento según las opciones establecidas
en la función anterior.
CAPÍTULO 2. MATERIALES Y MÉTODOS 28
• classify(): Clasifica un cierto conjunto de datos, ya establecidos por el usuario como
los datos de prueba con la red escogida.
2.2.2.1 Arquitectura de la Red Neuronal Convolucional
Después de implementar varias arquitecturas de redes neuronales convolucionales de los
artículos mencionados en el anterior capitulo, se obtuvieron eficiencias en el entrenamiento
de la red entre un 30 % y un 40 % con la base de datos MIAS, por lo que se consideraron
resultados preliminares malos. Se notó que la poca cantidad de imágenes utilizadas en el
entrenamiento, aún con todas las técnicas aplicadas para aumentarlas, era un factor de gran
influencia en estos resultados.
Debido a la razón anterior se decidió aplicar la técnica de transferencia de aprendizaje o
Transfer Learning, con modelos de red profunda pre-entrenados como Inception-v3, ResNet-
101, GoogLeNet y VGG-19, con buenos resultados en la competición ILSVRC (por sus siglas
en inglés ImageNet Large Scale Visual Recognition Competition) para probar cuál tendría
mejores resultados, aplicados al problema de la presente tesis.
Inception-v3 fue el modelo de red que alcanzó mejores resultados en las pruebas
preliminares, llegando a obtener una precisión en el entrenamiento alrededor del 99 % y en
la validación de 87.3 %. Por esta razón fue el escogido para la tesis.
El equipo de investigación de la compañía Google Inc. estaba principalmente enfocado en la
reducción del costo computacional de las redes neuronales de convolución, manteniendo el
mismo nivel de desempeño, al introducir el modelo de red llamado Inception (Szegedy et al.,
2015). La idea principal de este módulo es adaptar a la red a que escoja ella misma qué
tamaño de filtro es el más indicado, dependiendo de la imagen y el tamaño del objeto a
clasificar dentro de esta. Para eso colocan tres filtros de tamaño 1x1, 3x3 y 5x5 píxeles en
paralelo, y la red, en dependencia de qué filtro se activa al detectar las características, le
asigna mayor peso a la conexión de este. El principal cambio de la versión 3, es que reduce
el costo computacional al cambiar los filtros de 5x5 por dos de 3x3 y los de 3x3 por dos de
1x3 y 3x1 respectivamente, reduciendo la cantidad de parámetros a entrenar. La Figura 2.1 y
muestra la arquitectura de la red utilizada, con el módulo Inception-v3 incluido.
CAPÍTULO 2. MATERIALES Y MÉTODOS 29
Figura 2.1 Arquitectura general de la red con el modelo Inception v3
De manera completa la red Inception-v3 cuenta con cinco capas convolucionales, cada una
seguida de una capa de normalización (del inglés batch normalization), dos capas de
agrupación y once módulos Inception. Los módulos Inception están formados generalmente
por tres capas de convolución en paralelo, seguida de una capa de normalización, y una cuarta
en paralelo de agrupación (Figura 2.2).
Figura 2.2 Arquitectura del módulo Inception
CAPÍTULO 2. MATERIALES Y MÉTODOS 30
La técnica de transfer learning básicamente consiste en cargar una red pre-entrenada,
cambiarle las últimas capas, ajustándola a la nueva aplicación, y volverla a entrenar con la
nueva base de datos. Mientras más parecido sea el set de datos con que se entrenó al que se
va a entrenar, más eficiente será la técnica. Mediante esta técnica se logró que la arquitectura
“Inception-v3” fuera aplicada al problema de estudio, cambiándole las últimas tres capas: la
capa con la cantidad de clases a clasificar, la función softmax y la capa de clasificación.
Las capas convolucionales aplican una operación de convolución a la imagen de entrada, la
cual tiene un tamaño de 299 x 299 píxeles, pasando el resultado a la siguiente capa. La
convolución emula la respuesta de una neurona individual a los estímulos visuales.
Si bien las redes neuronales totalmente conectadas se pueden usar para aprender
características y clasificar datos, no es práctico aplicar esta arquitectura a las imágenes. Sería
necesario un número muy alto de neuronas, incluso en una arquitectura poco profunda,
debido a los tamaños de entrada muy grandes asociados con las imágenes, donde cada píxel
es una variable relevante. Por ejemplo, una capa completamente conectada para una imagen
(pequeña) de tamaño 100 x 100 píxeles tiene 10000 pesos para cada neurona en la segunda
capa. La operación de convolución brinda una solución a este problema, ya que reduce la
cantidad de parámetros libres, lo que permite que la red sea más profunda y con menos
parámetros. Por ejemplo, independientemente del tamaño de la imagen, las regiones de los
filtros de tamaño 5 x 5 píxeles, cada una con las mismas ponderaciones compartidas,
requieren solo 25 parámetros de aprendizaje. De esta manera, se resuelve el problema de la
desaparición del gradiente, al entrenar redes neuronales multicapa tradicionales con muchas
capas, mediante la propagación hacia atrás (del inglés back-propagation).
La capa convolucional es el bloque central en la construcción de una CNN. Los parámetros
de la capa consisten en un conjunto de filtros que tienen un campo receptivo pequeño, pero
se extienden a lo largo de toda la profundidad del volumen de entrada. Al avanzar en la red,
cada filtro realiza una convolución a todo lo ancho y alto del volumen de entrada, calculando
el producto entre las entradas del filtro y la entrada, produciendo un mapa de características
bidimensional de ese filtro. Como resultado, la red aprende cuando los filtros se activan, al
detectar algún tipo específico de característica en alguna posición espacial en la entrada (P.
Kim, 2017).
CAPÍTULO 2. MATERIALES Y MÉTODOS 31
El conjunto de mapas de características de todos los filtros a lo largo de la dimensión de
profundidad, forma el volumen de salida de la capa de convolución. Por lo tanto, cada entrada
en el volumen de salida, también puede interpretarse como una salida de una neurona que
mira una pequeña región en la entrada, y comparte parámetros con las neuronas en el mismo
mapa de características (P. Kim, 2017).
Hay tres hiper-parámetros que controlan el tamaño del volumen de salida de la capa
convolucional: la profundidad, la zancada (del inglés stride) y el relleno (del inglés padding).
Cuando la zancada es 1, movemos los filtros un píxel a la vez. Esto conduce a campos
receptivos fuertemente superpuestos entre las columnas, y también a grandes volúmenes de
salida. Cuando la zancada es 2, los filtros saltan 2 píxeles a la vez, a medida que se deslizan.
De manera similar, para cualquier número entero S > 0, una zancada de S hace que el filtro
sea trasladado por S unidades a la vez, por salida. En la práctica, las longitudes de zancada
de S > 3 son raras, ya que los campos receptivos se superponen menos y el volumen de salida
resultante tiene dimensiones espaciales más pequeñas.
El relleno proporciona el control del tamaño espacial del volumen de salida. En ocasiones es
deseable preservar exactamente el tamaño espacial del volumen de entrada, pero en otras no,
y se hace necesario rellenar los bordes del volumen de entrada (P. Kim, 2017).
En la red convolucional implementada se incluyeron capas de agrupación. Estas reducen las
dimensiones de los datos, al combinar las salidas de los grupos de neuronas de una capa, en
una sola neurona en la siguiente capa. La agrupación puede calcular un máximo o un
promedio; como sus nombres lo indican. La máxima utiliza el valor máximo de cada una de
las agrupaciones de neuronas en la capa anterior, y el promedio utiliza el valor promedio. La
capa de agrupación sirve para reducir progresivamente el tamaño espacial de la
representación, para reducir el número de parámetros y la cantidad de cómputo en la red. De
esta forma, se controla el sobreajuste. Se insertaron capas de agrupación entre capas
convolucionales sucesivas.
Después de varias capas convolucionales y de agrupación, el razonamiento de alto nivel en
la red neuronal se realizó a través de las capas totalmente conectadas. Estas capas, conectan
a cada neurona en una capa a cada neurona en otra capa. De este modo, sus activaciones se
pueden calcular como la multiplicación de matrices seguida por un desplazamiento de sesgo.
CAPÍTULO 2. MATERIALES Y MÉTODOS 32
Se utilizó la función de activación ReLU, (del inglés rectifier linear unit). Esta función
elimina efectivamente los valores negativos en las conexiones al establecerlos en cero.
También, aumenta las propiedades no lineales de la función de decisión y de la red en general,
sin afectar los campos receptivos de la capa de convolución. La función de activación ReLU
fue escogida porque entrena la red neuronal más rápido que las funciones tradicionalmente
utilizadas en redes neuronales, sin una pérdida significativa en la precisión (Agarap, 2018).
Para reducir el sobreajuste se utilizó la técnica dropout. Esto se hizo debido a que una capa
totalmente conectada ocupa la mayoría de los parámetros. Mediante esta técnica las neuronas
se mantienen con probabilidad p de participar en el entrenamiento. De modo que queda una
red reducida que es la entrenada en cada etapa. Al pasar a la siguiente etapa, las neuronas
retiradas se vuelven a insertar en la red con sus pesos originales. Al evitar entrenar todas las
neuronas en cada una de las etapas, mejora significativamente la velocidad de entrenamiento.
Esto hace que la combinación de modelos sea práctica, incluso para redes neuronales
profundas.
Finalmente, se utilizó la función softmax en la capa semifinal del clasificador, para entrenar
la red bajo un régimen de entropía cruzada, lo que da una variante no lineal de regresión
logística multinomial. La capa de clasificación calcula la pérdida de entropía cruzada para
problemas de clasificación de múltiples clases con clases mutuamente excluyentes.
2.2.3 Parallel Computing Toolbox
El uso del Parallel Computing Toolbox permitió resolver los problemas de computación
mediante la GPU de la computadora utilizada. Durante el entrenamiento de la red se hizo uso
de este toolbox implícitamente, ya que una vez activado la red se entrena usando los recursos
de la GPU sin necesidad de introducir ningún comando o código especial para esto.
2.3 Hardware
Para utilizar todo el software anteriormente descrito, MATLAB recomienda hacer uso de
una tarjeta gráfica con tecnología CUDA de NVIDIA con capacidad de cálculo mayor de
3.1. Se utilizó una laptop con los siguientes recursos de hardware:
CAPÍTULO 2. MATERIALES Y MÉTODOS 33
Marca: MSI
Modelo: GS63VR674
Procesador (CPU): Intel® Core™ Core i7-7700HQ 2.8 - 3.8 Ghz w/ Turbo Boost
Tarjeta Gráfica: NVIDIA GeForce® GTX1060 6GB GDDR5 con capacidad de cálculo 6.1
RAM: 16GB (8GB*2) DDR4 2400MHz
Almacenamiento: SSD 128GB M.2 SATA + HDD 1TB (5400RPM)
2.4 Evaluación de la clasificación
La eficiencia de los sistemas de clasificación, la mayoría de las veces, es medida mediante
cuatro factores: la exactitud, la sensibilidad, la especificidad y el área bajo la curva de
sensibilidad vs. especificidad (AUC). La sensibilidad, la especificidad y el AUC solamente
son utilizados en sistemas de clasificación binaria, ya que, en sistemas con más de dos clases
a clasificar, no se puede determinar una clase como positiva y otra como negativa. En este
caso solo se utiliza la exactitud, la cantidad de aciertos sobre el total de imágenes a clasificar,
como medida de fiabilidad del sistema para la arquitectura con tres clases. La exactitud, la
sensibilidad, la especificidad y el AUC para sistemas de clasificación binaria se calculan de
la siguiente manera según (Baldi, Brunak, Chauvin, Andersen, & Nielsen, 2000):
Exactitud: 𝑉𝑝+𝑉𝑛
𝑉𝑝+𝑉𝑛+𝐹𝑝+𝐹𝑛 (1)
Sensibilidad: 𝑉𝑝
𝑉𝑝+𝐹𝑛 (2)
Especificidad: 𝑉𝑛
𝑉𝑛+𝐹𝑝 (3)
AUC: 1
2∗ (
𝑉𝑝
𝑉𝑝+𝐹𝑛+
𝑉𝑛
𝑉𝑛+𝐹𝑝) (4)
CAPÍTULO 2. MATERIALES Y MÉTODOS 34
Donde: Vp son los verdaderos positivos (elementos que el sistema detecta como positivos
cuando la anotación de la BD da como positivos), Vn son los verdaderos negativos
(elementos que el sistema detecta como negativos cuando la anotación de la BD da como
negativos), Fp son los falsos positivos (elementos que el sistema detecta como positivos
cuando la anotación de la BD da como negativos) y Fn, los son los falsos negativos
(elementos que el sistema detecta como negativos cuando la anotación de la BD da como
positivos).
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 35
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN
En el presente capítulo se exponen los resultados de clasificación de lesiones mamarias
alcanzados utilizando redes neuronales convolucionales. Se evalúan los resultados mediante
la estimación de la exactitud de la clasificación por comparación con la anotación de la base
de datos MIAS, así como comparaciones con trabajos de otros autores que emplean otros
tipos de redes neuronales y la misma Base de Datos.
Se crearon varias redes neuronales convolucionales, basadas en la arquitectura “Inception
v3”. El primer sistema cuenta con una sola red neuronal convolucional y tres tipos de clases
a clasificar en la salida (normal, benigna y maligna); y el segundo cuenta con dos redes
neuronales convolucionales en serie, de clasificación binaria, donde la primera parte decide
si hay una lesión mamaria o no en la imagen, y la segunda, en caso de que haya tumor, decide
si es benigno o maligno.
3.1 Resultados
3.1.1 Arquitectura con tres clases
Después de implementar esta arquitectura fue necesaria entrenarla en más de una ocasión,
cambiando los parámetros y haciendo ajustes de optimización. En la Figura 3.1 se observan
los mejores resultados alcanzados por esta arquitectura, que tuvo una exactitud de 86.05%.
Como se puede observar en la Figura 3.1, el último entrenamiento solo duró 43 minutos, pero
el proceso completo fue de más tiempo. Se realizaron entrenamientos que duraron
aproximadamente hasta un día y medio. En cada caso se guardaba la red entrenada, se cargaba
y sobre esta, se volvía a entrenar ajustando los parámetros, con el objetivo de lograr una
mayor exactitud.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 36
Figura 3.1 Proceso de entrenamiento de la arquitectura con tres clases.
Aunque se contó con un hardware lo suficientemente capaz de realizar el proceso de
entrenamiento de redes neuronales convolucionales y el procesamiento de imágenes, se
colocaron límites en los parámetros, ya que en ocasiones el hardware no era capaz de realizar
todas las operaciones y devolvía errores de la tarjeta gráfica debido a la gran cantidad de
espacio de memoria que requería.
También se observa una diferencia entre la exactitud en el entrenamiento y en la validación.
Este hecho es totalmente justificable, ya que, en el proceso de entrenamiento, cada vez que
se pasa a la siguiente época, se realizan ajustes en los pesos de las conexiones. De este modo,
se corrige el error encontrado en las imágenes del set de entrenamiento. Sin embargo, el error
en la validación nunca es utilizado para corregir el proceso de entrenamiento, sino que se usa
para indicar la fiabilidad del sistema y tener una idea de cómo se comportaría la red ya
entrenada, en el momento de clasificar imágenes nunca procesadas por ella anteriormente.
Por esta razón, es que el set de entrenamiento tiene que ser una representación lo más
abarcadora posible de todas las características a tener en cuenta en la clasificación. Esta es la
causa de que la exactitud en la validación de un poco por debajo del entrenamiento como se
observa en la Figura 3.1. La Figura 3.2 muestra la matriz de confusión para la arquitectura
con 3 clases.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 37
Figura 3.2 Matriz de confusión de la clasificación por la arquitectura de 3 clases
También es importante hacer un análisis de acuerdo con la composición del tejido de las
mamas, ya que para los radiólogos es más difícil realizar un diagnóstico en mamas
glandulares densas. La Tabla 2 muestra la composición del set de prueba de la base de datos
utilizada en la arquitectura de 3 clases, y la Tabla 3 la de las imágenes en las que la red
cometió errores.
Tabla 2. Composición del set de prueba de la arquitectura de tres clases según el tejido
de las mamas.
Clases Adiposas Glandulares Glandulares
Densas
Normales 54 53 62
Lesiones
benignas 6 15 10
Lesiones
malignas 9 6 0
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 38
Tabla 3. Clasificación errónea con la RN de tres clases para los diversos tipos de mamas.
Clases (Según la BD-
Clasificación con RN) Adiposas Glandulares
Glandulares
Densas
Normales - Benignos 0 1 7
Normales – Malignos 0 2 3
Benignos - Normales
Benignos - Malignos
Malignos - Normales
Malignos - Benignos
1
0
3
2
2
4
0
0
2
3
0
0
El sistema implementado cometió errores en 6 mamas con tejido adiposo, en 9 con tejido
glandular y 15 con tejido denso. El tejido denso fue el más proclive a tener error. Sin
embargo, el resultado no puede considerarse malo, ya que la red identifica la mayoría de las
lesiones que el especialista por sí solo no puede identificar.
3.1.2 Arquitectura con dos redes neuronales en serie
En la primera parte de la arquitectura con dos clases, se determina si la imagen tiene presencia
o no de una lesión. La Figura 3.3 muestra el último proceso de entrenamiento de esta primera
parte, ya que también fue sometido a varios entrenamientos.
Para una mejor visualización, al calcular la exactitud, la sensibilidad, la especificidad y el
AUC, la Figura 3.4 muestra la matriz de confusión de la primera parte de la arquitectura con
dos clases.
De esta primera parte se obtuvo una exactitud de 96.65 %, una sensibilidad de 88.6 %, una
especificidad de 98 % y un AUC de 93.3 % para detectar lesiones en un total de 138
imágenes. El sistema implementado diagnosticó 2 falsos positivos y 4 falsos negativos. La
sensibilidad y la especificidad están vinculados a esto, ya que a mayor número de falsos
negativos, menor sensibilidad, y a mayor número falsos positivos, menor especificidad.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 39
Figura 3.3 Proceso de entrenamiento de la primera parte de la arquitectura con dos clases
Figura 3.4 Matriz de confusión en la clasificación de la primera parte
Como se puede apreciar, las diferencias de exactitud en esta arquitectura en la validación
respecto al entrenamiento, fueron menores que en la arquitectura anterior. Además, el valor
neto de exactitud es superior y está por encima del 90 %. También, en el entrenamiento
mostrado en la Figura 3.3 se observa que requirió un menor número de iteraciones respecto
a la arquitectura con 3 clases y el entrenamiento tardó menos tiempo, teniendo en cuenta,
además, la experiencia acumulada. Una vez entrenada esta red, el tiempo de cómputo, al igual
que la red anterior solo tarda menos de 10 segundos por imagen en el hardware descrito.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 40
Según un estudio realizado en (Lehman et al., 2016), el cual analiza el nivel de desempeño
normal de los radiólogos para detectar lesiones mamarias a partir de visualizar imágenes de
mamografía, es más común que estos diagnostiquen falsos negativos que falsos positivos,
como se muestra en la Figura 3.5. Al comparar los resultados con respecto al sistema
implementado con redes neuronales, se nota que tiene un comportamiento dentro del rango
aceptable para los radiólogos, dando una idea de la fiabilidad del sistema para implementarlo
en la práctica y servir de ayuda, como segunda opinión para los radiólogos.
Figura 3.5 Nivel de desempeño de los radiólogos
De acuerdo con la composición del tejido en las mamas, el set de prueba utilizado está
compuesto como se indica la Tabla 4 y la Tabla 5 indica la composición en las imágenes en
las que la red cometió errores.
Tabla 4. Composición del set de prueba de la primera parte de las dos arquitecturas de
2 clases en serie según el tejido de las mamas.
Clases Adiposas Glandulares Glandulares
Densas
Normales 32 33 38
Tumor 9 12 14
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 41
Tabla 5. Clasificación errónea con la RN de dos clases (1ra parte) para los diversos tipos
de mamas.
Clases Adiposas Glandulares Glandulares
Densas
Normales en Tumor
(Fp) 1 1 0
Tumor en Normales 1 1 2
(Fn)
Haciendo un análisis de la exactitud, el sistema cometió errores en 2 imágenes de tejido
adiposo, 2 de tejido glandular y 2 de tejido denso glandular. En este sistema, al contrario del
anterior, estuvo pareja la cantidad de errores cometidos entre los diferentes tejidos de mama.
En la segunda parte de la arquitectura con dos clases, se determina la malignidad o no de la
lesión encontrada por la primera parte. La Figura 3.6 muestra el proceso de entrenamiento de
esta segunda parte.
Figura 3.6 Proceso de entrenamiento de la segunda parte de la arquitectura con dos clases
Esta red logró una clasificación del 100 % para el set de entrenamiento. Sin embargo, para el
set de validación solo se logra un 91.3 % debido a que hay características en el set de
validación que o no estaban presentes en el set de entrenamiento o no fueron aprendidas por
la red durante el entrenamiento
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 42
Al igual que en la primera parte, la Figura 3.7 muestra la matriz de confusión. De esta segunda
parte se obtiene una exactitud de 91.30 %, una sensibilidad de 93.33 %, una especificidad de
90.32 % y un AUC de 91.82 % para diagnosticar la malignidad de la lesión en un total de 46
imágenes. El sistema en esta segunda parte diagnosticó 3 falsos positivos y 1 falso negativo.
Durante el proceso de validación originalmente después de aplicar la técnica de transfer
learning a la red obtenida en la etapa anterior, y entrenarla con la nueva base de datos, no se
obtuvieron buenos resultados. Posiblemente, debido a que los pesos de las conexiones ya se
habían adaptado a clasificar las imágenes malignas y benignas como una sola clase, lo cual
explicaría que en la validación reconocía todas las imágenes como benignas o todas como
malignas.
Por esta razón se empezó de cero todo el proceso, cargando nuevamente la red “Inception
v3” y aplicando la técnica transfer learning. Nuevamente no se obtuvieron buenos resultados;
por lo que se decidió cargar una red más sencilla, el modelo original de “Inception v3”, la red
“Googlenet”; y aplicando las mismas técnicas antes mencionadas, se obtuvieron los
resultados mostrados en la Figura 3.6 y en la Figura 3.7. En este caso el tiempo de cómputo
estuvo por debajo de los 8 segundos por imagen.
Figura 3.7 Matriz de confusión en la clasificación de la segunda parte
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 43
De acuerdo con la composición del tejido en las mamas, el set de prueba utilizado está
compuesto como indica la Tabla 6.
Tabla 6. Composición del set de prueba de la segunda parte de las redes de dos clases
en serie según el tejido de las mamas.
Clases Adiposas Glandulares Glandulares
Densas
Benignas 6 15 10
Malignas 9 6 0
Tabla 7. Clasificación errónea con la RN de dos clases (2da parte) para los diversos
tipos de mamas.
Clases Adiposas Glandulares Glandulares
Densas
Benignas en Malignas
(Fp) 1 0 2
Malignas en Benignas
(Fn) 1 0 0
Haciendo un análisis de la exactitud, el sistema cometió errores en 2 imágenes de tejido
adiposo, 0 de tejido glandular y 2 de tejido denso glandular.
En este sistema no se cometió ningún error en las imágenes de tejido glandular, y se
cometieron la misma cantidad de errores en las imágenes que son más fáciles de diagnosticar
por los radiólogos que son las de tejido adiposo, y las más difíciles, que son las de tejido
denso glandular. En este sentido, se puede plantear que el sistema resulta de ayuda a los
radiólogos como segunda opinión y que responde igual para diversos tipos de tejido
glandular.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 44
De manera general, si tomamos la exactitud de las dos partes, como la probabilidad que tiene
cada una de acertar en la clasificación; la probabilidad general de acertar sería la
multiplicación de ambas probabilidades. Lo que le da al sistema completo de las dos redes
neuronales convolucionales de clasificación binaria en serie una exactitud de 88.24 %,
ligeramente superior al sistema de clasificación con tres clases.
3.2 Comparación de resultados con la literatura científica
3.2.1 Trabajos Nacionales
El único trabajo conocido similar al presente dentro del territorio nacional es el presentado
en (Rodríguez Linares, 2018) el cuál implementa dos sistemas, al igual que en la presente
tesis. El primero solo detecta si hay tumores o no con una exactitud de 92 %, una sensibilidad
de 91.43 %, una especificidad de 92.31 % y un AUC de 91.87 % de un total de 100 imágenes.
El otro sistema cuenta con un clasificador de tres clases (normal, benigno o maligno) y posee
una exactitud del 92 % de un total de 100 imágenes a clasificar.
Como se pudo observar, el presente trabajo no logró superar al presentado en (Rodríguez
Linares, 2018) en el clasificador de tres clases, pero sí en el de clasificación binaria, al
detectar la presencia de tumores con una mayor exactitud.
3.2.2 Trabajos Internacionales
En (Chougrad et al., 2018) con otro tipo de red neuronal y la misma BD se obtiene una
exactitud del 98.23 % y un AUC de 99 %, superando al trabajo de la presente tesis. Sin
embargo, el presente trabajo identifica cualquier tipo de lesión y la diagnostica, mientras que
en (Chougrad et al., 2018) solo se clasifica de acuerdo con su severidad, las masas de la base
de datos. Hay que especificar que la BD en (Chougrad et al., 2018) solo fue utilizada para la
validación, el entrenamiento se realizó con un total de 3 bases de datos, utilizando un total
de 6116 imágenes, lo cual proporciona a la red mayor poder de generalización.
En (Abdel-Nasser, Melendez, Moreno, & Puig, 2016) se utilizaron tres algoritmos diferentes
usando machine learning con 161 imágenes de la base de datos MIAS, para clasificar masas
según su severidad, empleando 5 valores diversos de tamaño de píxel y 5 métodos de análisis
de texturas. Obtienen valores de AUC entre 40 y 78 %; claramente superados por las redes
implementadas en la presente tesis. Algo similar ocurrió al comparar los resultados
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 45
alcanzados en el trabajo de (Bektaş, Emre, Kartal, & Gulsecen, 2018), donde se usaron 3
variantes para extraer los rasgos de las imágenes. El mayor valor de exactitud alcanzado por
los clasificadores fue de 66 %.
En el trabajo de (Kurek, Świderski, Osowski, Kruk, & Barhoumi, 2018) se evaluó el
desempeño del enfoque clásico contra las redes neuronales convolucionales. En ambos casos
la presente tesis superó los resultados reportados que fueron para el enfoque clásico de 82.5%
y para las CNN de 85.8 % de exactitud.
3.3 Análisis económico
El presente sistema aún no tiene registro ni se puede comercializar, por tanto, no tiene una
estimación económica realizada. El sistema debe además refinarse, en el sentido de elaborar
una interfaz de usuario para facilitar su uso. Por otra parte, en nuestro país existe la entidad
SOFTEL, cuyo objeto social es la comercialización de software para el uso en entidades de
la salud pública.
Se debe de resaltar, que independientemente del valor económico que tenga el sistema CAD
propuesto, su mayor impacto es social; ya que, al servir de ayuda al radiólogo para mejorar
la exactitud y precisión de su diagnóstico, contribuye a la detección temprana del cáncer de
mama y por tanto también, a reducir costos de tratamiento de pacientes con lesiones más
avanzadas.
Los sistemas profesionales para la detección de cáncer de mama existentes en el mercado,
como el “Volpara”, por ejemplo, cuestan más de 2000.00 Euros.
3.4 Conclusiones del capítulo
De acuerdo con los resultados del capítulo se puede concluir que:
• Se implementaron 2 arquitecturas de redes neuronales convolucionales. En la arquitectura
con 3 clases, se obtuvo un 86.05 % de exactitud con 30 errores de clasificación en 215
imágenes, (de los cuales el 50 % fue en mamas densas) para un tiempo de cómputo de
aproximadamente 0.014 segundos por imagen con el hardware utilizado.
CAPÍTULO 3. RESULTADOS Y DISCUSIÓN 46
• En la arquitectura con 2 redes neuronales en serie, se obtuvo una exactitud final de 88,2 %
con 5 falsos positivos y 5 falso negativos totales entre las dos partes, para un tiempo de
cómputo de aproximadamente 0.1293 segundos por imagen para el hardware utilizado.
• El sistema implementado con dos arquitecturas de clasificación binaria fue el más eficiente
y representa también una mejora en el desempeño respecto a trabajos previos realizados en
el territorio nacional e internacional.
• Los dos sistemas implementados clasifican con independencia del tejido mamario presente,
lo cual es muy útil para los radiólogos que tienen grandes dificultades para diagnosticar
sobre todo en las mamas glandulares densas.
• Los resultados de la clasificación con ambas redes neuronales se encuentran dentro de los
rangos de desempeño aceptados por los radiólogos expertos, lo cual le da fiabilidad al
sistema a la hora de su implementación en la práctica clínica de rutina.
CONCLUSIONES Y RECOMENDACIONES 47
CONCLUSIONES Y RECOMENDACIONES
Conclusiones
1 Se seleccionaron 2 redes neuronales convolucionales que poseen módulos Inception en
su arquitectura, basando su eficiencia en la clasificación de imágenes de mamografía
digital. Ambas redes fueron capaces de tener desempeños buenos en tiempos de
cómputo de menos de 0.014 y 0.129 segundos respectivamente.
2 Las dos redes seleccionadas fueron entrenadas, ajustadas y validadas con la BD MIAS,
obteniéndose en la arquitectura con 3 clases, un 86.05 % de exactitud, con 30
clasificaciones erróneas; mientras que en arquitectura con 2 redes neuronales en serie,
se alcanzó una exactitud de 88,2 % con 5 falsos positivos y 5 falsos negativos totales.
3 Ambos resultados están en el entorno de los valores internacionales admisibles para
este tipo de sistemas, clasifican con independencia del tejido mamario presente,
principalmente la arquitectura de dos clases en serie, y satisfacen los criterios de los
radiólogos con aceptable exactitud.
Recomendaciones
1 Realizar un trabajo en conjunto con la entidad SOFTEL para crear un software que
pueda ser utilizado en la salud pública.
2 Entrenar las redes implementadas con otras bases de datos de imágenes de
mamografías con mayor número de casos que le proporcionen mayor poder de
generalización y adquieran una mayor fiabilidad.
REFERENCIAS BIBLIOGRÁFICAS 48
REFERENCIAS BIBLIOGRÁFICAS
Abdel-Nasser, M., Melendez, J., Moreno, A., & Puig, D. (2016). The impact of pixel
resolution, integration scale, preprocessing, and feature normalization on texture
analysis for mass classification in mammograms. International Journal of Optics,
2016.
Agarap, A. F. (2018). Deep learning using rectified linear units (relu). arXiv preprint
arXiv:1803.08375.
Aibar, L., Santalla, A., López-Criado, M. S., González–Pérez, I., Calderón, M. A., Gallo, J.
L., & Fernández-Parra, J. (2011). Clasificación radiológica y manejo de las lesiones
mamarias. Clínica e Investigación en Ginecología y Obstetricia, 38(4), 141–149.
American Cancer Society. (s. f.). ¿Qué es el cancer de seno? American Cancer Society.
Recuperado de http://www.cancer.org/es/cancer/cancer-de-seno/acerca/que-es-el-
cancer-de-seno.html
Andrés, A. V. (2007). Sistema inteligente para la detección y diagnóstico de patología
mamaria (PhD Thesis). Universidad Complutense de Madrid.
Baldi, P., Brunak, S., Chauvin, Y., Andersen, C. A., & Nielsen, H. (2000). Assessing the
accuracy of prediction algorithms for classification: an overview. Bioinformatics,
16(5), 412–424.
Baños, M. A., & Alegría, C. L. (2003). Bases físicas y biológicas del radiodiagnóstico
médico. EDITUM.
REFERENCIAS BIBLIOGRÁFICAS 49
Bektaş, B., Emre, İ. E., Kartal, E., & Gulsecen, S. (2018). Classification of Mammography
Images by Machine Learning Techniques. 2018 3rd International Conference on
Computer Science and Engineering (UBMK), 580–585. IEEE.
Benzebouchi, N. E., Azizi, N., & Ayadi, K. (2019). A Computer-Aided Diagnosis System
for Breast Cancer Using Deep Convolutional Neural Networks. En Computational
Intelligence in Data Mining (pp. 583–593). Springer.
Birkfellner, W. (2016). Applied medical image processing: a basic course. CRC Press.
Bradley, W. G. (2008). History of medical imaging. Proceedings of the American
Philosophical Society, 152(3), 349–361.
Bushberg, J. T., & Boone, J. M. (2011). The essential physics of medical imaging. Lippincott
Williams & Wilkins.
Byra, M., Nowicki, A., Wróblewska-Piotrzkowska, H., & Dobruch-Sobczak, K. (2016).
Classification of breast lesions using segmented quantitative ultrasound maps of
homodyned K distribution parameters. Medical physics, 43(10), 5561–5569.
Chávez Guadarrama, D. P., & González Flores, K. Y. (2016). Deteccion de cancer de mama
mediante redes neuronales. Escuela Superior de Ingeniería Mecánica y Eléctrica
«Adolfo López Mateos».
Chen, Y. B. (2011). A robust fully automatic scheme for general image segmentation. Digital
Signal Processing, 21(1), 87–99.
Chougrad, H., Zouaki, H., & Alheyane, O. (2018). Deep convolutional neural networks for
breast cancer screening. Computer methods and programs in biomedicine, 157, 19–
30.
Cuba. (2016). Centro Nacional de Información de Ciencias Médicas. Biblioteca Médica
Nacional. Cáncer de mama. Prevención. Bibliomed [Internet]. [13 12 2018]; 23
(5):[aprox. 12 p.]. Disponible en: http://files.sld.cu/bmn/files/2016/05/bibliomed-
mayo-2016.pdf.
Esteban, C. (2008). Indicadores de calidad en imágenes digitales en programas de control
de calidad en mamografía (PhD Thesis).
REFERENCIAS BIBLIOGRÁFICAS 50
Frutos Arenas, F. J., Seguí Azpilcueta, M., Nieto Parra, J. A., Segovia Vergel, C., Palma
Gastón, A., & Olloqui Martín, E. (2011). Técnicas de diagnóstico por la imagen en
cáncer de mama. 23(1 y 2), 18.
Ganguly, D., Chakraborty, S., Balitanas, M., & Kim, T. (2010). Medical imaging: A review.
International Conference on Security-Enriched Urban Computing and Smart Grid,
504–516. Springer.
Gao, Y., Geras, K. J., Lewin, A. A., & Moy, L. (2019). New Frontiers: An Update on
Computer-Aided Diagnosis for Breast Imaging in the Age of Artificial Intelligence.
American Journal of Roentgenology, 212(2), 300–307.
Gonzalez, R. C., & Woods, R. E. (2002). Digital image processing. Publishing house of
electronics industry, 141(7).
Granma. (2018). El cancer de mama no es invencible. Recuperado de
http://www.granma.cu/todo-salud/2018-10-18/el-cancer-de-mama-no-es-invencible-
18-10-2018-21-10-36
Haus, A. G., & Yaffe, M. J. (2000). Screen-film and digital mammography: image quality
and radiation dose considerations. Radiologic Clinics of North America, 38(4), 871–
898.
Henriksen, E. L., Carlsen, J. F., Vejborg, I. M., Nielsen, M. B., & Lauridsen, C. A. (2019).
The efficacy of using computer-aided detection (CAD) for detection of breast cancer
in mammography screening: a systematic review. Acta Radiologica, 60(1), 13–18.
Huo, Q., Li, J., & Lu, Y. (2016). Removing ring artefacts in CT images via unidirectional
relative variation model. Electronics Letters, 52(22), 1838–1839.
Kim, E.-K., Kim, H.-E., Han, K., Kang, B. J., Sohn, Y.-M., Woo, O. H., & Lee, C. W. (2018).
Applying data-driven imaging biomarker in mammography for breast cancer
screening: preliminary study. Scientific reports, 8(1), 2762.
Kim, P. (2017). Matlab deep learning. En With Machine Learning, Neural Networks and
Artificial Intelligence. Springer.
REFERENCIAS BIBLIOGRÁFICAS 51
Kurek, J., Świderski, B., Osowski, S., Kruk, M., & Barhoumi, W. (2018). Deep learning
versus classical neural approach to mammogram recognition. Bulletin of the Polish
Academy of Sciences: Technical Sciences.
Landin. (2008). Desarrollo de técnicas de reconocimiento y procesamiento utilizando un
sistema CAD para aplicaciones en medicina y otras areas.
Lehman, C. D., Arao, R. F., Sprague, B. L., Lee, J. M., Buist, D. S. M., Kerlikowske, K., …
Miglioretti, D. L. (2016). National Performance Benchmarks for Modern Screening
Digital Mammography: Update from the Breast Cancer Surveillance Consortium.
Radiology, 283(1), 49-58. https://doi.org/10.1148/radiol.2016161174
Lotter, W., Sorensen, G., & Cox, D. (2017). A multi-scale CNN and curriculum learning
strategy for mammogram classification. En Deep Learning in Medical Image
Analysis and Multimodal Learning for Clinical Decision Support (pp. 169–177).
Springer.
Ortíz, M. M., Olmos Pineda, I., & Olvera López, A. (2015). Obtención de imágenes médicas
digitales y la computación.
Ortiz Zamora, F. G. (2002). Procesamiento morfológico de imágenes en color: aplicación a
la reconstrucción geodésica.
Perez-Diaz, M. (2014). Techniques to evaluate the quality of medical images. AIP
Conference Proceedings, 1626, 39–45. AIP.
Ramírez de la Espriella, G. (2011). Detección de carcinomas en las imágenes de mamografía
mediante tecnicas de procesamiento de imágenes y reconocimiento de patrones
(Master’s Thesis). Facultad de Ingeniería.
Ribli, D., Horváth, A., Unger, Z., Pollner, P., & Csabai, I. (2018). Detecting and classifying
lesions in mammograms with deep learning. Scientific reports, 8(1), 4165.
Rodríguez Linares, D. (2018). Aprendizaje profundo aplicado a la detección de tumores de
mama. Universidad de la Habana. Instituto Superior de Tecnologías y Ciencias
Aplicadas. Facultad de Ciencias y Tecnologías Nucleares. Departamento de
Ingeniería Nuclear, La Habana.
REFERENCIAS BIBLIOGRÁFICAS 52
Rodríguez López, V. (2012). Análisis de imágenes de mamografía para la detección de
cáncer de mama. Temas de Ciencia y Tecnología, 15(47), 39–45.
Seeram, E. (2019). Digital radiography: Physical Principles and Quality Control (Second
Edition). Recuperado de https://doi.org/10.1007/978-981-13-3244-9
Sprawls, P. (2003). Physical principles of medical imaging. Aspen Publishers.
Srivastava, S., Sharma, N., Singh, S. K., & Srivastava, R. (2013). Design, analysis and
classifier evaluation for a CAD tool for breast cancer detection from digital
mammograms. International Journal of Biomedical Engineering and Technology,
13(3), 270–300.
Suárez, E. (2018). Diseño de un sistema automatizado para la detección de anomalías en
imágenes digitales de mama. UCLV.
Szegedy, C., Liu, W., Jia, Y., Sermanet, P., Reed, S., Anguelov, D., … Rabinovich, A.
(2015). Going deeper with convolutions. Proceedings of the IEEE conference on
computer vision and pattern recognition, 1–9.
Tepán, A., & Cristina, E. (2013). Estudio de los principales tipos de redes neuronales y las
herramientas para su aplicación (B.S. thesis).
Torres, P., Guerra, M., Galán, Y., García, M., Lezcano, M., & Fernández, L. (2007).
Incidencia y mortalidad por cáncer en la mujer cubana: Trienio 2000-2002. Revista
Cubana de Medicina, 46(2), 0–0.
Walczak, S. (2019). Artificial neural networks. En Advanced Methodologies and
Technologies in Artificial Intelligence, Computer Simulation, and Human-Computer
Interaction (pp. 40–53). IGI Global.
Wang, G., Wang, Y., Li, H., Chen, X., Lu, H., Ma, Y., … Tang, L. (2014). Morphological
background detection and illumination normalization of text image with poor
lighting. PloS one, 9(11), e110991.
World Health Organization. (s. f.). Diagnostic Imaging. Recuperado de
https://www.who.int/diagnostic_imaging/en/
REFERENCIAS BIBLIOGRÁFICAS 53
Zhao, X., Wang, X., & Wang, H. (2018). Classification of Benign and Malignant Breast Mass
in Digital Mammograms with Convolutional Neural Networks. Proceedings of the
2nd International Symposium on Image Computing and Digital Medicine, 47–50.
ACM.
ANEXOS 54
ANEXOS
Anexo I Código del programa para entrenar la red
%% Cargar imágenes en un imageDatastore
digitDatasetPathTrain = fullfile('D:\Tesis\Nueva
carpeta\variante_3_colores_new\Train');
imdsTrain =
imageDatastore(digitDatasetPathTrain,'IncludeSubfolders',true
,'LabelSource','foldernames');
digitDatasetPathTest = fullfile('D:\Tesis\Nueva
carpeta\variante_3_colores_new\Test');
imdsTest =
imageDatastore(digitDatasetPathTest,'IncludeSubfolders',true,
'LabelSource','foldernames');
%% Realizar un conteo de las etiquetas que le corresponden al
entrenamiento y a la prueba
labelCountTrain = countEachLabel(imdsTrain);
labelCountTest = countEachLabel(imdsTest);
%% Aumentar el conjunto de entrenamiento haciendo
transformaciones
augmenter = imageDataAugmenter( ...
'RandXReflection',true,...
'RandYReflection',true,...
'RandRotation',[0,360], ...
'RandXTranslation',[-5 5], ...
'RandYTranslation',[-5 5]);
imageSize = [224 224 3];
auimds =
augmentedImageDatastore(imageSize,imdsTrain,'DataAugmentation
',augmenter);
auimdsValidation =
augmentedImageDatastore(imageSize,imdsTest);
ANEXOS 55
%% Establecer los parámetros de entrenamiento
options = trainingOptions('sgdm', ...
'InitialLearnRate',0.01, ...
'MaxEpochs',45, ...
'ValidationData',auimdsValidation, ...
'ValidationFrequency',20, ...
'MiniBatchSize',64,...
'Verbose',false, ...
'Plots','training-progress');
%% Activar la GPU para evitar errores de cómputo
d = gpuDevice(1)
%% Comenzar el entrenamiento de la red
net = trainNetwork(auimds,layerGraph(net),options);
%% Clasificar el set de pruebas con la red ya entrenada
Imagenes = auimdsValidation.readall;
YValidation = Imagenes.response;
YPred=[];
for i=1:length(Imagenes.input)
YPred = classify(net,Imagenes.input{i,1});
YpredN(i,1) = YPred;
end
%% Mostrar la exactitud en la clasificación
accuracy = sum(YpredN == YValidation)/numel(YValidation)
%% Mostrar la matriz de confusión
[C,order] =
confusionmat(YValidation,YpredN,'Order',{'Malign','Benign','N
ormal'})
figure
cm = confusionchart(C,order);
ANEXOS 56
Anexo II Código del programa para extraer las regiones de interés y conformar la
base de datos de dos clases
normal_index = [];
normal_cont = 1;
tumor_index = [];
tumor_cont = 1;
infoDB = infoMiniMias; % cargar archivo que contenga el
info.txt perteneciente a la DB
for i=1:length(infoDB)
if strcmp(infoDB{i,3},'NORM')
normal_index(normal_cont) = i;
normal_cont = normal_cont+1;
else
tumor_index(tumor_cont) = i;
tumor_cont = tumor_cont+1;
end
end
%%
% La composición de la base de datos será 70% para entrenar y
30% para clasificar. En el caso de los datos de entrenamiento
se desea que sean balanceados. Por tanto, se selecciona el
70% del de menor cantidad, en este caso se cuenta con 123 ROI
de tumor y 207 ROI normales. Se seleccionarán
round(0.7*min([length(normal_index) length(tumor_index)])) de
cada tipo para el entrenamiento.
rand_tumor = randperm(length(tumor_index));
rand_normal = randperm(length(normal_index));
N = round(0.7*min([length(normal_index)
length(tumor_index)]));
%% creando el train de las normal
% poner el current folder en la carpeta que se desea guardar
% poner en el path de Matlab la ubicación de las imágenes
originales
for i=1:N
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{normal_index(rand_normal(i)),1},'.pgm']);
fc = randi([1024/2-round(0.2*1024) 1024/2],1,2);
r = randi([5 round(1024/6)],1,1); %el mayor radio
encontrado era aproximadamente la 6ta parte de la imagen
X = fc(1);
Y = fc(2);
N_Image = Image(Y-r:Y+r,X-r:X+r);
ANEXOS 57
imwrite(N_Image,
[infoDB{normal_index(rand_normal(i)),1},'_',num2str(i),'Norma
l.pgm']);
end
%% creando el test de las normal
for i = N+1:length(normal_index)
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{normal_index(rand_normal(i)),1},'.pgm']);
fc = randi([1024/2-round(0.2*1024) 1024/2],1,2);
r = randi([5 round(1024/6)],1,1);
X = fc(1);
Y = fc(2);
N_Image = Image(Y-r:Y+r,X-r:X+r);
imwrite(N_Image,
[infoDB{normal_index(rand_normal(i)),1},'_',num2str(i),'Norma
l.pgm']);
end
%%
% guardando los tumores (train)
for i=1:N
if ~isnan(infoDB{tumor_index(rand_tumor(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{tumor_index(rand_tumor(i)),1},'.pgm']);
X = infoDB{tumor_index(rand_tumor(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
end
Y = infoDB{tumor_index(rand_tumor(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{tumor_index(rand_tumor(i)),7};
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
ANEXOS 58
imwrite(N_Image,
[infoDB{tumor_index(rand_tumor(i)),1},'_',num2str(i),'Tumor.p
gm']);
else
disp(['Imagen---'
infoDB{tumor_index(rand_tumor(i)),1}])
end
end
%% guardando el test de los tumores
for i=N+1:length(tumor_index)
if ~isnan(infoDB{tumor_index(rand_tumor(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{tumor_index(rand_tumor(i)),1},'.pgm']);
X = infoDB{tumor_index(rand_tumor(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
end
Y = infoDB{tumor_index(rand_tumor(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{tumor_index(rand_tumor(i)),7};
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
imwrite(N_Image,
[infoDB{tumor_index(rand_tumor(i)),1},'_',num2str(i),'Tumor.p
gm']);
else
disp(['Imagen---'
infoDB{tumor_index(rand_tumor(i)),1}])
end
end
ANEXOS 59
Anexo III Código del programa para extraer las regiones de interés y conformar la
base de datos de 3 clases
% crear dataset variante 2 (malign vs benign vs normal)
normal_index = [];
normal_cont = 1;
malign_index = [];
malign_cont = 1;
benign_index = [];
benign_cont = 1;
infoDB = infoMiniMias; % cargar archivo que contenga el
info.txt perteneciente a la DB
%%
for i=1:length(infoDB)
if strcmp(infoDB{i,3},'NORM')
normal_index(normal_cont) = i;
normal_cont = normal_cont+1;
elseif strcmp(infoDB{i,4},'M')
malign_index(malign_cont) = i;
malign_cont = malign_cont+1;
elseif strcmp(infoDB{i,4},'B')
benign_index(benign_cont) = i;
benign_cont = benign_cont+1;
end
end
%%
% La composición de la base de datos será 70% para entrenar y
30% para clasificar. En el caso de los datos de entrenamiento
se desea que sean balanceados. Por tanto, se selecciona el
70% del de menor cantidad, en este caso se cuenta con 54 ROI
malignas, 69 benignas y 207 normales. Se seleccionarán
round(0.7*min([length(normal_index) length(tumor_index)]))de
cada tipo para el entrenamiento.
rand_benign = randperm(length(benign_index));
rand_malign = randperm(length(malign_index));
rand_normal = randperm(length(normal_index));
N = round(0.7*min([length(normal_index) length(malign_index)
length(benign_index)]));
%% creando el train de las normal
for i=1:N
ANEXOS 60
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{normal_index(rand_normal(i)),1},'.pgm']);
fc = randi([1024/2-round(0.2*1024) 1024/2],1,2);
r = randi([5 round(1024/5)],1,1);
X = fc(1);
Y = fc(2);
N_Image = Image(Y-r:Y+r,X-r:X+r);
imwrite(N_Image,
[infoDB{normal_index(rand_normal(i)),1},'_',num2str(i),'Norma
l.pgm']);
end
%% creando el test de las normal
for i = N+1:length(normal_index)
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{normal_index(rand_normal(i)),1},'.pgm']);
fc = randi([1024/2-round(0.2*1024) 1024/2],1,2);
r = randi([5 round(1024/5)],1,1);
X = fc(1);
Y = fc(2);
N_Image = Image(Y-r:Y+r,X-r:X+r);
imwrite(N_Image,
[infoDB{normal_index(rand_normal(i)),1},'_',num2str(i),'Norma
l.pgm']);
end
%% creando el train de las malignas
for i=1:N
if ~isnan(infoDB{malign_index(rand_malign(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{malign_index(rand_malign(i)),1},'.pgm']);
X = infoDB{malign_index(rand_malign(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
end
Y = infoDB{malign_index(rand_malign(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{malign_index(rand_malign(i)),7};
ANEXOS 61
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
imwrite(N_Image,
[infoDB{malign_index(rand_malign(i)),1},'_',num2str(i),'Tumor
.pgm']);
else
disp(['Imagen---'
infoDB{malign_index(rand_malign(i)),1}])
end
end
%% creando el test de las malignas
for i=N+1:length(malign_index)
if ~isnan(infoDB{malign_index(rand_malign(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{malign_index(rand_malign(i)),1},'.pgm']);
X = infoDB{malign_index(rand_malign(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
end
Y = infoDB{malign_index(rand_malign(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{malign_index(rand_malign(i)),7};
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
imwrite(N_Image,
[infoDB{malign_index(rand_malign(i)),1},'_',num2str(i),'Tumor
.pgm']);
else
disp(['Imagen---'
infoDB{malign_index(rand_malign(i)),1}])
ANEXOS 62
end
end
%% train benignas
for i=1:N
if ~isnan(infoDB{benign_index(rand_benign(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{benign_index(rand_benign(i)),1},'.pgm']);
X = infoDB{benign_index(rand_benign(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
end
Y = infoDB{benign_index(rand_benign(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{benign_index(rand_benign(i)),7};
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
imwrite(N_Image,
[infoDB{benign_index(rand_benign(i)),1},'_',num2str(i),'Benig
n.pgm']);
else
disp(['Imagen---'
infoDB{benign_index(rand_benign(i)),1}])
end
end
%% test benignas
for i=N+1:length(benign_index)
if ~isnan(infoDB{benign_index(rand_benign(i)),5})
Image = imread(['G:\UCLV\Asignaturas a Impartir\PDI
images\breast cancer\Mini-MiasDS\',
infoDB{benign_index(rand_benign(i)),1},'.pgm']);
X = infoDB{benign_index(rand_benign(i)),5};
Tx = class(X);
switch Tx
case 'char'
X = str2num(X);
ANEXOS 63
end
Y = infoDB{benign_index(rand_benign(i)),6};
Ty = class(Y);
switch Ty
case 'char'
Y = str2num(Y);
end
r = infoDB{benign_index(rand_benign(i)),7};
Tr = class(r);
switch Tr
case 'char'
r = str2num(r);
end
Ny = size(Image,1)-Y;
N_Image = Image(Ny-r:Ny+r,X-r:X+r);
imwrite(N_Image,
[infoDB{benign_index(rand_benign(i)),1},'_',num2str(i),'Benig
n.pgm']);
else
disp(['Imagen---'
infoDB{benign_index(rand_benign(i)),1}])
end
end