Guardar una matriz Numpy como imagen

Resuelto M456 asked hace 15 años • 24 respuestas

Tengo una matriz del tipo de matriz Numpy. ¿Cómo lo escribiría en el disco como una imagen? Cualquier formato sirve (png, jpeg, bmp...). Una limitación importante es que PIL no está presente.

M456 avatar May 24 '09 07:05 M456
Aceptado

Usando PIL, guarde una matriz NumPy arrhaciendo:

from PIL import Image
im = Image.fromarray(arr)
im.save("your_file.jpeg")

Consulte los documentos para conocer los formatos de datos disponibles , incluidos JPEG, PNG, etc.

migas avatar Dec 16 '2011 18:12 migas

Esto usa PIL, pero tal vez a algunos les resulte útil:

import scipy.misc
scipy.misc.imsave('outfile.jpg', image_array)

EDITAR : La versión actual scipycomenzó a normalizar todas las imágenes para que min (datos) se vuelva negro y max (datos) se vuelva blanco. Esto no es deseado si los datos deben tener niveles de grises exactos o canales RGB exactos. La solución:

import scipy.misc
scipy.misc.toimage(image_array, cmin=0.0, cmax=...).save('outfile.jpg')
Steve Tjoa avatar Nov 11 '2009 04:11 Steve Tjoa