Cuando se termina de delimitar objetos enCuando se termina de delimitar objetos en una imagen usando...

Post on 18-Feb-2020

3 views 0 download

Transcript of Cuando se termina de delimitar objetos enCuando se termina de delimitar objetos en una imagen usando...

Cuando se termina de delimitar objetos en

una imagen usando los operadores de

búsqueda de bordes aparece el problema de

definir dichos objetos dentro del sistema.

Supongamos que definimos una característica

que definió cual pixel está adentro y cual

está afuera de cada objeto

Creamos así imágenes binarias (un bit para

la cuantificación) blanco 0 negro 1

3

Sea el objeto A definido por A={aij / propiedad de aij == True } Creo entonces una matriz binaria AB en la que queda resaltada el/los objetos hallados en la imagen inicial.

Obtenida la imagen binaria se ve que quedan pixeles o pequeños grupos de ellos que sabemos que deberían pertenecer al objeto pero que por diferentes motivos no quedaron identificados.

Otra posibilidad es que aparezcan pixeles que

sabemos que no deberían haber aparecido.

Para incorporar estos pixeles al objeto conviene hacer una operación que se corresponde con alguna de los siguientes conceptos: • Si alguno de los pixeles vecinos al

pixel en estudio pertenece al objeto entonces el pixel de estudio también pertenece al objeto.

A esta operación lógica se la llama operación de dilatación.

Dilatado

Para quitar pixeles que no pertenecen al objeto conviene hacer otra operación: • Si todos los pixeles vecinos al pixel de

estudio pertenecen al objeto, entonces el pixel de estudio también pertenece al objeto. (Si alguno de los pixeles vecinos al pixel de estudio no pertenece al objeto entonces ese pixel de estudio tampoco pertenece al nuevo objeto).

Esta operación se llama erosión.

Erosionado

Este par de operaciones se puede restringir con algún elemento de estructura. Antes dijimos: “si todos los vecinos” Ahora diremos “si estos vecinos” (los que cumplen la vecindad según una forma determinada)

Dilatación con estructura de vecinos N=4 y N=8

Cuando no se define la estructura se da por entendido que es de vecindad de orden 8 (N=8)

Mostrar con ejemplos las dilataciones y erosiones.

presentar apertura y cierre.

Extender a vecinos de orden 4 o 2 verticales u

horizontales o en diagonal o cualquier juego

de vecinos.

Ampliar el concepto de conexión desde una

matriz binaria a tonalidades de gris.

Dilataciomes y erosiones múltiples.

Adelgazamiento. Esqueletización.

Parte del plano de Madrid dilatado y erosionado

13

Acá usamos el concepto de vecino Conviene recordar la definición de vecindad y conectividad. Vecino lo es según una estructura de pixeles alrededor del central. Dos pixeles estarán conectados cuando haya alguna propiedad que comparten ambos pixeles.

Vecinos de orden 4 o de orden 8.

También se lo puede definir a partir de alguna

estructura particular dando el origen y definiendo

el/los puntos vecinos {[0,0],[1,1]}

Sea un objeto

A= {ai,j/propiedad de ai,j==verdad}

Y un elemento de estructura por ejemplo

B={[0,0] [1,0] [0,1]}

Para formalizar el recorrido sobre la vecindad conviene hacer las siguientes definiciones. Al objeto. A = {aij para todo aij de A} Lo desplazaremos en ß A + ß = {aij + ß para todo aij de A} O será desplazado según una estructura B={[0,0];ß1;ß2} A + B = {aij + ßk para todo aij de A y para todo ßk de B}

Entonces la operación de dilatación resultará de desplazar todo el cuerpo A (o sea cada pixel de A) según cada uno de los elementos ßk de la estructura B. Y por último se toma la unión de todos estos desplazamientos

Dilatado

En tanto que la erosión resultará de desplazar todo el cuerpo A (o sea cada pixel de A) según la inversa de cada uno de los elementos de la estructura B o sea en -ßk. Y por último se toma la intersección de todos estos desplazamientos

Erosionado

21

La dilatación será entonces

La erosión será entonces

Con las dilataciones agrandamos los objetos en tanto que con las erosiones los achicamos.

Con las dilataciones y erosiones se modifica el “volumen” del objeto, es por eso que se decide combinar ambas operaciones. Es decir hacer tantas de una como de otra. Se definen la Apertura y Cierre como:

23

O sea que en la Apertura primero se hace una erosión y luego una

dilatación

(si había un hueco en el interior de un objeto en la imagen A, se lo abre

y si hay un objeto del tamaño de un pixel, se lo borra)

En cambio en el Cierre primero se hace una dilatación y luego una erosión

(si había un hueco en el interior de un objeto en la imagen A, desaparece

también se quitan rugosidades huecas de los bordes de los objetos).

El objeto de estas operaciones es el de mantener el tamaño del objeto

The opening of A by B, is given by the erosion by B, followed by the dilation by B, that is

The opening (given by the dark dashed lines) of A (given by the solid lines. The structuring element B is a disc. The internal dashed structure is A eroded by B.

24

Apertura y Cierre

Cierre Apertura

26

27

28

Segunda vuelta.

Los operadores morfológicos son Operacioes Booleanas.

Generalización.

Esto significa que al sumar sobre m y n estoy recorriendo la matriz, observo la característica del pixel (i,j) y si la cumple la dejo ( o pongo un uno en la matriz binaria que construyo) y si no, pongo un cero.

31

El concepto de operador morfológico es estudiado y formalmente definido dentro de los espacios de Minkowski.

Pero vamos a tratar de hacer una presentación

menos formal y más práctica de ellos.

Definiremos el operador dilatación basado en

criterio: Si alguno de los vecinos del pixel en

estudio está conectado con él entonces ese

pixel permanece en el objeto.

D(A,B)=AB=

Para que esto quede claro conviene saber que significado le damos al concepto de vecino y al concepto de conección.

Por simplicidad comencemos suponiendo que

los vecinos son los ocho pixeles que rodean al

que estamos considerando. Y por conexión

supongamos que tienen el mismo valor.

La metodología de su aplicación es la misma

de la convolución salvo que en vez de sumar y

multiplicar se usan las operaciones AND y OR.

Entonces el primero de los operadores tenderá

a agrandar el objeto completando agujeros

pequeños internos y extendiendo los bordes.

Lo llamaremos OPERADOR DILATACIÓN

D(A,B)=AB

Y el segundo de los operadores tenderá a achicar el objeto agrandando agujeros pequeños internos y contrayendo los bordes.

Lo llamaremos OPERADOR EROSIÓN.

Vecinos de orden 4 o

de orden 8.

También se lo puede

definir a partir de

alguna estructura

particular {[0,0],[1,1]}

Sea un objeto A= {ai,j/propiedad de ai,j==verdad}

Y un elemento de estructura B={[0,0] [1,0] [0,1]}

37

40

41

42

43

Supongamos que para alguna figura determinada hemos obtenido su imagen binaria.

El contorno será el conjunto de puntos que resultan de hacer la resta entre una dilatación y la imagen binaria o de la imagen original binaria menos su erosión

E= B⊗S= {x , y ∣Sx , y⊆B}

B= [1 1 1

1 1 1

1 1 1 ]D= B⊕S= {x , y ∣Sx , y∩ B}

45