光学基础知识:白光、颜色混合、RGB、色彩空间
1665年,牛顿(Isaac Newton)进行了太阳光实验,让太阳光通过窗板的小圆孔照射在玻璃三角棱镜上,光束在棱镜中折射后,扩散为一个连续的彩虹颜色带,牛顿称之为光谱,表示连续的可见光谱。而可见光谱只是所有电磁波谱中的一小部分。
![]() |
![]() |
牛顿认为白光(太阳光)使复杂的,由无数种不同的光线混合,各种光线在玻璃中受到不同程度的折射。棱镜没有改变白光而只是将它分解为简单的组成部分,把这些组成部分混合,能够重新恢复原来的白色。利用第二块棱镜可以将扩散的光再次合成为白光。
在重新合成之前,通过屏蔽部分光谱,可以产生各种颜色。Young在1802年的实验表明:如果在红、绿、蓝区域选择部分光谱,这三者适当的混合可以再现白光。
后来,Helmholtz成功地定量分析了这种现象。混合物中红、绿、蓝比例的变化可以产生多种颜色,几乎可以产生任何颜色,红色、绿色、蓝色三者等量的混合可以再现白色。
所以:红、绿、蓝这三种颜色就称为“三原色”(RGB)。
|
红、绿、蓝光的混合结果暗示了人眼也拥有三种颜色的灵敏读,分别对应于红、绿、蓝。这种三灵敏度理论称之为Young-Helmholtz颜色视觉理论。它可以对三原色合成颜色作出非常简单的解释。
三原色理论被广泛应用于各种涉及视觉的场合。
补色的概念:从白色中减去颜色A所形成的颜色,称之为颜色A的补色 (complementary color)。
补色的形成:(白色减掉三原色,就是黑色)
|
|
|
|
|
|
|
|
补色的特点:当使用某个补色滤镜时,该补色对应的原色会被过滤掉:
![]() |
原色以及所对应补色的名称:
|
颜色再现有两种方式:
1、原色加法:三原色全部参与叠加形成白色,任意其中两种原色相加形成不参与合成的颜色的补色。
|
|
|
|
|
|
|
|
这是合成的示意图:
|
加色法 |
2、原色减法:三补色全部参与叠加形成黑色,任意其中两种补色相加形成不参与合成的颜色的原色。
|
|
|
|
|
|
|
|
这是合成的示意图:
|
减色法 |
原色加法比较简单,由原色叠加而形成其他颜色,但是应用较少;而原色减法是从白色中减掉相应原色而形成其他颜色,就是用补色来叠加形成其他颜色,应用的场合比较多。
色彩空间
随着数字摄影的兴起,计算机处理图象已经成为主流,但是现在多数的计算机设备无法完全再现人眼可辨认的色彩。一般的数字影像都是采用了sRGB色彩空间,处理范围比较宽的是Adobe RGB。下面是国际照明委员会(CIE)颁布的CIE1993-RGB系统的色度图:
![]() |
光学基础知识:白光、颜色混合、RGB、色彩空间的更多相关文章
- 视频图像处理基础知识5(RGB与Ycbcr相互转换公式 )【转】
转自:http://blog.csdn.net/Times_poem/article/details/51471438 版权声明:本文为博主原创文章,未经博主允许不得转载. 需求说明:视频处理算法基本 ...
- 【STM32H7教程】第57章 STM32H7硬件JPEG编解码基础知识和HAL库API
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第57章 STM32H7硬件JPEG编解码基础知识 ...
- 【STM32H7教程】第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第55章 STM32H7的图形加速器DMA2D的基 ...
- 音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概念介绍
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- TCP/IP基础知识
TCP/IP基础知识 网络 TCP/IP 引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP ...
- MOGRE学习笔记(2) - MOGRE基础知识总结
前一篇配置了MOGRE的运行环境,这里记录一些MOGRE基础知识,仅仅是最基础的一些东西.由于本人接触ogre的时间比较短,对于很多知识都是一知半解,所以理解起来不免会有一些错误,本人也希望自己在对o ...
- css+div网页设计(一)--基础知识
css是网页制作不可缺少的部分,我会用三篇博客为大家展示css的基本用法. 关于css+div的整体结构图总结如下: 本篇博客主要介绍css的基础知识. 一.css概念; css(级联样式表):它是一 ...
- 【Xamarin开发 Android 系列 4】 Android 基础知识
原文:[Xamarin开发 Android 系列 4] Android 基础知识 什么是Android? Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Li ...
- android图形基础知识
Android核心分析(23)-----Andoird GDI之基本原理及其总体框架 2010-06-13 22:49 18223人阅读 评论(18) 收藏 举报 AndroidGDI基本框架 在An ...
随机推荐
- 《Effective C++》Item2:尽量以const,enum,inline替换#define
1. 宏定义 #define ASPECT_RATIO 1.653 该宏定义ASPECT_RATIO也许从来没有被编译器看到,也许在编译器开始处理源码之前就已经被预处理器替换了.所以记号名称ASPEC ...
- apktool 反翻译错误
-出现 UndefinedResObject Exception : 这是因为被反编译的apk中有当前的framework不支持的属性:解决方式如下: 1.删除C:\Users\Administrat ...
- unity3d 2d游戏制作的模式
经过了4个月不懈的努力,我和图灵教育合作的这本3D游戏开发书预计下个月就要出版了.这里MOMO先打一下广告,图灵的出版社编辑成员都非常给力,尤其是编辑小花为这本书付出了很大的努力,还有杨海玲老师, ...
- codevs 3013 单词背诵 hash
题目链接 题目描述 Description 灵梦有n个单词想要背,但她想通过一篇文章中的一段来记住这些单词. 文章由m个单词构成,她想在文章中找出连续的一段,其中包含最多的她想要背的单词(重复的只算一 ...
- JS行合并处理方法
//行合并 function _w_table_rowspan(col){ _w_table_firsttd = ""; _w_table_currenttd = "&q ...
- python进阶3--文件系统
文件系统 python的标准库中包括大量工具,可以处理文件系统中的文件,构造和解析文件名,也可以检查文件内容. pyhton表文件名表示为简单的字符串,另外还提供了一些工具,用来由os.path中平台 ...
- PCB打样镀层问题
现在大部分pcb打样所用PCB板一般有锡板和金板之分(一般根据客户要求和产品特 性选择),那么它们有什么区别呢?现在我将他们的区别作比较如下: 1. 从成本方面来说,锡板价格低,金板价格高. 2. 从 ...
- JavaEE Tutorials (12) - 创建和使用基于字符串的Criteria查询
12.1基于字符串的Criteria API查询概述17812.2创建基于字符串的查询17812.3执行基于字符串的查询179
- Android Layout Binder(在线将XML中View find出来,生成java代码的工具)
废话不多说,这是地址:http://android.lineten.net/layout.php. 有图有真相,比如: 你的XML假如是这样: <?xml version="1.0&q ...
- C++之static_cast, dynamic_cast, const_cast
转自:http://www.cnblogs.com/chio/archive/2007/07/18/822389.html 首先回顾一下C++类型转换: C++类型转换分为:隐式类型转换和显式类型转换 ...
















