El presente trabajo aborda el desafío de la clasificación binaria de imágenes de rayos X de tórax para el diagnóstico asistido por computador de Neumonía versus la condición Normal. La automatización de este diagnóstico es crucial para acelerar la detección de la enfermedad, especialmente en entornos con recursos médicos limitados.
El análisis se basa en un conjunto de datos desequilibrado, lo que impone un reto significativo en el desarrollo de modelos de Inteligencia Artificial (IA), ya que el sesgo inherente en la distribución de clases puede llevar a un rendimiento discriminativo pobre.
Para mitigar este riesgo y evaluar la efectividad de distintas estrategias de representación, la metodología se centra en dos enfoques principales:
Se emplearon múltiples técnicas para transformar los datos de píxeles en vectores de características robustas:
Se evaluaron dos grupos de modelos:
| Grupo | Modelos | Descriptor(es) de Entrada |
|---|---|---|
| A | Red Neuronal Personalizada (Rx_Custom_Classifier) | Píxeles sin procesar (256x256 aplanados) |
| B | Red Neuronal, SVM, k-NN, Random Forest | ResNet50 y Descriptores Clásicos Combinados |
El conjunto de datos está estructurado en tres particiones principales: entrenamiento (train), prueba (test) y validación (val). Dentro de estas particiones, las imágenes se distribuyen en subcarpetas que corresponden a las dos categorías de clasificación: Neumonía y Normal.
El dataset completo comprende un total de 5,863 imágenes de rayos X en formato JPEG, distribuidas en las mencionadas dos clases de diagnóstico.
| Figura 1: Rayos X Normal | Figura 2: Rayos X con Neumonía |
|---|---|
La composición de las carpetas revela un desbalance de clases significativo entre las categorías de Neumonía y Normal, especialmente en los conjuntos de entrenamiento y prueba.
Mientras que el conjunto de validación (val) mantiene un balance perfecto (8 imágenes por clase), la distribución desigual en los conjuntos de entrenamiento y prueba es un factor crítico a considerar. Este desbalance de datos puede sesgar el modelo de IA, haciendo que prediga la clase mayoritaria con más frecuencia.
Además de la distribución de clases, se observa que las imágenes presentan dimensiones variables (diferentes alturas y anchos), lo cual se detalla en la Figura 4.El tamaño no uniforme de las imágenes requiere un paso de preprocesamiento esencial. Será necesario redimensionar (o resize) todas las imágenes a un formato y tamaño estándar(512x512) antes de que puedan ser ingresadas como input al analisis.
Antes de poder ultilizar un modelo predictivo que nos permita clasificar imagenes, necesitamos encasular las propiedades geométricas, texturales y de intensidad de la imagen. Para ello utilizamos varios descriptores.
La ResNet50 (Red Residual con 50 capas) es una arquitectura de Red Neuronal Convolucional (CNN) profunda que se utiliza no solo para la clasificación de imágenes, sino también como un potente extractor de características (feature extractor).
Cuando se emplea como detector o extractor de características, la ResNet50 transforma los datos crudos de una imagen (píxeles) en un vector numérico denso y de alta dimensión. Este vector, conocido como descriptor de características, representa una “huella digital” abstracta de la imagen que es robusta a variaciones como la escala, la rotación y la iluminación.
Funcionamiento 1. Bloques Convolucionales: Las primeras capas convolucionales detectan patrones básicos (bordes, texturas).
3 Extracción del Descriptor: Para la extracción de características, se elimina la capa de clasificación final (Softmax). La salida de la capa Global Average Pooling (GAP) inmediatamente anterior se utiliza como el descriptor. En ResNet50, esto resulta típicamente en un vector de 2048 elementos, que es la representación de las características detectadas.
El Histograma de Gradientes Orientados (HOG) es un descriptor de características local que representa la forma y apariencia de un objeto a través de la distribución de las magnitudes y orientaciones de los gradientes de intensidad en una imagen. Este enfoque es robusto a los cambios de iluminación y se utiliza para generar un vector característico que alimenta un clasificador.
Optimización y Análisis Para la implementación, es esencial la experimentación y optimización de los hiperparámetros clave, que son:
Tamaño de Celda (Cell Size): Define la granularidad de la representación del borde, afectando la longitud y el detalle del descriptor.
Bins de Orientación (Orientation Bins): Determina la resolución angular con la que se cuantifican los gradientes.
Finalmente, la visualización del descriptor HOG es una herramienta crucial para la validación cualitativa. Permite inspeccionar si la representación generada captura efectivamente los contornos y estructuras relevantes de las imágenes (las anomalías radiológicas en este caso), guiando así el ajuste óptimo de los parámetros.
Los Momentos de Hu son un descriptor de forma utilizado para el reconocimiento de objetos en visión por computador. Se basan en el cálculo de siete valores invariantes que se derivan de los momentos centrales de orden hasta tres de una imagen.
Invarianzas Provistas El atributo más importante de los Momentos de Hu es su invarianza geométrica. Esto significa que los siete descriptores numéricos calculados permanecen constantes a pesar de las transformaciones comunes que pueda sufrir la imagen. Las invarianzas que proveen son:
Traslación: El objeto es movido a cualquier posición de la imagen.
Escala: El objeto es agrandado o reducido de tamaño.
Rotación: El objeto es girado en cualquier ángulo.
Esta robustez hace que los Momentos de Hu sean ideales para la identificación y comparación de formas, contornos o regiones de interés, independientemente de cómo aparezcan en el campo de visión.
Los Descriptores de Contorno son un conjunto de métricas simples y efectivas utilizadas para caracterizar la forma geométrica de una región específica dentro de una imagen. Estos descriptores se basan en mediciones directas obtenidas del perímetro del objeto.
1. Parámetros Clave
Los parámetros primarios que se extraen y se utilizan como características para el análisis son:
2. Requisito de Segmentación Previa
A diferencia de los descriptores locales como HOG, los descriptores de contorno son globales y requieren una segmentación previa de la imagen. Esto significa que la anatomía o región de interés relevante (por ejemplo, el área del pulmón o una lesión específica) debe ser aislada y etiquetada de manera precisa antes de que se puedan calcular el área, el perímetro y otras métricas.
Local Binary Patterns (LBP) es un descriptor de textura eficiente y potente utilizado para la clasificación y reconocimiento de imágenes. Su objetivo es caracterizar la micro-textura de una imagen mediante la comparación de la intensidad de un píxel central con la intensidad de sus vecinos.
Funcionamiento y Salida
Cálculo del Patrón: Para cada píxel en la imagen, se le asigna un valor binario (0 o 1) a sus vecinos directos: si la intensidad del vecino es mayor o igual que la del píxel central, se le asigna un 1; si es menor, se le asigna un 0.
Generación del Código LBP: Los valores binarios de los vecinos se concatenan en orden (por ejemplo, en sentido horario), formando un número binario que se convierte a decimal, el cual es el patrón LBP de ese píxel.
Histograma de Patrones: El descriptor final de la imagen es el histograma de frecuencias de todos los patrones LBP generados en la imagen. Este histograma representa la distribución de las texturas de la imagen.
Implementación y Experimentación
La implementación puede realizarse desde cero o de manera más eficiente utilizando bibliotecas optimizadas como skimage en Python. Es crucial experimentar con dos parámetros clave para adaptar el descriptor a la textura específica de las radiografías:
Radio (\(R\)): Define la distancia entre el píxel central y sus vecinos.
Puntos (\(P\)): Determina el número de vecinos circulares muestreados en ese radio.
Ajustar estos parámetros permite capturar texturas en diferentes escalas.
La Matriz de Co-ocurrencia de Nivel de Gris (GLCM) es un método estadístico de segundo orden para describir la textura de una imagen. Analiza cómo las intensidades de los píxeles (niveles de gris) se relacionan entre sí dentro de un área específica.
Funcionamiento y Propiedades
La matriz GLCM se construye registrando la frecuencia con la que un píxel de cierto nivel de gris (\(i\)) aparece en una posición específica (definida por una dirección y distancia) con respecto a otro píxel de nivel de gris (\(j\)).
A partir de esta matriz, se extraen varias propiedades estadísticas para cuantificar la textura. Las más comunes que se deben calcular son:
Contraste: Mide la intensidad de las variaciones locales y el contenido de rasgos. Un valor alto indica una textura áspera o de alto contraste.
Correlación: Mide la dependencia lineal de los niveles de gris de los píxeles vecinos. Un valor alto indica una textura suave o linealmente dependiente.
Energía (Uniformidad): Mide la suma de los elementos al cuadrado de la GLCM, indicando la uniformidad de la textura. Un valor alto sugiere que la textura es muy uniforme.
Homogeneidad (IDM): Mide la cercanía de los elementos distribuidos a la diagonal de la matriz, indicando la cercanía de los niveles de gris. Un valor alto indica una textura suave o homogénea.
Experimentación
Para obtener un descriptor robusto, es necesario experimentar con diferentes direcciones y distancias (\(\mathbf{d}\)) (por ejemplo, ángulos de \(0^\circ\), \(45^\circ\), \(90^\circ\) y distancias de 1, 2, 3 píxeles). Esto garantiza que el descriptor capture las relaciones de textura en múltiples orientaciones y escalas espaciales.
Los Filtros de Gabor son filtros lineales que se utilizan para el análisis de texturas y la extracción de características, siendo especialmente efectivos porque simulan el comportamiento de las células simples de la corteza visual de los mamíferos. Un filtro de Gabor es, esencialmente, una onda sinusoidal modulada por una función gaussiana.
Banco de Filtros y Salida
La potencia de Gabor reside en su implementación como un banco de filtros , donde cada filtro en el banco está sintonizado a una frecuencia y orientación específicas. Al aplicar este banco a una imagen, cada filtro responde de manera máxima a texturas con esa orientación y escala particular.
El descriptor final de la textura no es la imagen filtrada en sí, sino las estadísticas de respuesta de todas las imágenes filtradas. Las estadísticas más comunes utilizadas son:
Media (\(\mu\)): Mide el brillo promedio de la respuesta del filtro (la energía de la textura en esa frecuencia y orientación).
Desviación Estándar (\(\sigma\)): Mide la variación en la respuesta del filtro, indicando la complejidad o variabilidad de la textura.
La concatenación de la media y la desviación estándar de la respuesta de cada filtro en el banco crea un vector descriptor robusto y multiescala de la textura de la imagen.
Como se muestra en la figura 6, la matriz de confusión evidencia el
desempeño del modelo, la red neuronal, al momento de clasificar las
radiografías de pacientes normales y de pacientes con neumonía.
Verdaderos Positivos (TP = 386): La red identifica correctamente la mayoría de los casos con neumonía. Esto evidencia una alta sensibilidad o capacidad para detectar anomalías, lo cual es deseable en sistemas donde es crítico no pasar por alto la enfermedad.
Falsos Negativos (FN = 4): Solo 4 casos con neumonía fueron clasificados como normales. Un número tan bajo confirma que el modelo rara vez deja pasar un caso con la enfermedad sin detectarlo, lo que es fundamental en aplicaciones médicas.
Verdaderos Negativos (TN = 42): Apenas 42 casos normales fueron correctamente clasificados. Esto muestra que el modelo tiene dificultades para reconocer el estado normal.
Falsos Positivos (FP = 192): El modelo clasifica erróneamente un número elevado de imágenes normales como casos con neumonía. Esto refleja una baja precisión para la clase normal y un posible sesgo hacia la predicción de la enfermedad. En términos prácticos, esto podría traducirse en un aumento de alarmas falsas.
| Métrica | Train | Validation |
|---|---|---|
| Accuracy | 0.2862 | 0.3798 |
| AUC | 0.4949 | 0.5060 |
| Loss | 0.6910 | 0.6904 |
| Precision | 0.7088 | 1.0000 |
| Recall | 0.0666 | 0.0077 |
Al observar las anteriores métricas obtenidas durante el entrenamiento y la validación del modelo, se evidencia un desempeño limitado en la tarea de clasificación. En general, los resultados indican que la red neuronal no logra aprender patrones significativos que le permitan diferenciar adecuadamente entre las clases evaluadas.
En primer lugar, la exactitud (accuracy) presenta valores bajos tanto en entrenamiento (0.2862) como en validación (0.3798), lo cual sugiere que las predicciones del modelo están próximas al comportamiento aleatorio. Este comportamiento se refuerza con los valores del área bajo la curva ROC (AUC), que se sitúan alrededor de 0.49 y 0.50 para entrenamiento y validación respectivamente, cifras prácticamente equivalentes a un clasificador sin capacidad discriminativa.
La función de pérdida (loss) muestra valores muy similares entre las dos fases (0.6910 en entrenamiento y 0.6904 en validación). Aunque esto indica que el modelo no está sobreajustando, también muestra que no se está produciendo un aprendizaje significativo, ya que el error permanece en un nivel cercano al esperado para predicciones aleatorias en un problema de clasificación binaria.
En cuanto a las métricas de precisión y sensibilidad (recall), se observa un comportamiento desequilibrado. La precisión es relativamente alta en entrenamiento (0.7088) y alcanza un valor máximo en validación (1.0000). No obstante, esta aparente fortaleza es engañosa, ya que los valores de sensibilidad son extremadamente bajos (0.0666 en entrenamiento y 0.0077 en validación). Esto significa que el modelo predice muy pocos casos positivos y, cuando lo hace, coincide de manera correcta; sin embargo, prácticamente nunca identifica la clase positiva, lo que compromete seriamente su utilidad en aplicaciones donde es fundamental detectar dicha condición.
Para esta etapa se empleó la red neuronal previamente descrita junto con otros modelos de clasificación tradicionales, específicamente SVM, KNN y Random Forest. Cada modelo utiliza un enfoque particular para la toma de decisiones: SVM (Support Vector Machine) busca identificar el hiperplano óptimo que separa las clases, maximizando el margen entre ellas; KNN (K-Nearest Neighbors) asigna la clase a una nueva muestra según la mayoría de sus vecinos más cercanos en el espacio de características; y Random Forest combina múltiples árboles de decisión construidos de manera aleatoria, lo que incrementa la robustez del modelo y disminuye el riesgo de sobreajuste. Para todos los modelos, incluida la red neuronal, el entrenamiento se llevó a cabo utilizando descriptores de características extraídos mediante ResNet50, aprovechando su capacidad para generar representaciones profundas y altamente discriminativas de las imágenes.
| Modelo | Accuracy | Precision (Normal) | Recall (Normal) | F1-Score (Normal) | Precision (Neumonía) | Recall (Neumonía) | F1-Score (Neumonía) | Loss | AUC |
|---|---|---|---|---|---|---|---|---|---|
| Red Neuronal | 0.89 | 0.98 | 0.71 | 0.82 | 0.85 | 0.99 | 0.92 | - | - |
| SVM | 0.79 | 0.97 | 0.46 | 0.63 | 0.75 | 0.99 | 0.86 | - | - |
| KNN | 0.82 | 0.97 | 0.54 | 0.69 | 0.78 | 0.99 | 0.87 | - | - |
| Random Forest | 0.76 | 0.97 | 0.38 | 0.55 | 0.73 | 0.99 | 0.84 | - | - |
Al comparar los modelos utilizados, se observa que que la Red Neuronal (RN) es el modelo de mejor desempeño global, superando consistentemente a los enfoques tradicionales (SVM, KNN y Random Forest). Los modelos tradicionales demuestran una alta sensibilidad con un Recall de Neumonía casi perfecto (\(\ge 0.99\)), lo que es fundamental para evitar diagnósticos omitidos (Falsos Negativos). Sin embargo, esta alta sensibilidad se logra a expensas de la especificidad, como lo evidencia su bajo Recall para la clase Normal (rangos de \(0.38\) a \(0.54\)), indicando una tendencia a sobre-detectar la Neumonía y generar una alta tasa de Falsos Positivos. En contraste, la Red Neuronal no solo iguala la alta sensibilidad para la clase Neumonía (Recall de \(0.99\)), sino que también mejora significativamente la discriminación de la clase Normal, logrando un Recall de \(0.71\) y la Precision más alta para ambas clases (Normal: \(0.98\), Neumonía: \(0.85\)). Por lo tanto, con una Accuracy del 0.89 y los mejores F1-Scores en ambas categorías (Normal: \(0.82\), Neumonía: \(0.92\)), la Red Neuronal ofrece el mejor equilibrio entre sensibilidad y especificidad, constituyéndose como el clasificador más robusto y confiable para su aplicación en un entorno de apoyo al diagnóstico médico.
|
|
|
|
|
|
La red neuronal predice correctamente 385 de 390 casos de Neumonía (recall muy alto para la clase positiva) y predice 171 de 234 casos de Normal, fallando en 63, lo que indica que a veces clasifica falsos positivos. La red neuronal es muy buena detectando Neumonía, pero menos precisa para la clase Normal. Tiene un alto recall y precisión para la clase positiva, lo que es importante para detección médica.
SVM clasifica 387 de 390 casos de Neumonía correctamente, similar a la red neuronal, y solo 106 de 234 casos de Normal son predichos correctamente, con 126 falsos negativos para Normal.El SVM detecta muy bien Neumonía pero falla mucho en clasificar Normal. Tiende a sobre-detectar la clase positiva.
KNN correctamente identifica 386 de 390 casos de Neumonía. E identifica 126 de 234 casos de Normal, con 108 falsos positivos para Neumonía. El desempeño intermedio; detecta bien Neumonía pero tiene falsos positivos moderados para Normal.
Random Forest detecta 387 de 390 casos de Neumonía correctamente y solo 90 de 234 casos de Normal son predichos correctamente, con 144 falsos positivos, muy sensible a Neumonía, pero clasifica pocos Normal correctamente. Esto indica un sesgo hacia la clase positiva.
En conclusión, todos los modelos demuestran una excelente capacidad para detectar Neumonía (clase positiva), manteniendo un recall consistentemente cercano a 1. Las diferencias principales se observan en la clase Normal: la Red Neuronal y KNN ofrecen un mejor desempeño en la clasificación correcta de casos Normales que SVM y Random Forest. Esto indica que los modelos tradicionales tienden a sobrerreaccionar hacia la clase positiva, mientras que la red neuronal logra un balance algo mejor. En el contexto de aplicaciones médicas, maximizar la detección de Neumonía es crítico, por lo que todos los modelos son efectivos, aunque la red neuronal se destaca al ofrecer un equilibrio más confiable entre precisión y recall.
Local Binary Patterns (LBP)
| Modelo | Accuracy | Precision (Normal) | Recall (Normal) | F1-Score (Normal) | Precision (Neumonía) | Recall (Neumonía) | F1-Score (Neumonía) |
|---|---|---|---|---|---|---|---|
| Red Neuronal | 0.78 | 0.73 | 0.66 | 0.69 | 0.81 | 0.85 | 0.83 |
| SVM | 0.68 | 0.85 | 0.17 | 0.28 | 0.66 | 0.98 | 0.79 |
| KNN | 0.76 | 0.88 | 0.42 | 0.57 | 0.74 | 0.97 | 0.84 |
| Random Forest | 0.75 | 0.89 | 0.39 | 0.54 | 0.73 | 0.97 | 0.83 |
*Detección de Neumonía (\(\text{Recall}\) Neumonía): Los modelos SVM, KNN y Random Forest alcanzan un Recall casi perfecto (\(\ge 0.97\)), demostrando una altísima sensibilidad para detectar la enfermedad (clase positiva).
*Identificación de Normalidad (\(\text{Recall}\) Normal): La Red Neuronal tiene el Recall más alto para la clase Normal (0.66), lo que significa que comete significativamente menos Falsos Positivos que sus contrapartes tradicionales.
|
|
|
|
|
|
De las matrices anteriores se muestra que:
Red Neuronal (RN): Es el modelo más equilibrado. Muestra una alta capacidad de detección de Neumonía (\(\text{Recall} \approx 83.8\%\)) y, crucialmente, minimiza el sobre-diagnóstico, generando solo 74 Falsos Positivos y teniendo el mejor \(\text{Recall}\) para la clase Normal (\(\approx 68.4\%\)).
SVM: Es el modelo con mayor sesgo hacia la clase positiva. Logra una sensibilidad casi perfecta (\(\text{Recall} \approx 98.2\%\)), pero a costa de una especificidad muy baja (\(\text{Recall}\) Normal \(\approx 16.7\%\)). Esto se traduce en un número excesivo de 195 Falsos Positivos.
KNN: Exhibe un rendimiento intermedio. Mantiene una alta sensibilidad (\(\text{Recall} \approx 96.7\%\)) pero su capacidad para clasificar pacientes Normales es pobre (\(\text{Recall}\) Normal \(\approx 42.3\%\)), resultando en 135 Falsos Positivos.
Random Forest (RF): Similar al KNN, muestra una alta sensibilidad (\(\text{Recall} \approx 97.2\%\)) pero una especificidad muy baja, con el Recall Normal más bajo de los modelos tradicionales (\(\approx 38.9\%\)). Esto genera 143 Falsos Positivos.
Implementacion pipelene con varioas descrptores
Para el entrenamiento de los modelos de machine learning tradicionales (SVM, Random Forest, y k-NN), se implementó un pipeline robusto de extracción de características clásicas que combinó seis descriptores para formar el vector de features por imagen. Para capturar la geometría, se utilizaron Descriptores de Forma, incluyendo HOG para estructuras generales, los siete Momentos de Hu (invariantes a transformaciones geométricas) y Descriptores de Contorno (Área, Perímetro, Circularidad y Excentricidad). Simultáneamente, para caracterizar la heterogeneidad del tejido pulmonar, se emplearon Descriptores de Textura: LBP para patrones locales, la GLCM para extraer propiedades estadísticas como Contraste y Energía, y Filtros de Gabor para analizar la respuesta de la imagen a diferentes orientaciones y frecuencias. La concatenación de estos seis métodos asegura una representación rica y completa de cada imagen de rayos X para la posterior clasificación.
| Modelo | Accuracy | Precision | Recall | F1-Score | AUC |
|---|---|---|---|---|---|
| SVM | 0.7580 | 0.8180 | 0.7580 | 0.7218 | 0.9168 |
| Random Forest | 0.7452 | 0.7929 | 0.7452 | 0.7080 | 0.8242 |
| k-NN | 0.7484 | 0.7627 | 0.7484 | 0.7250 | 0.7779 |
El Ganador: Support Vector Machine (SVM) El SVM demostró ser el modelo más robusto, alcanzando un AUC de 0.9168.
Análisis: Aunque el Accuracy es similar al de los otros modelos (~75%), el AUC superior indica que el SVM tiene una capacidad mucho mayor para distinguir entre clases (“Normal” vs “Neumonía”) a través de diferentes umbrales de decisión.
Por qué funcionó mejor: Los SVM con kernel RBF son matemáticamente excelentes manejando espacios de alta dimensionalidad (3,812 features en este caso). El algoritmo logra encontrar el hiperplano óptimo que maximiza el margen entre las clases, siendo menos sensible al ruido que k-NN.
El Desafío de k-NN (La “Maldición de la Dimensionalidad”) El modelo k-Nearest Neighbors obtuvo el desempeño más bajo en AUC (0.7779).
Causa: k-NN basa sus decisiones en distancias euclidianas. Al tener un vector de características tan grande (3,812 dimensiones), todas las imágenes tienden a “parecerse” matemáticamente, haciendo que las distancias pierdan significado discriminatorio. Este fenómeno es conocido en literatura como la Curse of Dimensionality.
Random Forest El Random Forest tuvo un desempeño intermedio (AUC 0.8242).
Observación: Aunque es un modelo potente, es probable que la gran cantidad de características irrelevantes o redundantes (ruido) generadas por la concatenación masiva de descriptores haya dificultado que los árboles de decisión encuentren las divisiones óptimas sin una selección de características previa (Feature Selection).
El enfoque más efectivo para la clasificación de neumonía en este dataset fue la combinación de extracción de características profundas utilizando ResNet50 seguida por la clasificación mediante una Red Neuronal Densa (FCN). Esta arquitectura no solo maximizó la capacidad de detección de la enfermedad (Sensibilidad \(\ge 0.99\)) sino que también ofreció el mejor rendimiento en la identificación de casos normales (Especificidad \(0.71\)), proporcionando el equilibrio más confiable entre la minimización de Falsos Negativos y Falsos Positivos en un contexto de apoyo al diagnóstico médico.
Dónde pegar: Después de la frase: “La automatización de este diagnóstico es crucial para acelerar la detección de la enfermedad, especialmente en entornos con recursos médicos limitados.”
Dutta, P. K., Chowdhury, A., Bhattacharyya, A., Chakraborty, S., & Dey, S. (2025). Deep learning-based pneumonia detection from chest X-ray images. arXiv. https://arxiv.org/abs/2510.00035
Dónde pegar: Al final de la sección, justo después de describir el proceso de extracción de características.
He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image recognition. En Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 770-778). IEEE.
Dónde pegar: Después de explicar la optimización y el análisis del algoritmo HOG.
Dalal, N., & Triggs, B. (2005). Histograms of oriented gradients for human detection. En IEEE Computer Society Conference on Computer Vision and Pattern Recognition (Vol. 1, pp. 886-893). IEEE. https://doi.org/10.1109/CVPR.2005.177
Dónde pegar: Al final de la explicación sobre las invarianzas (rotación, escala, traslación).
Hu, M. K. (1962). Visual pattern recognition by moment invariants. IRE Transactions on Information Theory, 8(2), 179-187. https://doi.org/10.1109/TIT.1962.1057692
Dónde pegar: Al final de la sección de implementación y experimentación de LBP.
Ojala, T., Pietikäinen, M., & Mäenpää, T. (2002). Multiresolution gray-scale and rotation invariant texture classification with local binary patterns. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(7), 971-987. https://doi.org/10.1109/TPAMI.2002.1017623
Dónde pegar: Después de explicar las propiedades estadísticas (contraste, correlación, energía, etc.).
Haralick, R. M., Shanmugam, K., & Dinstein, I. (1973). Textural features for image classification. IEEE Transactions on Systems, Man, and Cybernetics, SMC-3(6), 610-621. https://doi.org/10.1109/TSMC.1973.4309314
Dónde pegar: Al final de la descripción del banco de filtros.
Jain, A. K., & Farrokhnia, F. (1991). Unsupervised texture segmentation using Gabor filters. Pattern Recognition, 24(12), 1167-1186. https://doi.org/10.1016/0031-3203(91)90143-S
Dalal, N., & Triggs, B. (2005). Histograms of oriented gradients for human detection. En IEEE Computer Society Conference on Computer Vision and Pattern Recognition (Vol. 1, pp. 886-893). IEEE. https://doi.org/10.1109/CVPR.2005.177
Dutta, P. K., Chowdhury, A., Bhattacharyya, A., Chakraborty, S., & Dey, S. (2025). Deep learning-based pneumonia detection from chest X-ray images. arXiv. https://arxiv.org/abs/2510.00035
Haralick, R. M., Shanmugam, K., & Dinstein, I. (1973). Textural features for image classification. IEEE Transactions on Systems, Man, and Cybernetics, SMC-3(6), 610-621. https://doi.org/10.1109/TSMC.1973.4309314
He, K., Zhang, X., Ren, S., & Sun, J. (2016). Deep residual learning for image recognition. En Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 770-778). IEEE.
Hu, M. K. (1962). Visual pattern recognition by moment invariants. IRE Transactions on Information Theory, 8(2), 179-187. https://doi.org/10.1109/TIT.1962.1057692
Jain, A. K., & Farrokhnia, F. (1991). Unsupervised texture segmentation using Gabor filters. Pattern Recognition, 24(12), 1167-1186. https://doi.org/10.1016/0031-3203(91)90143-S
Ojala, T., Pietikäinen, M., & Mäenpää, T. (2002). Multiresolution gray-scale and rotation invariant texture classification with local binary patterns. IEEE Transactions on Pattern Analysis and Machine Intelligence, 24(7), 971-987. https://doi.org/10.1109/TPAMI.2002.1017623
Laura Camila Agudelo Ospina: Fundamentos y EDA
Se encargaría de establecer el contexto del proyecto y analizar la base de datos. * Sección Principal: Introducción y Análisis Exploratorio. * Tareas Específicas: * Redacción de la Introducción (Contexto, Objetivo). * Análisis del conjunto de datos: estructura, particiones, desbalance de clases y el requisito de redimensionamiento de imágenes. * Generación o verificación de las figuras de composición del dataset y tamaño de imágenes.
Johan Sebastian Cano Garcia: Descriptores de Forma y Profundos (ResNet50)
Se centraría en los descriptores que capturan la geometría, la forma y las características de alto nivel. * Sección Principal: Parte de Descriptores (Métodos de Forma y Profundos). * Tareas Específicas: * Desarrollo e implementación del descriptor ResNet50 (como extractor de características). * Desarrollo e implementación de los Momentos de Hu. * Desarrollo e implementación del Histogram of Oriented Gradients (HOG). * Desarrollo e implementación de los Descriptores de Contorno.
Alejandro Esteban Munoz Osorio: Descriptores de Textura
Se enfocaría en los descriptores que miden la micro-estructura y heterogeneidad de las imágenes radiológicas. * Sección Principal: Parte de Descriptores (Métodos de Textura). * Tareas Específicas: * Desarrollo e implementación de los Local Binary Patterns (LBP), incluyendo la experimentación con parámetros (\(R, P\)). * Desarrollo e implementación de la Gray Level Co-occurrence Matrix (GLCM), incluyendo la extracción de propiedades (Contraste, Correlación, Energía, etc.). * Desarrollo e implementación de los Filtros de Gabor y el banco de filtros. * Implementación del Pipeline Combinado de descriptores (concatenación de los descriptores de P2 y P3).
Brayan Armando Cumbalaza Vallejo: Clasificación y Conclusiones
Se concentraría en la fase de modelado, la comparación de resultados y el cierre del trabajo. * Sección Principal: Clasificación, Metodología y Conclusiones. * Tareas Específicas: * Desarrollo y entrenamiento de la Red Neuronal personalizada (sobre píxeles crudos). * Entrenamiento de todos los modelos (RN, SVM, k-NN, Random Forest) utilizando los descriptores generados por P2 y P3 (ResNet50, LBP y Pipeline Combinado). * Análisis y comparación de las métricas de desempeño (Accuracy, Recall, AUC). * Redacción detallada de la Metodología (el cómo se hizo el trabajo completo). * Redacción de las Conclusiones, destacando el modelo ganador (RN con ResNet50) y los insights (Maldición de la Dimensionalidad, sesgo).