Frage:
Wie kann ich ein RGB-Bild mit effizient in Graustufen konvertieren? Python?
Problem Beschreibung:
Versuch, ein RGB-Bild mithilfe der Imread-Funktion in Matplotlib in Graustufen zu konvertieren, stößt jedoch auf Einschränkungen bei den verfügbaren Vorgängen. Die manuelle Implementierung der Konvertierung von RGB in Graustufen erwies sich als ineffizient. Ich suche eine professionelle, integrierte Lösung für diese häufige Bildverarbeitungsaufgabe.
Antworten:
Pillow verwenden:
from PIL import Image img = Image.open('image.png').convert('L') img.save('greyscale.png')
Verwendung von Matplotlib und RGB zu Graustufen Formel:
import numpy as np import matplotlib.pyplot as plt import matplotlib.image as mpimg def rgb2gray(rgb): return np.dot(rgb[...,:3], [0.2989, 0.5870, 0.1140]) img = mpimg.imread('image.png') gray = rgb2gray(img) plt.imshow(gray, cmap=plt.get_cmap('gray'), vmin=0, vmax=1) plt.show()
Das obige ist der detaillierte Inhalt vonWie konvertiert man RGB-Bilder in Python effizient in Graustufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!