MATLAB にロードされたマップのイメージがあります。
マップが MATLAB に読み込まれる前の外観は次のとおりです。
米国大陸: 緑
オーシャンブルー
カナダ: 黄
表示されているマップをロードした後:
カナダとアメリカは 1 つの色ですが、色で分ける必要があります。
私のコードは次のとおりです。
im = double(imread('US.png'))
figure;
colormap summer;
...
大まかな推測として、強度(色)値を適切にスケーリングしていない、つまり[0、1]ではないため、1を超える値はカラーマップ(任意の色またはグレースケール)によって同じ値にマッピングされていると想定しています.
length(unique(im))==3
(読み込み前に表示される 3 つのグレースケール値の 3 つの異なるインデックス) である限り、次の両方が視覚的な出力をスケーリングする必要があります。
imshow(im, []); colormap summer;
imshow(im./max(im(:))); colormap summer;