该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

在网上找到别人写的程序,我是做VB的,对matlab完全不懂,请教哪位解释下

function XYZ=XYZ_fromSR(SR,S,deg)

% 由光谱反射率计算颜色的三刺激值

% 输入参数:

% SR--光谱反射率,n×2的矩阵,第一列是波长,第2~m列是光谱反射率数据

% S-光源,'A'表示A光源,'C'表示C光源,'D50','D55','D65','D75',默认D65

% deg--视场,2表示2°视场,10表示10°视场,默认2°视场

% 输出参数:

% XYZ-颜色的三刺激值

%

% 本程序在Matlab (R2011b)调试通过

% 编写:郑元林 zhengyuanlin@163.com

%

if nargin==0 % 如果没有参数

dis('请输入光谱反射率数据,注意是n×2的矩阵,第一列是波长,第2列是光谱反射率数据');

return;

else if nargin ==1 % 如果是一个参数

Illcode = 'D65' ; % 光源默认为D65

degcode = 2; % 默认2°视场

else if nargin ==2 % 如果是二个参数 视场默认2°

Illcode = S; % 光源

degcode = 2; % 默认2°视场

else if nargin ==3 % 如果 是3个参数

Illcode = S; % 光源

degcode = deg; % 2°视场

else

Illcode = 'D65' ; % 光源默认为D65

degcode = 2; % 默认2°视场

end

end

end

end

% 获得光源的相对光谱功率分布

% switch Illcode

% case {'A' ,'a'}

% RSPD=SPD_CIE_A;

% case {'C' ,'c'}

% RSPD=SPD_CIE_C;

% case {'D50','50','d50'}

% RSPD = SPD_CIE_D50;

% case {'D55','55','d55'}

% RSPD=SPD_CIE_D55;

% case {'D65','65','d65'}

% RSPD=SPD_CIE_D65;

% case {'D75','75','d75'}

% RSPD=SPD_CIE_D75;

% end

RSPD=getRSPD(Illcode);

% 获得CIE标准观察者的数据

if degcode== 10

CIE_Std = CIE1964Std_XYZ;

else

CIE_Std = CIE1931Std_XYZ;

end

% SR和RSPD波长的范围和间隔可能不一样,下面找出两者共有的波长

[comn,iColorS,iIll] = intersect(SR(:,1),RSPD(:,1));

% SR和RSPD以及CIE_Std波长的范围和间隔可能不一样,下面找出3者共有的波长

[comn,iCIE_Std,ic] = intersect(CIE_Std(:,1),comn);

[c,iSR,ic] = intersect(SR(:,1),comn);

[c,iRSPD,ic] = intersect(RSPD(:,1),comn);

if RSPD(iRSPD,2)==0

XYZ= [0 0 0];

return

end

K=100/sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,3)); % 计算K值

[a,sample_num]=size(SR);

XYZ=zeros(sample_num-1,3);

for ii=2:sample_num

Xt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,2).*SR(iSR,ii)); % 计算X刺激值

Yt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,3).*SR(iSR,ii)); % 计算Y刺激值

Zt=K*sum(RSPD(iRSPD,2).*CIE_Std(iCIE_Std,4).*SR(iSR,ii)); % 计算Z刺激值

XYZ(ii-1,:)=[Xt,Yt,Zt];

end

输入波长显示颜色 matlab,新手求助:由光谱反射率计算颜色的三刺激值相关推荐

  1. matlab如何随机选颜色,Matlab 画图修饰-随机线条和随机颜色

    转载自:http://www.zhaoyanpeng.cn/archives/237 当需要对同一曲线不同参数下进行模拟时需要不同的颜色来加以区分: 上例根据RGB颜色,来实现不同颜色曲线的组合,考虑 ...

  2. 四位共阳极数码管显示函数_新手求助四位共阳数码管显示函数

    #include #include "DS1302.H" sbit K_S = P1^0;    //显示模式sbit K_M = P1^1;    //修改sbit K_I = ...

  3. 波长波数转换matlab,【求助】请教红外常用波数与波长之间的转换关系...

    大家再请看下面的内容,我提此问题来源于此: Wavelength calculation ------------------------------------------------------- ...

  4. matlab bar3 颜色,matlab中怎么控制柱状图标注的颜色?

    满意答案 lastdargo 推荐于 2016.01.18 采纳率:45%    等级:10 已帮助:818人 一.利用bar3画一个矩阵的柱状图时,如何改变显示的颜色,让它根据数据大小的不同显示不同 ...

  5. matlab图像处理 识别颜色,MATLAB图像处理_直接操作像素点进行颜色变换

    需求 直接操作RGB图像的像素点,进行颜色的相关操作. 掌握这个,必须对MATLAB中矩阵的操作有所熟悉,特别是整行.整列的操作. 如: J = [1 2 3; 4 5 6; 7 8 9]; --这里 ...

  6. matlab 改变像素颜色,MATLAB图像处理_直接操作像素点进行颜色变换

    需求 直接操作RGB图像的像素点,进行颜色的相关操作. 掌握这个,必须对MATLAB中矩阵的操作有所熟悉,特别是整行.整列的操作. 如: J = [1 2 3; 4 5 6; 7 8 9]; --这里 ...

  7. matlab中的颜色,Matlab里面除了常用的还有哪些颜色?已知的颜色不够怎么办?

    我这里有个自己写的函数,支持64个色 %% H:取色函数 % INTRODUCTORY TEXT %标题综述************************ %调用默认色图可实现64色的选取 %输入* ...

  8. matlab2018a中文乱码,电脑在Matlab R2014a输入代码显示乱码的解法

    ? ? MATLAB是一款商业数学软件,主要应用于工程计算.控制设计.信号处理与通讯.图像处理.信号检测.金融建模设计与分析等领域.可是有很多用户在电脑上使用Matlab R2014a的时候,输入的代 ...

  9. MATLAB新手教程

    MATLAB新手教程   1.MATLAB的基本知识 1-1.基本运算与函数    在MATLAB下进行基本数学运算,仅仅需将运算式直接打入提示号(>>)之後,并按入Enter键就可以.比 ...

最新文章

  1. 理科生用创意毁灭世界,爆笑!
  2. tensorflow 测试
  3. 省市县级联查询无刷新(转)
  4. 输入参数的数目不足_机器学习算法—KMEANS算法原理及阿里云PAI平台算法模块参数说明...
  5. [JZOJ P1311] [DP]邮局设置问题
  6. 鸿蒙系统安装过程中出错,求助求助——鸿蒙系统Windows环境搭建时hpm安装失败!!!...
  7. onvif 开发之video streamer---onvif实现功能和经验
  8. attribute property --- jquery attr() prop()
  9. 使用wmi显示rpc服务器不可用,详解WMI RPC 服务器不可用的解决方案
  10. 硬盘分区变为RAW文件系统后的解决办法
  11. NSIS添加everyone权限
  12. opencv实现matlab的median()函数
  13. SP专场问题整理(一)
  14. 基于 WebGL 的 CSG 构造实体几何书架
  15. k-最近邻聚类k-Nearest Neighbor
  16. vue3.0 + tsx 构建el-button
  17. axios 全攻略之 API
  18. 基于PHP大学生英语在线教学网
  19. 链表结点的物理顺序与逻辑顺序
  20. matlab批量修改文件名字

热门文章

  1. 基金什么时候买入好?
  2. 基于和芯星通UM482的RTK差分定位
  3. DataPipeline丨LinkedIn元数据之旅的最新进展—Data Hub
  4. 黑苹果更改时间命令_黑苹果Mac系统快捷键修改
  5. Django框架 之 中间件
  6. 协同办公OA项目:搭建“自定义”OA办公系统,原来就这么简单!
  7. 2018软创北京游记
  8. 如何解决网站限制IP访问的问题
  9. 漫谈程序员系列:怎么告别“混日子”
  10. Python+Vue计算机毕业设计停车场管理系统8f46a(源码+程序+LW+部署)