Wie zeigt man Bilder, die in einem Numpy-Array gespeichert sind, mit einem Beispiel (funktioniert im Jupyter-Notebook)
Ich weiß, dass es einfachere Antworten gibt, aber diese wird Ihnen ein Verständnis dafür vermitteln, wie Bilder tatsächlich aus einem Numpy-Array gezeichnet werden.
Beispiel laden
from sklearn.datasets import load_digits
digits = load_digits()
digits.images.shape #this will give you (1797, 8, 8). 1797 images, each 8 x 8 in size
Array mit einem Bild anzeigen
digits.images[0]
array([[ 0., 0., 5., 13., 9., 1., 0., 0.],
[ 0., 0., 13., 15., 10., 15., 5., 0.],
[ 0., 3., 15., 2., 0., 11., 8., 0.],
[ 0., 4., 12., 0., 0., 8., 8., 0.],
[ 0., 5., 8., 0., 0., 9., 8., 0.],
[ 0., 4., 11., 0., 1., 12., 7., 0.],
[ 0., 2., 14., 5., 10., 12., 0., 0.],
[ 0., 0., 6., 13., 10., 0., 0., 0.]])
Leere 10 x 10 Subplots zur Visualisierung von 100 Bildern erstellen
import matplotlib.pyplot as plt
fig, axes = plt.subplots(10,10, figsize=(8,8))
Zeichnen von 100 Bildern
for i,ax in enumerate(axes.flat):
ax.imshow(digits.images[i])
Ergebnis:
Was bedeutet axes.flat
tun? Es erstellt einen Numpy-Enumerator, so dass Sie über Achsen iterieren können, um Objekte auf ihnen zu zeichnen. Exemple :
import numpy as np
x = np.arange(6).reshape(2,3)
x.flat
for item in (x.flat):
print (item, end=' ')