如何选择视觉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. 计算顶点光照. 在光照计算中添加球面谐波 ...
随机推荐
- 关于width的继承和获取
absolute元素(如果没有设置width值),其宽度自适应于内部元素, <!DOCTYPE html> <html lang="en"> <hea ...
- 【Nginx(三)】Nginx配置集群 负载均衡策略
Nginx配置集群 负载均衡策略 一.安装环境 1.安装JDK8的环境,配置JDK8的环境变量 2.上传jar包demo-1.jar 和 demo-2.jar demo-1.jar 监听8080端口; ...
- 洛谷P1424 小鱼的航程(改进版)
题目背景 原来的题目太简单,现改进让小鱼周末也休息,请已经做过重做该题. 题目描述 有一只小鱼,它上午游泳150公里,下午游泳100公里,晚上和周末都休息(实行双休日),假设从周x(1<=x&l ...
- Win64 驱动内核编程-13.回调监控模块加载
回调监控模块加载 模块加载包括用户层模块(.DLL)和内核模块(.SYS)的加载.传统方法要监控这两者加在必须 HOOK 好几个函数,比如 NtCreateSection 和 NtLoadDriver ...
- [CTF]栅栏密码
[CTF]栅栏密码 --------------------- 作者:adversity` 来源:CSDN 原文:https://blog.csdn.net/qq_40836553/articl ...
- openstack虚拟机从数据库修改卷虚拟机backend操作
由于意外故障,volume-type其中一个backend后段出现性能问题,客户云主机出现卡顿. 因此临时从ceph将系统卷导出,并导入至同一个backend的另一个后端,并启动虚拟机. Nova C ...
- iwrite复制攻略
打开iwrite,一提交作业,发现: 这可咋办啊! 那就跟着步骤来呗: 按F12打开元素审查 点一下左上角 再点一下文本框,就能定位到HTML中的位置 在文本框中写几个字母,康康具体位置: 那就复制进 ...
- c++逆向分析----返回对象
对象不使用默认析构函数 class Test { public: char cNum1; int iNum2; int* pInt; }; Test _ReturnObject() { Test st ...
- CLS的探索:Python如何让日志免费云化
前言 日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集.日志存储到日志检索,图表分析.监控告警.日志投递等多项服务,协助用户通过日志来解决业务运 ...
- [Python] 安装 & 常用命令
安装 http://www.xue51.com/soft/2301.html 常用命令 #查看pip版本$ pip --version#安装pip$ sudo apt install python3- ...