干货|2019第一课:不懂这些,后期白学(一)
在上一期我们讲解了什么是RGB以及RGB的由来,今天我们来学习一下RGB的表达与读写。接着上一节课的内容,前面我们提到光的三原色是红绿蓝,将这三种颜色按照不同比例、不同强度进行混合就可以得到各种各样的其他颜色。
我们的显示器是由一个个像素构成的,而每个像素又是由红、绿、蓝三个子像素构成的,如果我们需要让每个像素显示出对应的色彩,我们只需要确定对应的R(红)、G(绿)、B(蓝)含量即可,这个就是RGB色彩模型,我们可以用一个立方体来表示这个模型:
RGB色彩模型(图片来源于“维基百科”)
为什么我们可以用一个立方体来表示RGB色彩模型呢?看完下面的内容你就懂了。如果我们现在需要让电脑显示纯绿色,我们该如何操作呢?我们只需要告诉显示器:将绿色的发光强度达到最大(255),红色和蓝色不发光(0),表示出来就是RGB(0,255,0),这个颜色就表示纯绿色。
同理,我们也可以用RGB(255,0,0)来表示纯红色,RGB(0,0,255)来表示纯蓝色,电脑就是喜欢理解精确化的数字语言,而不喜欢指意模糊的自然语言 。
现在电脑已经可以显示纯正的红、绿、蓝三种颜色了,那它如何来显示黑、白、灰三种颜色呢?黑色的显示应该非常简单,我们让红、绿、蓝都不发光了不就是黑色吗?因此我们用RGB(0,0,0)来表示黑色。如果我们想要显示白色呢?我们就让红、绿、蓝同时发出最强的光线,这时候三种视锥细胞同时受到刺激,给人的感觉就是白色,所以用RGB(255,255,255)来表示纯白色。如果我们想要显示灰色呢?这时候只要让R值=G值=B值,也就是红色、绿色、蓝色发出同等轻度的光线时就为灰色,这时候我们可以发现,黑、白、灰这三种色彩的R、G、B值都是相等的,只是强度有区别而已,强度最低的就是黑色,强度最高的就是白色,中间的就是灰色。
这时候我们已经掌握了黑、白、灰的表示方法,如果我们想要表达其他混合色呢?这就涉及到一些基础的色彩变化原理,即:
我们知道,光的三原色是红、绿、蓝,当这三种色彩以同等比例混合的时候,最后呈现出来的就是白色(中性色),其中任意两种三原色相加得到另外一种三原色的补色,即:
红色 绿色 蓝色=白色,
红色 绿色=黄色,为蓝色的补色
红色 蓝色=洋红色,为绿色的补色
绿色 蓝色=青色,为红色的补色
色彩混合规律
因此,如果一个像素值是RGB(255,255,0)时,它的颜色就是黄色(蓝色的补色);如果一个像素值是RGB(255,0,255)时,它的颜色就是洋红色(绿色的补色);如果一个像素值是RGB(0,255,255)时,它的颜色就是青色(红色的补色)。
那如果一个像素是RGB(255,255,100)呢?这时候这个像素依旧是黄色,因为红色和绿色的发光强度更大,所以还是会以这两种光线的混合色为主,但是因为蓝色也发出了100强度的光线,因此黄色就不再是那么纯了,因此这个像素的颜色就是饱和度比较低的黄色。
那如果一个像素是RGB(50,100,200)呢?这时候这个像素的颜色就位于最大发光强度的色彩和最大发光强度色彩与次发光强度色彩的混合色之间,例如这个像素的最大发光强度的色彩是蓝色,最大发光强度色彩与次大发光强度色彩的混合色为蓝色和绿色的混合色也就是青色,因此这个颜色位于蓝色和青色之间,是一个冷色系的色彩。
同理,我们可以用其他的RGB值组合去表达其他色彩,例如RGB(153,234,98)这种颜色,基于我们前面总结的经验,这种颜色应该介于绿色 (最大发光色)和黄色(最大发光色和次发光色的混合色)之间。
再回到我们之前的那个问题,为什么RGB色彩模型是一个立方体呢?原因非常简单,因为你会发现我们所有的RGB值都是三个数值组成的,而三个数值就可以对应到立方体中点的坐标,大家想一下,立方体任意一个点的坐标是否都是(X,Y,Z)呢?因此我们可以用立方体来表示RGB色彩模型,立方体中的每一个点就表示一个RGB组合,也就是一种颜色。
如果我们把每一条边分成255段,那么A点的坐标就是(255,255,255),所以A点表示纯白色,再比如B点的坐标是就是(255,255,0),所以B点表示纯黄色,以此类推,如果我们把A点和它距离最远的那个点以直线相连,这一条直线上所有点的坐标中的X值=Y值=Z值,也就是说这一条直线就表示白色、灰色和黑色,所以又被称为中性色直线。
这就是RGB的表示方法与阅读方式,你有没有掌握呢?下一篇文章我们讲分析RGB在后期中的具体作用,敬请期待!
来自泼辣修图,