La función de Python cv2.imdecode() se utiliza para leer datos de imagen de una caché de memoria y convertirlos en formato de imagen. Esto generalmente se usa para cargar la imagen de manera eficiente desde Internet.
Sintaxis: cv2.imdecode(buf,banderas)
Parámetros:
- buf – Son los datos de imagen recibidos en bytes
- flags – Especifica la forma en que se debe leer la imagen. Su valor por defecto es cv2.IMREAD_COLOR
Retorno: array de imágenes
Nota: Si el buf proporcionado no es un dato de imagen, se devolverá NULL.
Ejemplo 1:
Python3
#import modules import numpy as np import urllib.request import cv2 # read the image url url = 'https://media.geeksforgeeks.org/wp-content/uploads/20211003151646/geeks14.png' with urllib.request.urlopen(url) as resp: # read image as an numpy array image = np.asarray(bytearray(resp.read()), dtype="uint8") # use imdecode function image = cv2.imdecode(image, cv2.IMREAD_COLOR) # display image cv2.imwrite("result.jpg", image)
Producción:
Ejemplo 2: si se requiere una escala de grises, se puede usar 0 como bandera.
Python3
# import necessary modules import numpy as np import urllib.request import cv2 # read image url url = 'https://media.geeksforgeeks.org/wp-content/uploads/20211003151646/geeks14.png' with urllib.request.urlopen(url) as resp: # convert to numpy array image = np.asarray(bytearray(resp.read()), dtype="uint8") # 0 is used for grayscale image image = cv2.imdecode(image, 0) # display image cv2.imwrite("result.jpg", image)
Producción:
Ejemplo 3: Lectura de imagen de un archivo
Imagen de entrada:
Python3
# import necessayr modules import numpy as np import urllib.request import cv2 # read th image with open("image.jpg", "rb") as image: f = image.read() # convert to numpy array image = np.asarray(bytearray(f)) # RGB to Grayscale image = cv2.imdecode(image, 0) # display image cv2.imshow("output", image)
Producción:
Publicación traducida automáticamente
Artículo escrito por bhavyajain4641 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA