Primeros pasos con la biblioteca ImageIO en Python

Imageio es una biblioteca de Python que proporciona una interfaz sencilla para leer y escribir una amplia gama de datos de imágenes, incluidas imágenes animadas, datos volumétricos y formatos científicos. Es multiplataforma.

Instalación:

Este módulo no viene integrado con Python. Para instalarlo, escriba el siguiente comando en la terminal.

pip install imageio

Requisitos:

  • Python 3.5+
  • entumecido 
  • Pillow 

Para acceder a los archivos de imágenes de entrada, haga clic aquí . Veamos el código para algunos trabajos de la biblioteca imageio:

1) Leer una imagen: Para leer una imagen tenemos que usar el método imageio.imread() .

Sintaxis: imageio.imread(“nombre de archivo o ruta”)

Parámetro:

  •  filename/path: ruta absoluta o relativa del archivo de imagen.

Retorno: devuelve una array numpy, que viene con un dict de metadatos en su atributo ‘meta’.

Ejemplo:

Python3

# import library
import imageio
  
# read an image
image = imageio.imread('testa.png')
  
# print shape of the image
print(image.shape) 

Producción:

(134, 151, 4)

2) Lectura de un archivo GIF: para leer un archivo GIF tenemos que usar el método imageio.get_reader() .

Sintaxis: imageio.get_reader(nombre de archivo, formato, modo)

Parámetros:

  • ruta/nombre de archivo: nombre de archivo de la imagen/archivo/gif requerido.
  • formato: str, el formato que se usará para leer el archivo. Por defecto, imageio selecciona el apropiado para ti, según el nombre del archivo y su contenido.
  •  modo: {‘i’, ‘I’, ‘v’, ‘V’, ‘?’}
    • Se utiliza para dar al lector una pista sobre lo que el usuario espera (predeterminado «?»):
    • ‘i’ para una imagen
    • I’ para múltiples imágenes
    • ‘v’ para un volumen
    • ‘V’ para múltiples volúmenes
    • ?’ porque no me importa    

Devuelve: Reader`object que se puede usar para leer datos y metadatos del archivo especificado.

Ejemplo:

Python3

# import library
import imageio
  
# create an image object
image = imageio.get_reader('test.gif')
  
# iterating through matrix:
for i in image :
    
  # Each frame is a numpy matrix
  print(i.shape)

Producción:

(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)
(300, 354, 4)

3) Crear un archivo de imagen: para crear un archivo de imagen, debemos usar el método imageio.imwrite() .

Sintaxis: imageio.imwrite(filename,numPy_ndarray, format=None) 

Parámetros:

  • filename: Ruta / Nombre del archivo a guardar como
  • numpy_ndarray: Los datos de la imagen. Debe ser NxM, NxMx3 o NxMx4.
  • formato: str, el formato que se utiliza para leer el archivo. De forma predeterminada, imageio selecciona el adecuado para usted, según el nombre del archivo y su contenido.

Ejemplo:

Python3

# import required libraries
import imageio
import numpy as np
  
  
rows, cols = (5, 5) 
  
# create numpy 2-d array
arr = np.zeros((rows, cols))
  
# create an image
image = imageio.imwrite('image_writing.png', 
                     arr)

Producción:

imagen_escribiendo.png.png

Como los valores de datos eran ceros, esta es una imagen vacía con un tamaño de 68 bytes.

Publicación traducida automáticamente

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