1665年,牛顿(Isaac Newton)进行了太阳光实验,让太阳光通过窗板的小圆孔照射在玻璃三角棱镜上,光束在棱镜中折射后,扩散为一个连续的彩虹颜色带,牛顿称之为光谱,表示连续的可见光谱。而可见光谱只是所有电磁波谱中的一小部分。

牛顿认为白光(太阳光)使复杂的,由无数种不同的光线混合,各种光线在玻璃中受到不同程度的折射。棱镜没有改变白光而只是将它分解为简单的组成部分,把这些组成部分混合,能够重新恢复原来的白色。利用第二块棱镜可以将扩散的光再次合成为白光。

在重新合成之前,通过屏蔽部分光谱,可以产生各种颜色。Young在1802年的实验表明:如果在红、绿、蓝区域选择部分光谱,这三者适当的混合可以再现白光。

后来,Helmholtz成功地定量分析了这种现象。混合物中红、绿、蓝比例的变化可以产生多种颜色,几乎可以产生任何颜色,红色、绿色、蓝色三者等量的混合可以再现白色。

所以:红、绿、蓝这三种颜色就称为“三原色”(RGB)。

红色(Red)

绿色(Green)

蓝色(Blue)

红、绿、蓝光的混合结果暗示了人眼也拥有三种颜色的灵敏读,分别对应于红、绿、蓝。这种三灵敏度理论称之为Young-Helmholtz颜色视觉理论。它可以对三原色合成颜色作出非常简单的解释。

三原色理论被广泛应用于各种涉及视觉的场合。

补色的概念:从白色中减去颜色A所形成的颜色,称之为颜色A的补色 (complementary color)。

补色的形成:(白色减掉三原色,就是黑色)

补色的特点:当使用某个补色滤镜时,该补色对应的原色会被过滤掉:

原色以及所对应补色的名称:

原色

红色(Red)

绿色(Green)

蓝色(Blue)

补色

青色(Cyan)

洋红色(Magenta)

黄色(Yellow)

颜色再现有两种方式:

1、原色加法:三原色全部参与叠加形成白色,任意其中两种原色相加形成不参与合成的颜色的补色。

这是合成的示意图:

加色法

2、原色减法:三补色全部参与叠加形成黑色,任意其中两种补色相加形成不参与合成的颜色的原色。

这是合成的示意图:

减色法

原色加法比较简单,由原色叠加而形成其他颜色,但是应用较少;而原色减法是从白色中减掉相应原色而形成其他颜色,就是用补色来叠加形成其他颜色,应用的场合比较多。

色彩空间

随着数字摄影的兴起,计算机处理图象已经成为主流,但是现在多数的计算机设备无法完全再现人眼可辨认的色彩。一般的数字影像都是采用了sRGB色彩空间,处理范围比较宽的是Adobe RGB。下面是国际照明委员会(CIE)颁布的CIE1993-RGB系统的色度图:

光学基础知识:白光、颜色混合、RGB、色彩空间的更多相关文章

  1. 视频图像处理基础知识5(RGB与Ycbcr相互转换公式 )【转】

    转自:http://blog.csdn.net/Times_poem/article/details/51471438 版权声明:本文为博主原创文章,未经博主允许不得转载. 需求说明:视频处理算法基本 ...

  2. 【STM32H7教程】第57章 STM32H7硬件JPEG编解码基础知识和HAL库API

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第57章       STM32H7硬件JPEG编解码基础知识 ...

  3. 【STM32H7教程】第55章 STM32H7的图形加速器DMA2D的基础知识和HAL库API

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第55章       STM32H7的图形加速器DMA2D的基 ...

  4. 音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概念介绍

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...

  5. TCP/IP基础知识

    TCP/IP基础知识 网络 TCP/IP 引言 本篇属于TCP/IP协议的基础知识,重点介绍了TCP/IP协议簇的内容.作用以及TCP.UDP.IP三种常见网络协议相关的基础知识. 内容 TCP/IP ...

  6. MOGRE学习笔记(2) - MOGRE基础知识总结

    前一篇配置了MOGRE的运行环境,这里记录一些MOGRE基础知识,仅仅是最基础的一些东西.由于本人接触ogre的时间比较短,对于很多知识都是一知半解,所以理解起来不免会有一些错误,本人也希望自己在对o ...

  7. css+div网页设计(一)--基础知识

    css是网页制作不可缺少的部分,我会用三篇博客为大家展示css的基本用法. 关于css+div的整体结构图总结如下: 本篇博客主要介绍css的基础知识. 一.css概念; css(级联样式表):它是一 ...

  8. 【Xamarin开发 Android 系列 4】 Android 基础知识

    原文:[Xamarin开发 Android 系列 4] Android 基础知识 什么是Android? Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Li ...

  9. android图形基础知识

    Android核心分析(23)-----Andoird GDI之基本原理及其总体框架 2010-06-13 22:49 18223人阅读 评论(18) 收藏 举报 AndroidGDI基本框架 在An ...

随机推荐

  1. bzoj 2141 : 排队 分块

    题目链接 2141: 排队 Time Limit: 4 Sec  Memory Limit: 259 MBSubmit: 1169  Solved: 465[Submit][Status][Discu ...

  2. Garbage

    垃圾回收 http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/ http://blog.jobbole ...

  3. 用1个 2个3个 5个div实现 十字架

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. Chrome设计文档-多进程架构

    chromium multi-process architecture 本文档从high-level的角度描述Chromium的多进程架构. 问题 要构建一个决不崩溃或挂起的渲染引擎几乎是不可能的.同 ...

  5. How can I get an object's absolute position on the page in Javascript?

    How can I get an object's absolute position on the page in Javascript? How can I get an object's abs ...

  6. JQuery DOM HighLighter (it's a basic "Inspect element" simple implementation to mimic what webkit inspector and firebug do)

    JQuery DOM HighLighter (it's a basic "Inspect element" simple implementation to mimic what ...

  7. tocken和ticket的数据模型;

    /* jshint -W079 */ /* jshint -W020 */ "use strict"; var _ = require("lodash"); m ...

  8. iOS中菊花。。。

    其实系统的菊花除了功能有点单一,不具有刷新页面的功能以外,其他都还好吧,满足你一些正常的提示功能还是绰绰有余的:直接把项目里面的代码粘出来吧,其实也没有什么特别要注意的地方,一些设置属性也算留个备份 ...

  9. Android 匿名共享内存C接口分析

    在Android 匿名共享内存驱动源码分析中详细分析了匿名共享内存在Linux内核空间的实现,虽然内核空间实现了匿名共享内存,但仍然需要在用户空间为用户使用匿名共享内存提供访问接口.Android系统 ...

  10. ASP.NET性能监视参数详解

    性能监视器- Performance Monitor 性能监视器是Windows自带的系统资源和性能监视工具. 性能监视器能够量化地提供CPU使用率, 内存分配状况, 异常派发情况, 线程调度频率等信 ...