Matemática Morfológica Introducción al Procesamiento de Imágenes Matemática Morfológica Ing. Samuel Oporto Díaz (Mg) soporto@wiphala.net
Mapa del Curso Operaciones Punto Filtros Segmentación Extracción de características Operaciones Morfológicas Reconocimiento de Patrones Introducción a la Visión Artificial Representación de la Imagen
Tabla de Contenido Morfología Operaciones Morfológicas Aplicaciones
Objetivos Desarrollar los conceptos para la aplicación y entendimiento de las operaciones morfológicas sobre imágenes binarias.
MORFOLOGÍA
Morfología Morfología significa forma y estructura de un objeto. La morfología matemática se basa en operaciones de teoría de conjuntos. Imágenes binarias. Subconjuntos de Z2 Imágenes grises. Coordenadas en Z3. Simplifican imágenes y conservan las principales características de forma de los objetos. Extrae componentes de imagen útiles en la representación y descripción de la forma de las regiones.
Morfología - Operaciones Dilatación. agrega pixeles a un objeto, lo hace más grande Erosión. Extrae los "outlayers del objeto“, lo hace más chico Apertura. Aplica una erosión seguida de una dilatación, permite abrir pequeños huecos. Clausura. Aplica una dilatación seguida de una erosión, permite cerrar los huecos.
Morfología - Aplicaciones Pre-procesamiento de imágenes (supresión de ruidos, simplificación de formas). Destacar la estructura de los objetos (extraer el esqueleto, detección de objetos, envolvente convexa, ampliación, reducción,...) Descripción de objetos (área, perímetro,...)
Morfología Imágenes binarias Operaciones morfológicas: Dilatación, erosión, Transformada Hit-or-Miss, apertura y cierre. Aplicaciones: Extracción de fronteras y componentes conexas, rellenado de regiones, adelgazamiento y engrosamiento, esqueleto y poda. Imágenes en escala de grises Operaciones morfológicas: dilatación, erosión, apertura, cierre. Aplicaciones: Gradiente morfológico, transformada Top-Hat, texturas y granulometrías.
Operaciones básicas sobre conjuntos complemento diferencia Por ejemplo, la diferencia de dos conjuntos A y B se define:
Operaciones básicas sobre conjuntos La traslación de A por z se define como La reflexión de B se define como
OPERACIONES MORFOLÓGICAS CON MATLAB
Elemento estructurante SE = strel(shape, parameters) SE = strel('arbitrary', NHOOD) SE = strel('arbitrary', NHOOD, HEIGHT) SE = strel('ball', R, H, N) SE = strel('diamond', R) SE = strel('disk', R, N) SE = strel('line', LEN, DEG) SE = strel('octagon', R) SE = strel('pair', OFFSET) SE = strel('periodicline', P, V) SE = strel('rectangle', MN) SE = strel('square', W) Flat Structuring Elements 'arbitrary' 'pair' 'diamond' 'periodicline' 'disk' 'rectangle' 'line' 'square' 'octagon' Nonflat Structuring Elements 'arbitrary' 'ball'
Elemento estructurante SE = strel('diamond', R) SE = strel('disk', R, N) SE = strel('line', LEN, DEG) SE = strel('octagon', R)
OPERACIONES MORFOLÓGICAS
Modelos Morfológicos En 1996 surgen las Memorias Asociativas Morfológicas, inspiradas en los operadores de la Morfología Matemática Dilatación Erosión Apertura Cerradura
Dilatación Agrega pixeles a un objeto, lo hace más grande
Ejercicio 1
Ejercicio 1 B = zeros(4,4) B([4, 5, 6, 7, 11]) = 1 S = [1 1] D = imdilate(B, S) B = 0 0 0 0 0 0 0 0 B = 0 1 0 0 0 1 0 0 0 1 1 0 1 0 0 0 S = 1 1 D = 0 1 1 0 0 1 1 1 1 1 0 0
Ejercicio 2
Erosión Extrae los "outlayers del objeto“, lo hace más chico (A⊖B)⊖C = A⊖(BC) A(B⊖C) (AB)⊖C A⊖B A
Ejercicio 3
Ejercicio 4 1
Apertura Suaviza los contornos de una imagen. Elimina pequeños salientes. Abre pequeños huecos. Elimina franjas o zonas de un objeto que sean “más estrechas” que el elemento estructural. A∘B = (A⊖B)B A C → A∘B C∘B A∘B A (A∘B)∘B=A∘B
Ejercicio 5
Ejercicio 6 Imagen erosionada Apertura Máscara empleada
Clausura - Cerradura Elimina huecos pequeños (rellenándolos) y une componentes conexas cercanas. A∙B = (AB)⊖B A C → A∙B C∙B A A∙B (A∙B)∙B = A∙B
Ejercicio 7 Imagen dilatada Cierre Máscara empleada
Ejercicio 8
APLICACIONES
Extracción de frontera La frontera de un conjunto A se puede obtener primero erosionando A por un elemento estructural apropiado, B, y realizando posteriormente la diferencia entre A y su erosión. Es decir, El elemento estructural B usado más frecuentemente es el cuadrado 3x3 (como en el ejemplo que se muestra a continuación). Usando otros tamaños, por ejemplo 5 x 5, se ampliaría el grosor de la frontera a dos o tres píxeles. F (A) = A - (A B)
Ejercicio 9 erosión
Ejercicio 10 Imagen erosionada Imagen de contorno Máscara empleada
Rellenado de regiones X0 = p Xk = (Xk - 1 B) Ac k = 1, 2, 3... Partimos del borde 8-conexo de una región, A, y de un punto p del interior de A. El siguiente procedimiento rellena el interior de A: Donde B es el elemento estructural siguiente: Y el algoritmo termina en la iteración k si Xk=Xk-1. La unión de Xk y A es la frontera y la región rellena. X0 = p Xk = (Xk - 1 B) Ac k = 1, 2, 3...
Ejercicio 11
Extracción de componentes conexas Supongamos que Y representa una componente conexa contenida en un conjunto A y supongamos que conocemos un punto p que pertenece a dicha región. Entonces, el siguiente procedimiento puede utilizarse para extraer Y: El algoritmo termina en la iteración k si Xk-1=Xk. Con Y=Xk. B es el elemento estructural siguiente: X0 = p Xk = (Xk - 1 B) A k = 1, 2,...
Ejercicio 12
Trasformada Hit-or-Miss Es una herramienta para la detección de formas. Se usa para buscar determinada configuración en los píxeles . Sea B = (J, K) la configuración que queremos buscar, donde J es el conjunto formado por los píxeles negros de B; y K el conjunto formado por los píxeles negros de Bc. Por ejemplo Los x indican píxeles que pueden ser indistinguiblemente blancos o negros.
Trasformada Hit-or-Miss La transformación hit-or-miss se define como: Utilizando la definición de diferencia de conjuntos y la relación dual entre la erosión y la dilatación, podemos escribir la ecuación anterior como
Ejercicio 13 Detección de esquinas superiores derechas
Adelgazamiento de regiones El adelgazamiento de un conjunto A por un elemento estructural B puede ser definido en términos de la transformación ganancia-pérdida como: A B = A - (A B) = A (A B)c B
Adelgazamiento de regiones Elementos estructurales usados comúnmente en el proceso de adelgazamiento
Ejercicio 14
Engrosamiento A B = A (A B) B A B El engrosamiento es el dual morfológico del adelgazamiento y se define mediante la expresión: donde B es un elemento estructural apropiado para la ampliación. A B = A (A B) B A B
Ejercicio 15
Esqueletización El esqueleto de un conjunto A puede ser expresado en términos de erosiones y aperturas. Si S(A) denota el esqueleto de A, entonces Donde: donde A kB denota la aplicación sucesiva de k erosiones a A: K es el último paso iterativo antes de que A se erosione a un conjunto vacío. En otras palabras,
Ejercicio 16
PREGUNTAS