LabVIEW色彩匹配实现颜色识别、颜色检验(基础篇—13)

色彩匹配(Color Matching)是将模板图像与待测图像或其中某一区域的颜色进行比较,判断它们是否相同或相近的过程。它可以用于颜色识别、颜色检验以及彩色对象定位等基于色彩信息比较的应用程序。

色彩匹配通常分为色彩学习(Color Learning)和色彩比较(Color Comparing)两步。

在色彩学习阶段,系统会对模板图像或区域的颜色信息进行量化,并基于各种颜色及对应像素占总像素的百分比来生成颜色特征向量;

在色彩比较阶段,系统会将模板和待测图像的颜色特征向量进行比较,并返回它们之间的相似度指标。

如何才能判断两幅图像中的颜色是否相同呢?

当然是从图像中不同颜色的像素统计信息入手。对于两幅尺寸和颜色相同的图像来说,图像中每种颜色的像素数均相同。对于尺寸不同但颜色相同的图像来说,图像中每种颜色的像素数不相同,但是两幅图像中每种颜色的像素数占总像素数的比例却相同。考虑通用性,可以将图像中各种颜色对应的像素数占图像总像素数的比例作为颜色比较的特征向量。

但是,若对图像中所有颜色都进行统计,生成的特征向量就会很大,这极不利于系统对实时性的要求。因此还要再进一步对特征向量进行优化。

由于HSL色彩空间具有亮度和色彩信息分离的特点,因此可以将图像转换至HSL空间中,再基于色调和饱和度构成的色盘对颜色进行量化。这样得到的颜色特征向量不仅不会受到亮度变化的影响,还能根据程序对颜色分辨率的需要,调整量化等级以减少特征向量的数据量。

下图显示了提取图像颜色特征向量的过程:

首先彩色图像被转换至HSL色彩空间,以分离亮度和颜色信息。由于亮度128对应的色盘最大(中间),因此可以仅抽取该色盘进行量化。量化时先根据对颜色分辨率的需要,将色盘等分为多个扇区。颜色敏感度(color sensitivity)参数用来确定色盘具体被划分为多少个扇区。

Nl Vision采用低、中、高3挡颜色敏感度值来控制颜色的分辨率。低挡将色盘分为7个扇区,中挡将色盘分为14个扇区,高挡则将色盘分为28个扇区。扇区越多,说明量化的分辨率越高。色盘被等分为扇区后,就可以进一步沿着饱和度方向进行分割。Nl Vision将各扇区沿饱和度方向分为两块,具体分割位置由饱和度阈值(saturation threshold)决定,它控制了每个扇区分为两块的内圆的半径。

在色彩学习阶段,机器视觉系统会从模板图像或区域中提取其色谱。在匹配阶段,机器视觉系统同样会从目标图像中提取其色谱,并比较其与模板图像色谱的差异。而色谱之间的差异则可使用两个向量之间的曼哈顿距离来定量评价。

在实际中,为了补偿色彩量化过程中可能发生的一些错误,一般都会在计算色谱之间的距离之前使用模糊权重函数对色谱进行加权。通过色谱间的曼哈顿距离(各元素间差异的绝对值求和),最终生成一个在0~1000之间的表示差异度的值。下图显示了上述色彩比较过程,其中0表示色谱之间没有相似性,而1000分表示完美匹配。

综上所述,色彩匹配实际上就是比较图像或图像区域的色谱与模板图像的色谱是否相同或相近的过程。在学习阶段,机器视觉系统会提取指定模板图像或选择图像的色谱,其中图像的颜色信息可以由一种或多种颜色组成。色谱提取过程可将图像中的三维颜色信息量化表示为一维色谱。在颜色匹配阶段,机器视觉系统会提取待测图像中的色谱,并与学习到的模板色谱进行比较,最后计算色谱的匹配度。

Nl Vision使用位于LabVIEW的视觉与运动→lmage Processing→Color Processing函数选板中的IMAQ Color Learn和IMAQ ColorMatch函数分别封装了上述色彩学习和匹配过程。基于得到的色谱及其匹配度数据,机器视觉系统可设置阈值来实现颜色识别、颜色检测、颜色定位以及其他基于色彩比较的应用程序,如下图所示:

函数说明及使用可参见帮助手册:

1、颜色识别

颜色识别(Color ldentification)是指从预先定义的模板图像色彩中搜寻与待测图像颜色能最佳匹配者,以确定待测图像颜色的归属。

颜色识别应用一般会预先学习各种模板图像的颜色,并将其连同图像标签保存至数据库中。通过将被测图像的颜色信息与数据库中的记录进行比较,获取与其最接近的记录,并返回对应的图像标签。

通过一个一个颜色识别的实例程序了解其使用方法,程序设计思路如下所示:

程序总体分为模板图像颜色学习和颜色匹配两部分,一开始先用For循环将存放在文件夹中的6幅模板图像逐读入内存,并用IMAQ ColorLearn提取各图像的色谱,以供后续匹配过程进行比较;

随后,程序将待测图像UUT.jpg读入内存,并由For循环中的IMAQ ColorMatch计算其色谱,并与之前由IMAQ ColorLearn学习到的6个色谱逐一进行比较,以确定与之匹配的图像;

由于IMAQ ColorMatch可对同一ROl中的多个轮廓进行颜色匹配,因此其返回的匹配标记(Flag)和匹配度分值(Score)均为数组,其元素的值与ROI中轮廓的顺序对应;

对于整幅图像匹配来说,相当于只有一个ROl和一个轮廓,因此仅取首个元素的值即可。由于程序设置了匹配度的阈值为800,因此从运行结果可以看到,被测图像的颜色与第5幅模板图像的颜色最匹配。

程序实现如下所示:

程序效果如下所示:

2、颜色检验

颜色检测(Color Inspection)是指通过检查产品颜色是否与预知色彩相同来实现产品的缺陷检测。如检测产品是否缺少或有放错的彩色部件,搜索彩色部件以及进行彩色标签的缺陷检测等。

通过颜色检测来检查汽车保险丝安装情况的实例,了解其使用方法,程序设计思路如下所示:

程序一开始先读取黄色保险丝模板图像,并用IMAQ ColorLearn学习模板图像的色谱;

此后,While循环逐个将待测图像文件夹中的图像读入内存,并调用IMAQ ColorMatch进行颜色匹配;

由于指定的ROI中包含两个对应于待测保险丝位置的矩形轮廓,因此IMAQ ColorMatch返回的匹配标志和匹配分值数组中的前两个元素有效,分别按顺序对应于对ROI中的两个轮廓位置的检测结果;

根据返回的匹配标志的值是否为真,可以清楚获知每个位置上的保险丝是否被正确安装。只有当两个位置上的保险丝均被正确安装时,整个测试才能通过。

程序实现如下所示:

程序能检查第二行的第二和第三个位置是否正确安装了型号为20的黄色保险丝。下面效果还显示了检测到ROI第一个轮廓对应位置未安装保险丝的情况。同样,当这两个位置安装的保险丝为其他类型时,测试也不能通过。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容