Contador de Células Neuronales en Imágenes de
Microscopía de Fluorescencia
Universidad Nacional del Centro de la Provincia de Buenos Aires
Trabajo nal de la carrera Ingeniería de Sistemas
Alumna: Gisela Soledad Bordacahar
Índice
1. Introducción 9
1.1. Motivación . . . 9
1.2. Objetivos . . . 10
1.3. Estructura del trabajo . . . 10
2. Marco teórico 11 2.1. Imágenes de Microscopía de uorescencia . . . 11
2.1.1. Características del aspecto biológico . . . 11
2.1.2. Características de las imágenes . . . 12
2.1.2.1. Formación de imágenes . . . 12
2.1.2.2. Canales . . . 13
2.1.3. Dicultades y desaos . . . 14
2.1.3.1. Stitching . . . 15
2.1.3.2. Registración . . . 16
2.2. Procesamiento de imágenes digitales . . . 16
2.2.1. Captura . . . 18
2.2.2. Preprocesamiento . . . 18
2.2.2.1. Estiramiento de histograma . . . 19
2.2.2.2. Procesamiento de histograma . . . 19
2.2.2.2.1. Ecualización de histogramas . . . 19
2.2.2.2.2. Mejora de vecindario local . . . 20
2.2.2.3. Filtros . . . 21
2.2.3. Segmentación . . . 21
2.2.3.1. Discontinuidad . . . 21
2.2.3.2. Similitud . . . 21
2.2.3.2.1. Umbralización . . . 22
2.2.3.2.2. Region Growing . . . 22
2.2.4. Extracción de características . . . 22
2.2.5. Clasicación . . . 23
2.3. Fiji-ImageJ . . . 23
2.3.1. Estructura general . . . 23
2.3.2. Operaciones de pre-procesamiento de imágenes . . . 24
2.3.2.1. Enhace contrast . . . 24
2.3.2.2. Substract background . . . 25
2.3.2.3. Auto threshold . . . 25
2.3.2.4. Threshold . . . 26
2.3.2.5. Convert to mask . . . 26
2.3.2.6. Close . . . 26
2.3.2.7. Watershed . . . 26
2.3.3. Analyze Particles . . . 26
2.3.3.1. Funcionamiento . . . 26
2.3.3.2. Conguración de parámetros . . . 27
2.3.4. Cell counter . . . 29
3. Estado del arte 31 3.1. Cell Proler: software de análisis de imágenes para identicar y
cuanticar fenotipos celulares . . . 31
3.2. ImagePro Plus . . . 32
3.3. Método de Conteo automático para detección de células embrio-narias . . . 32
3.4. Otros enfoques . . . 34
3.4.1. Detección de ubicación de células mediante Deep Learning 34 3.4.2. Clasicación de células mediante Deep Learning . . . 34
3.4.3. Otros trabajos basados en Deep Learning . . . 35
3.5. Conclusión . . . 35
4. Método propuesto 37 4.1. Pipeline . . . 37
4.1.1. Captura y entrada de imágenes . . . 39
4.1.1.1. Formato CZI . . . 39
4.1.1.2. Separación de canales . . . 40
4.1.2. Pre-proceso de imágenes . . . 41
4.1.2.1. Normalización . . . 41
4.1.2.1.1. Análisis intra-experimentos . . . 41
4.1.2.1.2. Análisis entre experimentos . . . 45
4.1.2.2. Conversión a 8 bits del canal de núcleos . . . 48
4.1.2.3. Conversión a 8 bits para los canales de proteínas 49 4.1.2.4. Mejora de contraste (canales de núcleos y de pro-teínas) . . . 49
4.1.3. Segmentación . . . 56
4.1.3.1. Extracción de fondo (núcleos) . . . 56
4.1.3.2. Umbralado (threshold) . . . 57
4.1.3.3. Convolución . . . 58
4.1.3.4. Watershed . . . 59
4.1.4. Extracción de características . . . 60
4.1.4.1. Área . . . 60
4.1.4.2. Centroide . . . 61
4.1.4.3. Índice de circularidad . . . 61
4.1.5. Detección e identicación de objetos . . . 61
4.1.5.1. Analyze particles . . . 62
4.1.5.2. Algoritmo . . . 62
4.1.6. Generación de resultado . . . 66
4.1.6.1. XML (entrada para cell counter) . . . 66
4.2. Desarrollo y herramienta . . . 66
4.2.1. Phyton . . . 66
4.2.2. Java . . . 67
4.2.3. Herramienta . . . 67
4.2.4. Búsqueda de parámetros . . . 68
4.2.5. Citoplasmas . . . 69
5. Resultados 71
5.1. Ecacia en el conteo . . . 71
5.1.1. Sin normalización . . . 73
5.1.2. Con normalización . . . 75
5.1.3. Conversión a 8 bits para canales de proteínas . . . 77
5.2. Estimación de eciencia temporal de la herramienta . . . 78
5.3. Resultados de soluciones de Deep Learning basadas en resultados de esta herramienta . . . 79
6. Conclusiones y trabajos futuros 80 6.1. Conclusiones . . . 80
6.2. Trabajos futuros . . . 81
Referencias 82
A. Conteos sin normalizar 85
B. Matrices de confusión - sin normalización 88
C. Conteos con normalización 91
D. Matrices de confusión - con normalización 94
E. Conteos con normalización 8 bits 97
Índice de guras
2.1. Espectros de emisión de los anticuerpos secundarios conjugados con Alexa Fluor. . . 14 2.2. Imagen de alta resolución formada por un conjunto de imágenes
más pequeñas. . . 15 2.3. Imagen formada por varios canales luego de aplicar técnica de
registración. . . 16 2.4. Etapas del procesamiento de imágenes. . . 18 2.5. Imagen e histograma antes de realizar la ecualización de histograma. 20 2.6. Imagen e histograma después de realizar la ecualización de
histo-grama. . . 20 2.7. Jerarquía de librerías de imageJ. . . 24 2.8. Diagrama de las clases que representan una imagen en ImageJ. . 24 4.1. Operaciones realizadas en las diferentes etapas del procesamiento
de imágenes. . . 38 4.2. Metadatos que usualmente contiene un archivo czi. . . 39 4.3. Conguración de importación de imágenes con Bio-Formats. . . 40 4.4. Pseudocódigo que simboliza la separación de canales y la
instan-ciación de imágenes para cada uno de ellos. . . 41 4.5. Comparación de histogramas del canal de núcleos en una imagen
antes y después de convertir la misma a 8 bits respectivamente. . 49 4.6. Canal de núcleos antes y después de la normalización. . . 49 4.7. Histograma canal núcleos antes y después de la normalización. . 50 4.8. Canal rojo antes y después de la normalización. . . 50 4.9. Histograma canal rojo antes y después de la normalización. . . . 50 4.10. Canal de núcleos antes y después de extraer el fondo. . . 56 4.11. Histograma del canal de núcleos antes y después de extraer el
fondo. . . 57 4.12. Canal de núcleos antes y después de aplicar el auto threshold. . . 57 4.13. Histograma antes y después de aplicar el auto threshold. . . 58 4.14. Imagen e histograma del canal de núcleos luego de aplicar el
th-reshold. . . 58 4.15. Canal de núcleos luego de aplicar la máscara. . . 59 4.16. Canal de núcleos luego de la operación Close junto a una porción
de la imagen antes y después del proceso. . . 59 4.17. Canal de núcleos luego de la operación Watershed junto a un
recorte de la misma donde se observa la comparación entre el antes y el después del proceso respectivamente. . . 60 4.18. En primer lugar se observa un ejemplo de partícula con un área
muy pequeña y en segundo lugar un ejemplo de una partícula de gran tamaño. . . 61 4.19. En primer lugar se observa una partícula con una circularidad no
4.20. Tabla de resultados obtenida durante el conteo de una imagen de microscopía de uorescencia durante la realización de este traba-jo. . . 62 4.21. Pseudocódigo del algoritmo que recorre los núcleos hallados
pa-ra detectar en cada canal aquellos que reaccionaron de manepa-ra positiva para las proteínas correspondientes. . . 63 4.22. Ejemplo de una célula positiva para el canal de proteínas rojo. . 63 4.23. Diagrama de clases que muestra estructura relacionada al conteo
de células. . . 65 4.24. Diagrama de clases referidas a la interfaz de la herramienta. . . 67 4.25. Interfaz de la herramienta que permite congurar los parámetros
previo al conteo. . . 68 4.26. Estructura de clases relacionada a la búsqueda de parámetros. . . 69 4.27. Áreas que se recorren para detectar núcleos y citoplasmas positivos. 70 5.1. Ejemplo de correspondencia entre conteo manual realizado por el
Índice de cuadros
4.1. Comparación de histogramas entre imágenes de un mismo expe-rimento para el canal de núcleos (azul). . . 42 4.2. Comparación de histogramas entre imágenes de un mismo
expe-rimento para el canal de proteínas (rojo). . . 43 4.3. Comparación de histogramas entre imágenes de un mismo
expe-rimento para el canal de proteínas (rojo lejano). . . 44 4.4. Comparación de histogramas entre imágenes de un mismo
expe-rimento para el canal de proteínas (verde). . . 45 4.5. Comparación de histogramas entre imágenes de diferentes
expe-rimentos para el canal de proteínas (rojo). . . 46 4.6. Comparación de histogramas entre imágenes de diferentes
expe-rimento para el canal de proteínas (rojo lejano). . . 47 4.7. Comparación de histogramas entre imágenes de diferentes
expe-rimento para el canal de proteínas (verde). . . 48 4.8. Comparación de histogramas del canal de núcleos para 3 imágenes
dentro de un mismo experimento luego de aplicar normalización. 51 4.9. Comparación de histogramas del canal de proteínas rojo para
3 imágenes dentro de un mismo experimento luego de aplicar normalización. . . 52 4.10. Comparación de histogramas del canal de proteínas rojo lejano
para 3 imágenes dentro de un mismo experimento luego de aplicar normalización. . . 53 4.11. Comparación de histogramas del canal de proteínas verde para
3 imágenes dentro de un mismo experimento luego de aplicar normalización. . . 54 4.12. Comparación de histogramas de canales de proteínas verde para
las imágenes de diferentes experimentos analizadas en la Sección 4.1.2.1.2 luego de aplicar normalización. . . 55 5.1. Resumen de experimentos analizados. . . 73 5.2. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de núcleos. . . 74 5.3. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 1 (canal rojo). . . 74 5.4. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 2 (canal rojo lejano). . 75 5.5. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 3 (canal verde). . . 75 5.6. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 1 (canal rojo). . . 76 5.7. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 2 (canal rojo lejano). . 76 5.8. Matriz de confusión para muestra de imágenes del conjunto de
5.9. Matriz de confusión para muestra de imágenes del conjunto de validación en el canal de proteínas de tipo 1 (canal rojo). . . 77 5.10. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 2 (canal rojo lejano). . 77 5.11. Matriz de confusión para muestra de imágenes del conjunto de
validación en el canal de proteínas de tipo 3 (canal verde). . . 78 5.12. Resultados comparativos generales de soluciones basadas en Deep
1. Introducción
La biología Molecular es una ramicación de la ciencia referente a la actividad biológica en el nivel de la molécula. Un aspecto fundamental de esta rama se reere a entender cómo los diversos sistemas celulares obran recíprocamente en términos de función de la manera de síntesis de la DNA, del ARN y de la proteína.
Debido, entre otras causas, al tamaño tan pequeño del tema de estudio, la biología celular y molecular dependen, relativamente más que otras ramas de la biología, del desarrollo de nuevos instrumentos y tecnologías [1]. Este trabajo de tesis se enmarca dentro de una línea de investigación llevada a cabo en el instituto INTIA, que se enfoca en el problema de conteo de células en imágenes multiespectrales de microscopía de uorescencia utilizando diferentes métodos y técnicas. Una de ellas es la que tiene relación con este trabajo de tesis, como se describe a continuación.
En muchos casos, como en la biología molecular, los mecanismos de conteo pueden clasicarse en las siguientes categorías: i) aquellos en los que el conteo se realiza directamente observando las muestras o las imágenes y registrando el conteo en un documento, ii) aquellos en los que el conteo se realiza manualmente utilizando herramientas de análisis de imágenes y funcionalidades de asistencia al conteo como es el caso del software Fiji [2] con el plugin Cell Counter [3], iii) los que se basan en un conteo semi-automático con alguna herramienta de pro-cesamiento de imágenes y iv) los que realizan un conteo totalmente automático en base a un aprendizaje supervisado [4]. El trabajo perteneciente a esta tesis se corresponde con la categoría iii) de esta clasicación.
1.1. Motivación
1.2. Objetivos
El objetivo general de este trabajo es el desarrollo de una herramienta de cuanticación de imágenes de microscopía de uorescencia, permitiendo median-te extracción de caracmedian-terísticas obmedian-tener el número de células que reaccionaron a diferentes proteínas, tanto en el núcleo como en el citoplasma.
1.3. Estructura del trabajo
En el inicio de este documento se realizó una introducción acerca de los conceptos básicos de imágenes de uorescencia y se presentó el problema de conteo de células. En el capítulo 2 se presentan los conceptos más importantes acerca de microscopía de uorescencia y técnicas de procesamiento de imágenes. También se plantea el contexto del problema de cuanticación de las expresiones celulares.
2. Marco teórico
En este capítulo se presenta el problema que se desea solucionar y los aspec-tos teóricos fundamentales en los que se basa la solución propuesta al problema. En la Sección 2.1 se describen las características relevantes de las imágenes multiespectrales de microscopía de uorescencia y el problema particular de la cuanticación de expresiones celulares en este tipo de imágenes de alta resolu-ción. Luego en la Sección 2.2 se presentan los conceptos básicos de procesamiento de imágenes digitales y sus implicancias en el procesamiento de imágenes de mi-croscopía. Finalmente, en la Sección 2.3 se describe la herramienta ImageJ y las funciones que se utilizaron para resolver el problema planteado.
2.1. Imágenes de Microscopía de uorescencia
Las imágenes de Microscopía de Fluorescencia poseen particularidades que no están presentes en las imágenes convencionales, desde el fenómeno físico de formación hasta los formatos de soporte. Esto provoca que el tratamiento de estas imágenes desde el punto de vista de su procesamiento digital sea llevado a cabo con enfoques especícos para este tipo de imágenes. Las características de estas imágenes se presentan a continuación junto con los aspectos biológicos que denen el problema de conteo que se intenta solucionar.
2.1.1. Características del aspecto biológico
2.1.2. Características de las imágenes
En esta Sección se presentan las características de las imágenes de Micros-copía de Fluorescencia, desde los aspectos físicos y biológicos relacionadas a la captura de las mismas hasta las características y estructura que identican este tipo de imágenes y las distinguen de los demás formatos.
2.1.2.1. Formación de imágenes La absorción y posterior re-irradiación de la luz por especímenes orgánicos e inorgánicos es típicamente el resultado de fenómenos físicos conocidos como uorescencia o fosforescencia. La emisión de luz a través del proceso de uorescencia es casi simultánea con la absorción de la luz de excitación debido a un retardo de tiempo relativamente corto que varía por lo general menos de un microsegundo de duración. Cuando la emisión persiste más tiempo después de que la luz de excitación se ha extinguido, el fenómeno se denomina fosforescencia [7]. Estos fenómenos físicos determinan que el modelo de captura de imágenes (que se describe más adelante en esta Sección) sea particular y presente desafíos (que se presentarán en la Sección 2.1.3).
Fluorocromo es una molécula capaz de absorber fotones y emitir fotones de menor energía (mayor longitud de onda). Un uoróforo es la parte del uoro-cromo responsable de la emisión de la uorescencia [1].
Una variedad de especímenes exhiben auto uorescencia (sin la aplicación de uorocromos) cuando son irradiados, un fenómeno que ha sido explotado a fondo en los campos de la botánica, la petrología, y la industria de semi-conductores. Por el contrario, el estudio de los tejidos y patógenos animales a menudo se complica con una auto uorescencia inespecíca extremadamente débil o brillante. En estos casos se añaden uorocromos (también denominados uoróforos), que emiten luz de intensidad denida y útil. Los uorocromos son manchas que se adhieren a las estructuras visibles o sub-visibles, a menudo son altamente especícas en su jación. El crecimiento generalizado en la utiliza-ción de la microscopía de uorescencia está estrechamente ligado al desarrollo de nuevos uoróforos sintéticos y naturales con perles de intensidad conocidos de excitación y emisión, junto con blancos biológicos bien entendidos [7].
Debido a la diferente conguración electrónica de los uorocromos cada uno presenta un espectro de excitación y de emisión característico y único.
Espectro de excitación: Muestra la diferente intensidad de la luz de emisión máxima a diferentes longitudes de onda de excitación.
Espectro de emisión: Muestra la intensidad relativa de emisión a diferentes longitudes de onda al excitar con la longitud de onda máxima.
La aparición de células de uorescencia junto con el avance tecnológico de los microscopios de alta resolución, han hecho posible para los cientícos, probar la estructura y las funciones celulares con una precisión y especicidad nunca antes lograda. Los experimentos sobre imágenes se han convertido en la fuente principal de los biólogos para probar y validar hipótesis sobre fenómenos celu-lares y molecucelu-lares. Los métodos computacionales de interpretación automática y de extracción de características de imágenes biológicas se han convertido en una parte fundamental de los experimentos.
El proceso de formación y captura de imágenes puede resumirse en los si-guientes pasos:
1. Excitación de uoróforos: Las moléculas de uorescencia deben ponerse en un estado de excitación en primer lugar. Esto ocurre con la absorción de un fotón, se consigue iluminando al espécimen por ejemplo con una lámpara.
2. Emisión de fotones: Al volver a su estado `normal', los uoróforos emi-ten un fotón con menor energía respecto al fotón que fue previamente absorbido.
3. Detección de fotones: Una proporción de la luz emitida deberá entrar en el lente objetivo del microscopio y se enfoca en dirección a un detector. Cuando un fotón llega al detector se registra como un acierto liberando un electrón.
4. Cuanticación y almacenamiento: Cada ciertos intervalos de tiempo, las cargas de electrones producidas por los fotones detectados se cuantican, y a partir de esas cuanticaciones se determinan los valores de los pixeles. Una carga grande indica una gran cantidad de fotones, lo cual se traduce como un valor mayor de pixel [7].
El objetivo del microscopio de uorescencia es separar la luz emitida de la luz de excitación, esto es posible gracias al uso de ltros ópticos. Para lograr una imágen de buena calidad es importante seleccionar los ltros adecuados según los indicadores que se utilizan.
Aunque a menudo se detecta que cada indicador tiene una sola longitud de onda de absorción y emisión, en la realidad suelen tener un amplio espectro de longitudes de onda de excitación y emisión. La elección del ltro es generalmente una decisión entre pasar la luz emitida y bloquear la luz de excitación [8].
ejemplo una muestra a la que se le aplicaron 4 uorocromos diferentes, resultará en una imagen con 4 capas.
Cada capa será una imagen individual en cuanto a la información de las intensidades almacenadas, con la particularidad de que todas las imágenes tie-nen una correspondencia espacial, lo que permite utilizar un modelo de capas. Las intensidades representadas en cada canal se corresponden con una franja pequeña del espectro electromagnético asociada a cada uorocromo. Es así que algunos canales se corresponden con la franja del rojo cercano, otros del rojo medio y otros del rojo lejano. Los uorocromos comerciales disponibles indi-can a cuál rango del espectro se corresponden. En la Figura 2.1 se muestra la correspondencia de la marca Alexa Fluor. Sin embargo es posible utilizar formatos convencionales como RGB, HSV o CMYK para almacenar imágenes multiespectrales, pero estarán limitadas a una cantidad ja de canales.
Figura 2.1: Espectros de emisión de los anticuerpos secundarios conjugados con Alexa Fluor.
2.1.3. Dicultades y desaos
Es importante destacar que como todo proceso automático, la captura puede contener ciertos errores. Uno de los errores más comunes es que muchos fotones no alcanzan el detector, y aun así, muchos que sí lo hacen no son registrados. Por lo general el error se desestima porque se espera que todas las partes de una imagen se vean afectadas del mismo modo por la pérdida de fotones. Sin embargo existen al menos dos fenómenos que pueden afectar negativamente la calidad de la imagen en un canal determinado:
1. Incertidumbre en el espacio: Idealmente, toda la luz originada desde un punto particular debería llegar al detector en exactamente el mismo lugar, para que de ese modo contribuiría al mismo pixel luego. En la práctica, la luz originada en un punto no puede ser enfocada en un solo punto del detector. En consecuencia, este puede terminar extendiéndose sobre varios pixeles generando una imagen borrosa.
micros-copía de uorescencia. En cambio, las imágenes suelen tener variaciones azarosas en el brillo conocido como ruido. Algunos ruidos suelen generarse por imprecisiones a la hora de determinar la carga de algunos electrones pequeños. Pero a su vez, la emisión de protones es en sí azarosa por lo tanto, por más que se detecten todos los protones perfectamente la imagen contendrá ruido de todos modos [7].
El efecto de desenfoque en las imágenes es inconveniente porque: 1. Afecta la apariencia del tamaño de las estructuras.
2. Afecta la apariencia de las intensidades de las estructuras.
3. A veces afecta la cantidad de estructuras. Al mismo tiempo, cualquier medición que se quiera tomar en una imagen puede ser afectada por el efecto de desenfoque.
2.1.3.1. Stitching Debido al tamaño pequeño de los objetos que quieren analizar y a la necesidad de capturarlos con una alta resolución, es que la ima-gen capturada se corresponde a una parte de la muestra y por lo tanto para representar toda la muestra, se deben capturar un gran número de imágenes. Como para tomar cada imagen se debe desplazar el sistema de captura, se pro-duce un fenómeno de superposición de imágenes ya que un objeto, o parte del mismo se encuentra en más de una imagen. Una representación de este fenómeno puede verse en la Figura 2.2.
Figura 2.2: Imagen de alta resolución formada por un conjunto de imágenes más pequeñas.
Las técnicas para esta solución se denominan Stitching [9]. Este proceso requie-re una gran cantidad de iteraciones sobrequie-re las imágenes para hallar las partes comunes y luego construir una única imagen. Conviene aclarar que el proceso de Stitching puede ser más complejo de lo que parece, ya que tener en cuenta las dependencias de una imagen con las imágenes vecinas superpuestas a la misma, en todas las direcciones. Esto provoca que por ejemplo una serie de desplaza-mientos que solucionan la superposición en un eje, pueden resultar en desfasajes en otros ejes.
2.1.3.2. Registración Además, considerando que el mecanismo de captura de imágenes en diferentes canales implica un movimiento mecánico de los ltros, se produce un efecto de falta de correspondencia espacial entre las imágenes de cada canal, ya que cada imagen contiene una escena ligeramente diferente a las demás. La corrección de este fenómeno se puede realizar al momento de abrir la imagen si se almacena junto con la misma la posición de la escena correspondiente a cada uno de los canales. Esto se puede visualizar en la Figura 2.3.
Figura 2.3: Imagen formada por varios canales luego de aplicar técnica de regis-tración.
2.2. Procesamiento de imágenes digitales
Uno de los enfoques utilizados para solucionar el problema de cuanticación celular en imágenes de microscopía de uorescencia es a partir de las técnicas de procesamiento de imágenes digitales. De esta manera, se extraen, clasican y presentan características de la imagen para realizar el conteo de expresiones celulares presentes en cada canal.
El análisis de imágenes comprende la cuanticación de objetos dentro de una imagen, asignando éstos a grupos o clases. El procesamiento de imágenes ha resultado ser una herramienta con un alto potencial en un sinfín de aplicaciones en donde se manipula una imagen digital para obtener las características más importantes que permitan trabajar con ella ecientemente.
(x,y) es conocido como intensidad de nivel de gris en ese punto. Cuando los valores de x, y y f son discretos y nitos se lo llama imagen digital. Entonces una imagen digital está formada por un número nito de elementos comúnmen-te llamados pixeles. Computacionalmencomúnmen-te hablando, un pixel es simplemencomúnmen-te un número. Visualmente se suele pensar en una imagen como un conjunto de cuadrados representando cada uno de ellos un pixel diferente, de un color de-terminado; pero en el campo del procesamiento de imágenes lo que realmente importa de un pixel es el valor numérico que contiene [10]. El procesamien-to digital de imágenes se reere a la transformación de una imagen a formaprocesamien-to digital y su procesamiento mediante computadoras digitales [11].
A pesar de que el campo de procesamiento de imágenes está basado en fun-ciones matemáticas y fórmulas de probabilidad, la intuición y análisis humano juegan un papel fundamental a la hora de elegir una técnica sobre las demás; y esta elección muchas veces está basada en aspectos visuales subjetivos. Las imágenes digitales se representan como un set discreto de intensidades, por lo que es importante conocer la habilidad del ojo para discriminar diferentes nive-les de intensidad. El rango de nivenive-les de intensidad de luz al cual el ojo humano puede adaptarse es enorme. Hay evidencia que demuestra que el brillo subjetivo (intensidad percibida por el sistema visual humano) es una función logarítmica de la intensidad de luz incidente en el ojo. Lo fundamental a comprender es que el sistema visual no puede operar sobre todo el rango simultáneamente. Al contrario, logra tener esa variación grande cambiando la sensibilidad promedio; este fenómeno se llama `Adaptación de brillo' (brightness adaptation). Por ca-da conjunto de condiciones, el nivel actual de sensibilica-dad del sistema visual se llama nivel de adaptación de brillo (brightness adaptation level).
Figura 2.4: Etapas del procesamiento de imágenes.
2.2.1. Captura
La adquisición de imágenes es una etapa en la que un dispositivo generador construye una imagen en respuesta a señales de entrada provenientes de diversos tipos de objetos. La generación de imágenes de microscopía de uorescencia en particular se realiza como se explica en la Sección 2.1.2.1. Es importante mencionar que en el contexto de este Pipeline, las dicultades mencionadas afectan algunas de las etapas siguientes.
2.2.2. Preprocesamiento
pero verse similares o lo contrario es porque utilizan diferentes LUTs (lookup tables). Es decir, una LUT es una especie de diccionario que contiene pares de (valor numérico, color).
En la microscopía de uorescencia se suele evitar el uso de LUT para asegurar que se está trabajando con el valor de intensidad original de cada píxel capturado por la cámara.
Como se mencionó anteriormente, una imagen se describe como una función f(x,y). Un píxel p con coordenadas (x,y) tienen 4 vecinos horizontales y vertica-les cuyas coordenadas están dadas por : (x+1,y), (x-1,y), (x,y+1),(x,y-1). Este conjunto de pixeles se llama vecindario de p [10].
El realce es el proceso de manipular la imagen para que sea más adecuada que la original para una aplicación especíca. El motivo principal de alterar las intensidades de las imágenes es la normalización de las mismas cuando se debe trabajar con un gran número de imágenes correspondientes a varios experimen-tos con condiciones diferentes de captura. A continuación se describen algunas técnicas de realce aplicadas en este tipo de imágenes.
2.2.2.1. Estiramiento de histograma Una de las transformaciones linea-les más simplinea-les es el estiramiento de contraste o contrast stretching. Las imáge-nes de bajo contraste pueden ser el resultado de una iluminación pobre, falta de rango dinámico en el sensor o una mala conguración en el lente durante la cap-tura. La idea del estiramiento de histograma es incrementar el rango dinámico de niveles de gris en la imagen procesada [10].
2.2.2.2. Procesamiento de histograma La normalización de histogramas comúnmente se realiza dividiendo cada valor por la cantidad de pixeles en la imagen, denotada como n. Entonces, un histograma normalizado está dado por la fórmula p(rk) = nk/n. La suma de todos los componentes de un histogra-ma da como resultado 1. Los histograhistogra-mas son la base de muchas técnicas de procesamiento.
2.2.2.2.1. Ecualización de histogramas La cantidad máxima de in-formación se determina mediante la distribución de probabilidad de los valores de gris, y por lo tanto por el histograma. La cantidad de información I en una imagen f[x,y] fue especicada por Claude Shannon a nes de la década de 1940 mediante la fórmula de la Ecuación 1, donde p[f] es la probabilidad de ocurrencia del valor de intensidad f.
I[f] =−
fmax
X
f=0
p[f]·log2(p[f])
bits
pixel
(1)
Figura 2.5: Imagen e histograma antes de realizar la ecualización de histograma.
Figura 2.6: Imagen e histograma después de realizar la ecualización de histogra-ma.
2.2.2.2.2. Mejora de vecindario local Los métodos de procesamiento sobre histogramas que fueron descriptos son globales, es decir que los pixeles son transformados a partir de los valores de niveles de gris de los pixeles de toda la imagen. Este enfoque es útil para aumentar el `enhacement' en general en toda la imagen, sin embargo hay casos en los que se necesita mejorar pequeñas áreas de una imagen. La solución es utilizar fórmulas que tengan en cuenta los niveles de grises de los pixeles vecinos.
2.2.2.3. Filtros El análisis de imágenes complejas involucra muchas veces el uso de ltros en alguna etapa del procesamiento. La idea básica del ltrado es que a cada píxel en una imagen se le asigne un nuevo valor dependiendo el valor de los pixeles de una región cercana correspondiente (vecindario). Cada ltro calcula el nuevo valor utilizando diferentes regiones de vecindad o diferentes fórmulas. Existen 2 grandes categorías dentro de los ltros: lineales y no lineales. Los ltros lineales reemplazan el valor de cada pixel por una combinación lineal de otros pixeles. La única habilidad que debe tener es el conocimiento de sumar y multiplicar.
Los ltros no lineales toman una vecindad de pixeles, escalan los valores por medio de valores constantes, y suman los resultados para obtener nuevos valores de píxeles [10].
En el caso de las imágenes de microscopía de uorescencia, la aplicación de ltros debe realizarse con cuidado, ya que los mismos provocan una alteración de los valores de intensidad.
2.2.3. Segmentación
La segmentación se usa tanto para localizar objetos como para encontrar los límites de estos dentro de una imagen. Las técnicas de segmentación han sido desarrolladas desde los años 60 donde originalmente se aplicaban a imágenes en blanco y negro, y posteriormente, con el avance de la tecnología de adquisición, sobre imágenes en escala de gris y a color. Por otra parte, la segmentación puede ser tanto supervisada como no supervisada. En los casos en que el conjunto de características en la imagen sea pequeño, la segmentación puede ser supervi-sada proveyendo al algoritmo empleado, ciertos parámetros conocidos para el procesamiento. En los casos en los cuales no se pueden hacer suposiciones sobre las características de las imágenes se aplican algoritmos no supervisados, es de-cir, no reciben ningún parámetro de entrada que ayude a tomar las decisiones lógicas [12].
2.2.3.1. Discontinuidad Se divide la imagen basándose en cambios bruscos de nivel de gris. Las principales técnicas se basan en:
Detección de líneas
Detección de puntos aislados Detección de bordes
2.2.3.2. Similitud Se divide la imagen basándose en la búsqueda de zonas que tengan valores similares, conforme a unos criterios prejados:
El método utilizado para resolver el problema especicado en este trabajo es umbralización el cual se detalla a continuación.
2.2.3.2.1. Umbralización El resultado de la etapa de segmentación es una imagen binaria en la cual un píxel puede tener 2 valores posibles que indi-que si el mismo pertenece a algún objeto o no. El modo más usual de generar una imagen binaria es aplicarle un umbral o `Threshold'. No siempre es simple de encontrar un umbral para una imagen ya que los valores de sus píxeles va-rían demasiado. Naturalmente, thresholding considera que hay solos 2 valores posibles de pixeles (aquellos que pertenecen a objetos relevantes y aquellos que no).
Un problema que afecta a la hora de aplicar umbrales es el ruido. Esto causa que los valores relevantes se mezclen con los del ruido en sí y el resultado del umbralado es una imagen con pixeles que no pertenecen a objetos marcados co-mo tales. Otro problema común es que en ocasiones, las estructuras que deben ser detectadas se encuentran en un fondo con muchas variaciones de brillo por lo cual no es posible aplicar un único umbral a la imagen y obtener buenos re-sultados. La solución es aplicar diferentes umbrales a ciertas partes de la imagen [10].
En el caso de las imágenes de microscopía de uorescencia, la umbralización es una etapa muy importante ya que es una manera de eliminar el fondo y denir los objetos de interés. La determinación de los umbrales suele ser una cuestión crítica y en los casos de las soluciones semi-automáticas como la de este trabajo, conviene que sea realizada por un experto.
2.2.3.2.2. Region Growing El objetivo principal de este método, es encontrar áreas o sectores de interés en la imagen mediante el agregado de píxeles individuales llamados semillas hasta formar un conjunto llamado región. Inicialmente propuesto por Rolf Adams y Leanne Bischof en 1994 [13], el método Region Growing parte de un píxel inicial o semilla perteneciente a la región de interés, y la hace crecer añadiendo los píxeles adyacentes que sean similares al inicial de acuerdo a cierta propiedad denida. Debido a la naturaleza de este algoritmo de segmentación, tanto la selección de la semilla inicial como el criterio para determinar si un píxel debe ser añadido a la región o no, son determinantes y afectan al resultado de la selección de las regiones de interés. Al igual que la umbralización, por lo general no se utiliza el Region Growing solamente en una imagen, sino que se utiliza como parte de un conjunto de operaciones de procesamiento de imágenes, particularmente en la delineación de pequeñas y simples estructuras. Su desventaja principal es que usualmente requiere interacción manual para obtener el punto semilla.
2.2.4. Extracción de características
características que describen los objetos son índice de circularidad, perímetro, área, entre otros. En el caso de las células y sus núcleos, la elección apropiada de características que permitan describirlos y clasicarlos es muy importante.
2.2.5. Clasicación
La clasicación es, generalmente, la etapa nal en el proceso de análisis de una imagen. En esta etapa, se ordenan los objetos obtenidos de la segmentación de una o varias imágenes en clases particulares. Dicha clasicación, puede ser llevada a cabo a partir del reconocimiento de patrones o a partir de la medición de ciertas propiedades del objeto o región de interés, entre las cuales pueden encontrarse tanto propiedades cromáticas como morfológicas o estructurales.
2.3. Fiji-ImageJ
ImageJ es una herramienta de análisis y procesamiento de imágenes multi-plataforma que fue desarrollada por Wayne Rasband en el Instituto Nacional de Salud de EEUU. El objetivo principal que motivó su desarrollo fue tener un sistema de análisis de imágenes de bajo costo que cualquier cientíco promedio pudiera pagar e implementar [14]. La `J' en su nombre proviene de Java el cual es el lenguaje de programación en el cual fue escrita.
Además de ser de libre acceso sin costo, ImageJ es compatible con una amplia gama de funcionalidades creadas por el usuario. Fiji es una distribución de imageJ (su nombre es un acrónimo de `Fiji is just ImageJ' traducido como Fiji es simplemente ImageJ') que incluye plugins y extensiones pensadas para el uso del cientíco. También incluye mecanismos para los programadores que desean crear y agregar nuevas herramientas a la aplicación [15].
2.3.1. Estructura general
ImageJ está compuesta por las siguientes bibliotecas centrales:
SciJava Common - El contenedor de la aplicación SciJava y el framework del plugin.
ImgLib2 - El modelo de datos de imágenes N- dimensional.
ImageJ Common - Estructuras de datos de imágenes ricas en metadatos y extensiones de SciJava.
ImageJ Ops - El framework para operaciones de procesamiento de imáge-nes reutilizables.
Figura 2.7: Jerarquía de librerías de imageJ.
En imageJ todas las imágenes son representadas mediante la clase Image-Plus, las cuales contienen un conjunto de capas o porciones que se encapsulan mediante la clase ImageStack. A su vez las capas tienen información que depen-de depen-de los tipos depen-determinados por la clase ImageProcessor. Esta clase permite acceder a la información de cada píxel individualmente y realizar las transfor-maciones deseadas durante el pre-proceso y segmentación de las imágenes.
Figura 2.8: Diagrama de las clases que representan una imagen en ImageJ.
2.3.2. Operaciones de pre-procesamiento de imágenes
Tanto ImageJ como Fiji contienen diversos plugins y herramientas que per-miten realizar distintas operaciones sobre las imágenes con las cuales se desea trabajar.
El valor de la opción de píxeles saturados determina el número de píxeles en la imagen a los cuales se les permite que se vuelvan saturados. Incrementando este valor se incrementa el contraste. Este valor debería ser mayor a 0 para evitar que algunos valores `sobresalientes' de pixeles causen que no funcione el estiramiento del histograma.
Si se selecciona la opción de normalizar los valores de los pixeles son recal-culados para que el rango sea igual al máximo rango permitido para el tipo de la imagen. El rango máximo para imágenes de 8 bits es de 0 a 255 y para las imágenes de 16 bits es de 0 a 65535. La normalización de imágenes RGB no es soportada. Si se selecciona ecualizar el histograma se crea una selección y la ecualización se lleva a cabo basada en el histograma de la selección. Se utiliza un algoritmo que toma la raíz cuadrada de los valores del histograma, las opciones de saturación de pixeles y normalización se ignoran cuando se selecciona este parámetro.
2.3.2.2. Substract background Substract background es un comando de imageJ que elimina fondos continuos suaves de las imágenes. Si se tiene una supercie 3D con los valores de pixel de la imagen siendo la altura, luego una bola rueda sobre el lado posterior de la supercie creando el fondo. El algoritmo actual usa una aproximación de un paraboloide de rotación en lugar de una bola.
El radio de a `Rolling ball' indica el radio de la curva del paraboloide. Como regla general para imágenes de 8 bits debe ser al menos tan grande como el objeto más grande de la imagen que no pertenezca al fondo. La opción `Light Background' permite el procesamiento de imágenes con fondo brillante y objetos oscuros.
Con la opción `Create Background' la salida es el fondo en si en vez de la imagen con el fondo restado. Esta opción es útil para examinar el fondo creado.
2.3.2.3. Auto threshold Auto threshold es un plugin perteneciente a ji que convierte en binario las imágenes de 8 y 16 bits usando diversos métodos de umbrales basados en el histograma. La fase segmentada se muestra siempre con intensidad máxima (blanco).
El proceso tiene diferentes opciones que pueden parametrizarse:
Ignore White, ignore black (ignorar blanco o negro), este método setea los bins respectivos a los niveles de gris 0 y 255 a 0, es muy útil para aquellas imágenes con pixeles sub o sobre expuestos.
Set Threshold instead of Threshold (establecer umbral en vez del umbral), establece el umbral de LUT sin modicar los pixeles. Esto solo funciona para imágenes individuales.
2.3.2.4. Threshold Threshold es una herramienta de ImageJ para setear valores mínimos y máximos de umbralado segmentando imágenes en escalas de grises en características de interés y antecedentes.
2.3.2.5. Convert to mask Convert to mask (convertir a máscara) es un comando que convierte una imagen a blanco y negro. La máscara tendrá un LUT invertido (blanco es 0 y negro 255). Si no se aplicó un threshold se aplica uno automáticamente.
2.3.2.6. Close Es una operación de dilatación seguida de una erosión. Esto alisa los objetos y llena pequeños agujeros o huecos.
2.3.2.7. Watershed Watershed es una segmentación que permite separar las partículas que se tocan. Primero calcula el mapa de distancia euclidiana y encuentra los puntos erosionados nales (UEP). Luego dilata cada UEP tanto como sea posible, ya sea hasta que se alcanza el borde de la partícula o cuando el borde toca una región de otra UEP (en crecimiento). La segmentación de watershed funciona mejor para objetos convexos lisos que no se superponen demasiado.
2.3.3. Analyze Particles
Analyze particles es un plugin de ji que toma una imagen y realiza la segmentación buscando partículas. Este comando cuantica y mide objetos en imágenes binarias o umbrales de acuerdo a los parámetros ingresados por el usuario.
2.3.3.1. Funcionamiento Esta herramienta realiza un escaneado de la ima-gen o de la selección de la misma hasta hallar el borde de un objeto. Luego lo delimita usando la herramienta `varita mágica', lo mide usando el comando `Measure', lo rellena para hacerlo invisible y luego continúa escaneando has-ta llegar al nal de la selección de la imagen. Los parámetros necesarios para ejecutar esta herramienta son:
Size: el rango va desde 1 a 99999 pixels.
Circularity: el rango va desde 0.00-1.00. La fórmula para calcular la cir-cularidad es 4π(area/perimetro^2). Un valor ingresado igual a 1 indica un
Show: en este campo se elige que característica mostrar en la imagen al nalizar el proceso. Si se elige `outlines' imageJ abrirá una ventana conteniendo los contornos numerados de las partículas. Al elegir `masks' se muestran los contornos rellenos, `ellipses' para mostrar el mínimo elipse de cada partícula medida. `Count masks' genera un imagen de 16 bits que muestra las partículas pintadas con un valor correspondiente al número de partícula.
Display results: es un valor booleano que indica si se mostrarán o no los resultados de las mediciones para cada partícula en la ventana de resultados.
Clear results: es un valor booleano que indica si se desea eliminar cualquier resultado previo existente de mediciones.
Summarize: check que indica si se desea mostrar en una ventana diferen-te la cuenta de partículas, área total por partícula, tamaño promedio y fracción de área.
Exclude on edges: check para indicar si se ignoran aquellas partículas que se encuentren en el borde de la imagen o de la selección de la misma. Include holes: booleano que indica si se desea incluir el área de algún hueco como si se encontrara lleno en las mediciones. Si no se chequea se excluyen los huecos interiores y se miden partículas comprendidas dentro de otras. Record starts: esta opción almacena las coordenadas iniciales (x,y) de cada partícula. Este dato permite recrear el contorno de una partícula usando el comando doWand(x,y), llenar el contorno o eliminarlo, reconstruir las partículas.
Add to manager: agrega los ROIs de las partículas al ROI manager y los muestra etiquetados.
Las partículas que excedan el rango especicado en el campo Tamaño o que tengan una circularidad fuera del valor ingresado en el campo correspondientes son ignorados. Otras coordenadas como centro de masa o el centroide no se garantiza que sean siempre incluidas en la partícula por la variabilidad que estas pueden presentar.
2.3.3.2. Conguración de parámetros El comando Set measurements permite congurar qué medidas serán almacenadas por los procesos de Analize particles o measure en el menú `Analize'. Las medidas posibles que se pueden congurar son:
Area: área de selección en píxeles cuadrados.
Standar deviation: desviación estándar de los valores de gris usados para generar el valor medio de gris detallado anteriormente.
Modal gray value: valor de gris con mayor ocurrencia en la selección. Co-rresponde con el mayor pico en el histograma.
Min & max gray level: valores mínimos y máximos de gris dentro la selec-ción.
Centroid: punto central dentro de la selección. Es el promedio de las coor-denadas x e y de todos los pixeles en la imagen o selección. Utiliza los valores de las columnas de X e Y de la tabla de resultados.
Center of mass: es el promedio ponderado de brillo de las coordenadas x e y de todos los píxeles en la imagen o selección. Usa el valor de las columnas XM e YM.
Perimeter: longitud del contorno externo de la selección.
Bounding rectangle: es el menor rectángulo que encapsula la selección. Usa los valores de las columnas BX, BY, Width, Height; dónde BX y BY son las coordinadas de la esquina superior izquierda del rectángulo.
Fit ellipse: ajusta un elipse a la selección. Usa los valores de las columnas Major, Minor y Angle. Major and minor son los ejes primario y secundario del mejor elipse posible. Angle (0-180) es el ángulo entre el eje primario y la línea paralela al eje x de la imagen. Las coordenadas del centro del elipse se muestran como X e Y si `centroid' es seleccionado.
Shape descriptors: calcula y muestra los siguientes descriptores de formas: Circ (circularity): Un valor de 1 indica un círculo perfecto. A medida que el valor se acerca a 0 se indica una forma cada vez más alargada. AR (aspect ratio): eje mayor / eje menor.
Round: o el inverso del aspect ratio. Solidity.
Feret´s diameter: la mayor distancia entre 2 puntos al azar a lo largo de los límites de la selección, también conocida como calibre máximo. Utiliza el valor de la columna Feret. El ángulo Feret es el ángulo entre el diámetro de Feret y una línea paralela al eje x de la imagen. Min Feret es el diámetro mínimo de calibre.
Integrated density: calcula y muestra 2 valores. IntDen que es el producto del área y del valor medio de gris; y RawIntDen que es la suma de los valores de pixeles en la imagen o selección.
Skewness: el momento del tercer orden de la media. Kurtosis: el momento del cuarto orden de la media.
Area fraction: el porcentaje de pixeles en la imagen o selección que han sido resaltados en rojo por el comando `Image -> Adjust -> threshold'. Para aquellas imágenes a las cuales no se les aplicó un umbralado (threshold) el porcentaje será igual a 0.
Stack position: posición actual (canal, slice y frame) en el stack o hypers-tack. Usa los valores de las columnas Ch, Slice y Frame.
Limit to threshold: si se selecciona esta opción solo los pixeles umbralados serán incluidos en las mediciones.
Display label: si se selecciona esta opción se almacena el nombre de la ima-gen y el número de slice en la primera columna de la tabla de resultados. Invert Y coordinates: si se selecciona esta opción, el origen XY se asume que es la esquina inferior izquierda de la imagen o selección en vez de la esquina superior izquierda.
Redirect to: la imagen seleccionada en el este popup será utilizada como el objetivo para cálculos estáticos realizados por los comandos `Measure' y `Analize particles'. Esta opción permite delinear una estructura en una imagen y medir la intensidad de la región correspondiente en otra imagen. Decimal places: es el número de dígitos a la derecha del punto decimal en números reales mostrados en la tabla de resultados y en la ventana del histograma.
2.3.4. Cell counter
Cell counter es una herramienta creada por Kurt De Vos del departamento de neurología de la universidad de Sheeld. Este plugin permite contar elementos en una imagen, creado originalmente con el objetivo de contar células en una imagen de microscopía.
El funcionamiento es muy sencillo, consiste en abrir la imagen que se desea cuanticar y hacer click en el botón `Initialize', luego se van contando los ele-mentos clickeando sobre cada uno de ellos. Al hacer click sobre la célula se marca en la imagen el objeto con el número del tipo seleccionado. En un principio se comienza con 8 tipos disponibles pero la herramienta permite agregar o quitar los tipos que se deseen. Para contar cada tipo simplemente se van seleccionando en la ventana del plugin. Una utilidad fundamental que tiene esta herramienta es la de cargar conteos realizados previamente mediante la opción `Load markers'. Esta permite cargar un archivo xml que contenga los conteos de la imagen, una vez cargado se muestran en la imagen todos los contadores y sus tipos.
muy importante que las dimensiones y el nombre de la imagen se indiquen correctamente para que se puedan cargar los conteos.
Un ejemplo breve de un archivo xml compatible con la herramienta es:
<?xml version="1.0" encoding="UTF8"?> <CellCounter_Marker_File>
<Image_Properties> <Image_Filename>
E322a_d1_B1_Mash1RFP_bIIItubmG2bA488_DCXgpA647_222_OHT_1.czi </Image_Filename>
</Image_Properties> <Marker_Data>
<Current_Type> 1 </Current_Type> <Marker_Type>
<Type> 1 </Type> <Marker>
<MarkerX> 917 </MarkerX> <MarkerY> 0 </MarkerY> <MarkerZ> 1 </MarkerZ> </Marker>
</Marker_Data>
</CellCounter_Marker_File>
2.3.5. Bio-formats
Bio-formats es una herramienta para leer y escribir imágenes usando forma-tos abierforma-tos y estandarizados. Es un proyecto abierto que contiene una interfaz que es soportada por diversas herramientas como imageJ entre otras.
Una imagen puede tener muchos planos bidimensionales de valores de in-tensidad de píxeles. Cada píxel correspondiente a un plano se identica por sus valores de coordenadas x e y. Estos planos pueden ser identicados por varias dimensiones como por ejemplo z (tercera coordenada espacial), c (canal) o t (tiempo). Los planos se pueden dividir en azulejos que son zonas rectangulares de un plano lo cual resulta muy útil en planos muy grandes.
3. Estado del arte
En este capítulo se presentarán algunas soluciones existentes para el conteo de células y expresiones celulares en imágenes de microscopía de uorescencia. Se enumeran diferentes tipos de trabajos relacionados, algunos de ellos se co-rresponden con soluciones semi-automáticas como CellProler e ImagePro Plus (presentadas en las secciones 3.1 y 3.2), otros con métodos automáticos (como el trabajo mencionado en la Sección 3.3) y nalmente otros trabajos con enfoques diferentes como lo son las redes neuronales (Detección de ubicación de células y clasicación de células detallados en las secciones 3.4.1 y 3.4.2 respectivamente).
3.1. Cell Proler: software de análisis de imágenes para
identicar y cuanticar fenotipos celulares
CellProler [17] es un software de análisis de imágenes que incluye un con-junto de métodos para manejar diferentes tipos de células y a su vez contiene una plataforma open source para desarrollar nueva funcionalidad y compartirla. La herramienta fue desarrollada en el lenguaje MATLAB, por lo que si bien el código se encuentra disponible, se requiere una licencia para el lenguaje. El procesamiento se realiza en etapas y por lo general se distribuye del siguiente modo:
1. Procesamiento de imágenes: una de las correcciones más críticas que se realizan en esta etapa es la corrección de iluminación mediante varias funciones incorporadas. Otras mejoras que pueden realizarse también son alineaciones o recortes.
2. Identicación de células: en la mayoría de las imágenes biológicas las cé-lulas se tocan entre sí o se encuentran muy cerca lo que causa que la mayoría de los algoritmos comerciales existentes fallen. Los algoritmos de segmentación en esta herramienta contienen una estrategia modular de 3 pasos basados en algoritmos publicados previamente. Primero, los objetos agrupados son reconocidos y separados; luego se buscan las líneas divi-sorias entre objetos; y en tercer lugar algunos de los objetos resultantes son o bien eliminados o unidos en base a sus mediciones de características como por ejemplo la forma o el tamaño. Una vez localizados los objetos primarios (por lo general núcleos), los bordes de los objetos secundarios que rodean a los núcleos se pueden delimitar más fácilmente.
3.2. ImagePro Plus
ImagePro Plus es una herramienta de análisis de imágenes perteneciente a la compañía Media Cybernetics. La misma contiene funcionalidad que permite entre otras, realizar conteos de imágenes celulares.
Un uso válido que se le da a ImagePro Plus es aplicar una rutina con deni-ción automática de densidad media y umbrales de área para contar visualmente núcleos etiquetados de PCNA. El macro para contar núcleos que reaccionaron al anticuerpo PCNA fue desarrollado usando ImagePro Plus. La segmentación de imágenes se basó en un modelo RGB con 8 bits por canal. Las áreas segmen-tadas en las imágenes fueron ltradas para contar solo aquellos núcleos con un 50 % de área que haya reaccionado al anticuerpo como mínimo. De este modo se aplicaron umbrales para densidad media, área, ejes, circularidad y perímetro. Los umbrales para el área y la densidad media fueron seteados automáticamente en base a sus valores respectivos en las imágenes medidas en un inicio [18].
La funcionalidad de conteo de células de esta herramienta presenta una in-terfaz de usuario muy interactiva, que permite visualizar el conteo mientras se modican los parámetros de conguración, lo cual permite una mayor uidez en el uso y una mayor precisión en el conteo. Para utilizar esta funcionalidad se requiere una licencia adicional, además de la requerida para la herramienta ImagePro Plus.
3.3. Método de Conteo automático para detección de
cé-lulas embrionarias
Este trabajo [19] se enfoca en un Sistema de detección automática de células madres embrionarias y un método de conteo para imágenes de microscopía de uorescencia. Si bien el tipo de células no se corresponden exactamente con las que se trabajó en esta tesis, tanto las características de las imágenes como las técnicas utilizadas se consideran relevantes desde el punto de vista de su análisis. Se basa en utilizar la información de luminancia para generar una represen-tación basada en grafos. Luego un proceso de minería se usa para detectar las células.
Las imágenes tienen una característica interesante que es que los pixeles de una célula son más claros en el centro y la intensidad de los pixeles va disminuyendo gradualmente hacia los bordes. El conteo de células se realiza mediante el seguimiento de caminos con técnicas de minería de grafos donde cada célula está representada en el mismo como una estructura particular llamada `Simple path'. Las imágenes se recorren considerando cada píxel como un punto situado en una altitud en función de su nivel de gris.
El proceso consta de varias etapas:
Pre proceso: en esta etapa se aplica un ltro gaussiano con radioθpara
reducir el ruido y resaltar los puntos máximos. A continuación se separan las células del fondo usando un umbral: t = µ + xδ. Siendo µ el valor
promedio, x un valor constante yδla desviación estándar. Los pixeles con
Partición de histograma: se parte el histograma creando bitmaps por divi-siones de 256. El resultado es una matriz MxM con las mismas dimendivi-siones que la imagen de entrada.
Construcción del grafo G = (V, E): El grafo está basado en la matriz M. Cada nodo vi perteneciente a V corresponde a un componente conectado y su índice corresponde al valor de la etiqueta del componente. Los arcos en E conectan pares de componentes adyacentes 4x4. Para el armado se recorre M desde arriba hacia abajo y de izquierda a derecha evaluando para cada uno el vecino de arriba y de la izquierda. Si uno de ellos es diferente al elemento actual entonces representan pixeles que pertenecen a diferentes componentes.
Minería del grafo: En esta etapa se recorre el grafo buscando hallar un patrón dado por una región luminosa con regiones adyacentes con menor brillo. Un `Simple path' en un grafo G = (V, E) que se puede denir como un subgrafo S tal que: los nodos en S están conectados a otros nodos en S, cada nodo en S tiene un grado máximo 2. y el valor índice de un nodo es menor que el valor de uno de sus adyacentes y mayor a otro de sus adyacentes. (Están ordenados ascendentemente por valor). Siendo el grafo G = (V, E) con `n' nodos y `m' arcos. El resultado se representa como A =
α1,α2,α3,. . . ,αk. Cadaαi = {vi, vj,. . . , vl | i < j <. . . < l} perteneciente
a A es un `simple path' representando una célula detectada. Al iniciar el proceso de recorrido todos los nodos se marcan como no visitados, se comienza visitando el nodo v0 y se va iterando sobre cada nodo en V en orden decreciente con grado menor a 3.
Cada uno de ellos se clasican según sus vecinos como: Nueva célula
Perteneciente a una célula previamente hallada.
Supongamos vi que es el nodo evaluado actualmente, si vi se clasica como nueva célula entonces αi se crea y se asocia al nodo, luego se agregaαi al
resultado A. En cambio, si vi se clasica como perteneciente a otra célula, por ejemplo la k-ésima, se asocia aαk perteneciente a A. En ambos casos
al nalizar, vi se marca como visitado. La clasicación se hace del siguiente modo:
El grado de vi es 1, es una nueva célula si: su vecino vj no fue visitado aún o se visitó y pertenece a otra. Si pertenece a otra entonces vi también.
3.4. Otros enfoques
En esta Sección se detallan trabajos relacionados al alcance del proyecto a realizar pero que utilizaron enfoques diferentes como es el caso de entrenar redes neuronales para realizar conteos automáticos. Este enfoque es novedoso y actualmente se encuentra en desarrollo, por lo que los resultados disponibles son provisorios o especícos de las características de los experimentos con los que se desarrollaron estos trabajos.
3.4.1. Detección de ubicación de células mediante Deep Learning En este trabajo [20] se realiza un proceso del entrenamiento de una red neu-ronal enfocando la tarea de contar células como un problema regresivo donde el conteo global de células se toma como el indicador de entrenamiento super-visado en vez de realizar un framework de detección o clasicación. El método planteado consiste en 3 componentes principales
1. Fase de codicación de ubicación de células usando proyecciones aleatorias. 2. Modelo convolucional basado en regresión para capturar la relación entre
una imagen celular de microscopía y la señal codicada.
3. Fase de decodicación para detección. Durante el entrenamiento, la ubica-ción verdadera (ground truth) de las células se indica mediante un mapa `B' de anotaciones binarias en pixeles.
El esquema de codicación de ubicación celular que se plantea consiste en con-vertir la ubicación de la célula en el mapa `B' a una señal comprimida `y'. El siguiente paso es realizar el entrenamiento de una CNN (red neuronal) que reci-be como conjunto de entrada una imagen de microscopia celular y una señal `y' para que funcione como un modelo de regresión. Se utiliza la función de pérdida Euclidiana durante el entrenamiento porque suele ser la más adecuada para la regresión.
Durante las pruebas, la red entrenada genera una señal estimada y como salida por cada imagen de test. Luego el esquema de decodicación es diseñado para predecir la ubicación de las células a partir de la señal estimada y utilizando la matriz de detección `B' mencionada anteriormente. La implementación de este trabajo [21] fue realizada en los lenguaje Matlab y Python, utilizando el framework portable Mxnet [22].
3.4.2. Clasicación de células mediante Deep Learning
se logra mediante el entrenamiento de una Red Neuronal Convolucional (CNN) usando el error cuadrático medio entre el mapa de aciertos de salida y el área de densidad objetivo como la función de pérdida para la regresión. Finalmente luego del entrenamiento dada una imagen celular de entrada, la CNN predice el mapa de densidad de aciertos D(x). Las implementaciones [24] están basadas en la plataforma de redes neuronales de matlab MatConvNet [25], aplicando las técnicas de propagación hacia atrás o `back-propagation' y descendiente de gradiente estocástico para optimización. Durante el entrenamiento se cortan las imágenes grandes en parches, por ejemplo se toman 500 parches al azar de ta-maño 100x100 desde imágenes de 500x500. Cada parche se normaliza restando su propio valor medio y dividiendo luego por su desviación estándar.
3.4.3. Otros trabajos basados en Deep Learning
En el instituto donde se desarrolló este trabajo de tesis se han implementan-do algunas soluciones basadas en Deep Learning con algunos enfoques similares a los mencionados en las últimas dos secciones. Estas soluciones se relacionan estrechamente con este trabajo, ya que para la etapa de entrenamiento de las Redes Neuronales Convolucionales (CNN) se utilizó la herramienta desarrollada en esta tesis. Se implementaron tres soluciones de deep learning cuyo entrena-miento está basado en los resultados del algoritmo tradicional. Esto permite mejorar la efectividad sin requerir esfuerzo adicional por parte de los expertos para etiquetar casos positivos y negativos. Las tres alternativas se basan en: el entrenamiento a partir de la tabla de características de cada célula detectada por el algoritmo tradicional, entrenamiento a partir de un conjunto de imáge-nes individuales de cada célula ya clasicada [28] y entrenamiento a partir de imágenes completas ya clasicadas[4]. La descripción detallada de estos traba-jos comprende una magnitud tal que hace que la misma se encuentre fuera del alcance de esta tesis. Se redactó un resumen cientíco, que fue aceptado y pre-sentado en formato de póster en el evento Machine Learning Summer School realizado en Buenos Aires en julio de 2018 [27]. En este trabajo se presenta-ron las tres alternativas, con sus resultados y un análisis comparativo que será presentado en la Sección de resultados (Sección 6).
3.5. Conclusión
no se encuentran disponibles los métodos utilizados en su implementación. El trabajo descrito en la Sección 3.3 utiliza un enfoque automático de conteo centrado en el procesamiento de imágenes sumado a la utilización de grafos. El artículo es de acceso restringido para la comunidad cientíca.
4. Método propuesto
En este capítulo se presenta el método propuesto en esta tesis para la solución del conteo de imágenes de microscopía de uorescencia.
La solución se enmarca dentro de las etapas clásicas de procesamiento de imágenes que se describirá en la Sección 4.1. En la Sección 4.2 se describe el trabajo realizado en cuanto al desarrollo de la herramienta.
4.1. Pipeline
4.1.1. Captura y entrada de imágenes
La entrada del proceso se compone por una imagen de microscopía de uo-rescencia celular tomada por un microscopio. Durante esta etapa se realiza la obtención de la imagen la cual es llevada a cabo por un cientíco especializado en el tema. Si bien el plugin obtiene la misma lista para su procesamiento, se analizó cómo abrir apropiadamente la imágen utilizando herramientas disponi-bles.
4.1.1.1. Formato CZI Las imágenes de entrada se encuentran almacena-das en el formato CZI, el cual es un tipo de imagen desarrollado por la empresa de microscopía Carl Zeiss para cumplir especícamente todos los requerimientos de las imágenes de microscopía. Este formato permite almacenar una cantidad diversa de metadatos junto a la imagen en sí misma tales como fecha de ad-quisición, tipo de microscopio y ajustes del mismo, intensidades de láser o de iluminación, dimensiones, tintes y ltros uorescentes, etc. En la Figura 4.2 a continuación hay un resumen de los metadatos más comunes que almacena este tipo de imagen.
Figura 4.2: Metadatos que usualmente contiene un archivo czi.
Figura 4.3: Conguración de importación de imágenes con Bio-Formats.
A continuación se enumeran las opciones necesarias para abrir correctamente las imágenes utilizadas durante este trabajo:
Stitch tiles, esta opción realiza una unión de diferentes `tiles' o secciones de la imagen en una sola, asumiendo que la superposición es de 0 % y utiliza las coordenadas de la etapa para determinar la ubicación correcta de cada parte. Esta opción es la que soluciona una de las dicultades presentes en las imágenes de microscopía de uorescencia mencionadas en la Sección 2.1.3.1 del marco teórico.
Color mode, el valor elegido para esta opción es Composite. Esto abre las imágenes compuestas fusionando todos los canales en uno solo. Los canales se colorean según los metadatos presentes en el conjunto de datos o en el siguiente orden predeterminado: 1 = rojo, 2 = verde, 3 = azul, 4 = gris, 5 = cian, 6 = magenta, 7 = amarillo. Esta opción es la que permite solucionar el tema de las imágenes multiespectrales mediante registración tal como se describió en la Sección 2.1.3.2 del marco teórico.
Autoscale estira los histogramas del canal al valor mínimo y máximo global de cada canal en toda la pila. No altera los valores subyacentes en la imagen.
inyectado en las células. En las imágenes utilizadas en este trabajo se siguió una convención determinada por cada experimento. Por ejemplo en varios de ellos, el primer canal o canal azul (DAPI) contiene la información acerca de los núcleos de las expresiones celulares, el segundo canal o canal rojo (A555) contiene las expresiones celulares luego de ser expuestas a este químico, el tercer canal o también canal rojo lejano o, en ocasiones, blanco (A633, A647) contiene las expresiones celulares que reaccionaron a estas proteínas y por último el cuarto canal o verde (A488) contiene, al igual que los canales anteriores, las expresiones celulares luego de la reacción al uoróforo inyectado.
El primer paso que se realiza en la herramienta es instanciar la imagen de en-trada en la clase de imageJ `ImagePlus' y mediante la clase `ImageProcessor' se obtiene la información de cada canal separado para obtener así cuatro imágenes diferentes, donde cada una de ellas tiene la información de cada canal. Luego el pre-procesamiento y los pasos siguientes se realizan en forma individual para cada uno de ellos.
Figura 4.4: Pseudocódigo que simboliza la separación de canales y la instancia-ción de imágenes para cada uno de ellos.
4.1.2. Pre-proceso de imágenes
En esta etapa se realiza una mejora de contraste que facilita luego la segmen-tación e identicación de objetos a cuanticar. Las operaciones que se realizan en su mayoría son para el canal de núcleos, solo algunas se aplican al canal de proteínas. Los motivos serán detallados en secciones posteriores.
4.1.2.1. Normalización La normalización tiene como objetivo principal lo-grar que los histogramas de las diferentes imágenes contengan una distribución de intensidades similar para que el comportamiento de la herramienta no varíe según el experimento o la imagen analizada.
Se realizó un análisis acerca de la variación en los valores de intensidad de los píxeles en cada canal de varias imágenes que pertenecen a un mismo experimento y luego se hizo lo mismo para imágenes de diferentes experimentos. Con esto se intentó investigar cuan homogeneos o heterogeneos son los histogramas de cada canal en las imágenes.
E320_b_d7_B3_222i_mash1mA555_DCXgpA488_bIIItubm2bAA633.czi E320_c_d10_A3_222i_mash1mA555_DCXgpA488_bIIItubm2bAA633.czi E320_c_d14_D3_222i_mash1mA555_DCXgpA488_bIIItubm2bAA633.czi Por simplicidad se denominarán d7, d10 y d14 respectivamente.
Observando las imágenes e histogramas de las tablas 4.1, 4.2, 4.3 y 4.4, se puede observar como la intensidad de todos los canales aumenta a medida que lo hace la duración del experimento en días. Esto entre otras causas se debe a que por lo general la uorescencia en los canales se intensican a medida que transcurren los días del experimento.
Día Canal Histograma
7
10
14
Día Imagen Histograma
7
10
14
Día Imagen Histograma
7
10
14
Día Imagen Histograma
7
10
14
Cuadro 4.4: Comparación de histogramas entre imágenes de un mismo experi-mento para el canal de proteínas (verde).
4.1.2.1.2. Análisis entre experimentos El análisis entre experimen-tos se realizó tomando imágenes de diferentes experimenexperimen-tos y comparando los histogramas en los canales para los cuales se utilizaron las mismas proteínas. De ese modo detectar las diferencias en las intensidades para cada experimento.
Para analizar las variaciones en el canal rojo se tomaron dos experimentos denominados E203 y E320 ya que en ambos se utilizó la proteína Mash1m para dicho canal. Las imágenes elegidas fueron:
utilizaron la proteína DCXgp para el canal mencionado. Las imágenes elegidas fueron:
E322a_d1_B1_Mash1RFP_bIIItubmG2bA488_DCXgpA647_222_OHT_1 E338_a_d1_A3_222i_mash1mA555_DCXgpA647_bIIItubm2bA488 Por último se realizó un análisis similar para el canal verde. En este caso se tomaron los experimentos E203 y E320e ya que ambos aplicaron la proteína GFPch en el canal mencionado. Las imágenes que se utilizaron fueron:
Exp203b_7d_B3_DCXgpA647_Mash1mA555_GFPchA488_222i E320e_C2_7d_Mash1RFP_GFPchA488_bIIItubm2bA633_1
En las tablas 4.5, 4.6 y 4.7 se puede observar que los histogramas tienen varia-ciones entre sí a pesar de haber utilizado las mismas proteínas para los canales. Esto está relacionado al momento de la captura ya que en diferentes ocasiones no se dan las mismas condiciones de iluminación por ejemplo, lo que resulta en imágenes con diferentes niveles de intensidad.
Exp. Canal Histograma
E203
E320
Exp. Canal Histograma
E322
E338
Exp. Canal Histograma
E203
E320e
Cuadro 4.7: Comparación de histogramas entre imágenes de diferentes experi-mento para el canal de proteínas (verde).