MATLAB中,怎样将RGB图像转为灰度图像后,复原回RGB图像?

 我来答
greatdju
推荐于2017-11-24 · TA获得超过2.2万个赞
知道大有可为答主
回答量:2486
采纳率:50%
帮助的人:4044万
展开全部
颜色信息丢失,不可能回复到彩色了。
追问
可不可以在转化的时候保存颜色信息,然后根据颜色信息复原?
追答
一般彩色图像至少需要三个维度的信息,比如RGB、HSV、YIQ等等。每种颜色相当于一个三维向量,不同的表示法则相当于同一个向量在不同的坐标轴下(即不同的基下)的表示。而将其变为灰度后,只剩下一个维度,相当于将三维向量投影为一维标量一样,是不可能回复为原来的向量的。要想恢复,就必须储存另外两个维度的信息,合在一起还是三维向量,这还不如直接保存原来的彩色图像数据。如果你一定要将其分解为灰度基和另两个基下的表示,可以用YIQ表示,他的Y分量就和灰度数据等价,美国电视信号NTSC就是YIQ表示的,因此可以和黑白电视兼容(黑白电视只能接受Y信号,得到灰度图像)。

用命令rgb2ntsc和ntsc2rgb可以将数据在RGB和YIQ之间互换。下面是例子

clear;clc;
RGB = imread('peppers.png');%RGB图像
YIQ = rgb2ntsc(RGB);%YIQ表示
GRAY=rgb2gray(RGB);%灰度图像,它和YIQ中的Y等价,只不过灰度图像的值是0~255的整数,而Y是0~1的实数,即GRAY=uint8(255*YIQ(:,:,1))
RGB_restore=ntsc2rgb(YIQ);%从YIQ表示恢复的RGB图像
subplot 221
imshow(RGB);title('原图像RGB')
subplot 222
imshow(GRAY);title('灰度图GRAY')
subplot 224
imshow(YIQ(:,:,1));title({'转换为YIQ后的Y分量','(和灰度图等价)'})
subplot 223
imshow(RGB_restore);title({'从YIQ表示恢复的RGB图像','(和原图像一致)'})

当然,这种分解是不唯一的,只要保证三个基互不相关即可。因此我们可以自己定义分解方法。比如,我们要将RGB表示转换为RGg表示,也就是用灰度分量g取代蓝色分量B,红色分量R和绿色分量G不变。我们可以从RGg计算出蓝色分量B,因为灰度g=p*R+q*G+t*B(其中p=0.2989,q=0.5870,t=0.1140),于是B=(g-p*R-q*G)/t。于是我们只要保留R和G两个颜色分量,再加上灰度图g,就可以回复原来的RGB图像。下面是例子

clear;clc;
RGB = imread('peppers.png');%RGB图像
g=rgb2gray(RGB);%灰度图g
R=double(RGB(:,:,1));%红色分量R
G=double(RGB(:,:,2));%绿色分量G,于是RGg就是一种我们自己定义的颜色表示方法了
p=0.2989;q=0.5870;t=0.1140;
B=(double(g)-p*R-q*G)/t;%通过RGg计算得到的蓝色分量B,他和原图像中的蓝色分量是一致的
subplot 131
imshow(RGB);title('原图像RGB')
subplot 132
imshow(g);title('灰度图g')
subplot 133
imshow(uint8(cat(3,R,G,B)));title({'从RGg表示恢复的RGB图像','(和原图像一致)'})
存在
推荐于2016-06-07 · 知道合伙人养生行家
存在
知道合伙人养生行家
采纳数:67 获赞数:6055
原中国联通信息化优秀员工,现EI期刊编辑

向TA提问 私信TA
展开全部
按一下操作:
A=double(m)
G=mat2gray(A);
figure(1);imshow(G)
imwrite(G,'kkk.BMP')
注意:m是灰度值矩阵.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lokgfvc5s6
2011-03-02 · TA获得超过1006个赞
知道小有建树答主
回答量:750
采纳率:100%
帮助的人:537万
展开全部
设原图为A,灰度图为B
则B=rgb2gray(A);
figure;
inshow(B);
追问
如何复原回RGB图像

参考资料: 百度一下

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式