
三原色光模式
此條目需要补充更多来源。 (2017年5月19日) |
此條目需要擴充关于數值表示的内容。 (2013年6月9日) |
三原色光模式(RGB color model),又称RGB颜色模型或红绿蓝颜色模型,是一种加色模型,将红(Red)、绿(Green)、蓝(Blue)三原色的色光以不同的比例相加,以合成產生各種色彩光。
RGB颜色模型的主要目的是在电子系统中检测,表示和显示图像,比如电视和电脑,利用大腦強制視覺生理模糊化(失焦),將紅綠藍三原色子像素合成為一色彩像素,產生感知色彩(其實此真彩色並非加色法所產生的合成色彩,原因為該三原色光從來沒有重疊在一起,衹是人類為了「想」看到色彩,大腦強制眼睛失焦而形成。情況其實就有點像看那些Autostereograms 的立體圖時,大腦與眼睛扭曲才能看到「想」看的立體影像的情況)。 紅綠藍三色模型在传统摄影中也有应用。在电子时代之前,基于人类对颜色的感知,RGB颜色模型已经有了坚实的理论支撑。
RGB是一种依赖于设备的颜色空间:不同设备对特定RGB值的检测和重现都不一样,因为颜色物质(荧光剂或者染料)和它们对红、绿和蓝的单独响应水平随着制造商的不同而不同,甚至是同样的设备不同的时间也不同。
选择红绿蓝的生理原因[编辑]
三原色的原理不是出于物理原因,而是由于生理原因造成的。人的眼睛内有几种辨别颜色的锥形感光细胞,到的刺激略大于辨别绿色的细胞,人的感觉是黄色;如果辨别黃綠色的细胞受到的刺激大大高于辨别綠色的细胞,人的感觉是红色。虽然三种细胞并不是分别对红色、绿色和藍色最敏感,但这三种光可以分别对三种锥形细胞产生刺激。
不同的生物眼中辨别颜色的细胞并不相同,例如鸟类眼中有四种分别对不同波长光线敏感的细胞,而一般哺乳动物只有两种,所以对它们来说只有两种原色光。
既然“三原色的原理不是出于物理原因,而是由于生理原因造成的”,那么前段所说的“用三种原色的光以不同的比例加和到一起,形成各种颜色的光”显然就不大合适。使用三原色并不足以重现所有的色彩,准确地说法应该是“将三原色光以不同的比例复合后,对人的眼睛可以形成与各种频率的可见光等效的色觉。”只有那些在三原色的色度所定义的颜色三角内的颜色,才可以利用三原色的光以非负量相加混合得到。
例如,红光与绿光按某种比例复合,对三种锥状细胞刺激后产生的色觉可与眼睛对单纯的黄光的色觉等效。但决不能认为红光与绿光按某种比例复合后生成黄光,或黄光是由红光和绿光复合而成的。
RGB颜色模型理论与应用的历史[编辑]
摄影[编辑]
早期的攝影都是以沖曬照片為主,所以是以減色法來達成。 到近代數碼攝影的流行,感光元件都以感受三原色的光來組成相片,到後來的YUV。
彩色電視[编辑]
彩色显示屏(近距離觀看)[编辑]
至今為止,所有的彩色显示屏都是應用三原色光加色技術,以RGB 三原色作為子像素構成一像素,由多個像素構成整個畫面。 早期的彩色显示屏主要是以 陰極射線管(Cathode ray tube, CRT) 為主. 其後是 液晶顯示器(英語:liquid-crystal display, LCD.)都是。
大型彩色显示屏(遠距觀看)[编辑]
大型彩色显示屏主要也應用三原色光加色技術,以 RGB 三原色 的LED構成一像素,由多個像素構成整個畫面-巨型幕牆。
RGB设备[编辑]
三原色光模仿真彩色显示[编辑]
紅綠藍的三原色光显示技術廣泛用于电视和计算机的显示器,利用紅、綠、藍三原色作為子像素組成的真色彩像素,透過眼睛及大腦的模糊化,「人類看到」不存在於顯示器上的感知色彩。最常見的有阴极射线管显示屏、LED显示屏、液晶显示屏和等离子显示屏等。三种原色光在每一象素中以0-255 (28)強度组合成从全黑色到全白色之间各种不同的颜色光,目前在计算机硬件中采取每一象素用24bit(位元)表示的方法,所以三种原色光各分到8比特,每一种原色的强度依照8比特的最高值28分为256个值。用这种方法可以组合16777216种颜色。最新的顯示卡、显示屏及軟件,已可支援到 210 , 即可以產生出 1073741824種顏色。
RGBW 模仿真彩色[编辑]
近年,有鑑於傳統RGB技術呈現純白色時不夠光亮及較為耗電,不少公司紛紛研發出沒有顏色過濾物料的子像素,形成純白色,並把有關技術稱為RGBW,如三星的PenTile和索尼的WhiteMagic。
光線遇上螢幕時[编辑]
近距離使用手機螢幕,在室內無光線干擾下,將不完全是白色的照明燈光投射在手機螢幕上,螢幕先形成最明顯的藍光,將照明燈靠近螢幕,再次形成範圍較廣的淺綠加上邊緣小範圍紅光,把照明燈拉遠後,將這三種顏色混合一起變成白光,也能正確發覺RGB出現在使用的手機例子之一。
非线性[编辑]
由于gamma校正,在计算机显示设备上的颜色输出的强度通常不是直接正比于在图象文件中R, G和B值。就是说,即使值0.5非常接近于0到1.0(完全强度)的一半,计算机显示器在显示 (0.5, 0.5, 0.5)时候的光强度通常(在标准2.2-gamma CRT/LCD上)是在显示 (1.0, 1.0, 1.0)时候的大约22%,而不是50%[1]。
数值表示[编辑]
一个颜色显示的描述是由三个数值控制的,他分别为R、G、B。但三个数值位为最大时,显示为白色,当三个数值最小时,显示为黑色。
数值表示可以使用以下几种不同的方式:
从0到1之间可用的数来表示----浮点
从0%到100%----百分比
使用0到255之间的整数,八位数字表示,通常表示为十进制和十六进制的数值
高端数字图像设备通常会使用更大的整数来表示,比如0 . . 1023(10bit),0 . . 65535(16bit)或更大
例如红色在不同方式下的表示
方式 RGB 表示 浮点 (1.0, 0.0, 0.0) 百分比 (100%, 0%, 0%) 八位数字 (255, 0, 0) 或
#FF0000 (十六进制)十六位数字 (65535, 0, 0)
- Y=0.299R+0.587G+0.114B ⁄ R=Y+1.14V
- U=-0.147R-0.289G+0.436B ⁄ G=Y-0.39U-0.58V
- V=0.615R-0.515G-0.100B ⁄ B=Y+2.03U
几何表示[编辑]
颜色通常都是用三种成分来定义的,不仅RGB颜色模型是这样,其它比如CIELAB和YUV也是如此。于是便采用三维空间来进行描述,把三种成分的数值当做欧几里得空间中普通笛卡尔坐标系的坐标值。在RGB模型中使用0到1之间的非负数作为立方体的坐标值,将原点(0,0,0)作为黑色,强度值沿坐标轴方向递增到达位于对角线(1,1,1)处的白色。
一个RGB组合(r,g,b)表示代表一个给定颜色的点在立方体内部、表面或者边上的三维坐标。这种表示方法使得在计算两个颜色相近程度时只需简单计算它们之间的距离:距离越短颜色越接近。
计算机显示模式[编辑]
24比特模式[编辑]
每像素24位(bits per pixel,bpp)编码的RGB值:使用三个8位无符号整数(0到255)表示红色、绿色和蓝色的强度。这是当前主流的标准表示方法,用于真彩色和JPEG或者TIFF等图像文件格式里的通用颜色交换。它可以产生一千六百万种颜色组合,对人類的眼睛来说,其中有許多顏色已经是無法確切的分辨。
下图展示了24 bpp的RGB立方体的三个“完全饱和”面,它们被展开到平面上:
黄色 (255,255,0) |
绿色 (0,255,0) |
青色 (0,255,255) | |
红色 (255,0,0) |
![]() |
蓝色 (0,0,255) | |
红色 (255,0,0) |
洋紅色 (255,0,255) |
上述定义使用名為“全值域” RGB的约定。颜色值也经常被认为是取值于0.0到1.0之间,这可以被映射到其他数字编码。
使用每原色8-比特的全值域RGB可以有256级别的白-灰-黑深浅变化,255个级别的红色、绿色和蓝色(和它们的等量混合)的深浅变化,但是其他色相的深浅变化要少一些。由于gamma校正,256级别不表示同等间隔的强度。
典型使用上,数字视频的RGB不是全值域的。视频RGB是有比例和偏移量的约定,即 (16, 16, 16)是黑色,(235, 235, 235)是白色。例如,这种比例和偏移量用在了CCIR 601的数字RGB定义中。
16色[编辑]
在这种模式中有16种基本颜色,它们分别是:
名称 | 英语 | 颜色 | 色光 | 色料 | 色相 | 十六进制码 | MS-DOS | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
R | G | B | C | M | Y | K | 角度 | 飽和 | 明度 | |||||
红色 | Red | 255 | 0 | 0 | 0 | 100 | 100 | 0 | 0° | 100% | 100% | #FF0000 | 12 | |
黄色 | Yellow | 255 | 255 | 0 | 0 | 0 | 100 | 0 | 60° | 100% | 100% | #FFFF00 | 14 | |
草綠色 | Lime | 0 | 255 | 0 | 100 | 0 | 100 | 0 | 120° | 100% | 100% | #00FF00 | 10 | |
青色 | Aqua | 0 | 255 | 255 | 100 | 0 | 0 | 0 | 180° | 100% | 100% | #00FFFF | 11 | |
藍色 | Blue | 0 | 0 | 255 | 100 | 100 | 0 | 0 | 240° | 100% | 100% | #0000FF | 9 | |
品紅色 | Fuchsia | 255 | 0 | 255 | 0 | 100 | 0 | 0 | 300° | 100% | 100% | #FF00FF | 13 | |
栗色 | Maroon | 128 | 0 | 0 | 0 | 100 | 100 | 50 | 0° | 100% | 50% | #800000 | 4 | |
橄榄绿 | Olive | 128 | 128 | 0 | 0 | 0 | 100 | 50 | 60° | 100% | 50% | #808000 | 6 | |
綠色 | Green | 0 | 128 | 0 | 100 | 0 | 100 | 50 | 120° | 100% | 50% | #008000 | 2 | |
藍綠色 | Teal | 0 | 128 | 128 | 100 | 0 | 0 | 50 | 180° | 100% | 50% | #008080 | 3 | |
藏青色 | Navy | 0 | 0 | 128 | 100 | 100 | 0 | 50 | 240° | 100% | 50% | #000080 | 1 | |
紫色 | Purple | 128 | 0 | 128 | 0 | 100 | 0 | 50 | 300° | 100% | 50% | #800080 | 5 | |
白色 | White | 255 | 255 | 255 | 0 | 0 | 0 | 0 | 0° | 0% | 100% | #FFFFFF | 15 | |
銀色 | Silver | 192 | 192 | 192 | 0 | 0 | 0 | 25 | 0° | 0% | 75% | #C0C0C0 | 7 | |
灰色 | Gray | 128 | 128 | 128 | 0 | 0 | 0 | 50 | 0° | 0% | 50% | #808080 | 8 | |
黑色 | Black | 0 | 0 | 0 | 0 | 0 | 0 | 100 | 0° | 0% | 0% | #000000 | 0 |
16比特模式[编辑]
16比特模式分配给每种原色各为5比特,其中绿色为6比特,因为人眼对绿色分辨的色调更敏感。但某些情況下每種原色各佔5比特,餘下的1比特不使用。
32比特模式[编辑]
实际就是24比特模式,餘下的8比特不分配到像素中,这种模式是为了提高数据输送的速度(32比特為一個DWORD,DWORD全稱為Double Word,一般而言一個Word為16比特或2個字節,處理器可直接對其運算而不需額外的轉換)。同樣在一些特殊情況下,如DirectX、OpenGL等環境,餘下的8比特用來表示象素的透明度(Alpha)。
网站设计颜色[编辑]
网站设计颜色应用的也是三原色光24比特模式,但网景色谱(Netscape Color Cube)将其确定为216种,用6种数码#00, #33, #66, #99, #CC, #FF组合成216种排列方法表示颜色。一般使用者就不会被1670万种颜色所迷惑。这种表示颜色的方式被互联网在HTML 3.2(页面存档备份,存于互联网档案馆)采纳为标准方法。此色譜又被稱為安全色板(Safe Palette)。
引用[编辑]
- ^ Steve Wright. Digital Compositing for Film and Video. Focal Press. 2006 [2007-11-21]. ISBN 024080760X. (原始内容存档于2013-06-26).
- Cowlishaw, M. F. Fundamental requirements for picture presentation (PDF). Proc. Society for Information Display. 1985, 26 (2): 101–107 [2007-11-21]. (原始内容 (PDF)存档于2007-09-26).
外部链接[编辑]
参见[编辑]
|
|