0

2 つの画像があるとします。

1) RGB 画像:

% initialize RGB image:
rgbIm = zeros(100, 100, 3); 
rgbIm(20:80, 20:80, 1) = 1;

2) グレースケール画像:

% initialize grayscale image:
grayIm = zeros(100);
grayIm(20:80, 20:80) = 1;

それらの両方を示しましょう:

figure, imshow(rgbIm),  colormap('jet'), colorbar;
figure, imshow(grayIm), colormap('jet'), colorbar;

ご覧のとおり、2 番目の図 (グレースケール画像) のカラーバーは完全に理にかなっています。一方で、最初の図のカラーマップから得られる情報はよくわかりません。

私が達成したいのは、RGB画像に対応する図にグレースケール画像のカラーバーを表示することです。

これは意味がないように思えるかもしれませんが、これは、より大きなプロジェクトで何をしたいかを示すために作成した非常に最小限の例にすぎません。

何かご意見は?

どうもありがとう :)

EDIT1:これが必要な理由を説明させてください

特定の関心領域の 1 つの MRI スライスのいくつかの生理学的パラメーターを計算すると、次のような結果が得られるとします。

パラメトリック イメージ

ここで、これらのパラメーターを元のスライスの上に重ね合わせたいので、これを実現するために 1 つの RGB 画像を作成します。

元の画像に重ねる

カラーマップは意味がありません。これが、RGB 画像 (つまり重ね合わせ画像) のパラメトリック画像に対応するカラーマップを表示したい理由です。

何か案は?

ご清聴ありがとうございました。

4

2 に答える 2

1

(私自身の質問に答えて、将来誰かを助けることができれば幸いです)

上記の回答とSteve Eddinsのブログからの投稿の助けを借りて、意図したことを達成しました。方法は次のとおりです。

baseImage = baseImage/(max(baseImage(:))); % normalize base (anatomical) image
rgbSlice  = baseImage(:,:,[1 1 1]);        % converting to RGB (ignore colormaps)
imshow(parameterROIImage, []);             % show parametric image
colormap('jet');                           % apply colormap
hold on;
h = imshow(rgbSlice);                      % superimpose anatomical image
set(h, 'AlphaData', ~bwROIlocations);      % make pixels in the ROI transparent
colorbar;       

どこにparameterROIImageある:

ここに画像の説明を入力

bwROIlocationsROI ピクセルを含む論理行列です。

ここに画像の説明を入力

最終結果:

ここに画像の説明を入力

助けてくれてありがとうシャイ。

于 2013-05-07T10:00:58.743 に答える