La función imwrite() de OpenCV

Manav Narula 10 octubre 2023
  1. Use la función imwrite() de la biblioteca OpenCV
  2. Conclusión
La función imwrite() de OpenCV

Las imágenes se procesan como numpy.ndarrays en Python, y estas matrices son tridimensionales y representan los valores de los píxeles de la imagen. Usando diferentes bibliotecas y métodos, podemos leer y procesar imágenes de manera eficiente en Python.

Una de esas bibliotecas es la biblioteca OpenCV que puede procesar imágenes fácilmente usando sus funcionalidades y clases. Este tutorial demostrará el uso de la función imwrite() de la biblioteca OpenCV.

Use la función imwrite() de la biblioteca OpenCV

La función imwrite() guarda imágenes en una ubicación de ruta determinada. Como se mencionó, las imágenes se almacenan como matrices y, con esta función, podemos exportar y guardar estas imágenes en el dispositivo.

Acepta tres parámetros. El primer parámetro contiene el nombre del archivo junto con la ruta. Tenga en cuenta que el formato en el que se guarda la imagen (PNG, JPEG, etc.) debe especificarse en el nombre del archivo.

El segundo parámetro contiene la imagen requerida que debe guardarse. Esta imagen debe ser un objeto numpy.ndarray. Si el archivo de imagen se guarda correctamente, la función imwrite() devuelve True; en caso contrario, devuelve False.

Código de ejemplo:

import cv2

i = cv2.imread("deftstack.png")
img = cv2.cvtColor(i, cv2.COLOR_BGR2HSV)
cv2.imwrite("save.png", img)

Producción :

True

En el ejemplo anterior, leemos una imagen dada usando la función imread(). Luego, realizamos una tarea sobre la imagen (la estamos convirtiendo del espacio de color RGB al espacio de color HSV) usando la función cvtColor.

Finalmente, usamos la función imwrite() para guardar esta imagen en el directorio especificado. Tenga en cuenta que el formato de la imagen en el archivo es PNG, y podemos usar cualquier formato compatible como BMP, JPEG, WebP, y más.

Otra cosa para recordar es que esta función solo guarda el canal único de 8 bits o las imágenes de 3 canales ordenadas por BGR con algunas excepciones. Estas excepciones incluyen los flotantes de 32 bits sin firmar de 16 bits, el vector Map de varias imágenes y las imágenes PNG con un canal alfa que solo se pueden guardar en algunos formatos permitidos.

Todos los formatos no admitidos se convierten automáticamente en imágenes sin firmar de 8 bits.

Conclusión

En este tutorial, discutimos la función imwrite() de la biblioteca opencv. Demostramos cómo acepta el parámetro esta función y cómo se puede usar para guardar imágenes en Python.

También discutimos los formatos de las imágenes con los que puede trabajar esta función y cómo trata los formatos no compatibles.

Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn