Está en la página 1de 7

Erosion y Dilatacion de Imagenes

Edisson Andres Coy Henry Telles Uribe


Estudiante de Ingenierı́a Electrónica Estudiante de Ingenierı́a Electrónica
Fundación Universitaria los Libertadores. Fundación Universitaria los Libertadores.
eacoy@libertadores.edu.co henry.telles@libertadores.edu.co

I. I NTRODUCC ÍON todos los elementos x para los cuales B trasladado por x est
En el procesamiento de imagenes se maneja el uso de varias contenido en A:
tecnicas para editar, modificar o procesar una imagen. Entre
toda esta variedad de tecnicas, se encuentra la erosion y la A B = {x|Bx ⊆ A} (1)
dilatacion que es una tecnica llamada morfologia. Tengamos en cuenta que, para la condicin Bx ⊆ A, slo
II. R ESUMEN consideramos los pxeles negros de A y B.
En este documento se pretende explicar como procesar Ejemplo
una imagen aplicando tecnicas de erosion y dilatacion con
diferentes elementos estructurantes, a bajo nivel.

Por otra parte usando las funciones de opencv, tambien


se procesara la captura de un video en vivo, y se le aplicara la
erosion y dilatacion con diferentes elementos estructurantes.
III. M ARCO T E ÓRICO
Morfologı́a.
La morfologı́a matematica se basa en operaciones de teorı́a
de conjuntos. En el caso de imágenes binarias, los conjuntos
tratados son subconjuntos de Z 2 y en el de las imágenes
en escala de grises, se trata de conjuntos de puntos con
coordenadas en Z 3 .

Las operaciones morfologicas simplifican imgenes y


conservan las principales caracteristicas de forma de los
objetos.
Fig. 1. (a). Imagen A. (b). Elemento Estructurante. (c). Erosion A por B, se
Un sistema de operadores de este tipo y su composicin, muestra sombreado. (d). Elemento Estructurante Alargado. (e). Erosion de A
permite que las formas subyacentes sean identificadas por B usando este elemento.
y reconstruidas de forma optima a partir de sus formas
distorsionadas y ruidosas. El borde punteado en (c) y (e) es el lmite del conjunto A,
que se muestra solo como referencia.
La morfologia matematica se puede usar, entre otros, B. Dilataci’on
con los siguientes objetivos:
Dada una imagen A, y un elemento estructural B, (ambos
• Pre-procesamiento de imagenes (supresion de ruidos,
imagenes binarias con fondo blanco), la dilatacion de A por
simplificacion de formas).
B se define como:
• Destacar la estructura de los objetos (extraer el esqueleto, n o
deteccin de objetos, envolvente convexa, ampliacin, re- A ⊕ B = x|(B̂)x ∩ A 6= (2)
duccin,...)
• Descripcin de objetos (rea, permetro,...). Tengamos en cuenta que, para la interseccion solo consider-
amos los pixeles negros de A y B.
A. Erosión. El primer elemento de la dilatacion, A, esta asociado con la
Dada una imagen A, y un elemento estructural B, (ambos imagen que se esta procesando y el segundo recibe el nombre
imagenes binarias con fondo blanco), la erosion de una im- de elemento estructural, la forma que actua sobre A en la
agen, A, por un elemento estructural, B, es el conjunto de dilatacion para producir A ⊕ B.
Fig. 3. Ejemplo Basico

B. Erosión
Para la erosion se hara la multiplicacion de una matriz
de elemento estructurante (cuadrado, elipse o cruz) por una
vecindad o ventana escogida de la imagen, esto con el fin de
dejar activos los pixeles que forman el elemento estructurante.

Seguido se escoge el numero menor y se reemplaza


por el pixel medio de la ventana o vecindad escogida de la
imagen.

Fig. 2. (a). Imagen A. (b). Elemento Estructurante. (c). Dilatacion A por B,


se muestra sombreado. (d). Elemento Estructurante Alargado. (e). Dilatacion εvB (f )(x, y) = min0 f (x + s, y + t) (4)
de A por B usando este elemento.
cuando, (s, t) ∈ B

Ejemplo
El borde punteado en (c) y (e) es el lmite del conjunto A,
que se muestra solo como referencia.

IV. M ATERIALES
• Python.
– Libreria OpenCv.
– Libreria Numpy.
Fig. 4. Ejemplo Basico
V. A N ÁLISIS
Tanto la dilatacion como la erosion se requeire un barrido
A. Dilataci’on
en toda la imagen, como se alcanza a observar en los ejemplos.
Para la dilatacion se hara la multiplicacion de una matriz
de elemento estructurante (cuadrado, elipse o cruz) por una Para procesar la imagen y el video hacemos uso de la
vecindad o ventana escogida de la imagen, esto con el fin de herramienta de python y las librerias especializadas en el
dejar activos los pixeles que forman el elemento estructurante. manipulamiento de matrices y e imagenes como lo es opencv
y numpy.

Seguido se escoge el numero mayor y se reemplaza Desarrollaremos el software en lenguaje python para asi
por el pixel medio de la ventana o vecindad escogida de la procesar la imagen y aplicar la morfologia (dilatacion y
imagen. Erocion al timepo y observaremos las diferencias.

En la siguiente seccion observaremos un diagrama de


flujo el cual explica mejor el proceso de dilatacion y erocion,
δvB (f )(x, y) = max0 f (x + s, y + t) (3) en una imagen y tambien en una captura de video.

cuando, (s, t) ∈ B
VI. P ROCEDIMIENTO -E JECUCI ÓN
En esta seccion se explicara el algoritmo usado para realizar
la erocion y la dilatacion para la imagen y seguido, el
algoritmo para videos.

Fig. 8. Diagrama de Flujo Erosion y Dilatacion de Imagen

Fig. 5. Imagen Original

Fig. 9. Pseudocodigo Erosion y Dilatacion de Imagen


A. Erosión y Dilatación en una Imagen
Primero se observara el diagrama de flujo para el algoritmo
el cual se realizo en la creacion de una funcion, la cual hara La imagen 8 y 9 se oberva el diagrama de flujo de para
la erocion y la dilatacion, y sera manipulada por un scrollbar erosionar y dilatar una imagen, utilizando la funcion creada.
el lemento estructurante y el tamaao del mismo.
Como se puede observar en el diagrama de flujo en la
Cada elemento estructurante entra en ejecucion con la funcion se hace un barrido en la imagen con elemento
imagen dependiendo de la ubicacion del scrollbar. estructurante que se escoge, se calcula el maximo y el
minimo para asi despues en la imagen nueva se reemplazan
los pixeles por los minimos y maximos calculados.

Por ultimo y ya teniendo la funcion, se lee la imagen


que se procesara se pasa por la funcion creada y se obtiene
una imagen nueva con dilatada y otra imagen erosionada.

Los scrollbar determinan el tamao del elemento estructurante


Fig. 6. Diagrama de Flujo Funcion Creada y tambien la forma del elemento estructurante.

B. Erosión y Dilatación en un Video


Primero se observara el diagrama de flujo para el algoritmo
el cual se realizo en la creacion de una funcion, la cual hara
la erocion y la dilatacion, y sera manipulada por un scrollbar
el lemento estructurante y el tamaao del mismo.

En este punto se utlizara las funciones de morfologia


que tiene opencv.

Cada elemento estructurante entra en ejecucion con la


imagen dependiendo de la ubicacion del scrollbar.

La imagen 12 y 13 se oberva el diagrama de flujo de


para erosionar y dilatar una imagen, utilizando la funcion
creada.
Fig. 7. Pseudocodigo Funcion Creada
En el video se crea una funcion al igual que en la imagen,
pero con la diferencia que se usan las mismas funciones VII. R ESULTADOS
que tiene opencv de erosion y dilatacion. De igual manera En este apartado usted podra ver los resultados de los
que en la imagen el elemento estructurante y el tamao varia codigos creados y observar las diferencias entre la imagen
deacuerdo a la posisicon del scrollbar. original y las iamgenes con los diferentes tipos de elementos
estructurantes y tamaos del mismo.

Como se puede observar la dilatacion hace aumentar la


cantidad de pixeles con la mas alta intensidad, y la erosion
aumenta la cantidad de pixeles con la menor intensidad.

Los elementos estructurantes hacen tomar forma a la


erosion y dilatacion. Observemos los resultados.

En video captura y con las funciones de opencv, se


optiene el mismo resultado y no hay crear el elemento
estructurante ya que estas funciones crean estos elementos
estructurantes.

Fig. 10. Diagrama de Flujo Funcion Creada A nivel bajo se puede observar como procesar imagenes con
la atecnica de morfologia.

Fig. 11. Pseudocodigo Funcion Creada

Fig. 14. Dilatacion Cuadrado

Fig. 12. Diagrama de Flujo Erosion y Dilatacion de Video

Fig. 13. Pseudocodigo Erosion y Dilatacion de Video Fig. 15. Dilatacion Cuadrado

En la siguiente seccion se observaran los resultados.


Fig. 19. Erosion Cruz
Fig. 16. Dilatacion Cruz

Fig. 20. Erosion Elipse

Fig. 17. Dilatacion Elipse

Fig. 18. Erosion Cuadrado


Fig. 21. Video Original
Fig. 22. Dilatacion Cuadrado Fig. 25. Erosion Cuadrado

Fig. 23. Dilatacion Cruz Fig. 26. Erosion Cruz

Fig. 24. Dilatacion Elipse Fig. 27. Erosion Elipse


VIII. C ONCLUSIONES
• En este documento usted pudo observar la operacion
morfologica en imagenes binarias a muy bajo nivel para
este caso la erosion y la dilatacion.

• Usted en este documento experimento las funciones de


opencv para operaciones morfologicas tambien usando
erosion y dilatacion, pero en un video en vivo.

• Claramente se observa que programando a bajo nivel se


obtuvo el mismo resultado que utilizando las funciones
de opnecv.

• Se entiende claramente que si se llegase a usar la erosion


y la dilatacion a bajo nivel en un video en vivo, el
programa y el video en vivo se vuelven muy lentos
pues su porseso demanda mayor cantidad de recursos de
procesamiento.

• La morfologa hace referencia a un conjunto de


operadores que permiten manipular e interpretar las
formas de los objetos que aparecen en las imgenes.

• Se entiende claramente que si se llegase a usar la erosion


y la dilatacion a bajo nivel en un video en vivo, el
programa y el video en vivo se vuelven muy lentos
pues su porseso demanda mayor cantidad de recursos de
procesamiento.

• La morfologa hace referencia a un conjunto de operadores


que permiten manipular e interpretar las formas de los
objetos que aparecen en las imgenes.
R EFERENCES
[1] Image Analysis and Mathematical Morphology por Jean Serra, ISBN
0126372403 (1982)

[2] Image Analysis and Mathematical Morphology, Volume 2: Theoretical


Advances por Jean Serra, ISBN 0-12-637241-1 (1988)

[3] An Introduction to Morphological Image Processing por Edward R.


Dougherty, ISBN 0-8194-0845-X (1992)

[4] Morphological Image Analysis; Principles and Applications por Pierre


Soille, ISBN 3540-65671-5 (1999)

[5] R. C. Gonzalez and R. E. Woods, Digital image processing, 2nd ed.


Upper Saddle River, N.J.: Prentice Hall, 2002.

También podría gustarte