matlab中的三原色,matlab练习程序(渲染三原色)

clear all;

close all;

clc;

r = [0.3,0,0.5];

g = [0.3,-0.5*cos(pi/6),-0.5*sin(pi/6)];

b = [0.3,0.5*cos(pi/6),-0.5*sin(pi/6)];

imgr1=[];imgr2=[];

imgg1=[];imgg2=[];

imgb1=[];imgb2=[];

for y=-1:0.004:1

imgr1=[];imgg1=[];imgb1=[];

for z=-1:0.004:1

pm=[0,y,z];

lightr=pm-r;

lightg=pm-g;

lightb=pm-b;

imgr=1/norm(lightr);

imgg=1/norm(lightg);

imgb=1/norm(lightb);

imgr1=[imgr1 imgr];

imgg1=[imgg1 imgg];

imgb1=[imgb1 imgb];

end

imgr2=[imgr2;imgr1];

imgg2=[imgg2;imgg1];

imgb2=[imgb2;imgb1];

end

[h w]=size(imgr2);

img=zeros(h,w,3);

img(:,:,1) = mat2gray(imgr2);

img(:,:,2) = mat2gray(imgg2);

img(:,:,3) = mat2gray(imgb2);

imshow(img)

imwrite(img,'img.png')

关注公众号: MATLAB基于模型的设计 (ID:xaxymaker) ,每天推送MATLAB学习最常见的问题,每天进步一点点,业精于勤荒于嬉。

打开微信扫一扫哦!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值