質問

私はイメージを持っています。

Iは、その画像の上に行きたい画素毎、黒ではない任意のピクセルは白になってなければならないであろう。私はこれを行う方法を教えてください。

(パイソン)。

ありがとうございます。

役に立ちましたか?

解決

あなたはこのような理由のために特別に存在するpoint機能を使用する必要があります。

converter= ( (0,) + 255*(255,) ).__getitem__
def black_or_white(img):
    return img.convert('L').point(converter)

他のヒント

最も効率的な方法は、ポイント機能を使用することです。

def only_black(band):
    if band > 0:
        return 255
    return 0
result = im.convert('L').point(only_black)

これは PILのドキュメントではこれについて言いたいことです

  

バイレベル画像に変換する場合   (モード「1」)、ソース画像は、最初に   白黒に変換します。   127より大きい結果の値であります   次に白に設定され、画像であります   ディザリング。他のしきい値を使用するには、使用します   ポイント法ます。

あなたは次のライブラリをチェックアウトする場合があります:

http://effbot.org/imagingbook/image.htmする

特に

im.getpixel(xy) => value or tuple

im.putpixel(xy, colour)
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top