15

75%の白(10進数の190)のしきい値を使用してモノクロに変換したい8ビットのグレースケールTIFF画像があります。Image.convert(mode)メソッドのセクションで、PILマニュアルには次のように書かれています。

「グレースケール画像をビットレベル画像(モード「1」)に変換する場合、ゼロ以外の値はすべて255(白)に設定されます。他のしきい値を使用するには、ポイント方式を使用します。」

Image.point(table)メソッドは、指定されたテーブルを介して各ピクセルをマップすることを示しています。

im.point(table、mode)=> image
im.point(function、mode)=> image

「画像をテーブルにマッピングし、オンザフライで変換します。現在のバージョンのPILでは、これは「L」および「P」画像を1つのステップで「1」に変換するためにのみ使用できます。たとえば、画像のしきい値を設定する場合などです。」

必要な75%のしきい値に対応するテーブル(または関数)を作成するにはどうすればよいですか?

4

2 に答える 2

18

この回答「Write TIFF file in python from String」で完全な解決策を見つけました。関数には「and 255」を含める必要があります

threshold = 191  
im = im.point(lambda p: p > threshold and 255)  
于 2011-06-27T09:19:43.960 に答える
2

im.point(lambda p: p > 190)結果を投稿してみてください。

于 2011-06-26T16:48:20.423 に答える