Convierta una array NumPy en una imagen

NumPy o python numérico es una biblioteca popular para la manipulación de arrays. Dado que las imágenes son solo una array de píxeles que llevan varios códigos de color. NumPy se puede usar para convertir una array en una imagen. Además de NumPy, usaremos PIL o Python Image Library, también conocida como Pillow, para manipular y guardar arrays.

Acercarse:

  1. Crea una array numpy.
  2. Modifique la array anterior a las dimensiones adecuadas.
  3. Cree un objeto de imagen a partir de la array anterior utilizando la biblioteca PIL.
  4. Guarde el objeto de imagen en un formato de archivo adecuado.

A continuación se muestra la implementación:

Python3

# Python program to convert
# numpy array to image
  
# import required libraries
import numpy as np
from PIL import Image as im
  
# define a main function
def main():
  
    # create a numpy array from scratch
    # using arange function.
    # 1024x720 = 737280 is the amount 
    # of pixels.
    # np.uint8 is a data type containing
    # numbers ranging from 0 to 255 
    # and no non-negative integers
    array = np.arange(0, 737280, 1, np.uint8)
      
    # check type of array
    print(type(array))
      
    # our array will be of width 
    # 737280 pixels That means it 
    # will be a long dark line
    print(array.shape)
      
    # Reshape the array into a 
    # familiar resoluition
    array = np.reshape(array, (1024, 720))
      
    # show the shape of the array
    print(array.shape)
  
    # show the array
    print(array)
      
    # creating image object of
    # above array
    data = im.fromarray(array)
      
    # saving the final output 
    # as a PNG file
    data.save('gfg_dummy_pic.png')
  
# driver code
if __name__ == "__main__":
    
  # function call
  main()

Producción:

<class 'numpy.ndarray'>
(737280,)
(1024, 720)
[[  0   1   2 ... 205 206 207]
 [208 209 210 ... 157 158 159]
 [160 161 162 ... 109 110 111]
 ...
 [144 145 146 ...  93  94  95]
 [ 96  97  98 ...  45  46  47]
 [ 48  49  50 ... 253 254 255]]
¡Así es como se ve una array numpy!

        gfg_dummy_pic.png 1024 x 720  

Nota: cada array no se puede convertir en una imagen porque cada píxel de una imagen consta de un código de color específico y si la array dada no tiene un formato adecuado, las bibliotecas no podrán procesarla correctamente.

Publicación traducida automáticamente

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