画像があります。
その画像をピクセルごとに確認したいと思います。黒でないピクセルはすべて白に変換する必要があります。どうすればよいですか?
(Python)。
ありがとう!
画像があります。
その画像をピクセルごとに確認したいと思います。黒でないピクセルはすべて白に変換する必要があります。どうすればよいですか?
(Python)。
ありがとう!
最も効率的な方法は、ポイント関数を使用することです
def only_black(band):
if band > 0:
return 255
return 0
result = im.convert('L').point(only_black)
これは、PILドキュメントがこれについて述べていることです。
バイレベル画像(モード「1」)に変換する場合、ソース画像は最初に白黒に変換されます。次に、127より大きい結果の値が白に設定され、画像がディザリングされます。他のしきい値を使用するには、ポイント方式を使用します。
point
このために特別に存在する関数を使用する必要があります。
converter= ( (0,) + 255*(255,) ).__getitem__
def black_or_white(img):
return img.convert('L').point(converter)
次のライブラリを確認することをお勧めします。
http://effbot.org/imagingbook/image.htm
特に:
im.getpixel(xy) => value or tuple
と
im.putpixel(xy, colour)