如何选择视觉CV光源颜色
如何选择视觉CV光源颜色
一.光源颜色分类
光源颜色的选择对机器视觉光源有什么影响及意义呢,常用的光源颜色有白色(W)、蓝色(B)、红色(R)、绿色(G)、红外光(IR)、紫外光(UV),这六种颜色。那么这六种光源颜色又有什么区别及用途呢?下面就让沃德普机器视觉光源来给大家介绍一下:
1.白色光源(W):
白色光源通常用色温来界定,色温高的颜色偏蓝色(冷色,色温>5000K),色温低的颜色偏红(暖色,色温<3300与5000K)之间称之为中间色,白色光源适用性广,亮度高,特别是拍摄彩色图像时使用更多。
2.蓝色光源(B):
蓝色光源波光为430-480之间,适用产品:银色背景产品(如钣金,车加工件等)、薄膜上金属印刷品。
3.红色光源(R):
红色光源的波长通常在600-720之间,其波长比较长,可以透过一些比较暗的物体,例如底材黑色的透明软板孔位定位、绿色线路板线路检测,透光膜厚度检测等,采用红色光源更能提高对比度。
4.绿色光源(G):
绿色光源波长510-530,介于红色与蓝色之间,主要针对产品:红色背景产品,银色背景产品(如钣金,车加工件等)。
5.红外光(IR)
红外光的波长一般为780-1400,我司大多采用940波长的红外光,红外光属于不可见光,其透过力强。一般用于LCD屏检测等。
6.紫外光(UV):
紫外光的波长一般为190-400,主要采用385波长的紫外光,其波长短,穿透力强,主要用于触摸屏ITO检测、布料表面破损、点胶溢胶检测等方面,金属表面划痕检测等。
其实机器视觉光源因为其形状颜色各异,所以每个光源检测的东西都不一样。

互补色可增加对比度
当两种颜色光以适当地比例混合而能产生白色感觉时,则这两种颜色就称为“互为补色”。互补色在色环(下图)上相互对应。两种互补色等强度混合可以得到白色,如果希望更加鲜明地突出某些颜色,则选择色环上想对应的互补颜色,这样可以明显地提高图像的对比度。
二.光源颜色选择策略
在机器视觉系统中,光源具有非常重要的作用,选择合适的光源成为决定整个系统成败的关键因素,光源的主要目的就是将被测物体与背景尽量明显分别,获得高品质、高对比度的图像。下面带您了解一下机器视觉光源颜色的选择攻略:
一般情况下,如果使用黑白相机,又对被测物体的颜色选择没有特殊的要求,红色是比较合适的选择。因为红色LED寿命长、稳定、价格低廉,更重要的是红色LED的波长更接近传感器的灵敏度峰值,而通常的CCD对紫色、蓝色的光敏感程度没有红光强。
如果进行彩色成像,则通常考虑使用白色光源。白色LED光源的制造有几种方法,一种是使用白色LED制造,发光管内部有蓝色发光芯片与受到激发后发出黄色的荧光粉,发出的光按一定比例叠加到一起,看起来形成了白色,这是最为常见的形式。另一种方法是使用红绿蓝三种不同颜色的LED,按某种顺序或方式在光源上进行排列,并分别控制每种颜色的度,使用相对方便。此种方法通常使用四个单色RGGB颗粒进行排列,所以其中的绿色分量通常会比较足,之所以多加一个绿色的G通量,是因为人眼对绿色光源(波长555nm)最敏感。
机器视觉应用中应注意目标颜色与光源颜色的搭配,我们看到某个物体成某种颜色,是因为其反射了对应的光谱。我们拍摄物体时,如果要将某种颜色打成白色,那么就得使用与此颜色相同或相似的光源(光的波长一样或接近),而如果要打成黑色,则需要选择与目标颜色波长差较大的光源。
彩色图像中,除了黑色、灰色不明显,其它如白色、紫色、蓝色、绿色、黄色、橙色、红色、棕色都很明显,色彩饱满艳丽。多色排线在白色光源下的黑白相机大尺度成像,可以发现其中的白色、黄色、绿色、橙色较明亮,说明相机对这些波长比较敏感。在红光下成像时,白、红、橙、黄几种颜色比较明显,其它的颜色都很暗,说明红光照射物体时,物体本身有红色分量时,才能反射红光,在黑白相机下表现为红色特征。而在绿色光源下,则白色、绿色、黄色表现明亮,其它较暗淡。蓝色光源下,白色、紫色、蓝色等表现较亮,有效反射蓝光。从中也可以发现,白色,无论在什么光照下,都成明显的白色,是因为其本身不吸收光谱,任何光谱照射到其表面上都会被反射;相反,黑色材料则无论什么光照射上去都不反光成黑色。

生活中看到某个物体呈现某种颜色,是因为物体表面反射了该对应的光谱。
视觉应用中,为目标颜色合理地选择光源的颜色有利于降低算法难度、提高系统稳定性。
同类色
同类色指色相性质相同,但色度有深浅之分。
是色相环中15°夹角内的颜色。
如深红与浅红,深蓝与浅蓝。
邻近色
邻近色,就是在色带上相邻近的颜色。
例如红色和橙色。
是色相环中,凡在60度范围之内的颜色都属邻近色的范围
互补色/对比色
有非常强烈的对比度,在颜色饱和度很高的情况下,可以创建很多十分震撼的视觉效果。
例如橙和蓝、红和绿、黄和紫。
在色相环中每一个颜色对面(180度对角)的颜色。
类似色
类似色是指在色轮上相邻的三个颜色。
在色轮上90度角内的色统称为类似色。
例如红-红橙-橙、黄-黄绿-绿、青-青紫-紫等均为类似色。
光源颜色的选择
基于以上颜色理论,如果要将目标打成白色需要选用同类色,如果要目标打成黑色需要选用互补色。
合理选择光源颜色可以使特征和背景之间产生较大的灰度差别。一把情况下,如果使用黑白相机,对被测物体的颜色没有特殊要求的情况下,红色是比较好的选择。
红色LED寿命长、稳定、价格低。通常ccd对红光比较敏感。
波长越长,穿透能力越强。红外的穿透能力强,适合检测透光性差的物体,如棕色口服液杂质检测。
波长越短,扩散能力越强。紫外对表面的细微特征敏感,适合检测对比不够明显的地方,如食用油瓶上的文字检测。 表面瑕疵检测一般使用蓝光。
不同波长的光线聚焦点不一样,可以参照彩虹形成的原理。在图像中心区域,不用颜色形成的光斑是同心圆。向图像边缘移动时会产生彩虹效应,目标特征将在更大区域上成像,会导致对比度降低。对像素较小的相机影响更严重。

如何选择视觉CV光源颜色的更多相关文章
- MFC之向导页、消息框、文件选择、字体、颜色(三)
属性页对话框的分类 属性页对话框想必大家并不陌生,XP系统中桌面右键点属性,弹出的就是属性页对话框,它通过标签切换各个页面.另外,我们在创建MFC工程时使用的向导对话框也属于属性页对话框,它通过点击“ ...
- CSS3全览_文本+视觉+盒子+背景颜色
CSS全览_文本+视觉+盒子+背景颜色 目录 CSS全览_文本+视觉+盒子+背景颜色 1. 文本属性 2. 视觉格式化基础 3. 内边距, 边框, 轮廓和外边距 4. 颜色, 背景和渐变 作者: ht ...
- winform 保存文件 打开文件 选择文件 字体样式颜色(流 using System.IO;)
string filePath = ""; private void 保存SToolStripMenuItem_Click(object sender, EventArgs e) ...
- 工业搬运机器人(AGV)为什么要选择视觉导航
在智能制造和仓储物流领域,搬运机器人的需求量在逐年上升.机器人(AGV)的种类千差万别,如何选择成为需求方头痛的问题. 本文将从客户关心的多个方面,对市面上的常见的工业级导航方案做一个比较. 搬运机器 ...
- 设置PyCharm中选择文本的背景颜色和代码中和选中单词相同单词的背景颜色
1 设置选中单词的背景颜色 首先进入File->Setting->Editor->Color Scheme后复制一个存在的颜色主题作为自定义的颜色主题(默认的颜色主题是无法修改的,也 ...
- selector 的用法,在选择和不选择情况下的颜色
在res/drawable文件夹新增一个文件,此文件设置了图片的触发状态,你可以设置 state_pressed,state_checked,state_pressed,state_selected, ...
- WPF整理-使用用户选择主题的颜色和字体
“Sometimes it's useful to use one of the selected colors or fonts the user has chosen in theWindows ...
- 跟我一起学QT_QT标准对话框_颜色选择框
标准对话框 QT的标准对话框分为以下几种 颜色对话框 文件对话框 字体对话框 输入对话框 消息对话框 进度对话框 错误信息对话框 向导对话框 颜色对话框 首先学习的是颜色对话框颜色对话框类QColor ...
- Unity 渲染教程(五):多个光源
https://www.jianshu.com/p/c1a9a5d27765 对每个物体渲染多个光源的光照效果. 支持不同的光源类型. 使用光源cookie. 计算顶点光照. 在光照计算中添加球面谐波 ...
随机推荐
- 【Navicat】获取表结构的DDL语句以及获取更新表字段的操作的DDL
1.获取表结构的DDL语句 2.获取修改表结构某一字段的DDL语句 设计表-修改表字段(记住不要保存)-SQL预览
- 浅谈程序设计和C语言
学前必备知识 程序:一组计算机能识别和执行的指令. 计算机语言:计算机工作基于二进制,计算机只能识别和接受由0和1组成的指令. 计算机能直接识别和接受的二进制代码称为机器指令.机器指令的集合就是该计算 ...
- 【Android开发高手笔记】Dagger2和它在SystemUI上的应用
和人类需要群居一样,程序界的进程.线程也需要通信往来.它们的交流则依赖模块之间.文件之间产生的关系.如何快速地搞清和构建这种关系,同时还能减轻彼此的依赖,需要开发者们认真思考. 我们将这种需求称之为依 ...
- (Py练习)输出乘法口诀表
#输出9*9乘法口诀表 for i in range(1,10): for j in range(1,i+1): print("%d*%d=%2d"%(i,j,i*j),end = ...
- Hive解析Json数组超全讲解
在Hive中会有很多数据是用Json格式来存储的,如开发人员对APP上的页面进行埋点时,会将多个字段存放在一个json数组中,因此数据平台调用数据时,要对埋点数据进行解析.接下来就聊聊Hive中是如何 ...
- Java中volatile关键字你真的理解了吗?
面:你怎样理解volatile关键字时? 我:不加思索的说出,volatile修饰的成员变量,可保证线程可见性.不保证原子性和禁止指令重排. 面:你能谈谈什么是线程可见性吗? 我:各个线程对主内存中共 ...
- 干货!可以使用低代码平台代替Excel吗?
低代码开发平台可以代替Excel?不用惊讶,答案是肯定的,而且,低代码开发平台可以完全代替Excel.例如Zoho Creator低代码平台,可以围绕数据存储.管理和创建工作流程.期间不需要IT人员介 ...
- curl: (35) SSL connect error
curl: (35) SSL connect error weixin_34212762 2018-02-23 20:16:23 230 收藏 文章标签: 运维 版权 阿里云的机器,昨晚githu ...
- 使用 IPMI 远程为服务器安装操作系统教程
使用 IPMI 远程为服务器安装操作系统教程 shida_csdn 2019-01-09 11:30:10 9588 收藏 16展开一.什么是 IPMI? IPMI 是智能平台管理接口(Intelli ...
- XRDP freerdp
服务器上 freerdp 桌面上有XRDP