传统的机器视觉系统大部分是基于灰度图像进行图像处理,而如果检测颜色则需要选择彩色相机,因为彩色相机可以还原物体的真实色彩。本文讲解什么是颜色空间、怎么利用彩色空间,并结合案例进行展示实现过程。
1.什么是彩色空间
颜色是通过眼、脑和我们的生活经验所产生的一种对光的视觉效应。我们肉眼所能见到的光线,是由波长范围很窄的电磁波产生;颜色就是人对光的一种感觉,由大脑产生的一种感觉。例如:绿叶反射波长为500~570nm的绿光。
例如初中物理中所学的光的三原色由红、绿、蓝组成,这就是RGB颜色空间,除此之外还有HSV、CMY颜色空间。
RGB模型
RGB三原色组成了五彩缤纷的世界,通过不同颜色之间的比例搭配得到赤橙黄绿青蓝紫,我们的相机、电视机就是利用颜色空间的模型,因此RGB主要面向硬件模型。色彩强度用0~255表示,总共256的灰度值,最大可呈现的色彩种类为256*256*256=16777216种。
CMY颜色空间它也是一种面向硬件设备(彩色打印机,复印机)的颜色模型,CMY代表青色,深红色和黄色(颜料原色)的组合。这三种颜色是RGB的二次色,用的是另一种方式定义。在机器视觉中涉及不到,这儿不做深入分析。
HSV颜色空间是根据颜色的直观特性,由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。这个颜色模型十分重要,该模型十分接近人对颜色的感知。
H(色调):用角度度量,取值范围为0°~360°,从红色开始按逆时针方向计算。红色为0°,绿色为120°,蓝色为240°。它们的补色是:黄色为60°,青色为180°,品红为300°。
S(饱和度):取值范围为0~255。
V(亮度):取值范围为0 (黑色)~255(白色)。
HSV模型
2.怎么利用彩色空间
(1)输入图像彩色图像
(2)将彩色图像转化成所需的空间(按R分量法、最大值法、插值法等)
(3)在所需的空间进行图像处理
3.颜色识别案例
要求:识别下图导线的颜色信息
颜色识别的过程如下图所示
(1)采集图像。选择采集路径为文件,图像的格式为BMP或JPG。如下图1所示
图1
(2)彩色转灰。选择需要转出的颜色通道,可以根据需要选择红、绿、蓝、平均值、最小值、最大值。如图2所示。
图2
(3)斑点分析。选择彩色转灰后的图像,检测导线的斑点数量,通过面积进行筛选,最终筛选出4个斑点。如图3所示。
图3
(4)循环检测。由于需要同时检测4根导线颜色信息,选择循环工具,循环的开始值为0,结束值为斑点分析得到的数量。如图4所示。
图4
(5)颜色识别。由于我们的目标是识别导线颜色,添加颜色识别工具至开始循环与结束循环之间;并且逐一训练颜色样本信息;如图5所示。此时由于颜色识别需要进行位置信息的跟随变化,所以位置X/Y选择斑点分析的重心X/Y;并且勾上循环。如图6所示。
图5
图6
(6)数值显示。为了方便观察当前检测的颜色信息内容,添加数值显示工具至开始循环与结束循环之间;数据链接选择颜色识别的样本,位置X/Y选择斑点分析的重心X/Y,勾选循环。如图7所示。
图7
(7)运行结果。如图8所示。
图8
在颜色识别过程需要注意的几点:
1.多个颜色同时识别需要循环工具。
2.每一种颜色的位置信息不固定需要位置信息跟随。
3.由于机器视觉检测系统的颜色库里没有我们需要的颜色,此时需要训练颜色样本至颜色库。
4.数值显示需要同时显示4种颜色信息,其位置需要跟随斑点位置变化(勾选循环,确保位置跟随变化),且处于循环工具之间。
-
导线
+关注
关注
5文章
405浏览量
24783 -
机器视觉
+关注
关注
161文章
4369浏览量
120277
原文标题:一个经典案例,带你学习机器视觉之导线颜色识别
文章出处:【微信号:GKB1508,微信公众号:工控帮】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论