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 pyrDown
funciones 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 pyrUp
funció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