模式匹配方法的LabVIEW 设计与实现

2015-12-20 06:58张巧丽李光明王孝敬
计算机工程与设计 2015年9期
关键词:模式匹配分值机器

张巧丽,李光明,王孝敬

(1.陕西科技大学 电气与信息工程学院,陕西 西安710021;2.西安金源电气股份有限公司,陕西 西安710021)

0 引 言

目前,机器视觉在各个领域广泛应用,只要是与自动化生产、制造、检测、检查、测试、测量等相关的[1,2],都可以考虑使用机器视觉与图像处理的方法进行处理分析,从而提高效率与品质,尤其是在工业生产上,其可以检测及跟踪有缺陷的产品,具有实用性、灵活性和可视化的特点[3-5]。本文设计实现了一种基于LabVIEW 的模式匹配方法,工业产品在没有明显特征,但有比较明显的形状情况下,可以使用该模式匹配方法来实现在线实时的检测。该软件系统具有界面友好、性能可靠、易于扩展、实现简单等特点。

1 模式匹配方法

模式也叫模型 (model)、模板 (template),模式匹配可以快速的查找、定位一个灰度图像区域在整个图像或ROI中,这个灰度图像区域与一个已知的参考模式是匹配的。模式匹配算法在机器视觉领域具有重要的应用。

基本思想:模式匹配使用的是一种对比原理,即用被测目标与模板进行对比,根据它们的相似程度来判断是否有目标的存在[6]。在使用模式匹配时,首先需要创建一个包含搜索目标的模板,然后机器视觉应用程序在采集到的每个图像中搜索模板,并计算每个匹配的分数,这个分值表示了找到的匹配对象与模板的相似程度。分值从0 到1000分,值越高表示越相似,1000分则是完美的匹配,通常只有在提取模板的图像中匹配分数才能达到1000分,分值是匹配中的一个重要参数。

模式匹配在实际应用中也是使用非常广泛的一种应用。当一个产品没有太明显的特征时,如直边、圆、粒子、颜色等,而有比较明显的形状时,就可以考虑使用模式匹配。

本文使用的方法是一种新的模式匹配算法,金字塔匹配方法,该方法通过减小图像和模板的大小提高了模式匹配的计算时间。在金字塔匹配中,图像和模板都是重采样的,以得到较小的空间分辨率,该方法通过每隔一个像素采样,因此图像和模板都可以减少到原来的1/4 大小,匹配首先在减小的图像上执行,因为图像比较小,所以匹配速度是非常快的。当匹配完成后,只有较高匹配分值的区域需要被考虑为原始图像中的匹配区域。

2 软件系统设计

2.1 开发环境

本文主要采用视觉开发模块VDM 与LabVIEW 相结合的技术来开发机器视觉应用程序[7],不但可以自由地编写程序,而且限制条件比较少。

NI的LabVIEW 自发布以来以极高的更新率进化发展,不断推出强大的软、硬件工具,不断更新、完善其功能和特性,被市场用户积极认可和接受,使其应用领域迅速扩张。VDM 是NI视觉的核心工具包,其中包含了所有NI支持的功能,也是最低层的功能函数。使用VDM,再结合LabVIEW、VB、C、.NET 等编程语言,可以完成所有NI可以胜任的机器视觉图像处理任务。

(1)VAS:视 觉 采 集 软 件 (vision acquisition software),是NI 推出的机器驱动程序,其中的IMAQdx、IMAQ 等驱动程序,可以驱动大部分国内外品牌工业相机、也可以驱动NI自己的图像采集卡、帧接收器等。VAS并没有包含图像处理部分,但通过VAS软件可以从工业相机中采集图像,并由图像处理软件对采集到的图像进行处理。

(2)VA:视觉助手 (vision assistant),是NI VDM 中的一个帮助工具,可以快速的验证机器视觉项目的可行性,并且编辑成脚本,生成LabVIEW、VB、.NET 代码等,以方便LabVIEW 等编程平台的调用,使用视觉助手可以更方便、更快捷的完成图像处理的功能。

2.2 软件结构设计

本文软件总体设计结构包括:图像采集模块,模板训练模块,匹配检测模块及显示部分。

(1)图像采集模块:在实际应用中,根据产品规格不同动态调整图像放大比例;根据现场环境动态设置相机或图像采集卡参数;根据产品到位信号触发采集图像。

(2)模板训练模块:提供友好方便的模板训练交互界面;根据产品不同的检测区域和检测参数;根据形状特征,提供设置检测多边形区域,使产品各个区域得到有效检测。

(3)匹配检测模块:为提高检测精度,经过预处理调整产品整体亮度,得到实际处理区域,对实际区域处理,消除干扰,然后通过对目标准确定位,利用算法实现匹配检测。

(4)显示模块:利用视觉助手完成模式匹配算法,生成LabVIEW 代码,然后设计优化程序并设计前面板,实现图形化交互界面,使得用户方便操作,实现简单,而且易于理解。前面板即VI的交互式用户界面。本文设计的前面板如图1所示。

图1 模式匹配前面板

用户界面说明:

(1)Max of Matches:用于指定需要查找的模板目标的最大数。默认值为1,根据需要可重新设置匹配数量。

(2)Minimum Score:最小分数。指定匹配结果的最小分值,即相似程度,分值越小通常越容易找到目标,但是容易找错;分值越大,则表示要求相似的程度越高,但是会增加找到目标的难度。默认值通常为800 分,最大分值为1000分。以实际应用经验来看,模式匹配分数需要达到600分以上,才能保证系统的稳定性。分值太低,容易引起错误匹配。各个匹配的分值可以在Limits规格中看到,参考这些分值,可以设置合理的最小分值。使用最小分数可以用来控制匹配的相似程度。

(3)Template:模板显示窗。用于显示在图像中要查找匹配的模板对象。

(4)Image:显示窗。用来显示匹配结果。

(5)Number of Matches:匹配数。记录查找匹配到的对象数目。

(6)Results:结果。记录匹配结果,包括匹配实例目标的坐标位置,匹配分数。

2.3 软件实现及结果分析

采用美国NI的LabVIEW 软件平台进行实验开发,利用视觉模块生成的LabVIEW 支持的VI与图形化编程语言G 混合编程,设计并实现产品检测的模式匹配方法。

具体利用其内置的强大函数库及视觉开发工具Vision Assistant,根据模式匹配方法实现的基本流程结构 (如图2所示),采用各个功能模块的函数,主要是视觉与运动模块中的视觉工具 (vision utilities)与机器视觉 (machine vision)函数库,调用其中的子VI函数编写应用程序。

图2 模式匹配方法实现基本流程

模式匹配方法实现过程的基本步骤如下:

(1)采集图像:本文采用仿真采集,通过从文件中读取图像来模拟采集图像。在实际应用中,利用采集图像函数从选择的相机或图像采集卡中采集图像,然后设置采集参数和采集模式。可以进行单帧采集和连续采集图像。

(2)图像处理:采用NI视觉助手Vision Assistant图像处理部分的图像处理函数 (如图3所示)进行相关处理。

图3 图像处理函数

(3)制作模板:通过模式匹配函数中的模板Template选项卡完成模板的制作,也可以通过NI的模板编辑器Template Editor创建一个新模板。

(4)学习模板:使用模式匹配库函数学习模板,通过调用IMAQ Learn Pattern 4函数,如图4所示,并对参数进行设置来完成模板的学习。

图4 模板学习子VI

参数设置:由于使用IMAQ Learn Pattern 4函数得到的模板图像大小一般达到5 M 左右,为减小图像的大小,提高计算速度,将算法Algorithm 中的All去掉,选择灰度值金字塔算法Grayscale Value Pyramid,该算法得到的模板图像大小只有1.5 M 左右。

角度范围Angle Range:定义模板学习角度的变化范围,只针对平移不变Shift-invariant情况下的匹配。

高级选项Advanced Options:用来设置在学习阶段和算法相关的选项。

(5)匹配及结果显示:要使匹配结果显示出来,需要添加匹配边框,其子函数程序框图如图5所示。

图5 匹配结果边框添加子VI

实验要求及测试:安装LabVIEW 完整开发系统和视觉开发软件。实验选用两个检测图像分别进行两组实验测试,对模式匹配方法进行性能验证,并分析对比实验结果。

测试:①运行VI测试;②在图像中画一个ROI用于定义匹配模板,模板学习完成后将模板显示在模板显示窗中,同时在图像显示窗中显示匹配检测结果,即在图1前面板Image显示窗口中显示产品检测情况,其匹配的结果如图6所示。

图6 匹配结果

实验1:如图6 (a)、(b)所示,检测图像没有太明显的直边、圆、颜色等特征,但是有比较明显的形状。

实验2:如图6 (c)、(d)所示,测试对象相同,目的是为了对比检测模式匹配方法在模糊图像中的性能。

实验结果分析:

针对实验1、实验2给出测试结果,如图6所示,在测试时最小分数设为700分,对实验结果进行分析:

在实验1中,检测对象个数为4,即图6 (a)是Max of Matches为4的匹配结果,可以看出匹配良好;图6 (b)是Max of Matches为5的匹配结果,查找匹配到的对象数为5,由表1中坐标为 (90.5,244)的目标匹配分数1000分可以得出该目标为模板图像,坐标位置为 (113.76,193.96)的目标分数只有823.9 分,相对于其它坐标位置的目标精确度较低,在图像中也可以看出目标2与模板图像的相似度确实比较低。

表1 实验1匹配结果

实验2,在图6 (c)中,图像比较清晰,由实验结果可以看出,该方法能够实现良好的匹配;但是图像 (d)相对于图像 (c)而言比较模糊,而且对比度也比较低,由匹配结果能够看出仍然实现了很好的匹配检测。

由此得出:利用该软件实现的产品检测方法运行可靠,易于使用,同时提高了产品检测速度和精确度,而且对模糊和对比度低的图像也能够实现很好的匹配检测,提高了匹配性能。

另外,根据实验结果表明,该软件界面友好,易于使用,运行可靠,具有可视化特点,便于实时的、直观地观测产品检测情况,而且检测匹配效果良好。NI视觉的模式匹配能够准确的定位目标,当目标对象有±5%的大小变化、0到360度的方向以及有瑕疵的表面仍可以实现很好的匹配检测。

3 结束语

本文结合机器视觉技术与LabVIEW 开发系统的功能特点,运用其内置的强大函数库及视觉开发工具设计实现了模式匹配方法。软件设计中采用图形化的设计思想,调用视觉与运动模块下的视觉工具 (vision utilities)与机器视觉 (machine vision)函数库中的子VI编写应用程序,增加了软件的稳定性和可移植性。另外,图形化程序设计及编程实现简单、直观、开发效率高。经过实验测试,本文基于LabVIEW 设计的模式匹配方法能够在图像模糊和对比度低的情况下实现很好的匹配检测,提高了匹配性能。

同时,该软件运行可靠,易于扩展,使用灵活方便,而且匹配效果良好。模式匹配可以为应用程序提供被测图像中模板的数量以及位置。例如可以搜索一幅PCB图像中的一个或多个基准点,机器视觉应用程序使用基准点对齐芯片安装设备中的芯片完成对位。

[1]LI Yanfeng,WANG Chunyao,WANG Yuedong,et al.Detection of fruit surface defect research based on NI Vision Assistant and IMAQ Vision [J].Journal of Agricultural Mechanization Research,2013 (7):62-65 (in Chinese). [李彦峰,王春耀,王跃东,等.水果表面缺陷检测研究—基于NI Vision Assistant和IMAQ Vision [J].农 机 化 研 究,2013 (7):62-65.]

[2]DUAN Zhengyu, WEN Shengping. Electronic product appearance surface defect detection based onmachine vision method research [J].Computer Measurement and Control,2014 (4):1009-1011 (in Chinese). [段铮昱,文生平.基于机器视觉的电子产品外观表面缺陷检测方法研究 [J].计算机测量与控制,2014 (4):1009-1011.]

[3]ZHANG Hongxia,LIU Yicai.The application of machine vision technology research [J].Journal of Electronic World,2013 (17):106,108 (in Chinese).[张红霞,刘义才.机器视 觉 技 术 的 应 用 研 究 [J]. 电 子 世 界,2013 (17):106,108.]

[4]LI Yong,WU Xianda,XING Wu,et al.Design of surface defects automatic sorting system based on machine vision [J].Automation and Instrumentation,2010 (5):40-41 (in Chinese).[李勇,伍先达,邢武,等.基于机器视觉的零件表面瑕疵自动分拣系统设计 [J].自动化与仪器仪表,2010 (5):40-41.]

[5]WANG Heng,LIU Ran,XIE Xingzhe,et al.Angle new image matching method and its application study [J].Computer Engineering and Application,2011,47 (4):208-211 (in Chinese).[王姮,刘冉,解兴哲,等.新型图像角度匹配方法及其应用研究 [J].计算机工程与应用,2011,47 (4):208-211.]

[6]CHEN Wei,CAO Zhiguang,LI Jianping.Improved template matching method in the application of license plate recognition[J].Computer Engineering and Design.2013,34 (5):1808-1811 (in Chinese). [陈玮,曹志广,李剑平.改进的模板匹配方法在车牌识别中的应用 [J].计算机工程与设计,2013,34 (5):1808-1811.]

[7]ZHAO Bing,ZHOU Xuchu,ZHANG Qing.The research of machine vision detection technology based on NI platform [J].Journal of Duidance and Fuse,2013,34 (3):57-60 (in Chinese).[赵冰,周戌初,张庆.基于NI平台的机器视觉检测技术研究 [J].制导与引信,2013,34 (3):57-60.]

[8]CHEN Xiang,CHEN Peng.Improvement template matching based target tracking algorithm [J].Computer Application,2011,31 (S2):127-128 (in Chinese). [陈翔,陈鹏.基于改进模板匹配的目标跟踪算法 [J].计算机应用,2011,31(S2):127-128.]

[9]WANG Jianxia,ZHOU Wanzhen.An improved template matching method of license plate character recognition [J].Journal of Hebei University of Science and Technology,2010,31 (3):236-239 (in Chinese).[王建霞,周万珍.一种改进模板匹配的车牌字符识别方法 [J].河北科技大学学报,2010,31 (3):236-239.]

[10]WU Jin.Fast template matching algorithm research in the machine vision [J].Journal of New Industrialization,2014(1):65-69 (in Chinese).[吴进.机器视觉中快速模版匹配算法研究 [J].新型工业化,2014 (1):65-69.]

猜你喜欢
模式匹配分值机器
机器狗
一起来看看交通违法记分分值有什么变化
机器狗
基于模式匹配的计算机网络入侵防御系统
具有间隙约束的模式匹配的研究进展
OIP-IOS运作与定价模式匹配的因素、机理、机制问题
未来机器城
体育考核新方案出炉 项目分值变化大
按病种(病组)分值结算:现状、做法和评价
基于散列函数的模式匹配算法