• No se han encontrado resultados

Análisis de imágenes para el diagnóstico temprano de la leucocoria

N/A
N/A
Protected

Academic year: 2020

Share "Análisis de imágenes para el diagnóstico temprano de la leucocoria"

Copied!
46
0
0

Texto completo

(1)

Trabajo Final

Ingeniería de Sistemas

Facultad de Cs. Exactas – UNICEN

Análisis de imágenes para el

diagnóstico temprano de la

leucocoria

David Figueroa

Tupac Palomeque

(2)

Resumen

En los últimos años a raíz de un aumento notable en el uso de teléfonos móviles inteligentes, se ha masificado la cantidad de cámaras disponibles, facilitando la disponibilidad y la posibilidad de adquirirlas, impulsando el uso de las mismas en diversos contextos cotidianos.

(3)

Índice general

1 Introducción ... 5

1.1 Objetivos ... 6

1.2 Organización del trabajo ... 7

2 Antecedentes ... 8

2.1 Introducción a la problemática ... 8

2.2 El uso de las herramientas informáticas para la asistencia médica ... 8

2.3 Importancia de la accesibilidad a este tipo de aplicaciones ... 9

2.4 Problemática particular del retinoblastoma ... 11

Retinoblastoma intraocular ... 12

Retinoblastoma extraocular (metastásico) ... 13

2.5 Tratamiento del retinoblastoma ... 14

Cirugía (enucleación) ... 14

Radioterapia ... 14

Crioterapia ... 15

Termoterapia ... 15

Quimioterapia ... 15

Quimioterapia de dosis altas con rescate de células madre ... 16

Estadificación del retinoblastoma ... 17

3 Algoritmos de procesamiento de imágenes para la detección de objetos y análisis colorimétrico.. 18

3.1 Detección facial y ocular ... 18

3.2 Detección de pupilas ... 21

3.3 Clasificación de objetos por color ... 21

4. Propuesta de solución ... 23

4.1 Introducción ... 23

4.2 Arquitectura de la solución ... 23

4.3 Algoritmo de cuantificación del Retinoblastoma ... 25

4.3.1 Detección del retinoblastoma a partir de las concentraciones de color. ... 26

4.4 Proceso para la marcación y discriminación de casos ... 28

4.5 Implementación del proceso de clasificación ... 31

API desarrollada ... 32

Aplicación Móvil ... 32

(4)

5.1 Estudio de la detección del rostro, ojos y pupila ... 34

Clasificación de rostros ... 34

Clasificación de ojos ... 35

Clasificación de pupilas ... 35

5.2 Estudio de la concentración de colores ... 35

5.3 Estudio de criterios para la clasificación automática ... 39

5.4 Resumen/Discusión... 41

6 Conclusiones ... 43

(5)

Índice de figuras

Figura 1: Aplicación FOTOSKIN. ... 10

Figura 2: Aplicación Early Detection Plan. ... 11

Figura 3: Aspecto fundoscópico del retinoblastoma. ... 12

Figura 4: Leucocoria indicando la presencia de tumor. ... 12

Figura 5: Aspecto del retinoblastoma trilateral a la Resonancia Magnética Nuclear. ... 13

Figura 6: Radioterapia con placa... 15

Figura 7: Cono de colores del espacio HSV. ... 22

Figura 8: Arquitectura de la solución. ... 24

Figura 9: Aplicación Móvil. ... 25

Figura 10: Muestra de nitidez. ... 26

Figura 11: Estadios de Leucocoria y Xantocoria. ... 27

Figura 12: Aplicación de escritorio. ... 28

Figura 13: Detecciones sobre imagen completa. ... 29

Figura 14: Detecciones en detalle. ... 29

Figura 15: Opciones de la aplicación. ... 30

Figura 16: Selección manual. ... 30

Figura 17: Modelo MVC. ... 31

Figura 18: Diagrama de secuencia simplificado. ... 33

Figura 19: Diagrama de efectividad. ... 34

Figura 20: Gráfico circular de detecciones automáticas en casos negativos. ... 36

Figura 21: Gráfico circular de detecciones automáticas en casos positivos. ... 36

Figura 22: Gráfico circular de detecciones automáticas en casos negativos sin detecciones inválidas. ... 37

Figura 23: Gráfico circular de detecciones automáticas en casos positivos sin detecciones inválidas. ... 37

Figura 24: Gráfico circular de detecciones óptimas en casos negativos. ... 38

Figura 25: Gráfico circular de detecciones óptimas en casos positivos. ... 38

Figura 26: Ejemplos del dataset utilizado. A) Casos negativos. B) Casos Positivos ... 39

Figura 27: Ejemplo de imagen de muy baja calidad. ... 42

(6)

1 Introducción

El retinoblastoma es el tumor primario ocular más frecuente de la edad pediátrica. Su incidencia es de alrededor de 3,5 casos por millón de niños menores de 15 años de edad[1], lo cual arroja un total de un caso cada 15.000 a 20.000 nacidos vivos[2][3]. Si bien representa el 4% del total de los casos de cáncer infantil, por presentarse casi exclusivamente en niños pequeños, ocupa el 11% de los tumores en los menores de 1 año según datos obtenidos en países desarrollados. Las tasas de incidencia obtenidas de datos poblacionales en Europa[4] demuestran que la incidencia del retinoblastoma es de 4 casos por millón de niños entre 0 y 15 años, tasas tan altas como 27 casos por millón han sido reportadas en países en desarrollo, aunque nunca a partir de datos poblacionales a nivel nacional, por lo que su certeza está en discusión[5]. Se han postulado causas ambientales u ocupacionales para explicar este probable aumento en la incidencia en países en desarrollo[6-8], pero no se ha hallado un patrón que la pueda explicar categóricamente. En Argentina, de acuerdo a datos del Registro Oncopediátrico Hospitalario Argentino

(ROHA), su tasa de prevalencia es de 5 por cada millón de niños entre 0 y 15 años, lo cual es comparable con las cifras provenientes de países desarrollados (Moreno, F, comunicación personal, Diciembre 2013). Es importante destacar que el retinoblastoma ocurre en un rango de edades muy estrecho, siendo más del 90% de los niños diagnosticado en los primeros 3 años de vida.

Existen enormes variaciones en la sobrevida del retinoblastoma dependiendo del país donde habite el niño[9]. Mundialmente, se estima que, sobre un total de 8000 niños diagnosticados anualmente, solo 3000 logran curarse. La tasa de sobrevida es mayor del 95% para países desarrollados contra menos de 20% en los países más pobres[9]. En nuestro país, también se ha encontrado una relación entre la sobrevida y el grado de desarrollo humano del área de donde proviene el paciente (ROHA, datos no publicados). A diferencia de otros tumores pediátricos, donde la diferencia en la tasa de curación entre los países desarrollados y los de menor grado de desarrollo está dada por diferencias en los recursos terapéuticos y tecnológicos, en el retinoblastoma, la diferencia la hace el diagnóstico temprano. El retinoblastoma es curable en un alto porcentaje de los casos solamente con la enucleación del ojo afectado, si es diagnosticado a tiempo. No hay requerimientos de mayores recursos tecnológicos.

(7)

Gracias al auge de la fotografía digital de los últimos años, se comenzó a ver con mayor frecuencia que los padres notaban la leucocoria luego de una fotografía con flash donde la misma se la hacía evidente. Estudios reportaron que estos casos (aun siendo un pequeño porcentaje) tenían mejor pronóstico de sobrevida que aquellos en quienes la leucocoria era diagnosticada clínicamente[11].

La propuesta de este trabajo consiste en analizar imágenes digitales de pacientes con retinoblastoma, utilizando métodos basados en el color, y así poder determinar el conjunto de características visibles que hacen a la aparición de la leucocoria. El resultado esperado es la generación de una aplicación de software que pueda ser ejecutada en computadoras personales. La utilización de ésta, junto con otras herramientas potencialmente desarrollables en el futuro, como aquellas que permiten la geolocalización, los accesos a redes de contacto y foros, entre otras; en forma combinada representarán un primer paso para el desarrollo de una plataforma integrada para el diagnóstico temprano y seguimiento del retinoblastoma por medio del análisis digital de fotografías. Este trabajo se encuentra encuadrado en un proyecto de investigación conjunta entre investigadores de esta Universidad y del Instituto Garrahan.

1.1 Objetivos

El objetivo principal de esta tesis es estudiar y proponer algoritmos, que a partir de imágenes capturadas con cámaras comerciales, posibiliten detectar con un cierto grado de certeza la presencia de leucocoria, o también denominado “ojo blanco”. A partir de varias muestras de casos reales a los cuales se les ha detectado leucocoria y tienen diagnóstico de retinoblastoma, primero se intentará detectar la ubicación de los ojos utilizando métodos de detección facial. Las imágenes se clasificarán en función a la proporción del tamaño de los ojos en relación al tamaño de la fotografía, y lo más importante es si han sido tomadas o no con flash. En caso que no se puedan detectar rasgos faciales en la imagen, esta se descartará. Si la cantidad de pixeles que ocupa la pupila son muy pocos, también se descartará la imagen.

A continuación, se trabajará con la zona donde se encuentra ubicado el ojo y se determinará la zona de la pupila, obviando otros elementos como la esclerótica. Por cada pixel de la imagen que se corresponde a la región de la pupila, se realizará un análisis por color que variará de acuerdo a si la imagen ha sido tomada o no con flash.

Para el análisis, se propone extraer la crominancia (Hue) de cada pixel y realizar un análisis de concentración del color. En general, con las fotos tomadas con flash, se considera un ojo “libre” de leucocoria cuando se observa una alta concentración de valores rojos. En otro caso, es necesario clasificar las concentraciones y rangos del color detectado.

Para el caso de las imágenes sin flash, el análisis cambia. En estos casos, el color “normal” de la pupila es negro. Cualquier detección de colores “claros” en la imagen, puede significar un falso positivo (por ejemplo, un reflejo) o un caso de leucocoria. En estos casos, el método es más susceptible a errores, por lo que es necesario realizar un análisis con más precisión. Es preferible descartar la muestra, antes de ofrecer una respuesta errada.

(8)

algoritmos serán utilizados al momento de detectar rasgos faciales, ojos y pupilas, según las características de la imagen.

1.2 Organización del trabajo

Habiendo realizado una breve introducción a la problemática, se continuará con un análisis de los antecedentes y el contexto que llevaron a la realización de este trabajo.

Luego se discutirán la diversidad de algoritmos existentes para cada uno de los pasos necesarios para la clasificación de fotografías, analizando distintas opciones y evaluando sus ventajas y desventajas.

En el capítulo 4 se explicará detalladamente la propuesta de solución para el problema, junto con las decisiones tomadas durante su desarrollo, para luego en el capítulo siguiente poder realizar un análisis exhaustivo de los resultados obtenidos y así definir las restricciones y condiciones necesarias para un uso satisfactorio de la aplicación.

(9)

2 Antecedentes

2.1 Introducción a la problemática

En la actualidad, el constante desarrollo tecnológico conduce a una disminución en los costos de los dispositivos celulares llamados smartphones, haciéndolos accesibles a gran parte de la población mundial. Estos dispositivos proveen gran facilidad a la hora de acceder a información en internet mediante aplicaciones que utilizan la red de datos móviles y también suelen contener cámaras fotográficas.

En relación a las consultas médicas, las personas eligen consultar antes sus dudas por internet, por su propia cuenta.

Aprovechando estas situaciones, en los últimos años han surgido gran cantidad de aplicaciones móviles que ayudan a la prevención, detección y tratamiento de diversas enfermedades.

Por otro lado, el retinoblastoma es una enfermedad que presenta características relativamente simples de detectar de manera automática bajo ciertas condiciones, y a su vez trae consecuencias fatales en los casos en los que no es diagnosticado a tiempo.

La suma de todos estos factores lleva a la necesidad de la creación de una herramienta para la automatización y la asistencia médica a tiempo con el objetivo de combatir la enfermedad.

2.2 El uso de las herramientas informáticas para la asistencia médica

Los médicos del mundo actualmente tienen mayor facilidad para acceder a nuevos conocimientos a través de internet y su uso tanto en el medio social como profesional está cada vez más arraigado[12].

Hay múltiples estudios que demuestran que mientras más frecuente sea la utilización de herramientas informáticas, más actualizado está el profesional[13][14]

Se pensó que sería una buena idea escalar el sistema propuesto, a un servidor, que pueda ser utilizado mediante una página web, la cual puedan acceder médicos de todo el mundo. De esta forma pudiendo colaborar con la medicina, a la vez ayudando al crecimiento y

(10)

2.3 Importancia de la accesibilidad a este tipo de aplicaciones

Actualmente existen una gran variedad de aplicaciones, que tienen como objetivos mejorar bienestar y salud, y hacen uso de smartphones para facilitar el uso y alcance a los usuarios. Ha habido un cambio de visión, también moda, que genera una importancia para las personas en tratar de mantenerse sanos. Este tipo de aplicaciones permiten a la gente sentirse más segura, y ante cualquier llamado de atención poder concurrir a su médico. Hace algunos años, cuando alguien imaginaba que podía tener algún problema de salud, solía buscar en internet síntomas, obteniendo por lo general una visión pesimista del problema. El autodiagnóstico mediante búsquedas en Internet es muy común. Esta clase de ejercicios de búsqueda de síntomas podrían llevar a los consumidores a sobrestimar la probabilidad de contraer una enfermedad grave porque se centran en sus síntomas sin tener en cuenta la muy baja probabilidad de que sus síntomas están relacionados con alguna enfermedad grave. Las personas con frecuencia temen lo peor cuando se trata de su propia salud[15]. Esto asustaba a la persona y debía concurrir al médico con urgencia. En cambio en la actualidad gracias a aplicaciones que concentran la información o pueden hacer seguimientos de los posibles problemas, se mantiene la cordura de sus usuarios, liberando estrés. Esto es muy importante, como también a lo que apuntan la mayoría de estas aplicaciones, que es informar acerca de la enfermedad en cuestión. Diferentes estudios han evidenciado que los pacientes mejor informados cumplen mejor con las directrices marcadas por su médico, lo que permite obtener tasas más elevadas de cumplimentación de tratamientos y, por tanto, la obtención de mejores resultados[16].

Aquí se nombran algunas aplicaciones que tienen estas características previamente descritas.

FOTOSKIN

Fotoskin es una herramienta de gran ayuda para la prevención y detección precoz del cáncer de piel. Permite al usuario hacer un seguimiento de sus lunares y manchas cutáneas a través del registro fotográfico de su piel. Esta información resulta de gran utilidad para el profesional médico, ya que el propio paciente podrá mostrar esas fotografías a su dermatólogo en la consulta, facilitando así un mejor diagnóstico y evaluación de riesgos.

(11)

Figura 1: Aplicación FOTOSKIN.

Early Detection Plan

(12)

Además, se puede utilizar la aplicación EDP como un recurso para aprender acerca de los signos y los factores de riesgo asociados con el cáncer de mama.

Figura 2: Aplicación Early Detection Plan.

2.4 Problemática particular del retinoblastoma

(13)

Figura 3: Aspecto fundoscópico del retinoblastoma.

El retinoblastoma tiende a extenderse hacia el cerebro y la médula ósea, y más raramente se disemina por los pulmones. Estos son factores de pronóstico adverso, así como la invasión coroidal y a través del nervio óptico.

La pupila del ojo puede aparecer blanca o tener manchas blancas. Con frecuencia, se observa un brillo blanco en el ojo en las fotografías tomadas con flash. En lugar del típico "ojo rojo" del flash, la pupila puede parecer blanca o distorsionada. En la Figura 4 se puede ver un ejemplo de este tipo.

Figura 4: Leucocoria indicando la presencia de tumor.

Retinoblastoma intraocular

En el retinoblastoma intraocular, el cáncer se encuentra en uno o ambos ojos, y puede estar solo en la retina o en otras partes del ojo, como la coroides, el cuerpo ciliar o parte del nervio óptico. El cáncer no se diseminó a los tejidos alrededor de la parte exterior del ojo o a otras partes del cuerpo.

(14)

desprendimiento de retina y de líquido subretiniano, y de semillas subretinianas y vítreas. Otros estudios con imágenes son la ecografía ocular bidimensional y la imaginología por resonancia magnética (IRM) (que se prefiere a la tomografía computarizada [TC] para evitar la exposición a la radiación). Estos estudios con imágenes son importantes para evaluar la extensión extraocular y diferenciar un retinoblastoma de otras causas de leucocoria

Retinoblastoma extraocular (metastásico)

El retinoblastoma extraocular es cáncer que se diseminó más allá del ojo. Se puede encontrar en los tejidos alrededor del ojo (retinoblastoma orbitario) o se pudo haber diseminado al sistema nervioso central) (cerebro y médula espinal) o a otras partes del cuerpo, como el hígado, los huesos, la médula ósea o los ganglios linfáticos.

El cáncer se puede diseminar a través del tejido, el sistema linfático y la sangre:

● Tejido. El cáncer se disemina desde donde comenzó y se extiende hacia las áreas cercanas.

● Sistema linfático. El cáncer se disemina desde donde comenzó hasta entrar en el sistema linfático. El cáncer se desplaza a través de los vasos linfáticos a otras partes del cuerpo.

● Sangre. El cáncer se disemina desde donde comenzó y entra en la sangre. El cáncer se desplaza a través de los vasos sanguíneos a otras partes del cuerpo.

Si bien el retinoblastoma es una enfermedad muy curable, el reto para aquellos que tratan el retinoblastoma es preservar la vida y prevenir la pérdida de un ojo, la ceguera y otros efectos graves del tratamiento que reducen la longevidad o la calidad de vida del paciente. Con las mejoras en el diagnóstico y el manejo del retinoblastoma en las últimas décadas, el retinoblastoma metastásico se observa con menor frecuencia en los Estados Unidos y otras naciones desarrolladas. No es así en naciones subdesarrolladas, por eso se alienta el diagnóstico temprano.

(15)

2.5 Tratamiento del retinoblastoma

Se utilizan seis tipos de tratamiento estándar:

Cirugía (enucleación)

La enucleación es cirugía para extirpar el ojo y parte del nervio óptico. Se revisará el ojo con un microscopio para determinar si existe algún signo de que es probable que el cáncer se disemine a otras partes del cuerpo. La enucleación se realiza si la probabilidad de salvar la vista es pequeña o nula o cuando el tumor es grande, no respondió al tratamiento o vuelve después de este. Se preparará al paciente para colocarle un ojo artificial.

Es necesario realizar un seguimiento minucioso durante 2 años o más para determinar si hay signos de recidiva en el área alrededor del ojo afectado y para revisar el otro ojo.

Radioterapia

La radioterapia es un tratamiento contra el cáncer para el que se utilizan rayos X de alta energía u otros tipos de radiación para eliminar células cancerosas o impedir que crezcan. Hay dos tipos de radioterapia. Para la radioterapia externa, se utiliza una máquina fuera del cuerpo para enviar radiación hacia el cáncer. Para la radioterapia interna, se usa una sustancia radiactiva sellada en agujas, semillas, alambres, placas o catéteres que se coloca directamente dentro del cáncer o cerca de él.

Los siguientes son los métodos de radioterapia que se usan para tratar el retinoblastoma:

● Radioterapia de intensidad modulada (RTIM): tipo de radioterapia tridimensional para la que se utiliza una computadora para tomar imágenes del tamaño y la forma del tumor. Se dirigen rayos delgados de radiación de diferente intensidad al tumor desde muchos ángulos. Este tipo de radioterapia produce menos daño al tejido sano cerca del tumor.

● Radioterapia estereotáctica: radioterapia para la que se emplea un marco rígido en la cabeza sujetado al cráneo y se dirigen dosis altas de radiación a los tumores, con lo cual se produce menos daño al tejido sano cercano. También se llama radiación estereotáctica con haz externo, radiocirugía estereotáctica y radiocirugía estereotáxica.

● Radioterapia con haz de protón: radioterapia para la que se usan protones fabricados por una máquina especial. Un protón es un tipo de radiación de alta energía que no es un rayo X.

(16)

Figura 6: Radioterapia con placa.

La forma de administración de la radioterapia depende de cómo respondió el cáncer a otros tratamientos y si se diseminó a otras partes del cuerpo.

Crioterapia

La crioterapia es un tratamiento para el que se usa un instrumento para congelar y destruir tejido anormal. Este tipo de tratamiento también se llama criocirugía.

Termoterapia

La termoterapia es el uso de calor para destruir células cancerosas. Se administra termoterapia con un haz láser a través de la pupila dilatada, hacia la parte externa del globo ocular. La termoterapia se puede usar solo para tumores pequeños o combinada con quimioterapia para tumores más grandes. Este tratamiento es un tipo de terapia láser.

Quimioterapia

(17)

Hay tres tipos diferentes de quimioterapia:

● Quimioterapia sistémica: cuando la quimioterapia se toma por boca o se inyecta en una vena o un músculo, el medicamento entra en el torrente sanguíneo y puede llegar a las células cancerosas en todo el cuerpo. Se administra quimioterapia sistémica a fin de reducir el tamaño del tumor (quimiorreducción) y evitar una cirugía para extirpar el ojo. Después de la quimiorreducción, hay otros tratamientos como la radioterapia, la crioterapia, la terapia láser o la quimioterapia regional. También se puede administrar quimioterapia sistémica para eliminar cualquier célula cancerosa que quede luego del tratamiento inicial o a los pacientes de un retinoblastoma que se presenta por fuera del ojo. El tratamiento que se administra luego del tratamiento inicial para reducir el riesgo de que el cáncer vuelva se llama terapia adyuvante. ● Quimioterapia regional: cuando la quimioterapia se coloca directamente en el líquido

cefalorraquídeo (quimioterapia intratecal), un órgano (como el ojo) o una cavidad, los medicamentos afectan principalmente las células cancerosas de esas áreas. Se usan diferentes tipos de quimioterapia regionales para el tratamiento del retinoblastoma.

○ Quimioterapia con infusión en la arteria oftálmica: la quimioterapia con infusión en la arteria oftálmica lleva los medicamentos contra el cáncer directamente al ojo. Se coloca un catéter en una arteria que conduce al ojo y el medicamento se administra a través del catéter. Después de administrar el medicamento, se puede insertar un globo pequeño en la arteria para obstruirla y lograr que todo el medicamento contra el cáncer quede atrapado cerca del tumor. Este tipo de quimioterapia se administra como terapia inicial cuando el tumor se encuentra en un solo ojo o cuando no responde a otros tipos de tratamiento. La quimioterapia con infusión arterial oftálmica se administra en centros especializados en el tratamiento del retinoblastoma. ○ Quimioterapia subtenoniana: la quimioterapia subtenoniana consiste en el

uso de medicamentos que se inyectan a través de la membrana que cubre los músculos y los nervios de la parte posterior del globo ocular. Por lo general, se combina con quimioterapia sistémica y con terapia local (como radioterapia, crioterapia o termoterapia) para evitar extirpar el ojo

○ Quimioterapia intravítrea: la quimioterapia intravítrea está en estudio para el tratamiento del cáncer que se diseminó al humor vítreo (líquido) dentro del ojo. Se inyecta un medicamento contra el cáncer directamente en el líquido del ojo.

Quimioterapia de dosis altas con rescate de células madre

(18)

Estadificación del retinoblastoma

Hay varios sistemas de estadificación del retinoblastoma. Los estadios del International Retinoblastoma Staging System (IRSS) se basan en la cantidad de cáncer que queda después de una cirugía para extirpar el tumor y determinar si el cáncer se diseminó.

Estadio 0

El tumor solo está en el ojo. No se extirpó el ojo y el tratamiento del tumor no incluyó cirugía.

Estadio l

El tumor solo está en el ojo. Se extirpó el ojo y no quedan células cancerosas.

Estadio ll

El tumor solo está en el ojo. Se extirpó el ojo y quedan células cancerosas que solo se pueden observar al microscopio.

Estadio lll

El estadio lll se divide en los estadios III.a y III.b:

● En el estadio lll.a, el cáncer se diseminó del ojo a los tejidos alrededor de la órbita. ● En el estadio III.b, el cáncer se diseminó del ojo a los ganglios linfáticos cerca de la

oreja o el cuello.

Estadio IV

El estadio IV se divide en estadios IV.a y IV.b:

● En el estadio IV.a el cáncer se diseminó a la sangre, pero no al cerebro o la médula espinal. Uno o más tumores se pueden haber diseminado a otras partes del cuerpo, como los huesos o el hígado.

(19)

3 Algoritmos de procesamiento de imágenes para la detección

de objetos y análisis colorimétrico

Los humanos reconocemos una multitud de objetos en imágenes con poco esfuerzo, a pesar del hecho que la imagen del objeto puede variar un poco en diferentes puntos de vista, en diferentes tamaños o escala e incluso cuando están trasladados o rotados. Los objetos pueden ser reconocidos cuando están parcialmente obstruidos desde una vista. No obstante esta tarea es un desafío para los sistemas de visión por computadoras. Para este problema se han implementado muchos métodos durante múltiples décadas, los cuales son basados en apariencia de los objetos o en sus características.

En este capítulo, se resumen los distintos algoritmos para la clasificación de objetos, ya sea por su forma o su color. En particular, como es de nuestro interés detectar los ojos dentro de una imagen, describiremos algunos algoritmos utilizados generalmente para esta tarea.

3.1 Detección facial y ocular

El reconocimiento facial se ha convertido en los últimos años en una área de investigación activa que abarca diversas disciplinas, como procesado de imágenes, reconocimiento de patrones, visión por ordenador y redes neuronales.

Las imágenes que contienen caras son esenciales en muchos sistemas inteligentes de visión y muchos esfuerzos en el procesado facial incluyen el reconocimiento y el seguimiento facial, la estimación de la pose y el reconocimiento de expresiones. La detección de caras es una etapa fundamental en cualquier aplicación donde se realice algún tipo de análisis facial como por ejemplo reconocimiento de caras, codificación de vídeo en videoconferencias, interfaces inteligentes hombre-máquina, etc. El objetivo de esta etapa consiste en detectar y localizar la posición de un número indefinido de caras en una imagen sin importar su pose, orientación o condiciones de luz. En general, la detección de caras es un problema muy complejo ya que los objetos a detectar pueden poseer diferentes características[18]:

• Pose: el ángulo de la cámara al capturar las imágenes puede variar rotando una cara hasta 180º desde una posición frontal dando lugar a poses frontales, de perfil, rotadas 45º, tomadas desde arriba o desde abajo. La orientación de la imagen también puede producir oclusiones en algunas características faciales como la nariz o los ojos.

• Presencia o ausencia de componentes estructurales: la presencia de características faciales como barba, bigote y gafas pueden estar o no presentes e influyen en el rendimiento del sistema y presentan un alto grado de variabilidad.

• Expresión facial: la apariencia de las caras está directamente afectada por la expresión facial de la persona.

• Oclusión: una cara puede verse totalmente o estar parcialmente tapada por diversos objetos o por la pose del usuario. En una imagen de un grupo de personas algunas caras pueden estar parcialmente tapadas por otras.

(20)

• Condiciones de captura: cuando una imagen es capturada, factores como la iluminación y las características de la cámara pueden afectar a la apariencia de una cara.

Debido a las variaciones comentadas anteriormente, se han propuesto numerosos métodos para la detección de caras, los cuales básicamente podrían agruparse en cuatro grandes categorías:

Métodos basados en el conocimiento: Estos métodos son diseñados principalmente para la localización de la cara y se fundamentan en una serie de reglas definidas antes de la implementación del sistema que codifican el conocimiento sobre lo que constituye una cara. Generalmente estas reglas capturan las relaciones entre rasgos faciales. Es fácil llegar a reglas simples para describir las características de una cara. Por ejemplo, una cara aparece con frecuencia en una imagen con dos ojos que son simétricos entre sí, una nariz y una boca. Las relaciones entre las características pueden representarse por las distancias relativas entre ellas y su posición. Las características faciales en una imagen de entrada se extraen en primer lugar, y las posibles caras son identificadas basándose en las reglas codificadas. Por lo general, un proceso de verificación es aplicado para reducir falsas detecciones. Este tipo de métodos poseen varias desventajas como la dificultad para la traducción del conocimiento humano en reglas bien definidas. Si se detallan las normas en exceso (reglas estrictas), pueden no detectarse caras que no pasan todas las reglas, dan lugar a una baja tasa de detección. Si las normas son demasiado generales, pueden darse muchos falsos positivos. Otra desventaja es la dificultad de ampliar estos métodos para detectar rostros en diferentes poses ya que sería demasiado extenso crear reglas para todos los casos posibles.

Métodos de aproximaciones a característica invariantes: Estos métodos se basan en el hecho de que los seres humanos sin esfuerzo pueden reconocer rostros u objetos en diferentes poses o condiciones de iluminación por lo que deben existir características estructurales, propiedades o rasgos en los rostros que son invariables a pesar de la variación de ciertas condiciones en la imagen. A partir de este supuesto numerosos métodos han sido propuestos para detectar primero los rasgos faciales y luego deducir la presencia o no de una cara. Los rasgos que se tratan de localizar son principalmente los ojos, cejas, nariz, boca y ciertas relaciones entre ellos y se suelen extraer utilizando detectores de bordes. Basándose en las características extraídas, se construye un modelo estadístico para describir sus relaciones y verificar la existencia de una cara. El principal problema de estos métodos es la dificultad de localizar ciertos rasgos faciales debido a la iluminación, oclusión, presencia de ruido en la imagen.

(21)

Métodos basados en la apariencia: Estos algoritmos utilizan modelos o plantillas que capturan la variabilidad en el aspecto de los rostros humanos. En contraste con los métodos anteriores estos modelos son recogidos o aprendidos en base a imágenes de entrenamiento. En general este tipo de métodos se basan en técnicas de análisis estadístico y en aprendizaje automático para encontrar las características relevantes de imágenes de rostros e imágenes que no poseen rostros. Las características aprendidas toman la forma de modelos de distribución o funciones discriminantes que son usadas para la detección. Los algoritmos de este tipo han demostrado muy buenos resultados empíricos, suelen ser rápidos y robustos y pueden detectar rostros sin importar su pose y orientación. La desventaja es que se tiene una etapa de entrenamiento que necesita gran cantidad de ejemplos positivos y negativos para luego obtener buenos resultados.

Clasificador en cascada:

El principio básico consiste en escanear el detector muchas veces a través de una misma imagen, en diferentes posiciones y a distintas escalas. Incluso si una imagen contiene muchas caras está claro que la mayoría de las sub-ventanas que se escaneen no contendrán ninguna cara. Esto lleva a una nueva manera de ver el problema: en vez de encontrar caras, el algoritmo debería descartar no-caras. La idea subyacente se basa en que es más fácil descartar una imagen que no contenga una cara que encontrar una cara en una imagen. Con esto en mente, parece ineficiente construir un detector que contenga un solo clasificador fuerte ya que el tiempo de clasificación será constante sin importarnos la entrada del clasificador, porque el clasificador tiene que evaluar todas las características que lo forman. Aumentar la velocidad de clasificación generalmente implica que el error de clasificación aumentará inevitablemente, ya que para disminuir el tiempo de clasificación se debería disminuir el número de clasificadores simples que se utilizan. Para evitar esto y reducir el tiempo de clasificación manteniendo los requerimientos de rendimiento del clasificador se utiliza un método que consiste en el uso de una cascada de clasificadores fuertes. El trabajo en cada etapa del clasificador consiste en determinar si la sub-ventana que se analiza es definitivamente una no-cara o podría ser una cara. Cuando una sub-ventana es clasificada como no cara en alguna de las etapas del detector, se descarta inmediatamente. En caso contrario, si se clasifica como una posible cara, pasa a la siguiente etapa del clasificador. Se identificará una sub-ventana como contenedora de una cara si y sólo si pasa a través de todas las etapas del detector de forma positiva[19].

Si se utilizase un clasificador que tuviese un único estado, normalmente habría que aceptar los falsos negativos para reducir la tasa de falsos positivos. Sin embargo, para las primeras etapas del clasificador en cascada se acepta una alta tasa de falsos positivos esperando que las etapas posteriores puedan encargarse de reducir esta tasa mediante clasificadores más especializados. Con esto se pretende también reducir la tasa de falsos negativos en el clasificador final, ya que una sub-ventana será clasificada como cara sólo en el caso de que haya pasado por todas las etapas del clasificador[18].

Detección ocular:

(22)

clasificación en cascada del tipo Haar, es la más utilizada, debido a su velocidad de cálculo, pudiendo implementarse en sistemas de tiempo real.

3.2 Detección de pupilas

La detección de círculos es otro problema fundamental en aplicaciones de procesamiento de imágenes. Extraer círculos de imágenes digitales ha recibido mucha atención en las últimas décadas por su uso en la ubicación de objetos circulares en muchas aplicaciones industriales. Por esta razón muchos métodos distintos para el reconocimiento de círculos han sido desarrollados. Uno de los algoritmos más conocidos está basado en la transformada de Hough, y busca encontrar formas circulares con un radio dado en una imagen. Este algoritmo, como primer paso puede usar un detector de bordes para obtener los puntos de la imagen que pertenecen a la frontera de la figura deseada. Debido a las imperfecciones, ya sea de la imagen captada o del detector de bordes, existen muchos puntos que pertenecen a la curva y que faltan en la imagen; también pueden existir desviaciones espaciales entre la figura ideal y los puntos ruidosos del borde detectado. Por estas razones, usualmente no es trivial agrupar los bordes detectados en un conjunto apropiado de figuras, ya sean circunferencias o cualquier otra figura.

El objetivo de la transformada de Hough es resolver este problema, haciendo posible realizar agrupaciones de los puntos que pertenecen a los bordes de posibles figuras a través de un procedimiento de votación sobre un conjunto de figuras parametrizadas. Para encontrar circunferencias usando la transformada de Hough, se necesita un acumulador con tres dimensiones. Después cada punto en la imagen vota por las circunferencias en los que pudiera estar. Una vez terminado este procedimiento se buscan los picos en el acumulador y con esto se obtiene el radio y el centro de la circunferencia. Si se conociera el radio de antemano, solo se necesitaría un acumulador de dos dimensiones. La transformada de Hough es eficiente si un gran número de votos cae en la celda correcta. Para que una celda sea detectada con facilidad sin importar los errores introducidos por el ruido en la imagen, debe destacarse entre sus vecinas. Esto significa que si se tienen muchos posibles valores para los parámetros, la visibilidad de la celda podría estar comprometida por sus celdas vecinas; pero si se tienen pocos valores se podrían estar dando resultados erróneos, ignorando figuras que están en la imagen[304].

3.3 Clasificación de objetos por color

La Colorimetría es la ciencia que cuantifica y describe físicamente la percepción humana del color. Así, a partir de los valores triestímulo como expresión de las señales generadas en la retina, la colorimetría reproduce matemáticamente la fisiología de la visión humana. Permite la comparación con el análisis sensorial y tiene múltiples aplicaciones en la industria.

(23)

Modelo de color HSV

El modelo HSV (del inglés Hue, Saturation, Value – Matiz, Saturación, Valor), también llamado HSB (Hue, Saturation, Brightness – Matiz, Saturación, Brillo), define un modelo de color en términos de sus componentes.

Figura 7: Cono de colores del espacio HSV.

Es un espacio cilíndrico, pero normalmente asociado a un cono o cono hexagonal, tal como se aprecia en la Figura 7, debido a que es un subconjunto visible del espacio original con valores válidos de RGB.

● Matiz (Hue): se refiere a la frecuencia dominante del color dentro del espectro

visible. Es la percepción de un tipo de color, normalmente la que uno distingue en un arcoíris, es decir, es la sensación humana de acuerdo a la cual un área parece similar a otra o cuando existe un tipo de longitud de onda dominante. Se representa como un grado de ángulo cuyos valores posibles van de 0 a 360° (aunque para algunas aplicaciones se normalizan del 0 al 100%). Cada valor corresponde a un color. Por ejemplo 0 es rojo, 60 es amarillo y 120 es verde.

● Saturación (Saturation): se refiere a la cantidad del color o a la “pureza” de éste. Se representa como la distancia al eje de brillo negro-blanco. Los valores posibles van del 0 al 100%. A este parámetro también se le suele llamar "pureza" por la analogía con la pureza de excitación y la pureza colorimétrica de la colorimetría. Cuanto menor sea la saturación de un color, mayor tonalidad grisácea habrá y más

decolorado estará. Por eso es útil definir la insaturación como la inversa cualitativa de la saturación.

● Valor (Value): es la intensidad de luz de un color. Dicho de otra manera, es la cantidad de blanco o de negro que posee un color. Representa la altura en el eje blanco-negro. Los valores posibles van del 0 al 100%. 0 siempre es negro. Dependiendo de la saturación, 100 podría ser blanco o un color más o menos saturado.

(24)

4. Propuesta de solución

En este capítulo se presentará la solución propuesta, tal así como la implementación de la misma. Se contarán los estilos arquitectónicos y diseños utilizados, y con qué tecnologías se materializaron. Se explicarán en detalle las distintas etapas del algoritmo de cuantificación del retinoblastoma, y el proceso seguido para la marcación y discriminación de casos al utilizar la herramienta implementada.

4.1 Introducción

Para poder satisfacer los objetivos propuestos, se planteó construir una solución en modo de sistema informático, la cual debería brindar una interfaz de usuario amigable para el mismo, ser accesible para una gran cantidad de personas, y una posible escalabilidad que le permita al sistema crecer sin demasiados inconvenientes.

En primera instancia, es necesario poder caracterizar las imágenes, y clasificarlas en casos positivos y negativos. A su vez, estos casos era necesario poder analizarlos, extrayendo parámetros para realizar un posterior análisis por color. Para este fin, se pensó en una aplicación de escritorio, que facilite el trabajo de catalogar los datos. Esta aplicación se debería poder calibrar para obtener diferentes resultados y teniendo diferentes parámetros de entrada en los distintos algoritmos utilizados.

El motor de esta aplicación, es decir, los algoritmos que realizan el trabajo de detección de leucocoria, debían poder utilizarse por diferentes personas, de una manera sencilla. Por esto se creyó ocurrente que esa sección podría estar al alcance de otros sistemas. Brindar esos servicios a aplicaciones más pequeñas (sin tanto procesamiento) sería ideal. Esto dió la idea de crear un servidor que haga la tarea pesada, y que sea consumido por aplicaciones populares, estas son, aplicaciones móviles o aplicaciones web, y a la vez podría calibrarse estos algoritmos del servidor, mediante la aplicación de escritorio. De esta forma, el sistema también sería mucho más escalable.

Para detectar rostros y ojos sobre las imágenes, se utilizó OpenCV (Open Source Computer Vision Library). OpenCV es una librería libre para análisis de imágenes y video, originalmente introducida hace más de una década por Intel. Desde entonces, un gran número de programadores ha contribuido a sus desarrollos más recientes. Hoy en día la librería tiene más de 2500 algoritmos optimizados. Es extensamente usado alrededor del mundo, teniendo más de 7 millones de descargas y más de 40 mil personas siendo parte del grupo de usuarios. El contenido de la librería es ampliamente utilizado en estudiantes graduados e investigadores en áreas de procesamiento de imágenes y visión computacional[21].

4.2 Arquitectura de la solución

(25)

diversidad de dispositivos, como se observa en la Figura 8, y al mismo tiempo poder registrar la actividad a fin que sirva para futuros análisis.

Se decidió implementar la solución con un estilo arquitectónico Cliente-Servidor. Con múltiples clientes “delgados”, de diferentes tecnologías. Para poder implementar esa arquitectura orientada a servicios, se decidió utilizar la tecnología en auge en este momento. Los servicios REST(Representational State Transfer). REST se ha ganado una amplia aceptación en la Web como una alternativa simple a servicios basados en SOAP- y

WSDL (Web Services Description Language)-. La evidencia clave de este cambio en el diseño de interfaz es la adopción de REST por los principales proveedores de servicios Web 2.0 —incluyendo Yahoo, Google, y Facebook—Quienes han dejado de lado las interfaces basadas en SOAP y WSDL a favor de una facilidad de uso, de modelo orientado a los recursos para exponer sus servicios[22].

Mediante una API Restful, se puede brindar servicios a diferentes clientes. Para aplicaciones móviles es ampliamente utilizado, y en una posible aplicación web, gracias a la tecnología javascript, se podría hacer llamados a los servicios Rest sin problemas utilizando objetos JSON(JavaScript Object Notation). Dada la ligereza de estos objetos y su generalización de uso, no habría problemas de comunicación y portabilidad a cualquier sistema frontend, ya que esta tecnología es sumamente conocida y utilizada.

Figura 8: Arquitectura de la solución.

Del lado del servidor se realizó con un diseño MVC(Modelo-Vista-Controlador), ya que aparte de la API RESTful, también se creó otra capa de vista, que corresponde a la aplicación de escritorio para ayudar a realizar diferentes tipos de pruebas sobre los algoritmos que permitieron calibrar el servidor.

(26)

Figura 9: Aplicación Móvil.

4.3 Algoritmo de cuantificación del Retinoblastoma

Hay cinco grandes etapas en el procesamiento de imágenes digitales para resolver problemas de reconocimiento o, estudio de objetos o elementos de interés presentes en diversos tipos de imágenes. Estos son: Captura, Pre-procesamiento, Segmentación, Medición de características y Clasificación.

Captura: Es el proceso a través del cual se obtiene una imagen visual. En este caso es una captura definida por el problema, ya que no es posible cambiar las condiciones de la captura y se obtiene una imagen digital ya capturada por un dispositivo móvil.

Pre-procesamiento: Son técnicas realizadas sobre la imagen para optimizar el desempeño de los algoritmos de segmentación. En este trabajo se realizaron distintos pre-procesamientos para poder detectar las pupilas de forma optimizada.

Segmentación: Trata en reconocer y extraer todos lo objetos de interés presentes en la imagen. En este caso se detectaron caras, ojos y pupilas.

(27)

este trabajo es el color el dato que va a diferenciar entre si hay o no leucocoria, la herramienta para medir esa característica, es el histograma de colores de la pupila.

Clasificación: Se trata de utilizar un modelo de toma de decisión para decidir a qué categoría pertenece cada objeto. En este trabajo se trata de una Clasificación Supervisada donde se entrena un clasificador con intervención del usuario para llegar a un clasificador “automático” que encuentre las pupilas con leucocoria.

Para la captura de la imagen, se utiliza desde archivo o recibida a través del servicio remoto.

Primero se busca generar una mayor nitidez sobre la imagen aplicando filtros de realce y a la imagen original se le “resta” la imagen suavizada[24][25].

Figura 10: Muestra de nitidez.

Después de ese pre-procesamiento, se pasa la imagen a escala de grises.

A continuación, se corre sobre la imagen un clasificador en cascada configurado para detectar caras. A partir de este, se corre otro clasificador en cascada, esta vez configurado para detectar facciones similares a las posiciones oculares.

Después de detectar las posiciones de los ojos, el siguiente paso, es detectar las pupilas, para esto, se decidió detectar círculos sobre estas porciones de imágenes. Para detectar círculos se utilizó la Transformada de Hough para círculos.

Teniendo las posiciones de las pupilas, se aplica un algoritmo para cuantificar los colores de cada píxel dentro de las mismas, el cual indicará la presencia o no de retinoblastoma en la imagen.

4.3.1 Detección del retinoblastoma a partir de las concentraciones de

color.

(28)

dataset de más de 7000 imágenes, muchas de las cuales pertenecían a pacientes con distintas patologías y a personas sanar, realizaron una descomposición de los posibles rangos de colores presentes en dichas fotos, en diversas situaciones.

En principio, pudieron obtener que los datos colorimétricos sobre las pupilas en las fotografías de chicos sanos y con retinoblastoma, se pueden desglosar alrededor de cuatro colores específicos, estos son: negro, rojo, blanco, y amarillo. Este estudio lo hicieron de forma manual, utilizando imágenes casuales y luego validados con imágenes de fondo de ojo, indicando también un grado de avance de la enfermedad en los casos positivos.

En la Figura 11 se muestra una secuencia de fotos de pupila en diferentes estadios (al principio, no es sencillo de detectar) hasta un mayor grado de avance de la enfermedad. También se muestra una variante de la leucocoria, denominada “xantocoria”, donde la pupila toma un color más amarillento.

Figura 11: Estadios de Leucocoria y Xantocoria.

En dicho estudio, también se concluye, que la detección de un ojo rojo es bueno, mostrando la ausencia del tumor.

Para poder detectarlos, se necesitó un rango de dominio de cada color, donde algunos colores verdaderos cabrían como uno de estos cuatro colores. Se utilizó el modelo de color HSV para poder realizar estos rangos de una forma sencilla. Al tener cuantificados los colores, automáticamente se calcula un porcentaje relativo de cada color, con respecto a estos cuatro colores.

Los valores que se usaron para los rangos que determinan a los colores, son estos:

Blanco: Saturación menor a 22%, Brillo mayor a 90%.

Negro: Brillo menor al 20%.

(29)

Amarillo: Matiz mayor a 45º y menor a 75º, Saturación mayor a 50%, Brillo mayor a 20%.

4.4 Proceso para la marcación y discriminación de casos

Se creó una aplicación de escritorio, con el propósito de utilizar como herramienta de obtención de datos y realización de experimentos. Se intentó hacer algo simple de usar, y que brinde al usuario las herramientas necesarias para la organización de las imágenes.

La herramienta permite seleccionar imágenes con las cuales trabajar que se convertirán en el dataset. Al hacer click sobre una de estas imágenes, es seleccionada como objeto de estudio, y pasa a verse más grande en la sección principal.

Figura 12: Aplicación de escritorio.

(30)

Figura 13: Detecciones sobre imagen completa.

En las otras secciones, muestra las caras detectadas, y las secciones de los ojos detectados.

Al seleccionar alguno de estos ojos, muestra en una tercera sección la pupila detectada.

Figura 14: Detecciones en detalle.

(31)

todos estos datos procesados, tal como se aprecia en la Figura 15. Es un archivo CSV

(Comma Separated Value) el cual fue utilizado para analizar los datos posteriormente.

Figura 15: Opciones de la aplicación.

Si la aplicación tiene algún problema con la detección automática de los objetos de estudio. Permite un seleccionado manual que se puede hacer sobre la imagen de la sección principal, de esta forma marcar dónde se encuentran verdaderamente las pupilas. Pudiendo seleccionar —si es que hubiera alguna— cuál de ellas es positiva (la cual a la vista se nota leucocoria).

Figura 16: Selección manual.

(32)

4.5 Implementación del proceso de clasificación

Para la implementación del proceso descrito, se utilizó un modelo MVC.

Figura 17: Modelo MVC.

La vista comprende las clases y archivos que manejan la presentación, o entrada y salida, al usuario. Esto es la vista de la aplicación de escritorio (Desktop View), y la API provista. El controlador se compone de las clases que justamente sirven como controladoras de las diferentes vistas, sirven como conector del componente vista y el modelo. Por lo cual hay dos controladores: Uno que controla la vista de escritorio (Main Controller) y, otro diferente que controla la API provista al usuario (API Controller).

El modelo, está compuesto por dos paquetes: uno de detección y otro de procesamiento. En el paquete de detecciones (Detection) se encuentran las clases para detectar, las caras, ojos, y pupilas. Y también las clases de detecciones utilizadas: rectángulos y círculos. En el paquete de Procesamiento (Processing) están las clases encargadas de realizar el histograma de color sobre la imagen, y su análisis.

(33)

por los estudiantes, lo que disminuyó el tiempo de desarrollo, visto que la cota de aprendizaje era menor.

Se trató de utilizar las tecnologías actuales (últimas versiones). Desde la última versión de Java Development Kit (JDK) 8, se incorporó JavaFX al paquete. JavaFX es un conjunto de paquetes de gráficos y multimedia que permite a los desarrolladores a diseñar, crear, tests, debug, y despliegue de rich client applications que pueden operar consistentemente a través de diversas plataformas. Al tener dichas facilidades, se utilizó JavaFX para realizar la capa de vista de la aplicación de escritorio.

API desarrollada

Se creó una API Rest que permite a las aplicaciones frontend hacer uso de los algoritmos desarrollados. Se utilizó el frameworkJersey RESTful para crear los servicios Rest. Jersey

es una implementación de JAX-RS —una API del lenguaje de programación Java que proporciona soporte en la creación de servicios web de acuerdo con el estilo arquitectónico Representational State Transfer (REST)[23]— además de proporcionar utilidades que simplifican el uso de los servicios RESTful.

El servicio a destacar es el que recibe una imagen, y entrega la misma imagen con los objetos detectados por los algoritmos, marcados sobre la misma. También entrega juntamente datos obtenidos por los algoritmos de análisis colorimétrico, sobre las detecciones de pupilas.

El formato JSON de forma nativa no admite datos binarios, y las imágenes enviadas por el

frontend van a ser datos delicados del usuario, por lo cual se decidió que los archivos de imagen tengan que ser enviados una vez que han sido codificados en Base64, ya que es una codificación sencilla y muy implementada en aplicaciones móviles. Del lado del servidor se decodifica la imagen, y se trata como un archivo de imagen binario.

Se trabaja con la imagen decodificada de forma similar a la que se trabajaría con una imagen seleccionada por la aplicación de escritorio, es decir, siguiendo el mismo procesamiento mediante los mismos algoritmos. A la imagen de respuesta, se la codifica también en Base64, para enviar mediante la respuesta del servicio.

Los servicios consumibles de la API fueron ofrecidos mediante Apache Tomcat. Tomcat es un contenedor web con soporte de servlets y que puede funcionar como servidor web por sí mismo.

Aplicación Móvil

Se creó una aplicación Móvil sencilla sobre el sistema operativo Android, para hacer uso de la API Rest comentada anteriormente desde el lado del cliente. De esta forma poder dilucidar los aspectos necesitados por el servidor, y situarse en el lugar de un usuario del servicio, y así mejorar el sistema, brindando a la vez un ejemplo conciso de uso.

(34)

Espera respuesta del servicio, y al recibir otro objeto JSON con la imagen igualmente codificada en Base64, lo primero que hace es decodificar la misma y mostrarla por pantalla, además esta permite ver los resultados del análisis en detalle.

Para probar la aplicación móvil, se utilizó una conexión WiFi, levantando la aplicación del servidor de forma local desde Tomcat. Simulando una conexión lejana mediante internet.

(35)

5 Resultados

Para la realización de pruebas sobre esta aplicación se generó un dataset de 60 fotos de niños, de las cuales la mitad eran casos positivos y la otra negativos. Para los casos positivos, algunas imágenes fueron provistas por médicos del hospital Garrahan, mientras que el resto, junto con todas las imágenes negativas fueron obtenidas de internet. Muchos de estos datos son privados y no pueden ser incluidos en la presentación de la tesis.

Para la selección de todas estas imágenes fueron tenidos en cuenta aspectos como si las fotos habían sido tomadas con o sin flash, su tamaño, cantidad de personas, distancia y ángulos; priorizando la elección de las tomas en las que se consideró que la aplicación respondería de mejor manera.

5.1 Estudio de la detección del rostro, ojos y pupila

Clasificación de rostros

De las 60 fotos, hubo 6 en las cuales el rostro no fue detectado automáticamente por la aplicación, razón por la cual el procesamiento finalizó en ese paso sin realizar búsqueda de ojos ni de pupilas. De estas imágenes, 2 eran muy pequeñas y el resto o bien tenían algún objeto cubriendo parcialmente la cara o bien estaban tomadas con cierto ángulo que dificulta la detección. Como resultado basado en esta muestra de imágenes, la aplicación detectó las caras correctamente en el 90% de los casos.

A su vez, en 13 fotos fueron detectadas como caras elementos que no lo eran y sobre los cuales la aplicación continuó la búsqueda de ojos. Pero en ningún caso estos fueron encontrados, con lo cual el procesamiento finalizó en ese punto para esos falsos positivos, sin generar resultados negativos por los cuales preocuparse.

(36)

Clasificación de ojos

Partiendo de las 54 fotos en las que fueron detectados rostros, en todas ellas también fueron detectados correctamente los 110 ojos que había en ellos, resultando en un 100% de efectividad durante este paso. Además, en 21 imágenes fueron detectados como ojos elementos que no lo eran.

Clasificación de pupilas

Sobre los ojos reconocidos, fue localizada la pupila de forma completamente exacta en 37 casos. En otras 46 oportunidades la detección fue aproximada, es decir, el círculo detectado correspondía a una detección parcial o mayor de la pupila. Por otro lado, en 27 oportunidades ningún círculo fue detectado automáticamente por la aplicación. Estos últimos casos se corresponden con 15 imágenes de las que en la mayoría el área de la cara era muy pequeña, a causa de una imagen pequeña o tomada desde muy lejos, y en otra minoría los ojos no se encontraban completamente abiertos, haciendo que el círculo de la pupila se viera incompleto. De esta forma se puede concluir que la clasificación de pupilas fue completamente correcta en el 34% de los casos, y tuvo un resultado aceptable en el 76% del total de imágenes.

Por otro lado, también cabe destacar que en 8 casos de falsas detecciones de ojos, también fueron detectadas falsas pupilas dentro de ellos.

Para los casos en que la pupila no era detectada o era detectada incorrectamente, fue agregada a la aplicación la funcionalidad de poder marcar el círculo correspondiente de forma manual, y de esta manera poder continuar con el análisis con fines estadísticos y comparativos.

5.2 Estudio de la concentración de colores

Una vez obtenidas las posiciones de las pupilas se procedió a su análisis colorimétrico, considerando sólo los colores significativos para este estudio, es decir, blanco, negro, rojo y amarillo. Cabe aclarar que la elección de estos valores representa por un lado los valores normales para una persona sana, como pueden ser el negro y el rojo, y por otro los valores con los que se puede realizar el diagnóstico de leucocoria, que son el blanco y el amarillo.

La clasificación de los resultados se realizó teniendo en cuenta por un lado las imágenes positivas y por otro las negativas, y también diferenciando entre las detecciones automáticas de la posición de la pupila por la aplicación misma y las detecciones manuales, tal como fue mencionado previamente. Para este análisis fueron descartadas todas las fotografías tomadas sin flash, ya que éstas no resultan útiles para la detección de la enfermedad.

A continuación se detallarán los resultados promedio gráficamente.

(37)

Como puede observarse en la Figura 19, para los casos negativos los promedios en la concentración de los colores negros y rojos es mucho más alta que la de blancos y amarillos, sumando en conjunto el 90% del total.

Figura 20: Gráfico circular de detecciones automáticas en casos negativos.

Por otro lado, para los casos positivos, las distribuciones promedio de blancos, negros y rojos es muy pareja con alrededor del 30% de cada uno, mientras que la concentración de amarillos continúa siendo baja.

.

Figura 21: Gráfico circular de detecciones automáticas en casos positivos.

En base a estos resultados se decidió restringir un poco el tipo de fotos “aceptables” para tener mejores resultados, tal como se explicará en la siguiente sección.

(38)

superan el 4% del total muestreado, mientras que el color negro estaba sobre el 40% y el rojo sobre el 50% en promedio.

Figura 22: Gráfico circular de detecciones automáticas en casos negativos sin detecciones inválidas.

Para el caso de las pupilas en las que el diagnóstico debiera ser positivo, se apreciaron concentraciones promedio de blanco de un 65%, mientras que la de amarillo en promedio alcanzó un 7%. El color negro se encontró en un 23% promedio, y el rojo se mantuvo en un 5%.

Figura 23: Gráfico circular de detecciones automáticas en casos positivos sin detecciones inválidas.

(39)

pupilas normales el promedio en la detección de tonos rojos aumentaba levemente en un 5%, disminuyendo la detección promedio de negros.

Figura 24: Gráfico circular de detecciones óptimas en casos negativos.

Por otro lado, para los casos en los que la leucocoria era evidente esta detección óptima hizo que la cantidad promedio de blanco detectado aumente alrededor del 7%, al tiempo que el promedio del resto de los colores disminuye muy levemente.

(40)

5.3 Estudio de criterios para la clasificación automática

Como resultado del análisis de la sección anterior, se obtuvieron valores de concentración de colores para casos positivos y negativos.

Figura 26: Ejemplos del dataset utilizado. A) Casos negativos. B) Casos Positivos

A continuación se fijarán estos valores y se estudiarán los casos para verificar la cantidad de positivos correctamente detectados.

Se propondrán y probarán distintos criterios, midiendo la sensibilidad y la especificidad para la detección en cada caso.

Dado un estimador para una variable estadística discreta binaria se pueden definir dos valores asociados importantes:

● La sensibilidad nos indica la capacidad de nuestro estimador para dar como casos positivos los casos realmente enfermos; proporción de enfermos correctamente identificados. Es decir, la sensibilidad caracteriza la capacidad de la prueba para detectar la enfermedad en sujetos enfermos.

(41)

La sensibilidad se define como:

donde VP es verdaderos positivos y FN falsos negativos.

La especificidad de una prueba representa la probabilidad de que un sujeto sano tenga un resultado negativo en la prueba. La especificidad se define como:

Donde VN, serían los verdaderos negativos; y FP, los falsos positivos.

La sensibilidad es la fracción de verdaderos positivos y la especificidad la fracción de verdaderos negativos.

No obstante, cada prueba tendrá mayor o menor porcentaje tanto en especificidad (SP) como en sensibilidad (SE) dependiendo de su punto de corte. Lo ideal sería que no se solapasen y al hacer un test solamente se obtuvieran verdaderos positivos y verdaderos negativos pero no es así. Por ello es importante conocer la especificidad y la sensibilidad de cada estimador que se utilice.

Nota: Para el siguiente análisis se considerarán sólo las pupilas detectadas automáticamente por la aplicación, con el objetivo de analizar el comportamiento de la misma sin intervención humana. También sólo se tendrán en cuenta las fotografías tomadas con flash, ya que como se mencionó previamente éstas son las que realmente sirven para el diagnóstico.

De esta forma, se analizarán los 70 casos de los rostros detectados entre todas las fotografías del dataset utilizado.

Criterio 1: Concentración de colores oscuros o rojos.

Si la cantidad de negros o rojos es mayor a 50%, es falso, en otro caso es positivo.

Con este criterio se busca distinguir los casos en los que las pupilas se visualizarían en una persona sana, y como contraparte diagnosticar leucocoria cuando esto no sucede.

VP VN FP FN SP SE

15 49 3 3 0.9423 0.8333

Criterio 2: Concentración de colores claros

Si la cantidad de blanco o de amarillo es mayor al 30%.

En contraposición con el criterio anterior, en esta segunda oportunidad se intenta discernir la presencia de leucocoria en base a las imágenes que aparentan ser de casos positivos por sus concentraciones de colores claros.

VP VN FP FN SP SE

(42)

Criterio 3: Compuesto

Concentración de rojos o negros menor al 50% o concentración de amarillos o blancos mayor al 50%.

Como tercer caso de análisis se plantea unir los dos criterios anteriores generando uno nuevo más restrictivo, con la intención de poder capturar los casos con mayor precisión.

VP VN FP FN SP SE

15 49 3 3 0.9423 0.8333

Luego de este análisis se puede concluir que si bien con todos los criterios se obtuvieron resultados muy similares, los mejores estuvieron dados por el segundo criterio, en el que se realizaba la búsqueda de los casos positivos con una concentración de colores claros mayor al 30%.

5.4 Resumen/Discusión

Tras analizar los resultados obtenidos mediante las pruebas y hacer un estudio exhaustivo sobre los mismos. Se advirtió que las imágenes, para obtener resultados óptimos de los algoritmos, deberían tener diferentes características especiales técnicas, tales como el tamaño de las imágenes, si fueron o no sacadas con flash y la posición y ángulo, de la cara y la mirada.

Solo imágenes tomadas con flash: Llevó un buen tiempo encontrar imágenes sacadas sin utilizar flash de chicos que tuvieran tumor de retinoblastoma, pero se consiguieron algunas. No se notaron diferencias entre los pacientes sanos y los enfermos en imágenes tomadas sin flash, en el análisis de los algoritmos. Por lo cual se concluyó que las imágenes tomadas sin flash deben ser excluidas para obtener resultados correctos.

(43)

Figura 27: Ejemplo de imagen de muy baja calidad.

El ángulo de la cara al igual que el de las pupilas debe ser paralelo al plano de la imagen: Al analizar los resultados se notó que si no se ven en la imagen ambos lados de la cara, es difícil que ésta sea detectada por la clasificación de rostros. Lo mismo ocurre con las pupilas. La persona de estudio, debería dirigir la mirada hacia el lente de la cámara a la hora de tomar la fotografía. En la Figura 17 se observa una imagen en la cual el ángulo de la mirada de los chicos no permite reconocer sus pupilas.

Figura 28: Ejemplo de imagen con ángulos de mirada raros.

(44)

6 Conclusiones

Dada la necesidad de mejorar el diagnóstico temprano de retinoblastoma, se desarrollaron en primer lugar los algoritmos encargados del reconocimiento de caras, ojos y pupilas dentro de una fotografía. Para luego poder proseguir con el desarrollo y evaluación de algoritmos para el análisis colorimétrico y de esta forma realizar un diagnóstico acertado.

Los algoritmos propuestos se caracterizan por su eficacia y rapidez, estos fueron seleccionados entre distintos métodos posibles, y a su vez fueron optimizados y adaptados al problema para brindar los mejores resultados posibles. Para ello también se propusieron ciertas restricciones en cuanto al tamaño y la calidad de las fotografías, con el objetivo de evitar inconvenientes en el uso de la aplicación. De esta forma se concluyó con una aplicación sólida para el procesamiento de imágenes, brindando un diagnóstico consistente para sus usuarios.

Estos algoritmos se introdujeron tanto en una aplicación de escritorio, como en un servicio web, ofreciendo gran versatilidad para su utilización y un importante abanico de posibilidades para su continuación y mejora en pos de incrementar su accesibilidad. Con vistas en ese objetivo, también se desarrolló una aplicación móvil básica que a través de la interfaz web puede proporcionar a sus usuarios el diagnóstico buscado.

Referencias

Documento similar

(29) Cfr. MUÑOZ MACHADO: Derecho público de las Comunidades Autóno- mas, cit., vol. Es necesario advertir que en la doctrina clásica este tipo de competencias suele reconducirse

A partir de los resultados de este análisis en los que la entrevistadora es la protagonista frente a los entrevistados, la información política veraz, que se supone que

La combinación, de acuerdo con el SEG, de ambos estudios, validez y fiabilidad (esto es, el estudio de los criterios de realidad en la declaración), verificada la

Gastos derivados de la recaudación de los derechos económicos de la entidad local o de sus organis- mos autónomos cuando aquélla se efectúe por otras enti- dades locales o

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

Ciaurriz quien, durante su primer arlo de estancia en Loyola 40 , catalogó sus fondos siguiendo la división previa a la que nos hemos referido; y si esta labor fue de

Por ello, consideramos relevante llevar a cabo un trabajo más general, mediante el estudio y análisis de las imágenes o símbolos más significativos, en aras

b) El Tribunal Constitucional se encuadra dentro de una organiza- ción jurídico constitucional que asume la supremacía de los dere- chos fundamentales y que reconoce la separación