Diego Hernán Peluffo Ordóñez www.diegopeluffo.com Introducción a la segmentación de imágenes usando técnicas de Machine Learning Diego Hernán Peluffo Ordóñez www.diegopeluffo.com
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
Concepto de Visión Artificial INTRODUCCIÓN Concepto de Visión Artificial La Visión Artificial trata de deducir e interpretar de forma automática las estructuras y propiedades de un mundo tridimensional posiblemente dinámico a partir de una o varias imágenes bidimensionales. Procesamiento Digital de Imágenes Clasificación y Reconocimiento de Patrones (Machine Learning)
INTRODUCCIÓN (Cont.) Procesamiento Digital de Imágenes: Este término hace referencia al procesamiento digital de una imagen en dos dimensiones por un ordenador. En un contexto más amplio implica el procesamiento digital de datos de dos dimensiones. Clasificación y Reconocimiento de Patrones: Es la disciplina científica cuya meta es la clasificación de objetos dentro de un número de categorías o clases.
INTRODUCCIÓN (Cont.) ¿Qué estructuras y propiedades del mundo tridimensional se quieren deducir con VA? Propiedades geométricas como: Forma Tamaño Localización Propiedades de los materiales como: Color Composición Textura
INTRODUCCIÓN (Cont.) ¿Por qué es tan difícil el problema de la VA? Una imagen bidimensional engloba muchas y diferentes imágenes tridimensionales. Dada una imagen bidimensional, determinar la escena tridimensional de la que procede, no tiene solución única. Se trata de un proceso de reducción de información, ya que se manipula la imagen para extraer de ella la información más relevante, para resolver un determinado problema.
Modelo del Ojo Humano: Cámara digital INTRODUCCIÓN (Cont.) Modelo del Ojo Humano: Cámara digital
Modelo del Cerebro Humano: Computador y Algoritmos Informáticos INTRODUCCIÓN (Cont.) Modelo del Cerebro Humano: Computador y Algoritmos Informáticos
Interpretación de una Imagen INTRODUCCIÓN (Cont.) Interpretación de una Imagen En ciertos casos la interpretación puede ser relativamente “sencilla” para el hombre y para la máquina
Interpretación de una Imagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Imagen (cont.) En general el hombre interpreta una imagen más fácil que la máquina.
Interpretación de una Iimagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Iimagen (cont.) La interpretación de escenas naturales es compleja para la máquina
Interpretación de una Iimagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Iimagen (cont.) Más fácil para la máquina Están las líneas inclinadas ?
Interpretación de una Iimagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Iimagen (cont.) Más fácil para la máquina Cuántos puntos negros hay en la imagen ?
Interpretación de una Iimagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Iimagen (cont.) Más fácil para el hombre Triángulo de Kanizsa muestra unos contornos que no pueden ser explicados por un sistema de visión artificial.
Interpretación de una Iimagen (cont.) INTRODUCCIÓN (Cont.) Interpretación de una Iimagen (cont.) Más fácil para el hombre Cuantos rostros se ven en la imagen ?
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
ETAPAS DE UN SISTEMA DE PROCESAMIENTO DE IMÁGENES Adquisición de imágenes Procesamiento Segmentación Representación y descripción Reconocimiento e interpretación Base de Conocimiento Resultado Entrada
ADQUISICIÓN DE IMÁGENES Adquisición de una Imagen 2D Digital Una imagen digital a[x,y] describe en un espacio 2D, a una imagen análoga a(s,t) en un espacio 2D continuo. El proceso de obtención de esta imagen se conoce como digitalización. Una imagen digital bi-dimensional, es una función f(x,y) donde x y y son las coordenas espaciales, y el valor de f en cualquier punto (x, y) es proporcional al brillo o al valor de gris de la imagen en ese punto.
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 2D Digital (Cont.) Valor de los pixels en la región resaltada Imagen en niveles de gris
ADQUISICIÓN DE IMÁGENES (Cont.) Imágenes a Niveles de Gris Cámara QuickCam CCD 324X423 Escala de 16 o 64 nivéles de gris Conexión por puerto paralelo
ADQUISICIÓN DE IMÁGENES (Cont.) Imágenes a Color Cámara JVC 3CCD 640X480 Tarjeta digitalizadora National Instruments (PCI 1411) Cámara Digital Logitech 510 Conexión por puerto USB
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital La adquisición de una imagen digital 3D consiste en la conversión de la superficie de un objeto en coordenadas digitales tridimensionales (x,y,z). La más sencilla y conveniente (pero no única) manera de representar y almacenar las medidas de profundidad tomadas de una escena es una imagen de rango (profundidad). Una imagen de rango es como una imagen de niveles de gris excepto que la información z reemplaza la información de intensidad.
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.) Sistemas de profundidad láser Los sistemas láser trabajan con el principio que la superficie del objeto refleja la luz láser hacia un receptor, y mide el tiempo (o la diferencia de fase) entre la transmisión y la recepción para así calcular la profundidad. Cámaras láser desarolladas CNRC Cámara Autosincronizada Cámara Biris
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.) Cámara autosincronizada La geometría de la cámara sincronizada está basada en un espejo doble (los dos lados) que es utilizado para proyectar y detectar un rayo láser. Velocidad: ~ 20000 points/s Precisión: ~ 25 mm
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.) Sistemas de luz estructurada Proyecta patrones de luz (puntos, mallas, patrones elípticos, etc.) sobre un objeto. Las formas de los objetos son deducidas de las distorsiones de los patrones que son producidas en la superficie del objeto. Conociendo la información relevante de la geometría de la cámara y el proyector, la información de profundidad puede ser inferida por el método de triangulación.
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.) Dirección de desplazamiento del sensor Región digitalizada
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.)
ADQUISICIÓN DE IMÁGENES (Cont.) Adquisición de una Imagen 3D Digital (Cont.)
PREPROCESO DE IMAGENES Implemantación y Evaluación de Algortimos para: Suavizado de la Imágenes 2D Realce de Características Reducción de Ruido
PREPROCESO DE IMÁGENES (Cont.) Filtros Suavizantes Filtro de Mediana Filtro Gaussino Filtro Pasabajas Filtro Kuwahara
Efectos de los Filtros Suavizantes PREPROCESO DE IMÁGENES (Cont.) Efectos de los Filtros Suavizantes Imagen Original Filtro de Mediana 3x3 Filtro Gaussiano 5x5 =0.6 Filtro Gaussiano 7x7 =1
PREPROCESO DE IMÁGENES (Cont.) Filtros Realzantes Operador de Sobel Operador Laplaciano de Gaussiano (LoG) Filtro de HighBoost Operador de Prewitt Poerador de Roberts
PREPROCESO DE IMÁGENES (Cont.) Operador de Sobel Filtros Realzantes: Imágenes de Contornos Operador LoG Filtro de HighBoost
PREPROCESO DE IMÁGENES (Cont.) Filtros Realzantes: Imágenes de Contornos Prewitt Roberts Laplaciano Sobel LoG
PREPROCESO DE IMÁGENES (Cont.) Reducción de Ruido Imagen de Bordes Eliminación por Conectividad
Transformaciones de una Imagen Operaciones puntuales Característica El resultado de aplicarlas a un pixel depende únicamente del valor de intensidad de ese pixel Pueden ser: Independiente de las características globales Con una sola imagen Transformaciones de una imagen según una función Entre varias imágenes Dependiente de la imagen
Transformaciones de una Imagen Operaciones puntuales Independientes de las Características Globales Operaciones de UNA imagen con una CONSTANTE Suma Resta Multiplicación División Máximo Mínimo Umbralización Inversa
Transformaciones de una Imagen Operaciones puntuales: División por una constante
Transformaciones de una Imagen Operaciones puntuales: Umbralización
Transformaciones de una Imagen Operaciones puntuales: Inversa
Transformaciones de una Imagen Operaciones puntuales Independientes de las Características Globales Transformaciones según una FUNCIÓN racional o irracional Valor absoluto de una imagen con signo Transformación logarítmica Transformación exponencial Operaciones entre varias imágenes suma, resta, multiplicación, división máximo, mínimo AND, OR, XOR
Transformaciones de una Imagen Operaciones puntuales: Resta
Transformaciones de una Imagen Operaciones puntuales: mínimo
Transformaciones de una Imagen Operaciones puntuales Dependientes de las Características Globales: Manipulación del Histograma
Transformaciones de una Imagen Operaciones puntuales Dependientes de las Características Globales: Autoescalados de la imagen
Transformaciones de una Imagen Operaciones locales La imagen se transforma en función de los niveles de gris de cada píxel considerado y de los de su entorno (Filtro) Pueden ser: Lineales No lineales: Estadísticas Analíticas Media geométrica Media aritmética Morfológicas
Transformaciones de una Imagen Operaciones locales: Convolución
Transformaciones de una Imagen Operaciones locales: Convolución
Transformaciones de una Imagen Operaciones locales: Convolución
Transformaciones de una Imagen Operaciones locales: Convolución
Transformaciones de una Imagen Operaciones locales: No lineales Dilatación de imágenes binarias
Transformaciones de una Imagen Operaciones geométricas Zoom Rotación Imagen Warping
Transformaciones de una Imagen Operaciones locales: No lineales
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
Resultado en imágenes de laboratorio SEGMENTACION DE IMÁGENES 2D (Cont.) Resultado en imágenes de laboratorio
Resultado en imágenes de campo SEGMENTACION DE IMÁGENES 2D (Cont.) Resultado en imágenes de campo Imagen de Campo Elipses Ajustadas
Crecimiento Euclídeo de Regiones SEGMENTACION DE IMÁGENES 2D (Cont.) Crecimiento Euclídeo de Regiones Medida de Homogeneidad: R G B Distancia euclidiana entre los píxeles P1, y P2 P1 P2 C.E RGB: C.E YUV: -C.E YIQ:
Resultados Crecimiento Euclidiano SEGMENTACION DE IMÁGENES 2D (Cont.) Resultados Crecimiento Euclidiano Crecimiento Euclidiano en el espacio RGB, dRGB=50
SEGMENTACION DE IMÁGENES 2D (Cont.) ANÁLISIS DE LOS RESULTADOS
SEGMENTACIÓN Fundamentos de la umbralización (Thresholding)
SEGMENTACIÓN Umbralización Ejemplo
SEGMENTACIÓN Umbralización multinivel.
SEGMENTACIÓN Umbralización Ejemplo de umbralización multimodal
SEGMENTACIÓN Pueden darse distintas situaciones: Distribución unimodal: Los objetos están poco contrastados respecto al fondo. El histograma integra toda la información y sólo aparece un pico dominante (usualmente el fondo). Distribución bimodal: Los objetos aparecen claramente contrastados respecto al fondo y todos ellos presentan la misma distribución de niveles de gris. Distribución multimodal: Varios objetos bien contrastados con distribuciones de gris diferentes. El histograma tiene forma de varias colinas con valles de separación.
SEGMENTACIÓN Método p-Tile: Supongamos una imagen con objetos (p.e. Oscuros) contrastados contra un fondo (claro): distribución bimodal. En el método p-Tile se supone conocido el tamaño de los objetos en la imagen, por lo tanto se supone que éstos ocuparan un p% de la misma. Usando este conocimiento se particiona el histograma de la imagen buscando el nivel de gris que hace que un p % de los pixeles pertenezcan a los objetos. Claramente este método tiene una utilidad limitada.
SEGMENTACIÓN Búsqueda Gausiana:
Segmentación de imágenes con machine learning
Caracterización con espacios de color - RBG
Peluffo, D.
Data set representation Data matrix Label vector n samples, p features
Example: 3-dimensional 3-class data set
PR system
Data classification
Data classification Not always it is that simple…
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
ETAPAS DE LOS SISTEMAS DE RECONOCIMIENTO AUTOMÁTICO DE FORMAS Adquisición de imágenes Procesamiento Segmentación Representación y descripción Reconocimiento e interpretación Base de Conocimiento Resultado Entrada
ETAPAS DE LOS SISTEMAS DE RECONOCIMIENTO AUTOMÁTICO DE FORMAS
Realización de máscaras RECONOCIMIENTO DE PATRONESc Realización de máscaras
CARACTERIZACION Y CLASIFICACION (Cont.) Caracterización Parámetros de caracterización Color Tamaño
CARACTERIZACION Y CLASIFICACION (Cont.) Color Media Desviación Simetría
CARACTERIZACION Y CLASIFICACION (Cont.) Posición de media de la componente en tono para granos maduros e inmaduros
CARACTERIZACION Y CLASIFICACION (Cont.) Tamaño Tamaño normalizado
CONTENIDO INTRODUCCIÓN ADQUISICIÓN Y PREPROCESAMIENTO SEGMENTACIÓN USANDO MACHINE LEARNING APLICACIONES EJERCICIO PRÁCTICO USANDO MATLAB
Segmentar una imagen con métodos no supervisados de machine learning Segmentar usando litekmeans Comprobar el efecto de cambiar el número de grupos
https://sites.google.com/site/diegopeluffocourses/image_segmentation
Gracias por su atención Diego Hernán Peluffo Ordóñez - www.diegopeluffo.com - diegohpo@gmail.com