Wie werden Graustufenbilder mit der Funktion „imshow()' von Matplotlib korrekt angezeigt?

DDD
Freigeben: 2024-10-28 20:35:02
Original
214 Leute haben es durchsucht

How to Display Grayscale Images Correctly with Matplotlib's `imshow()` Function?

Graustufenbilder mit Matplotlib laden und anzeigen

Beim Konvertieren eines Bilds in Graustufen werden dessen Farbinformationen entfernt, was zu einem Bild mit Graustufen führt . Während Matplotlib die imshow()-Funktion zum Anzeigen von Bildern bereitstellt, kann es fälschlicherweise Graustufenbilder mithilfe einer Farbkarte anzeigen, was zu unerwünschten Farben führt.

Um dies zu beheben, ist es wichtig, das cmap-Argument in imshow() anzugeben 'grau'. Dadurch wird Matplotlib angewiesen, eine Graustufen-Farbkarte zu verwenden, um sicherzustellen, dass das Bild in Graustufen angezeigt wird. Darüber hinaus stellt die Einstellung der Parameter vmin und vmax auf die minimalen bzw. maximalen Werte der Pixelintensitäten sicher, dass die Graustufenwerte korrekt dargestellt werden.

Hier ist ein Beispielcode, der dies demonstriert:

<code class="python">import numpy as np
import matplotlib.pyplot as plt
from PIL import Image

fname = 'image.png'
image = Image.open(fname).convert("L")
arr = np.asarray(image)
plt.imshow(arr, cmap='gray', vmin=0, vmax=255)
plt.show()</code>
Nach dem Login kopieren

Dieser Code liest ein Bild aus einer Datei namens „image.png“, konvertiert es in Graustufen und zeigt das Graustufenbild mithilfe der imshow()-Funktion von Matplotlib mit der richtigen Graustufen-Farbkarte an. Mit diesem Ansatz können Sie Graustufenbilder erfolgreich anzeigen, ohne dass Probleme mit der Farbkarte auftreten.

Das obige ist der detaillierte Inhalt vonWie werden Graustufenbilder mit der Funktion „imshow()' von Matplotlib korrekt angezeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage