Matplotlib を使用したグレースケール画像表示の実現
matplotlib.pyplot.imshow() を使用してグレースケール画像を表示しようとすると、問題が発生する可能性がありますその結果、イメージがカラーマップとして表示されます。この問題に対処するには、グレースケール画像変換の正しい手順を理解することが重要です。
この場合、ユーザーは画像をロードし、PIL の Image.open().convert("L ") 関数。ただし、その後の scipy.misc.fromimage() を使用した行列への変換により、不要な手順が導入され、画像のグレースケール表現が破損する可能性がありました。
グレースケール画像を正しく表示するには、次の手順に従います。
サンプル コードは次のとおりです:
<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>
あるいは、逆グレースケールを表示するには、cmap 引数を次のように切り替えます。 'gray_r'.
以上がMatplotlib.pyplot.imshow() を使用してグレースケール画像を正しく表示するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。