2017-08-23 10 views
1

私はこの画像をプロットするたびに、白人が黄色に変わる問題が発生します。私はそれがmatplotlibが使用するデフォルトの色マッピングviridisに起因することを知っています。 cmap = 'gray'に切り替えると、右の赤色の枠が表示されます。なぜmatplotlibのcmap引数を使用するのですか?imshow()のカラーペインを分離するには?

これはなぜ起こっているのですか?このような写真には一般にどのようなカラーマップを使用すべきですか?デフォルトのimshow(img)を実行すると、画像はどのように適切な色を表示できますか?単一のカラーペインを分離すると、何が変わるのですか?また、赤色の緑色や青色のペインをイメージで分離するときに、好ましいcmapは何ですか?なぜですか?

Ipython Notebook

これは、通常の画像プロットが正しくRGBカラーモードに応じて赤色ペイン

出力され:

enter image description here

+1

の違いは、画像全体に 'imshow'を使用する場合、' imshow'は、RGBデータが利用できる持っていることで、デフォルトは、ちょうど画像を表示することです。 1つのチャンネル(あなたの場合は赤色)だけを使用する場合、残されているものはグレースケールデータです。このようなデータに 'imshow'を使用すると、デフォルトでは、違いをより簡単に区別できるようにカラーマップを使用します。そして、デフォルトのカラーマップはちょうど 'viridis'です。 –

答えて

2

ロジックはかなり単純であり、おそらくは次のチャートはどんな説明よりも助けになります。

enter image description here

+0

ニース!自分でチャートを生成しましたか、それともウェブからですか? –

+0

@Thomas私は自分で作成しました(inkscapeを使用しています)。 – ImportanceOfBeingErnest

関連する問題