本发明涉及表面检测技术领域,尤其是一种高精度图像定位方法。
背景技术:
图像定位技术是印刷检测和一些电子产品的表面检测中的关键技术。表面检测需要通常将待检品的图像与标准的模板图像进行对比,从而判断待检测图像是否存在缺陷,然而待检测图像和模板图像中检测对象存在位置上的偏差,偏差主要包括平移和旋转的位姿变化。图像定位首先在模板图像中选择一个区域作为定位核,通过定位核在待检测的图像中进行匹配找到最相似的区域,最终的到待检测图像中检测对象相对模板图像的检测对象的位置。最后通过待检测图像和模板图像中检测物体的相对关系将二者对准,再进行缺陷检测。
现有一些商业视觉软件中提供视觉定位功能,如康耐视的visisopro、mvtec公司的halcon提供基于灰度和轮廓的定位方法。另外一些定位方法主要基于特征点的匹配定位,例如基于shift特征点、surf特征点。但是现有技术存在以下缺点:
1.用线阵相机采集图像时,如果编码器没有同步线阵相机采集平率和检品的运动速度,最终采集的图像在检品运动方向和运动的垂直方向的比例不一致。如相机的采集频率过高,图像在运动方向上被拉伸了;采集频率过低,图像在运动方向上被压缩了。在这种情况下,不同次采集的图像中的检测对象之间不仅存在位置上的变化,而且形状也发生了变化,随着旋转角度的增大,形状变化越大。在这种情况下,现有的商业定位软件无法精准的进行定位。
2.当前的定位方法定位的结果,角度上存在的偏差,在离定位点较远处造成较大的位移偏差。
技术实现要素:
本发明要解决的技术问题是:提出一种高精度图像定位方法,解决了线扫相机图像被拉伸或者压缩后定位不准确的问题;以及在匹配定位中,由于角度的偏差造成在定位点较远处定位误差大的问题。
本发明所采用的技术方案为:1、一种高精度图像定位方法,包括以下步骤,
1)在采集的模板图像上提取一个区域作为定位核图像;
2)将定位核图像恢复到横向和纵向的比例为1:1的图像;
3)在搜寻的角度范围内根据角度步长生成多个定位核模板;
4)将多个定位核模板恢复到采集图像的横向和纵向的比例;
5)利用多个定位核模板在待检测图像中进行匹配;并利用其定位结果重新计算定位结果。
进一步的说,本发明所述的步骤5)中,将每一个定位核在待检测图像中进行匹配,单个定位核的匹配定位方法为:
a、判断采集图像在竖直方向相对于水平方向的压缩或者拉伸的比例s和1是否在一定的阈值范围类;
b、选择采用灰度匹配方法还是采用轮廓点匹配方法;
c、根据设定的角度搜索范围和角度搜索步长,计算角度一组角度,记为
d、将一组匹配模板图像进行压缩或者拉伸,恢复到采集图像在竖直方向相对于水平方向的压缩或者拉伸的比例s,得到新的一组匹配模板;
e、将新的一组匹配模板分别在待检测图像中进行滑动匹配,找到一个最相似的区域,称为匹配区域,提取该区域的图像,称为匹配图像,计算匹配图像的重心点,作为匹配点;
f、通过该定位核计算得到模板图像到待检测图像的位置关系。
再进一步的说,本发明所述的步骤5)中,利用两个或两个以上的定位核的定位结果重新计算最终待检测图像和模板图像的位置关系。
再进一步的说,本发明所述的步骤a中,判断比例s和1是否在一定的阈值范围类,如果超出范围,则对原定位核图像进行拉伸或者压缩至横纵比例为1,得到新的定位核图像,称为新定位核图像;如果不超出范围则新定位核图像即原定位核图像,并令s=1。
再进一步的说,本发明所述的步骤b中,如果采用灰度匹配方法,则将新的定位核图像转换灰度图像,称为新的定位核灰度图像;如果采用轮廓点匹配方法,则在新的定位核图像中提取轮廓点,称为新的定位核轮廓图像。
再进一步的说,本发明所述的步骤c中,将新的定位核灰度图像或新的定位核轮廓图像以定位核坐标系原点为中心,分别以对应的角度进行旋转,得到一组模板图像,称为匹配模板。
本发明的有益效果是:根据得到的图像被拉伸和压缩的比例,对模板图像(定位核)和搜索区域内图像进行恢复,进行匹配定位,最终得到对应的位置关系;能够准确的计算定位结果;利用两个或者两个以上的模板图像进行定位,利用得到的定位结果重新计算定位结果,提高了定位的精度。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是相机采集频率过低导致图像的形变;
图2是本发明的定位算法流程图;
图3是图像坐标系和定位核坐标系示意图。
具体实施方式
现在结合附图和优选实施例对本发明作进一步详细的说明。这些附图均为简化的示意图,仅以示意方式说明本发明的基本结构,因此其仅显示与本发明有关的构成。
如图1所示,当线阵线相机的采集频率过低时,处于标准位置的检测图像和存在旋转角度的检测对象最终采集到图像中,它们的形状发生了变化。
本实施例首先在采集的模板图像上提取一个区域作为定位核图像,其次将定位核图像恢复到横向和纵向的比例为1:1的图像,第三在搜寻的角度范围内根据角度步长生成多个定位核模板,第四将这多个定位核模板恢复到采集图像的横向和纵向的比例,最后利用多个定位核模板在待检测图像中进行匹配。定位方法的流程如图2所示。
具体步骤如下:
1、对于线阵相机,计算单个像素在检品运动方向(采集图像竖直方向)对应的物理尺寸,记为a(像素在一个方向上对应的物理尺寸越大,则表明这个方向上图像被压缩的比例越大);计算单个像素在与检品运动垂直的的方向(采集图像的水平方向)的对应的物理尺寸,记为b;计算采集图像在竖直方向相对于水平方向的压缩或者拉伸的比例,记为s。
s=b/a
当s大于1时,表示采集图像在竖直方向被拉伸了;当s小于1时,表示采集图像在竖直方向被压缩了。
2、定义一张标准的采集图像作为模板图像,在模板上选取两个或者以上的定位核,称为原定位核图像。以原定位核图像的重心作为定位参考点,记为(ry,cy),其中ry表示参考点在模板图像中的行数,cy表示参考点在模板图像中的列数。建立新的图像坐标系,称为定位核坐标系,以定位参考点作为定位核坐标系原点,如图3所示。记从图像坐标系到定位核坐标系变换矩阵如下:
3、用每一个定位核在待检测的采集图像上进行匹配。单个定位核的匹配定位方法如下:
1)判断比例s和1是否在一定的阈值范围类,如果超出范围,则对原定位核图像进行拉伸或者压缩至横纵比例为1得到新的定位核图像,称为新定位核图像。如果不超出范围则新定位核图像即原定位核图像,并令s=1。在定位核坐标系中,原定位核图像上的像素点到新定位核图像上的像素点的变换矩阵为:
2)选择采用灰度匹配方法还是采用轮廓点匹配方法。如果采用灰度匹配方法,则将新的定位核图像转换灰度图像,称为新的定位核灰度图像;如果采用轮廓点匹配方法,则在新的定位核图像中提取轮廓点,称为新的定位核轮廓图像。
3)根据设定的角度搜索范围和角度搜索步长,计算角度一组角度,记为
4)将一组匹配模板图像进行压缩或者拉伸,恢复到采集图像在竖直方向相对于水平方向的压缩或者拉伸的比例s,得到新的一组匹配模板,称为新匹配模板。这次压缩或者拉伸变换矩阵为:
5)将新的一组匹配模板分别在待检测图像中进行滑动匹配,找到一个最相似的区域,称为匹配区域,提取该区域的图像,称为匹配图像,计算匹配图像的重心点,作为匹配点。记为(rm,cm),其中rm表示匹配点在待检测图像中的行数,cy表示匹配点在待检测图像中的列数。查找这个匹配区域对应的匹配模板在第3)步的旋转角度,记为θ。
根据匹配点,认为匹配模板上的像素到从定位核坐标系到待检测坐标系的转换矩阵为:
6)最终通过该定位核计算的得到模板图像到待检测图像的位置关系以一个矩阵表示,记为tk,如下所示(右乘):
tk=t5*t4*t3(θ)*t2*t1
4、记每一个定位核的参考点为
通过最小二乘法求解如下方程组:
其中,j=1,....n,n为定位核的个数。
以上说明书中描述的只是本发明的具体实施方式,各种举例说明不对本发明的实质内容构成限制,所属技术领域的普通技术人员在阅读了说明书后可以对以前所述的具体实施方式做修改或变形,而不背离本发明的实质和范围。