8.6 Archivos.gif - matrices como imagen

pinkybrain gifImágenes básicas se pueden abrir en Python con las libreras matplotlib.image para procesarlas como una matriz.

Ejemplo: pinky&brain.gif

Existen otras librerías para el procesamiento de imagen, sin embargo para describir el concepto se usará la forma más simple.

La imagen normalmente tiene el formato RGB (Red, Green, Blue) o RGBA (incluye transparencia).
El tamaño de la imagen en alto y ancho corresponde a las dos primeras dimensiones de la matriz, la tercera dimensión corresponde al color en formato RGB.

Ejemplo: Matriz[fila, columna, RGBA]

# Abrir imagen desde in archivo
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

# INGRESO
# narchivo = input('nombre del archivo: ')
narchivo='pinky&brain.gif'

unaimagen=mpimg.imread(narchivo)

# PROCEDIMIENTO
tamano=np.shape(unaimagen)
rojo=unaimagen[:,:,0]
verde=unaimagen[:,:,1]
azul=unaimagen[:,:,2]
transparente=unaimagen[:,: 3]

# SALIDA
print('El tama o de la imagen: ', tamano)
print(unaimagen)
plt.subplot(221)
plt.imshow(rojo, cmap='Reds')
plt.subplot(222)
plt.imshow(verde, cmap='Greens')
plt.subplot(223)
plt.imshow(azul, cmap='Blues')
plt.subplot(224)
plt.imshow(unaimagen)
plt.show()
El tamaño de la imagen:  (277, 370, 4)
[[[  0  43 102 255]
  [  0  43  51 255]
  [  0  43 102 255]
  ...,

plot PinkyBrain gif RGB

Referencia: https://matplotlib.org/users/image_tutorial.html