Pirámide de imágenes usando OpenCV | Python

Las pirámides de imágenes son uno de los conceptos más bellos del procesamiento de imágenes. Normalmente, trabajamos con imágenes con resolución predeterminada, pero muchas veces necesitamos cambiar la resolución (bajarla) o cambiar el tamaño de la imagen original, en ese caso, las pirámides de imágenes son útiles.

La pyrUp()función aumenta el tamaño al doble de su tamaño original y pyrDown()la función disminuye el tamaño a la mitad. Si mantenemos la imagen original como imagen base y le aplicamos pyrDownfunciones y mantenemos las imágenes en una pila vertical, se verá como una pirámide. Lo mismo es cierto para ampliar la imagen original por pyrUpfunción.

Una vez que reducimos la escala y la volvemos a escalar al tamaño original, perdemos algo de información y la resolución de la nueva imagen es mucho menor que la original.

A continuación se muestra un ejemplo de imagen piramidal:

import cv2
import matplotlib.pyplot as plt
  
img = cv2.imread("images/input.jpg")
  
layer = img.copy()
  
for i in range(4):
    plt.subplot(2, 2, i + 1)
  
    # using pyrDown() function
    layer = cv2.pyrDown(layer)
  
    plt.imshow(layer)
    cv2.imshow("str(i)", layer)
    cv2.waitKey(0)
      
  
cv2.destroyAllWindows()

Producción:

Ventajas de las pirámides de imágenes:

  • Reducción de la resolución
  • Obtener varios tamaños de imagen.
  • Fusión de imágenes
  • Detección de bordes

Publicación traducida automáticamente

Artículo escrito por Sourabh_Sinha 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 *