Erosión y Dilatación de imágenes usando OpenCV en python

Las operaciones morfológicas son un conjunto de operaciones que procesan imágenes a partir de formas. Aplican un elemento estructurante a una imagen de entrada y generan una imagen de salida. 
Las operaciones morfológicas más básicas son dos: Erosión y Dilatación  
Fundamentos de la Erosión: 
 

  • Erosiona los límites del objeto en primer plano
  • Se utiliza para disminuir las características de una imagen.

Trabajo de erosión: 
 

  1. Un núcleo (una array de tamaño impar (3,5,7) se convoluciona con la imagen.
  2. Un píxel en la imagen original (ya sea 1 o 0) se considerará 1 solo si todos los píxeles debajo del kernel son 1; de lo contrario, se erosiona (se vuelve a cero).
  3. Por lo tanto, todos los píxeles cercanos al límite se descartarán según el tamaño del kernel.
  4. Entonces, el grosor o el tamaño del objeto de primer plano disminuye o simplemente la región blanca disminuye en la imagen.

Fundamentos de la dilatación: 
 

  • Aumenta el área del objeto.
  • Se utiliza para acentuar las características.

Trabajo de dilatación:
 

  1. Un núcleo (una array de tamaño impar (3,5,7) se convoluciona con la imagen
  2. Un elemento de píxel en la imagen original es ‘1’ si al menos un píxel debajo del núcleo es ‘1’.
  3. Aumenta la región blanca en la imagen o aumenta el tamaño del objeto en primer plano 
     

Python

# Python program to demonstrate erosion and
# dilation of images.
import cv2
import numpy as np
 
# Reading the input image
img = cv2.imread('input.png', 0)
 
# Taking a matrix of size 5 as the kernel
kernel = np.ones((5,5), np.uint8)
 
# The first parameter is the original image,
# kernel is the matrix with which image is
# convolved and third parameter is the number
# of iterations, which will determine how much
# you want to erode/dilate a given image.
img_erosion = cv2.erode(img, kernel, iterations=1)
img_dilation = cv2.dilate(img, kernel, iterations=1)
 
cv2.imshow('Input', img)
cv2.imshow('Erosion', img_erosion)
cv2.imshow('Dilation', img_dilation)
 
cv2.waitKey(0)

La segunda imagen es la forma erosionada de la imagen original y la tercera imagen es la forma dilatada. 
 

Usos de la erosión y la dilatación: 
 

  1. Erosión: 
    • Es útil para eliminar pequeños ruidos blancos.
    • Se utiliza para separar dos objetos conectados, etc.
  2. Dilatación:
    • En casos como la eliminación de ruido, la erosión es seguida por la dilatación. Porque la erosión elimina los ruidos blancos, pero también encoge nuestro objeto. Entonces lo dilatamos. Dado que el ruido se ha ido, no volverán, pero el área de nuestro objeto aumenta.
    • También es útil para unir partes rotas de un objeto.

Este artículo es una contribución de Pratima Upadhyay . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *