2D视觉中识别颜色、检测指定颜色的面积是一种常见的需求,像含有荧光剂的胶水检测就是常见的场景之一;目前市面上视觉产品基本都带有颜色提取功能,在指定的区域内获取颜色信息,在取色区域内将指定的颜色信息提取出来,或者通过颜色通道转换提升对比度;
实际应用中经常会出现相近颜色过度提取或者提取不足的情况,如下图所示,提取颜色后相近的颜色提取不足。


这时往往会想到“我应该继续提取颜色,直到饱满为止”,但是呢,实际上提取的颜色多了之后还会出现一种情况“过度提取”,如下图所示:
那么在什么情况下可以稳定的使用颜色抽取呢,假如现有一个需求:要求在指定的区域内检测某种颜色的有无。在对比明显的情况下可以直接选择颜色抽取工具,抽取大概颜色,面积达到能稳定判定即可,不需要考虑漏掉的或者过度提取的区域。
在胶路检测,需要进行宽度判定、面积判定的时候,往往多出来的(缺失的)那一部分就是OK or NG判定失败的关键。
彩色图像的颜色终归还是RGB三个通道在不同搭配下出来的效果,我们可以通过这一特性对图像进行处理。
例如上图的例子,在不同的方式下转换出来的黑白图像效果是不一样的,转化方式有多种:RGB转灰度、RGB转HSV、RGB转HSI、RGB转YUV等等不同的转换类型
不同转换类型下转换出来的效果有好有坏,好的也只是比其他的效果好一点,与周围相近的颜色对比还是没有那么明显,但在图像处理中我们还可以针对性的进行处理,让想要的区域更加突出
再对明亮的区域进行下一步处理又可得到另外一个效果,来看一下原图与最终效果的一个对比,效果如下:
在这里,原图放大后可以看到有一道浅浅的蓝色,涂胶轨迹画完圆之后移动的过程中有胶水流落至物料底部导致在成像上有这道荧光。
维度
色彩空间转换
颜色抽取
本质
像素坐标系变换(预处理)
像素筛选分割(目标提取任务)
输出结果
多通道彩色图像
二值掩膜+目标区域
核心作用
优化颜色特征,抗光照干扰
分离指定颜色目标,完成检测
独有优势
解耦明暗、量化色差、保留全图信息、多空间灵活切换
输出分割掩膜、低成本快速落地、多色同步提取、易现场调试
单独使用价值
无法得到目标区域,只能看颜色通道
直接产出可测量的目标色块,是视觉检测的核心输出
以上为参考在实际应用中还需要根据实际的应用场景、实际颜色的状态进行选择不同的处理方式,再搭配其他处理算法能够更加灵活的应对不同场景下的需求。

色彩空间转换:









颜色提取与色彩空间转换优劣对比: