Как отобразить красный канал изображения в Matlab?
У меня есть 3D-матрица im
, которая представляет изображение RGB. Я могу сделать
imshow(im)
чтобы отобразить изображение.
Я хочу отображать только один из каналов RGB за раз: я хочу отобразить красный канал, и я хочу, чтобы он был красным.
Я пробовал
imshow(im(:,:,1))
но он отображает изображение в градациях серого (это не то, что я хочу).
Как отобразить красный канал и сделать его красным?
Ответы
Ответ 1
У меня есть три предложения для вас.
1.
Используйте функцию imagesc
и выберите палитру красного цвета.
2.
Очистите другие цветные каналы: im(:,:,2:3) = 0; imshow(im);
3. Используйте функцию ind2rgb
с соответствующей цветовой картой.
Ответ 2
Попробуйте следующее:
% display one channel only
clear all;
im=imread('images/DSC1228L_512.jpg');
im_red = im;
im_green = im;
im_blue = im;
% Red channel only
im_red(:,:,2) = 0;
im_red(:,:,3) = 0;
figure, imshow(im_red);
% Green channel only
im_green(:,:,1) = 0;
im_green(:,:,3) = 0;
figure, imshow(im_green);
% Blue channel only
im_blue(:,:,1) = 0;
im_blue(:,:,2) = 0;
figure, imshow(im_blue);
Ответ 3
Попробуйте это
I = imread('exemple.jpg');
%Red component
R = I(:,:,1);
image(R), colormap([[0:1/255:1]', zeros(256,1), zeros(256,1)]), colorbar;
%Green Component
G = I(:,:,2);
figure;
image(G), colormap([zeros(256,1),[0:1/255:1]', zeros(256,1)]), colorbar;
%Blue component
B = I(:,:,3);
figure;
image(B), colormap([zeros(256,1), zeros(256,1), [0:1/255:1]']), colorbar;
Ответ 4
Вы имеете в виду, что хотите извлечь только красный цвет?
используя im (:,:, 1), выделите только красный канал из 3D-изображения и преобразуйте его в 2D-изображение.
Попробуйте этот простой код:
im=imread('example.jpg');
im_red=im(:,:,1);
im_gray=rgb2gray(im);
im_diff=imsubtract(im_red,im_gray);
imshow(im_diff);
Ответ 5
Для лучшего обзора вы можете рассчитать и отобразить чистый цвет. Формула R p= R c/(R c + G c + B cсуб > ). И пример кода для красного цвета:
imagesc(im(:,:,1) ./ (im(:,:,1) + im(:,:,2) + im(:,:,3)))
Это сделает цветной дисплей более четким, так как другие цвета были отфильтрованы.
Я попытаюсь проиллюстрировать это с помощью примера:
Исходное изображение:
![enter image description here]()
Красный канал изображения (im(:,:,1)
):
![enter image description here]()
Чистый красный:
![enter image description here]()