RGB颜色 三者都是0为黑色而255是白色 解释
问题:
RGB颜色 都是0为黑色而255是白色 与日常生活的黑色白色差距怎么那么大,(与物理学中的黑色吸收光是否相悖)而且为什么要这样定义呢?
来源:知乎
这是因为两种颜色的产生方法不一样。一种是做加色法(additive),另一种是做减色法(Subtractive)。
加色法是光源合成光线的原理。显示屏是一个光源,本身可以发出红、绿、蓝三种颜色的光线。通过调节红、绿、蓝三种颜色的强度,来合成其它。
减色法是物体表面反射光线的原理。一些物体可以反射所有波长的光线,比如白纸,所以我们看到画纸是白色的;而像用来画画的颜料只能反射一部分波长的光线,红色的颜料反射红色的光线,其余光线被颜料吸收了(减去了),所以我们只看到红色。
<img src="https://pic2.zhimg.com/4a18f6da540f6322d59be9b29ae9d61d_b.jpg" data-rawwidth="250" data-rawheight="187" class="content_image" width="250">
加色法示意图。有红、绿、蓝三个光源叠加,我们在photoshop里设置(0,0,0)就相当于告诉显示屏把这个像素点红、绿、蓝三盏灯都熄灭,然后我们在屏幕上就看到了一个黑点。而(255,255,255)就相当于让三盏灯亮度达到最大,于是中心就呈现了一个白斑。
<img src="https://pic3.zhimg.com/6f388e67ac8ff1faee5758086d7fd122_b.jpg" data-rawwidth="192" data-rawheight="217" class="content_image" width="192">
减色法正好相反。本来画纸可以反射所有颜色,然后我们用画笔涂上一种颜料,这种颜料只反射其中一种颜色,其它颜色的光线都被它吸收了。因为粉色颜料吸收除粉色以外所有光线,青色颜料吸收除青色以外所有光线,黄色颜料吸收除黄色以外所有光线,所以在三种颜料的叠加区域所有颜色都被吸收了,我们只能看到黑色。(插一句,夏天穿黑衣服吸热就是由于黑衣服比白衣服能吸收更多的光能,能量多了温度就上升了)
RGB颜色 三者都是0为黑色而255是白色 解释的更多相关文章
- RGB颜色原理
参考:http://www.cnblogs.com/harrytian/archive/2012/12/12/2814210.html 工作中经常和颜色打交道,但却从来没有从原理上了解一下,这篇文章希 ...
- RGB颜色二值化
原理:RGB颜色根据计算'灰度'的公式,可以转化为黑白2种颜色,实现二值化. 业务场景的应用:可以根据背景颜色,取一个黑色或白色的颜色,作为背景色上的文案字体颜色 具体代码: function get ...
- iOS中RGB颜色转换
iOS中RGB常用的色值,同时可将对颜色的设置定义成宏,方便开发应用,如: // RGB颜色转换(16进制->10进制) #define UIColorFromRGB(rgbValue) [UI ...
- 相似的RGB颜色——算法面试刷题3(for google),考察二分
在本题中,每个大写字母代表从“0”到“f”的一些十六进制数字. 红绿蓝三元色#AABBCC可以简写为#ABC. 例如,#15c是颜色#1155cc的简写. 现在,假设两种颜色#ABCDEF和#UVWX ...
- 基于OpenCV的火焰检测(二)——RGB颜色判据
上文跟大家分享了在做火焰检测中常用到的图像预处理方法,从这一篇博文开始,我将向大家介绍如何一步一步地检测出火焰区域.火焰提取要用 到很多判据,今天我要向大家介绍的是最简单的但是很有效的判据--RGB判 ...
- RGB颜色中的参数是变量的时候,为什么要加上两个+号在左右?
<script> function draw(){ var c=document.getElementById("mycanvas"); var cxt=c.getCo ...
- Sass函数--颜色函数--RGB颜色函数
RGB颜色函数-RGB()颜色函数 主要分为 RGB , HSL 和 Opacity 三大函数,当然其还包括一些其他的颜色函数,比如说 adjust-color 和 change-color 等.1. ...
- 将16进制的颜色转为rgb颜色
在前端面试过程中,常常会遇到这样一种类型的题目: 使用js将16进制的颜色值转为rgb颜色! 反而在项目中,不怎么遇到这种问题,也很少有这种需求的项目. 但毕竟面试中常常遇到,我自己在之前的面试的时候 ...
- iOS常用RGB颜色的色值表
常用RGB颜色表 R G B 值 R G B 值 R G B 值 黑色 0 0 0 #000000 黄色 255 255 0 #FFFF00 浅灰蓝色 176 224 230 #B0E0E6 象牙黑 ...
随机推荐
- lunix杂记_scp与vi编辑器
1.scp命令,复制其它服务器资源 scp 用户名@192.168.0.9:/usr/local/apache-tomcat-7.0.68 ./ scp -f username@192.168.0. ...
- phpstorm+xdebug手机app调试
1.安装过程网上搜一下全都是,这里省略. 2.由于debug调试需要去判断cookie中XDEBUG_SESSION,然后去调试.由于app接口请求没法去传,而且就算去传递也很麻烦,还要让app去改动 ...
- (2)Linux文件和目录操作命令
简单就是高效 pwd cd -/~/.. tree–a/d/f/i/L mkdir–p/v/m touch ls –l/a//i/h/F cp –r/p/d/a mv rm –f/r/i rmdir ...
- nginx实现最简单的直播
系统环境 [root@yunwei-test live]# cat /etc/redhat-release CentOS Linux release (Core) [root@yunwei-test ...
- Java多线程(五):死锁
死锁 概念 当线程Thread-0持有锁Lock1,Thread-1持有锁Lock2,此时Thread-0申请Lock2锁的使用权,Thread-1申请Lock1锁的使用权,Thread-0和Thre ...
- 机器学习读书笔记(七)支持向量机之线性SVM
一.SVM SVM的英文全称是Support Vector Machines,我们叫它支持向量机.支持向量机是我们用于分类的一种算法. 1 示例: 先用一个例子,来了解一下SVM 桌子上放了两种颜色的 ...
- WordPress教程之如何创建博客内容
上两篇教程的链接: Wordpress教程之初识WordPress Wordpress教程之如何入门WordPress Hostwinds共享主机vps限时五折优惠链接 现在,你的 WordPress ...
- App强更逻辑实现以及版本号如何判断大小
//在开发中,经常会遇到有些需求需要app强更,思路大概:所有请求都要带上版本号和渠道(android或ios),然后网关对这些版本号判断,如果发现这些版本号是很旧的,就返回错误码或者标志符告诉app ...
- Perm排列计数(新博客试水,写的不好,各路大神见谅)
B. Perm 排列计数 内存限制:512 MiB 时间限制:1000 ms 标准输入输出 题目描述 称一个1,2,...,N的排列P1,P2...,Pn是Magic的,当且仅当2<=i&l ...
- VC win32 static library静态链接库简单示例
中午在宿舍闲来没事,看到网上一篇帖子,关于静态链接库的英文示例.它在.Net上开发,我将其移到VC上开发,因此对其代码做了相应修改.帖子内容如下:(代码我已修改).原帖见:http://msdn.mi ...