- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
色度空间转换-Read
色度空间转换
一、要求:编写Matlab函数,实现RGB到XYZ空间的转换;利用该转换函数对图像进行处理,仿真手机屏上显示标准图片的效果。
二、思路:1、先对手机屏亮度和灰度进行采样,求出Gamma值;根据已知的手机屏和显
示屏的色度坐标求出RGB到XYZ的转换矩阵;
2、对标准图片进行Gamma校正——对校正后的图像进行RGB到XYZY=[0.34,4.69,14.31,34.91,61.13,97.04,137,178,224.6,263.5,306.5,324.5];
手机灰度值P=[20,40,60,80,100,120,140,160,180,200,220,240];
Matlab程序:
Ga函数
function R=Ga(Y,P) %求手机的GAMMA值;
[a,b]=size(Y);
A=0;B=0;
for(i=1:b)
A=A+log(Y(1,i))*log(P(1,i));
B=B+log(P(1,i)*P(1,i));
end
R=A/B;
得出结果:Gamma2=2.1507;
2、求手机屏和显示屏的RGB—XYZ转换矩阵;
已知手机屏的色度坐标Q=[0.507,0.312,0.315,0.537,0.158,0.118,0.279,0.312];
显示屏的色度坐标A=[0.64,0.33,0.29,0.60,0.15,0.06,0.3127,0.3291];
Matlab程序:
Ms函数
function M1=Ms(P) %求RGB与XYZ转换矩阵;
xr=P(1,1);yr=P(1,2);zr=1-xr-yr;
xg=P(1,3);yg=P(1,4);zg=1-xg-yg;
xb=P(1,5);yb=P(1,6);zb=1-xb-yb;
xw=P(1,7);yw=P(1,8);zw=1-xw-yw;
A=[xr/yr,xg/yg,xb/yb;1.0,1.0,1.0;zr/yr,zg/yg,zb/yb;];
B=[xw/yw;1.0;zw/yw;];
D=inv(A)*B;
Yr=D(1,1);Yg=D(2,1);Yb=D(3,1);
Xr=Yr*xr/yr;Xg=Yg*xg/yg;Xb=Yb*xb/yb;Xw=Xr+Xb+Xg;
Zr=Yr*zr/yr;Zg=Yg*zg/yg;Zb=Yb*zb/yb;Zw=Zr+Zb+Zg;
Yw=Yr+Yb+Yg;
T=[Xw,Xr,Xg,Xb;Yw,Yr,Yg,Yb;Zw,Zr,Zg,Zb;];
R=[1,1,0,0;1,0,1,0;1,0,0,1;];
M1=R*T*inv(T*T);
得出结果:
显示屏转换矩阵:
M1 =
3.0651 -1.3942 -0.4761
-0.9690 1.8755 0.0415
0.0679 -0.2290 1.0698
手机屏转换矩阵:
M2 =
5.7237 -3.1549 -0.7349
-1.4427 2.3875 -0.0743
-0.3103 -0.1096 1.0581
3、标准图片仿真:对标准图片进行Gamma校正——对校正后的图像进行RGB到XYZ
%仿真程序;
Gamma1=1/2.2;
Y=[0.34,4.69,14.31,34.91,61.13,97.04,137,178,224.6,263.5,306.5,324.5];
P=[20,40,60,80,100,120,140,160,180,200,220,240];
Gamma2=Ga(Y,P);
A=[0.64,0.33,0.29,0.60,0.15,0.06,0.3127,0.3291];
M1=Ms(A);
Q=[0.507,0.312,0.315,0.537,0.158,0.118,0.279,0.312];
M2=Ms(Q);M21=inv(M2);
L=imread(图片1.jpg);
subplot(2,1,1),imshow(L),
title(正常图片)
K=double(L).^(Gamma1);
[a,b,k]=size(K);
for(i=1:a)
for(j=1:b)
U=[K(i,j,1);K(i,j,2);K(i,j,3)];
E=M21*(M1*U);
K(i,j,1)=E(1,1);K(i,j,2)=E(2,1);K(i,j,3)=E(3,1);
end
end
F=double
文档评论(0)