0

MATLAB にロードされたマップのイメージがあります。

マップが MATLAB に読み込まれる前の外観は次のとおりです。

米国大陸: 緑

オーシャンブルー

カナダ: 黄

表示されているマップをロードした後:

カナダとアメリカは 1 つの色ですが、色で分ける必要があります。

私のコードは次のとおりです。

im = double(imread('US.png'))
figure;
colormap summer;
...
4

1 に答える 1

0

大まかな推測として、強度(色)値を適切にスケーリングしていない、つまり[0、1]ではないため、1を超える値はカラーマップ(任意の色またはグレースケール)によって同じ値にマッピングされていると想定しています.

length(unique(im))==3(読み込み前に表示される 3 つのグレースケール値の 3 つの異なるインデックス) である限り、次の両方が視覚的な出力をスケーリングする必要があります。

imshow(im, []); colormap summer;
imshow(im./max(im(:))); colormap summer;  
于 2012-08-31T00:40:40.903 に答える