MATLAB--数字图像处理 入门--分别提取图像三通道(RGB)灰度图

入门–分别提取图像三通道(RGB)灰度图

原图
在这里插入图片描述
输入下面代码后:

t=imread('t1.jpg')
imshow(t)

得到的图像和原图一样

但,执行下面代码后:

t=imread('t1.jpg')
t1=t(1:8:end,1:8:end)
imshow(t1)

在这里插入图片描述
出现了三张图片,但是感觉应该只有一张啊。
这是因为图像的存储是一个三维矩阵,包含RGB三种要素的信息,也就是我们所说的三通道。
上面的代码是分别对R G B进行了采样,所以会得到三张图片。

那么怎样得到三通道分别的图像呢?

a=imread('t1.jpg');
%提取图像三通道信息
channel_1=a;
channel_2=a;
channel_3=a;
% 第一幅图的G B通道的灰度值全部变成0 这样就只有R通道的了
channel_1(:,:,2)=0;
channel_1(:,:,3)=0;

channel_2(:,:,1)=0;
channel_2(:,:,3)=0;

channel_3(:,:,1)=0;
channel_3(:,:,2)=0;

% 显示图像
subplot(2,2,1);
imshow(channel_1,[]);
title('R通道');
subplot(2,2,2);
imshow(channel_2,[]);
title('G通道');
subplot(2,2,3);
imshow(channel_3,[]);
title('B通道');
subplot(2,2,4);
imshow(a,[]);
title('原图');

效果图:
在这里插入图片描述

更多

获取更多资料、代码,微信公众号:海轰Pro
回复 海轰 即可

猜你喜欢

转载自blog.csdn.net/weixin_44225182/article/details/100360426