RGB指定

11 views (last 30 days)
佳之助
佳之助 on 22 Jun 2023
Answered: Shunichi Kusano on 22 Jun 2023
左のグレー画像をグレーのレベルによってRGBを指定し、右のような画像に変換したいです。なかなかうまくいかないので教えていただけますと幸いです。
例えば、モノクロ画像に対するピクセル値が20~39のとき、RGBを[76,16,0]にしたいです。

Answers (1)

Shunichi Kusano
Shunichi Kusano on 22 Jun 2023
ind2rgb関数がそのものズバリの機能となります。ドキュメントで言うところのmapを自分で作るのは結構大変なので、mapは既存のカラーマップをベースにするといいのかなと思います。
例えばautumnのカラーマップを使ってグレースケール画像に色をつけるのはこのように書きます。
num_color = 16; % 16階調
cmap = autumn(num_color); % カラーマップ
img = imadjust(imread("pout.tif")); % グレースケール画像の準備
imshow(img);
q_img = uint8(im2double(img)*(num_color-1)); % num_colorと同じ数に量子化
rgb = ind2rgb(q_img,cmap); % autumnベースで色を付ける
imshow(rgb);

Categories

Find more on Modify Image Colors in Help Center and File Exchange

Tags

Products


Release

R2023a

Community Treasure Hunt

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

Start Hunting!