lcySI的个人博客分享 http://blog.sciencenet.cn/u/lcySI

博文

什么是好的颜色表(colormap)?

已有 20627 次阅读 2017-11-16 14:11 |个人分类:物探|系统分类:科研笔记| 颜色表, CubeHelix, matlab

color.rar

一、颜色表简介

       通常我们在绘制彩图是要选择颜色表,例如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.






https://blog.sciencenet.cn/blog-3310841-1085504.html

上一篇:动校正(NMO)理论及其编程实现
下一篇:ricker子波分析
收藏 IP: 223.112.3.*| 热度|

3 蒋德明 丁迅雷 钱磊

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-27 12:46

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部