作者:sx-March23 | 来源:互联网 | 2023-08-17 05:29
一、颜色表简介
通常我们在绘制彩图是要选择颜色表,例如matlab中用imagesc函数绘制彩图时默认的颜色表为jet(蓝色......红色)。不同颜色用来代表高程、振幅等信息,可以帮助我们更直观的分析数据特征。
那么如何选择好的颜色表呢?Niccoli在文章《How to evaluate and compare color maps》(The Leading Edge,2014)中展示了通常采用的彩虹颜色表(与jet颜色表类似)是差的,容易引入假象。
二、颜色表评价
任何一种颜色都可以由RGB(红绿蓝)按比例混合构成,例如在matlab命令窗中输入"c=colormap(jet)"会得到一个64*3的数组,64表示的是jet颜色表由64个颜色组成,3表示的就是RGB的比例。
颜色的特征通常由“色彩-饱和度-亮度”表示,Niccoli指出亮度决定了我们对图像色彩的感知,因此将亮度特征作为评价颜色表的指标。任何一种颜色(RGB按比例混合组成)可以通过公式得到该颜色的亮度:
intensity=0.2989*red+0.587*green+0.114*blue
三、编程分析
matlab程序见附件。首先我们评价一下matlab中默认的jet颜色表,图1是jet颜色表的强度曲线,可以看出其强度曲线不是逐渐增加的,而是先增加后降低,黄色(横坐标40附近)的强度最大。
图1
接下来评价一下CubeHelix颜色表的强度曲线,CubeHelix颜色表是Green通过分析得到的,我们这里用'CubeHelix.m'函数来生成CubeHelix颜色表。图2是CubeHelix颜色表的强度曲线,可以看出CubeHelix颜色表的强度曲线是线性增加的。图三为jet与CubeHelix颜色表强度值的灰度值,也可以看出CubeHelix是优于jet颜色表的。
图2
图3
四、参考文献
1、Green, D. A. A colour scheme for the display of astronomical intensity images[J], Bulletin of the Astromical Society of India, 2011.
2、Niccoli Matteo. How to evaluate and compare color maps[J]. The Leading Edge, 2014.
转载本文请联系原作者获取授权,同时请注明本文来自雷朝阳科学网博客。
链接地址:http://blog.sciencenet.cn/blog-3310841-1085504.html
上一篇:动校正(NMO)理论及其编程实现
下一篇:ricker子波分析