カラーマップの任意の範囲の値の色を指定したい

38 views (last 30 days)
Takanori Aihara
Takanori Aihara on 17 Dec 2021
Answered: Atsushi Ueno on 17 Dec 2021
カラーマップ作成後のカラーを数値別に指定したいです。
例えば、0~20は青、20~50は緑、50~100は赤
のように値範囲、色も任意で決めたいです。
具体的な質問になっているか少々心配ですがよろしくお願いします。

Accepted Answer

Atsushi Ueno
Atsushi Ueno on 17 Dec 2021
>カラーマップ作成後のカラーを数値別に指定、値範囲・色共に任意、例:0~20は青、20~50は緑、50~100は赤、
質問の文言通りに受けると下記の様になります。
grayImage = imread('moon.tif');
imshow(grayImage);
colorMap = zeros(10,3); % 真っ黒に初期化
colorMap(6:10,1) = 1; % 50~100は赤
colorMap(3:5,2) = 1; % 20~50は緑
colorMap(1:2,3) = 1; % 0~20は青
colorMap'
ans = 3×10
0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0
colormap(colorMap);
colorbar;
caxis([0 100]); % grayImageは0-255の値域なので、0-100にカラーマップを割り当てると101-255も全部赤になる
GUIで直感的に操作するのも良いと思います。

More Answers (0)

Products


Release

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!