显示行业,总是离不开色度学,学会了色度学,对于显示行业的光学知识,算是了解了不少。屏幕总是要看发光的,发光总是离不开色度,所以,如果身处显示行业,不了解色度,那是万万不行滴!

今天我给大家讲一讲色度学中的色坐标图的来源。

我的说明,并不会说很多专业的问题,我就大致讲一讲色坐标是怎么来的,如有不足,还请指正。

自古以来,我们的眼睛都能接受到光,而光是有颜色的,我们可以分辨不同的颜色,大自然很神奇,我们的眼睛更神奇。

自从牛顿用三棱镜把白色光分解成单色光以后,我们才真正知道,原来世间的光,只有红橙黄绿青蓝紫是单色的,麦克斯韦完成电磁理论,我们才意识到,原来光是电磁波,只是波段不同,显示的颜色不同。

于是有人说了,红色和蓝色明显不一样,他们差异多大呢,能不能像1+1=2一样,写在书本上呢。当然不可以,他们是颜色啊,颜色怎么用数字去表示呢?

于是有人去这样研究了。

如何把光的颜色的差异展示在数学式子中,是一个很漫长的过程。

起初有人说,人的眼睛是由红绿蓝细胞组成的,世界上任何的光都有红绿蓝细胞接收,然后传到中枢神经,给大脑造成视觉响应,当然,在之前这是很难证明的,后来在20世纪才由解剖学证明,但这是后来的事了。

红绿蓝三种细胞的提出,并不是毫无依据的,那之前人们发现,红绿蓝三种颜色以不同的亮度配比,可以混合成很多种颜色,甚至世界上的五颜六色,都可以有RGB三原色以不同配比方式组成,那么人们开始了更深沉次的研究。

于是有一个很有名但又不太出名的实验出来了,
如下图所示,当一个人看一个暗盒中的一个白纸时,白纸的一侧用一个待测颜色照亮,这个颜色可以是任何一种颜色,比如他是紫色。

那么另一侧用RGB三种颜色照亮,当RGB三种颜色的亮度进行不断地调节时,可以调节出和待测颜色相同的颜色,使我们的眼睛看上去两边颜色一样,以至于我们不能分辨出这张白纸的两侧是用不同的灯照亮的。

那么可以给这样的颜色画一个等号;

也即是待测颜色C=R®+G(G)+B(B),

其中的括号内的为颜色,括号外的R,G,B为系数,可以暂时理解为亮度,因为我们肯定要用每个颜色的亮度去表示的,待测颜色也是有亮度的。那么如果我们取待测颜色的亮度为1,也就是归一化,亮度守恒,那么R+G+B系数相加肯定也是等于1的,那此时有

其实R+G+B=1,这个式子仍然没有变化,还是和原来的那一个是一样的,只是写的另一种形式。

那有没有RGB的三个系数其中为负数的时候呢,其实是有的,自然界的颜色多种多样,我们的三原色并不是万能的,他可以混合成多种多样的颜色,但确有部分颜色也是无能为力的,这个时候,RGB中的系数一旦为负值,也就意味着,这种颜色任凭我们RGB三色如何变化,也混合不出来这种颜色。这个后面再说;

那以上的说明还请大家记住,这个就是传说中的三刺激值:在三色系统中,与待测光达到色匹配所需的三种原刺激的量。

传说中的实验的进一步实验
我们的RGB三原色,颜色不变,但亮度,也就是我们所说的那个系数,这个是到处变化的,不同的待测颜色,那么这个RGB的三个颜色的亮度系数(以下我们称为系数)也不同。

首先我们需要定义一下RGB的颜色波长,因为RGB颜色都是一个范围,如果RGB不确定,那么这个三刺激值也就无从确定,所以,这三个RGB必须是确定的波长;

三原色波长分别为700nm (R)、546.1nm (G)、435.8nm (B)(好像是汞弧光灯滤波出来的)以这三种单色光作为RGB的标准,来衡量待测颜色。

我们的颜色有很多种,我们知道光的颜色是由于光的波长不同,从可见光的380nm-760nm,每个波长的光都是一种不同的颜色。

我们把这个实验的待测试的颜色,从380nm到760nm的可见光,一一的测试出来,每个波长的光都对应一组RGB的系数,那么从380nm-760nm全部测试完之后,R光的系数也从380nm-760nm对应出一条曲线,GB也是一样的,那么画出图来,就是这样的一张;

这一张图中我多画了一条直线,也就是600nm处的黑色的直线,如果不理解,我再说一下,比如600nm处的那条黑色的线,也就是说待测的颜色是600nm处的颜色,差不多是橙红色,黑色的线和RGB三个曲线的交点的纵坐标,就是我们需要的RGB三原色的量,也就是刚才我们说的系数,那么这个600nm的颜色,是可以用这么多的量的RGB组成混合而成;

所以,可见光的每个波长,都可以由RGB三色混合,其中有一些颜色,我们发现红色的光谱竟然是负的,也就是刚才我们说的,这个颜色混合不成,不过别在意,后面还有说明,他总会解决的,因为我们是聪明的人类。

那么有一个定义出来了:光谱三刺激值:在三色系统中,等能单色辐射的三刺激值。

用我们的大白话,也就是从380nm-760nm的可见光阶段每个单色光对应的三组RGB的系数所组成的三条曲线,也就是我们上图中的三条曲线,这三条曲线就是我们的光谱三刺激值,他们是相辅相成的,必须同时出现,才有意义。

说到这里我们应该已经了解,在色度学中经常看到的那三条曲线了。

重点来了


首先看看这个式子,是不是很熟悉,我尽量少用公式,这个rgb就是刚才我们的系数,是每个RGB以700nm (R)、546.1nm (G)、435.8nm (B)为标准色的光谱三刺激值的系数,当然可以确定的是r+g+b=1,这个等式不用说,大家动笔一算就可以得到。

那么总有r+g=1-b,所以只要确定了r和g,那么b也就确定了,所以我们用r为一个坐标轴,g为另一个坐标轴,做一个二维坐标系,每个r对应一个g,把这些点全部在二维坐标系中可以画出一个离散点的图形来,那么离散点的图形就是单色光对应的系数,也就是对应的r和g,离散点连起来,就是下图,好像很近了,是不是。

大家可以从这个图形上,这个扁的马蹄形的周围的边,对应就是单色光;

由于这个色坐标图形里面是有负的数据,不利于我们理解,所以就有了后来的1931马蹄图,就是我们日常用的!

后面怎么转化,我只知道是一个矩阵转化,但具体原理还不清楚,回头学习再写!

下一节,色坐标来源2

讲一讲怎么转化的,还有1976的色坐标图形


显示杂谈(7)-色坐标图的来源1相关推荐

  1. 显示杂谈(8)色域,色偏及色温

    色坐标图我们已经大致了解,那么这一节,我们一起说说色域,色偏和色温. 为什么这三个名次我们放到一节来讲呢,因为这三个东西是分不开的. 说起这三个名词,前提一定要先了解色坐标. 人们为了可以衡量颜色,根 ...

  2. python画平行坐标图_Matplotlib中的平行坐标图

    使用传统的绘图类型可以相对直观地查看二维和三维数据.即使是四维数据,我们也经常能找到显示数据的方法.不过,4维以上的维度越来越难以显示.幸运的是,parallel coordinates plots提 ...

  3. 文件可视化编辑_高维数据可视化必备图形平行坐标图

    作者:科研猫 | 小飞鼠 责编:科研猫 | 依米 如果我们想比较某个数值在不同分组之间的变化差异.或者随着时间序列的变化趋势,往往会用到折线图.折线图是在我们的科研绘图当中最为常用的图形之一. 正如在 ...

  4. matlab根据数据生成实时动画,Matlab 坐标图动画,动态显示数据

    数据采集或者数据回放时,用matlab的plot画图的话一般都是静态的,一下画完了就不动了.但是有些时候,比如实时的数据采集然后通过串口或pci在matlab中画出数据的变化图并同步动态显示,以及在一 ...

  5. Python绘制双坐标图

    转自:https://blog.csdn.net/Asher117/article/details/104545838 使用Python绘制双坐标图,代码及结果显示如下. import matplot ...

  6. matlab如何实现动态显示,matlab 坐标图动画,动态显示数据

    数据采集或者数据回放时,用matlab的plot画图的话一般都是静态的,一下画完了就不动了.但是有些时候,比如实时的数据采集然后通过串口或pci在matlab中画出数据的变化图并同步动态显示,以及在一 ...

  7. Qt使用QCustomPlot画坐标图教程

    调用QCustomPlot库的方式有两种: 1.直接放入源码cpp和.h,然后直接调用 2.加载QCustomPlot的库,so或者dll project文件中加入printsupport QT += ...

  8. 如何用电脑画平面坐标图_如何在WORD或者EXERL上画坐标图?

    不知你要画什么样的坐标图,下面是怎么样在WORD文档中画坐标曲线图 1.执行"绘图/绘图网格/在屏幕上显示网格(注意数据设置)/确定"命令,使页面上显示绘图网格: 2.用" ...

  9. matlab 三维y轴平面图,#如何在excel中绘制三维坐标系?#excel怎么画图平面坐标图...

    用excel绘制曲线图时如何进行坐标轴转换 点"插入"->"图表"->"XY图","子图表类型"选择&quo ...

  10. 数据统计分析案例(对比分析、销量定比分析、同比、双坐标图、环比、shift、贡献度分析(帕累托法则)、差异化分析、resample、季节性波动分析)

    本文来自<Python数据分析从入门到精通>--明日科技编著 本章以案例为主,通过简单的知识讲解使读者了解数据统计分析中常用的分析方法,如对比分析,同比.定比和环比分析,贡献度分析,差异化 ...

最新文章

  1. linux审计原理,Linux安全审计机制模块实现分析(1)
  2. mysql错误消息1_MySQL出错信息: Subquery returns more than 1 row及其解决方法
  3. python排序函数set_【Python】排列组合itertools 集合set
  4. 经典正则表达式[收藏]
  5. win7 桌面右下角音量图标消失的解决办法 参考
  6. LINQ简记(1):基本语法
  7. 你已经是一个成熟的地图了,该学会帮我...
  8. Android 加入一个动作按钮
  9. CCF202006-3 Markdown渲染器(100分)【文本处理】
  10. HDU5688 Problem D【字符串排序+MAP】
  11. 新版的iMessage就是iOS 10内隐形的浏览器
  12. Chain of Responsibility(责任链)
  13. python中文分词+词频统计
  14. 思维导图编辑最常用的几种Edraw Max(亿图)快捷键
  15. 激光条纹中心提取——zhang细化+灰度重心法
  16. java 上传文件接口_Java接口实现文件上传
  17. 【游戏】蔚蓝与空洞骑士
  18. 用单片机控制单色显示屏
  19. coding码市提交代码
  20. autoware.auto安装教程

热门文章

  1. RocKey4加密狗复制软件及教程
  2. java 记牌_JAVA入门之简易扑克牌游戏
  3. 魔兽同服务器物品,《魔兽世界》怀旧服:这是给你的转服物资必备清单
  4. c# 非阻塞算法_c# – 了解非阻塞线程同步和Thread.MemoryBarrier
  5. syslinux制作U盘启动器
  6. MacBook Pro M1 安装 VMware Fusion 及 CentOS 8
  7. 2020年产品经理面试题-----产品经理面试题
  8. 如何将时间字体LED化(类似电子表)显示
  9. Web前端开发面试题——将字符串转成驼峰写法
  10. C/C++实现atoll函数