显示杂谈(7)-色坐标图的来源1
显示行业,总是离不开色度学,学会了色度学,对于显示行业的光学知识,算是了解了不少。屏幕总是要看发光的,发光总是离不开色度,所以,如果身处显示行业,不了解色度,那是万万不行滴!
今天我给大家讲一讲色度学中的色坐标图的来源。
我的说明,并不会说很多专业的问题,我就大致讲一讲色坐标是怎么来的,如有不足,还请指正。
自古以来,我们的眼睛都能接受到光,而光是有颜色的,我们可以分辨不同的颜色,大自然很神奇,我们的眼睛更神奇。
自从牛顿用三棱镜把白色光分解成单色光以后,我们才真正知道,原来世间的光,只有红橙黄绿青蓝紫是单色的,麦克斯韦完成电磁理论,我们才意识到,原来光是电磁波,只是波段不同,显示的颜色不同。
于是有人说了,红色和蓝色明显不一样,他们差异多大呢,能不能像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相关推荐
- 显示杂谈(8)色域,色偏及色温
色坐标图我们已经大致了解,那么这一节,我们一起说说色域,色偏和色温. 为什么这三个名次我们放到一节来讲呢,因为这三个东西是分不开的. 说起这三个名词,前提一定要先了解色坐标. 人们为了可以衡量颜色,根 ...
- python画平行坐标图_Matplotlib中的平行坐标图
使用传统的绘图类型可以相对直观地查看二维和三维数据.即使是四维数据,我们也经常能找到显示数据的方法.不过,4维以上的维度越来越难以显示.幸运的是,parallel coordinates plots提 ...
- 文件可视化编辑_高维数据可视化必备图形平行坐标图
作者:科研猫 | 小飞鼠 责编:科研猫 | 依米 如果我们想比较某个数值在不同分组之间的变化差异.或者随着时间序列的变化趋势,往往会用到折线图.折线图是在我们的科研绘图当中最为常用的图形之一. 正如在 ...
- matlab根据数据生成实时动画,Matlab 坐标图动画,动态显示数据
数据采集或者数据回放时,用matlab的plot画图的话一般都是静态的,一下画完了就不动了.但是有些时候,比如实时的数据采集然后通过串口或pci在matlab中画出数据的变化图并同步动态显示,以及在一 ...
- Python绘制双坐标图
转自:https://blog.csdn.net/Asher117/article/details/104545838 使用Python绘制双坐标图,代码及结果显示如下. import matplot ...
- matlab如何实现动态显示,matlab 坐标图动画,动态显示数据
数据采集或者数据回放时,用matlab的plot画图的话一般都是静态的,一下画完了就不动了.但是有些时候,比如实时的数据采集然后通过串口或pci在matlab中画出数据的变化图并同步动态显示,以及在一 ...
- Qt使用QCustomPlot画坐标图教程
调用QCustomPlot库的方式有两种: 1.直接放入源码cpp和.h,然后直接调用 2.加载QCustomPlot的库,so或者dll project文件中加入printsupport QT += ...
- 如何用电脑画平面坐标图_如何在WORD或者EXERL上画坐标图?
不知你要画什么样的坐标图,下面是怎么样在WORD文档中画坐标曲线图 1.执行"绘图/绘图网格/在屏幕上显示网格(注意数据设置)/确定"命令,使页面上显示绘图网格: 2.用" ...
- matlab 三维y轴平面图,#如何在excel中绘制三维坐标系?#excel怎么画图平面坐标图...
用excel绘制曲线图时如何进行坐标轴转换 点"插入"->"图表"->"XY图","子图表类型"选择&quo ...
- 数据统计分析案例(对比分析、销量定比分析、同比、双坐标图、环比、shift、贡献度分析(帕累托法则)、差异化分析、resample、季节性波动分析)
本文来自<Python数据分析从入门到精通>--明日科技编著 本章以案例为主,通过简单的知识讲解使读者了解数据统计分析中常用的分析方法,如对比分析,同比.定比和环比分析,贡献度分析,差异化 ...
最新文章
- linux审计原理,Linux安全审计机制模块实现分析(1)
- mysql错误消息1_MySQL出错信息: Subquery returns more than 1 row及其解决方法
- python排序函数set_【Python】排列组合itertools 集合set
- 经典正则表达式[收藏]
- win7 桌面右下角音量图标消失的解决办法 参考
- LINQ简记(1):基本语法
- 你已经是一个成熟的地图了,该学会帮我...
- Android 加入一个动作按钮
- CCF202006-3 Markdown渲染器(100分)【文本处理】
- HDU5688 Problem D【字符串排序+MAP】
- 新版的iMessage就是iOS 10内隐形的浏览器
- Chain of Responsibility(责任链)
- python中文分词+词频统计
- 思维导图编辑最常用的几种Edraw Max(亿图)快捷键
- 激光条纹中心提取——zhang细化+灰度重心法
- java 上传文件接口_Java接口实现文件上传
- 【游戏】蔚蓝与空洞骑士
- 用单片机控制单色显示屏
- coding码市提交代码
- autoware.auto安装教程
热门文章
- RocKey4加密狗复制软件及教程
- java 记牌_JAVA入门之简易扑克牌游戏
- 魔兽同服务器物品,《魔兽世界》怀旧服:这是给你的转服物资必备清单
- c# 非阻塞算法_c# – 了解非阻塞线程同步和Thread.MemoryBarrier
- syslinux制作U盘启动器
- MacBook Pro M1 安装 VMware Fusion 及 CentOS 8
- 2020年产品经理面试题-----产品经理面试题
- 如何将时间字体LED化(类似电子表)显示
- Web前端开发面试题——将字符串转成驼峰写法
- C/C++实现atoll函数