NumPy-Array als Bild speichern in Python
-
Verwenden die Funktion
Image.fromarray()
zum ein NumPy Array als Image zu speichern -
Verwenden die Funktion
imageio.imwrite()
zum ein NumPy Array als Image zu speichern -
Verwenden die Funktion
matplotlib.pyplot.imsave()
zum ein NumPy-Array als Image zu speichern -
Verwenden die Funktion
cv2.imwrite()
zum ein NumPy-Array als Image zu speichern
In Python wird das NumPy-Modul verwendet, um mit Arrays zu arbeiten. In Python sind viele Module verfügbar, mit denen wir Bilder lesen und speichern können.
Bilder können als eine Anordnung verschiedener Pixel betrachtet werden, die an bestimmten Positionen mit entsprechenden Farbcodes gespeichert sind. Es kann also vorkommen, dass wir ein Array konvertieren und als Image speichern müssen.
In diesem Tutorial wird erläutert, wie Sie ein NumPy-Array als Bild speichern.
Verwenden die Funktion Image.fromarray()
zum ein NumPy Array als Image zu speichern
Mit der Funktion fromarray()
wird aus einem Objekt, das das Array exportiert, ein Bildspeicher erstellt. Wir können diesen Bildspeicher dann an unserem gewünschten Speicherort speichern, indem wir den erforderlichen Pfad und den Dateinamen angeben.
Beispielsweise,
import numpy as np
from PIL import Image
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
im = Image.fromarray(array)
im.save("filename.jpeg")
Wir erstellen zuerst ein Array, in dem RGB-Farbcodes gespeichert und dann exportiert werden. Wir können das gewünschte Format unseres Bildes im Dateinamen angeben. Dies kann jpeg
, png
oder ein anderes häufig verwendetes Bildformat sein. Dies gilt für alle unten diskutierten Methoden.
Verwenden die Funktion imageio.imwrite()
zum ein NumPy Array als Image zu speichern
Zuvor hatte das scipy-Modul die Funktion imsave()
, um numpy-Arrays als Bilder zu speichern. In neueren Versionen wurde es jedoch veraltet und die Funktion imwrite()
von image.io()
wurde empfohlen, diese Aufgabe auszuführen, und wurde aufgrund ihrer Einfachheit immer beliebter.
Der folgende Code zeigt, wie diese Funktion verwendet wird.
import imageio
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
imageio.imwrite("filename.jpeg", array)
Verwenden die Funktion matplotlib.pyplot.imsave()
zum ein NumPy-Array als Image zu speichern
Das matplotlib-Modul verfügt über eine Vielzahl von Funktionen zum Arbeiten mit Bildern.
Mit der Funktion imsave()
kann ein Array als Bilddatei gespeichert werden.
Beispielsweise,
import matplotlib.pyplot as plt
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
plt.imsave("filename.jpeg", array)
Verwenden die Funktion cv2.imwrite()
zum ein NumPy-Array als Image zu speichern
Das OpenCV-Modul wird häufig für die Bildverarbeitung in Python verwendet. Die Funktion imwrite()
dieses Moduls kann ein NumPy-Array als Bilddatei exportieren.
Beispielsweise,
import cv2
import numpy as np
array = np.arange(0, 737280, 1, np.uint8)
array = np.reshape(array, (1024, 720))
cv2.imwrite("filename.jpeg", array)
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn