APP下载

视觉检测系统中图像匹配算法研究

2015-05-12王浩全

山西电子技术 2015年4期
关键词:图像匹配算子灰度

曹 欣,王浩全,石 卓

(中北大学动态测试重点实验室,信息与通信工程学院,山西太原030051)

机器视觉系统是指通过机器视觉产品,也就是我们所说的图像摄取装置,来进行工业图像的采集[1]。早先一些传统的生产线都采用人工视觉对产品进行检测,精确度达不到要求,且效率比较低,对于一些人工操作比较危险的工作环境,用机器视觉来替代人工视觉是非常必要的,机器视觉检测方法的使用大大地提高了自动化的程度[2],也提高了生产效率。

1 图像采集过程

图像采集一般由光源、镜头、CCD相机、图像采集卡、图像处理软件以及视觉主机构成。在采集的过程中,由光源提供照明,CCD相机进行拍摄并将采集到的光信号转化为模拟的电信号,输入到图像采集卡中进行A/D转换,动态地采集到视觉主机内存中,最终通过图像处理技术及相关运算完成对所要检测对象的检测,把被测物体的图像显示在系统显示屏中。其工作原理如图1所示。

图1 工作原理图

2 视觉检测流程

视觉检测是一个多步骤、复杂的处理过程,总体来说,主要分为图像采集、图像预处理、与标准模板对比、图像匹配、输出检测结果等几个部分。所采用的处理算法不同,不同的匹配算法之间的步骤也会存在很大的差异,处理出来的效果也会不一样,但从本质上说,其大致过程是一样的。下图2为视觉检测流程图。

图2 视觉检测流程图

3 模板匹配及算法研究

3.1 边缘检测相关方法分析

从边缘检测流程图可以看出,我们首先要采用CCD相机对标准工件和待检测工件进行边缘提取处理,再进行图像匹配。边缘检测算子是通过检查每个像素点的邻域并对其灰度变化进行量化来达到边界提取的目的,而且大多数的检测算子还可以确定边界变化的方向。它的实质是利用某种算子提取图像背景与目标图像之间的交界线。因此实现边缘提取最直观的方法就是微分,对于数字图像来说用到的方法是差分。常用的边缘检测算子为 roberts、sobel、prewitte、log、canny算子。

本文通过实验方法对五种经典的边缘检测算子进行了研究,通过实验结果比较得出Canny算子边缘检测结果相对于其他算法效果好。最终采用canny边缘检测算子进行边缘检测,下面对canny算子进行介绍。

Canny算子是相对来说比较新的一种边缘检测算子,它有自己的特点与优势,与其它算子相比教而言,边缘检测性能要更好一点,在图像边缘处理方面得到了广泛的应用。它具有三个判定准则:信噪比准则、定位精度准则和单边缘响应准则[3]。Canny算子主要是通过寻找图像梯度局部的最大值来进行边缘检测的,这种方法是采用高斯滤波器的导数来计算梯度的,使用两个阈值分别对强边缘和弱边缘进行检测,而且仅当检测结果中强边缘和弱边缘相连时,才会输出弱边缘[4]。平滑图像中数据阵列可以表示为:

式中,H(x,y;δ)为标准差δ的高斯平滑滤波器,δ决定了平滑程度,这里使用了2×2阶有限差分,其方向角和梯度幅值分别为:

式中,I(x,y)为边缘强度;θ(x,y)为正交于边缘方向的法向矢量。

图3 边缘检测结果

3.2 图像匹配算法研究

3.2.1 基于绝对误差的相似度评价原则

基于绝对误差的相似度评价原则,采用两次匹配策略,即先进行一次粗匹配,再进行精准匹配。这种算法有效的避免了平方运算,主要是衡量T(m,n)和Dxy(m,n)的误差,其计算公式如下:

式中当E(x,y)取到最小值的地方即为匹配目标,要想提高计算速度,我们可以通过选取一个合适的误差阈值E0,当E(x,y)>E0时就停止对该点的计算,继续其他点的计算。对于这种方法中的粗匹配,我们采用的匹配方法是最多近邻点距离方法,该方法是通过取模板隔行隔列数据,在被检测图形上隔行隔列地完成扫描配准,相当于在原图1/4数据范围内进行配准,这种算法能够大幅度减少计算量,在匹配速度方面也有了很大的提高。粗匹配过程中,在整个算法中还有一个非常重要的问题,那就是阈值的选取问题,主要通过F(m,n)与θ的大小关系来判断ρ(m,n)的取值。本文采用自适应阈值选取,通过求模板的平均灰度和被测图像的平均灰度绝对差F=|¯D-¯T|的不同自适应选取阈值。精准匹配是在粗匹配的基础上进行精确配准位置的搜索,采用公式6的原则,在第一次误差率最小的点(xmin,ymin)的邻域内进行搜索匹配,即从点(xmin-1,ymin-1)到点(xmin+1,ymin+1)的矩形内进行二次精准匹配,得到最终的配准结果。

3.2.2 基于特征和灰度结合的匹配算法

这种算法的基本思想,首先需要对被检测图像和模板图像分别进行边缘提取。前面我们通过对几种经典边缘检测算子进行了比较,分析图像处理结果得到采用Canny算子提取边缘得到的效果最好,因此,本文采用Canny算子对图像进行处理;其次就是要对图像进行二值化处理,图像二值化处理变换函数为:

式中T为二值化阈值,对于传统的直方图求阈值法,当图像的直方图具有双峰特性的时候,图像中的目标和背景分别形成两个波峰。此时,我们通常采用双峰之间的谷底处灰度值作为阈值T,进行图像二值化处理。我们所要处理的图像双峰特性明显,故采用直方图法,经过实验验证与比较,选取阈值T=70。

最后需要对图像进行匹配,令f(m,n)为M×N的待检测图像,g(u,v)为U×V的模板图像,则有:

式中,d(i,j)代表的是相似性,为大小相同的两窗口之间的距离函数。

式中,R[f(m,n),f'(m,n)]为我们定义的二值图像匹配距离函数。

式中,d(i',j')为最佳匹配位置,P代表匹配范围。

这种算法是通过加入图像边界信息,计算被检测图像和模板图像的相似点个数,避免了相关法处理计算量大的问题,和基于绝对误差的相似度评价原则算法中阈值选取问题,省去了人为的根据经验设定阈值的情况,极大的提高了图像匹配的精确度和匹配率,节省了时间。

图4 匹配结果

4 结论

本文进行了多次实验,验证了基于绝对误差的相似度评价原则算法、基于特征和灰度的复合算法这两种算法的匹配正确率。通过对比,由表1可以看出,本文所研究的复合算法,不论是匹配正确率还是匹配速度上都有所提高,能够满足系统的节拍要求,且其匹配准确率较高、精度高,提高了整条生产线的良品率要求。

表1 实验结果对比表

[1]戴君,赵海洋.机器视觉[J].机械设计与制造工程,1998,27(4):52 -53.

[2]张德丰.MATLAB数字图像处理[M].北京:机械工业出版社,2012(2):268.

[3]李雅梅,吴中福.川南石刻图像模板匹配方法研究[J].计算机科学,2008(7):247 - 249.

[4]朱红高.图像边缘检测技术研究现状[J].制造业自动化,2010(1):45-47.

[5]Otsu N.A Threshold Selectoion Method from Gray Level Histogram[J].IEEE Trans Action on SMC,1979(9):652-655.

[6]Pal NR,Pal SK.A review on Image Segmentation Techniques[J].Pattern Recognition,1993,26(9):1277 -1294.

猜你喜欢

图像匹配算子灰度
采用改进导重法的拓扑结构灰度单元过滤技术
拟微分算子在Hp(ω)上的有界性
基于灰度拉伸的图像水位识别方法研究
各向异性次Laplace算子和拟p-次Laplace算子的Picone恒等式及其应用
一类Markov模算子半群与相应的算子值Dirichlet型刻画
一种用于光照变化图像匹配的改进KAZE算法
基于最大加权投影求解的彩色图像灰度化对比度保留算法
Roper-Suffridge延拓算子与Loewner链
基于灰度线性建模的亚像素图像抖动量计算
挖掘机器人图像匹配算法研究