Matlab RGB与HSV

有时不得不感慨条条大路通罗马,学问到最后都是相通的。最近新拜了个大神,Adobe高手李涛,看了一半的教程,然后把之前的很多东西都摒弃了。多年的picasa管理软件换成了bridge,照片
 基础调整可以说比较完备,相片管理也很有效。顺便把照片该删的删,该整理的整理,很有效。

 

对颜色的理解也更加深刻,比如之前我最熟悉的rgb这属于加色三原色,放射光,加起来是白光;而绘画界还有减色三原色,也就是印刷上常用的cmyk,青品黄,反射光,加起来是黑色。同时,他们还是一一对应对应的补色,挨在一起会特别刺眼

red,green,blue,

cyan,magenta,yellow。

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

 

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

 

颜色取色也有几种方式,rgb,cmyk,hsv

hsv即,Hue 色相[0 360],Saturation饱和度[0 1],Value明度[0 1],这表示在matlab里的取值范围。饱和度表示颜色的纯度,饱和度越低越偏灰,饱和度高,照片抢眼,饱和度低,颜色耐看显得高级。

 

比如matlab默认的rgb,都是饱和度最高的,十分刺眼。而这些年时尚界流行的玛卡龙色,粉红,粉绿,粉蓝,这都是饱和度低的代表,比较柔和。说起来,日系的小清新也都是也饱和度低的过曝风格而著称的。同事新买的荣耀9的Robin Egg Blue,还有著名的Tiffany Blue也都是低饱和的代表 。

 

回到正题,这许多年流行的很多绘图软件,也都是开始逐渐使用低饱和的颜色,比如python和R,甚至matlab也在2014b将默认色改版了。

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

然而,matlab里各种命令都是以rgb为基础进行取色的,低饱和在hsv模式很明显,可是在rgb里,瞪瞎眼也看不出都是什么区别啊。所以,我们可以将既有的rgb转为hsv之后,单独降低饱和度,再转回rgb使用。

 

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

 给个例子

clear;clc
z = peaks(100);

figure(1)
subplot(1,2,1)
pcolor(z);shading flat
colorbar('location','southoutside');
cmap = colormap(jet)

subplot(1,2,2)
rgbplot(cmap);

subtitle('Saturation High');
saveas(gcf,'Saturation high.png')


figure(2)
cmap1 = rgb2hsv(cmap);
cmap1(:,2) = cmap1(:,2)*0.7;
cmap1(:,3) = cmap1(:,3)*0.9;
cmap2 = hsv2rgb(cmap1);

subplot(1,2,1)
pcolor(z);shading flat
colorbar('location','southoutside');
colormap(cmap2);
subplot(1,2,2)
rgbplot(cmap2);
subtitle('Saturation low 70%');
saveas(gcf,'Saturation low.png')

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

 

Matlab RGB与HSV - 葱油肉包 - 葱油肉包

 Published with MATLAB? R2016b

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值