Bildzeichnung mit Matplotlib

MatplotlibMatplotlibBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernst du, wie du Bilder mit der Matplotlib-Bibliothek in Python zeichnen und manipulieren kannst. Du wirst lernen, wie du Bilddaten in NumPy-Arrays importierst, NumPy-Arrays als Bilder zeichnest, Pseudofarbschemata anwenderst, Farbskalenreferenzen hinzufügst, spezifische Datensätze untersuchst und verschiedene Interpolationsverfahren erkundest.

Tipps für die virtuelle Maschine

Nachdem der Start der virtuellen Maschine abgeschlossen ist, klicke in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.

Manchmal musst du einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen von Jupyter Notebook nicht automatisiert werden.

Wenn du während des Lernens Probleme hast, kannst du Labby gerne fragen. Gib nach der Sitzung Feedback, und wir werden das Problem für dich prompt beheben.

Importieren von Bilddaten

Um zu beginnen, müssen wir die erforderlichen Bibliotheken importieren und die Bilddaten in ein NumPy-Array laden. Im unserem Fall werden wir die PIL-Bibliothek verwenden, um das Bild zu laden und es dann in ein NumPy-Array zu konvertieren.

from PIL import Image
import matplotlib.pyplot as plt
import numpy as np

img = np.asarray(Image.open('./stinkbug.png'))

Zeichnen von Bildern

Jetzt, da wir die Bilddaten in einem NumPy-Array haben, können wir sie mit der imshow-Funktion aus matplotlib.pyplot zeichnen. Diese Funktion nimmt das Bildarray als Eingabe und zeigt es als Bildgrafik an.

plt.imshow(img)

Anwenden von Pseudofarbschemata

Pseudofarbschemata können verwendet werden, um den Kontrast zu verbessern und die Daten einfacher zu visualisieren. Wenn das Bild graustufenhaft ist, können wir Pseudofarbschemata anwenden, indem wir verschiedene Farbskalen angeben. Wir können dies tun, indem wir den Parameter cmap in der imshow-Funktion verwenden.

lum_img = img[:, :, 0]
plt.imshow(lum_img, cmap="hot")

Hinzufügen einer Farbskalenreferenz

Um eine Referenz für die Farbskala bereitzustellen, können wir eine Farbskala zur Grafik hinzufügen. Dies kann mit der colorbar-Funktion aus matplotlib.pyplot erreicht werden.

imgplot = plt.imshow(lum_img)
plt.colorbar()

Untersuchung von bestimmten Datenbereichen

Manchmal kann es erforderlich sein, bestimmte Datenbereiche in einem Bild zu untersuchen. Wir können dies tun, indem wir die Grenzen der Farbskala mit dem Parameter clim in der imshow-Funktion anpassen. Dadurch können wir uns auf bestimmte Bereiche des Bildes konzentrieren, während wir in anderen Bereichen Detailverlust hinnehmen.

min_value, max_value = 100, 200
plt.imshow(img, clim=(min_value, max_value))

Array-Interpolationsschemata

Beim Ändern der Größe eines Bildes ist es erforderlich, die Pixelwerte zu interpolieren, um den fehlenden Raum zu füllen. Verschiedene Interpolationsschemata können verwendet werden, um den Wert eines Pixels anhand seiner umgebenden Pixel zu bestimmen. Matplotlib bietet verschiedene Interpolationsoptionen wie "nearest", "bilinear" und "bicubic" an.

plt.imshow(img, interpolation="bilinear")

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie Bilder mit Matplotlib zeichnen und manipulieren. Sie haben gelernt, wie Sie Bilddaten in NumPy-Arrays importieren, NumPy-Arrays als Bilder zeichnen, Pseudofarbschemata anwenden, Farbskalenreferenzen hinzufügen, bestimmte Datenbereiche untersuchen und verschiedene Interpolationsschemata erkunden. Diese Fähigkeiten werden nützlich sein, um Bilder in verschiedenen Anwendungen zu visualisieren und zu analysieren.