最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

RGB イメージの分離されたカラー チャネルの表示

この例ではシンプルなトゥルーカラー イメージを作成し、カラー チャネル (平面) を分離します。この例では、各カラー チャネルと元のイメージを表示します。

赤、緑、および青の連続領域を含む RGB イメージを作成します。このイメージの次元は 200 x 200 ピクセルです。イメージを表示します。

RGB=reshape(ones(200,1)*reshape(jet(200),1,600),[200,200,3]);
imshow(RGB)
title('Original RGB Image')

3 つのカラー チャネルを分離します。

[R,G,B] = imsplit(RGB);

元の RGB イメージと共に、各カラー チャネルを個別に表示します。図の中の個々の色平面には白の領域が含まれていることに注目してください。白は、個々の各色の最高値 (最も純粋な階調) に対応しています。たとえば赤のチャネル イメージでは、白は純粋な赤の値の最高濃度を表します。赤が緑または青と混合されるにつれ、グレーのピクセルが表示されます。イメージの黒の領域は、赤の値を含まないピクセル値、つまり R == 0 を示しています。

subplot(2,2,1)
imshow(R)
title('Red Channel')

subplot(2,2,2)
imshow(G)
title('Green Channel')

subplot(2,2,3)
imshow(B)
title('Blue Channel')

subplot(2,2,4)
imshow(RGB)
title('Original Image')

完全に黒のチャネルを作成します。

allBlack = zeros(size(RGB, 1), size(RGB, 2), class(RGB));

個々のカラー チャネルの色バージョンを作成します。

justRed = cat(3, R, allBlack, allBlack);
justGreen = cat(3, allBlack, G, allBlack);
justBlue = cat(3, allBlack, allBlack, B);

すべてのチャネルと元のイメージをモンタージュに表示します。

montage({justRed, justGreen, justBlue, RGB}, 'ThumbnailSize', []);

参考

関連するトピック