rgb显示原理-RGB 显示原理
RGB 显示原理这事儿,实际上就是把世界切成八份颜色看。
你想想,屏幕不是黑乎乎一块,而是由红绿蓝三根线“拼”出来的。
这三根线,红、绿、蓝,就对应着三个根本色块。
只要把这三个色块的颜色值调高,色块就亮;调低,它就暗。 你找过手机屏幕里最亮的那块像素点吗?那肯定是红绿色块与此同时全开的时候。红色是 255,绿色也是 255,蓝色呢?就是 0。
这时候屏幕显示出来的就是纯红色。
反过来看,要是红绿都是 0,只有蓝色是 255,那它就变成了纯蓝色。 那如何知道这三根线具体代表啥颜色呢?得靠“颜色空间”这个抽象概念。我们日常习惯上说的“红、绿、蓝”,实际上是人眼视觉系统里三个最敏感的通道。
要是你的显示器只有一根线,它理论上只能显示黑色(出于三个通道都是 0),要么要是它是 RGBW 结构的,那就多出来一个白色通道,能把某些特殊颜色用魔法似的还原出来。但现实世界里,屏幕是个二维平面,只有红、绿、蓝这三根线,故此得用某种数学方式把它们拉伸到二维空间里。 这就涉及到了颜色空间的概念。在标准的 RGB 模式下,每个像素点实际上代表一个三维向量。
这个向量有三个分量,分别对应 R、G、B 三个通道。要在这个空间里找到某个颜色,得知道 R、G、B 各自的数值。
比如你想找青色,它是由高蓝和高绿组成的,数值大约在 [0, 255] 和 [255, 255] 之间。
只要把这个向量投射到一个二维平面上来显示,屏幕上的那个小小的点,就会呈现出青色。 你可能会问,屏幕像素点如此小,如何如此好看?这就涉及到像素密度和明度的难题了。
像素密度越高,单位面积内的点就越多,颜色就越细腻;明度要是调得对,亮一点,深一点,视觉效果就越好。但归根结底,屏幕能显示的颜色范围,还是被那三个通道数值限制住的。
要是某个颜色在红、绿、蓝三个通道里数值都不到 120(比如 120, 0, 0),那屏幕上哪怕像素密度再高,你也只能看到那个角落,那个角落肯定还是一片黑的。
故此屏幕的色箱就是由这三个数值范围拍板的。 让我们来看个具体的例子。假设你设置了一个绿色背景,屏幕显示出来并不是那种荧光绿,而是那种挺正的草绿色。
那它的像素点里,红通道大约是 190,绿色通道大约是 220,蓝色通道呢?
如何可能是 0?出于要是蓝色是 0,那这个像素点就是纯绿色了。
要是绿色通道是 220,红色是 190,屏幕就会显示出一个红绿两色混合的色块。别看屏幕内部那个小小的点里,红和绿都有值,但在人眼看来,出于绿色在 RGB 组合里占比大,故此它主要呈现绿色。 还有个细节,动态调整颜色数值时,有时候中间色调会显得有点灰蒙蒙的。
这是出于人眼对三原色的敏感度不一样。当我们全亮的时候,三个通道与此同时贡献能量,人眼把它们“叠加”在一起。但当我们把其中一个通道慢慢下降数值,比如把蓝色从 255 降到 100,这时候别看红色和绿色还在满血状态,但蓝色供给的“亮度”和“色彩”削减了,混合后的整体感觉就会偏冷,看起来比较暗,就连有点灰。
这就是为啥有些显示器在调低亮度时,画面会发灰的缘由。 再说说屏幕为啥不能显示所有颜色。假设你有一台显示器,它的红色通道的最大数值是 255,绿色也是 255,蓝色是 0。
那理论上它只能显示纯红色、纯绿色和纯蓝色。
要是屏幕想要显示青色,它的蓝色数值务必大于 0,绿色数值也务必大于 0,而红色数值应当是 0。
只要红色通道有值,绿色通道有值,但蓝色也是 0,那屏幕就显示不出青色。
同理,要是只有绿色有值,红色和蓝色都是 0,那就是纯绿色。
只有当三个通道都有值,比如红、绿、蓝都是 50,那屏幕才会显示一个浅灰的七色混合色。
故此,屏幕显示出来的颜色,本质上是被那三个通道数值限制住的。 实际上这背后还藏着一些物理限制。屏幕发光是有损耗的。
要是你把屏幕亮度调到最大,理论上应当能显示最亮的颜色,比如白色(255, 255, 255)。但要是把某个通道的数值压到 0,比如红色变成了 0,那这个颜色就彻底消亡了,变成了黑。
这就是为啥我们说 RGB 模型有上限。 在计算显示器色彩时,工程师们不仅要设定 R、G、B 三个通道的数值,还要寻思这些数值对应的亮度(Luminance)和饱和度(Saturation)。亮度拍板了颜色的明暗,饱和度拍板了颜色的鲜艳程度。
要是屏幕上想要一个深蓝色,它的 R、G 通道值挺低,B 通道值挺高。
要是这三个值都刚刚好,屏幕就会呈现一个深邃的蓝色。但要是 B 通道值忒高,R 和 G 值别看低但配合起来不够协调,要么反过来,R 和 G 值忒高,B 值忒低,混合出来的颜色可能会偏黄要么偏蓝,这取决于三原色在二维空间里的相对位置。 有时候屏幕显示的颜色看起来挺怪,比如一片“青灰色”。
这一般是出于 R、G、B 三个数值都差不多,且都比较高,混合后饱和度不够,呈现为一种中性的灰色。
这时候,人眼会认定这个颜色并不纯粹,出于它包含了红、绿、蓝三种颜色的成分,而不是单一色。
要是想要让它更鲜艳一点,就得把其中一个通道数值调大,比如把绿色调大一点,那绿色的贡献就会增添,画面就会显得更绿、更亮。 总的来说,RGB 显示原理就是一条好办的路:通过管住红、绿、蓝三个光线的强弱,在屏幕的二维平面上拼凑出成千上万种颜色的世界。别看听起来好办,但要在这个数学模型里精准地定义颜色,还得寻思人眼的感知、物理发射的规律,还有屏幕本身的技术限制。每一个屏幕上的每一个像素点,实际上都是一个细小的 RGB 灯组,它们通过数学计算,把光能转化成我们看到的色彩。
这个过程看似理所自然,实际上背后全是光学、心理学和数学交织的复杂关系。
声明:演示网站所有内容,若无特殊说明或标注,均来源于网络转载,仅供学习交流使用,禁止商用。若本站侵犯了你的权益,可联系本站删除。
