本发明涉及工件检测领域,具体涉及一种工件尺寸的检测方法、装置及存储介质。
背景技术:
随着智能制造技术的发展,工件的制造工艺逐步走向智能化,从原材料到产品出库,一条无人化的生产线能满足所有的工艺需求。在生产过程中,对质量的监控尤为重要,目前针对工件的尺寸检测,主要通过使用米尺进行手工测量,这样的测量方法误差大、精度低、效率下,因此现代工业生产迫切需要新的技术出现,来代替人工的尺寸测量。
技术实现要素:
为解决上述问题,本发明的目的在于提供一种工件尺寸的检测方法及装置,能够实时检测工件的质量,检测的速度快、精确度高,提高了产品的合格率。
本发明解决其问题所采用的技术方案是:第一方面,本发明实施例提出了一种工件尺寸的检测方法,包括如下步骤:
获取工件的候选图像信息,对候选图像信息中的坐标进行相机的标定,得到候选图像的标定坐标;
创建工件的标准图像和用于与标准图像匹配的图像金字塔,将所述候选图像的标定坐标输入到图像金字塔中进行筛选,得到匹配图像;
利用canny算法和双线性插值法分别计算所述标准图像和匹配图像的亚像素边缘,得到标准图像的标准亚像素边缘,和匹配图像的匹配亚像素边缘;
计算所述标准亚像素边缘和匹配亚像素边缘之间的hausdorff距离,获取hausdorff距离最小的匹配图像,得到拟合图像;
计算所述标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,得到校正图像;
将所述校正图像进行边缘分切与拟合,得到标准拟合图像;
比较所述标准图像和标准拟合图像之间的尺寸差异,在允许误差的范围内选取合格样品。
进一步,获取工件的候选图像信息,对候选图像信息中的坐标进行相机的标定,得到候选图像的标定坐标,包括如下步骤:
采集候选图像,获取候选图像中各点的世界坐标,将世界坐标转换为像素坐标;
对所述像素坐标进行畸变矫正,得到标定坐标。
进一步,采集候选图像包括:采用红光隧道型光源采集候选图像。
进一步,创建标准图像和用于与标准图像匹配的图像金字塔,将所述标定坐标输入到图像金字塔中进行筛选,得到匹配图像,包括如下步骤:
采集标准模板并计算标准模板的标定坐标,将标准模板的标定坐标输入到扰动算法,生成标准图像;
提取所述标准图像和候选图像的中心坐标和水平夹角;
将所述标准图像的中心坐标和水平夹角作为图像金字塔的匹配条件,将候选图像的中心坐标和水平夹角输入到图像金字塔进行筛选,得到匹配图像。
进一步,利用canny算法和双线性插值法分别计算所述标准图像和匹配图像的亚像素边缘,得到标准图像的标准亚像素边缘,和匹配图像的匹配亚像素边缘,包括如下步骤:
将所述标准图像和匹配图像输入到canny算法,分别计算标准图像和匹配图像的像素级边缘,得到标准图像的像素级边缘的标准像素点,和匹配图像的像素级边缘的匹配像素点;
将所述标准像素点和匹配像素点各自组合为四个互相关联的关联像素点,得到标准像素点的标准关联像素点,和匹配像素点的匹配关联像素点;
将标准关联像素点和匹配关联像素点输入到双线性插值算法中,得到标准图像的标准亚像素边缘和匹配图像的匹配亚像素边缘。
进一步,计算标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,包括如下步骤:
计算拟合图像的中心坐标和水平夹角的大小,得到拟合图像相对于标准图像的平移矩阵和旋转矩阵;
将所述的平移矩阵和旋转矩阵作用于拟合图像上进行仿射变换,得到校正图像。
进一步,计算标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,还包括如下步骤:
将标准图像和校正图像内相邻但未闭合的区域用线段首尾连接,分别计算对比标准图像和校正图像的闭合区域内的亚像素边缘的亚像素单元数量,在亚像素单元数量允许的误差范围内,筛选出校正图像的闭合区域,得到保留真实边缘的校正图像。
进一步,将所述校正图像进行边缘分切与拟合,得到标准拟合图像,包括如下步骤:
采用区域分裂算法将校正图像分割为若干轮廓曲线;
将所述轮廓曲线各自首尾相连,得到连接线段;
设定距离阈值dset,比较轮廓曲线到连接线段的最大距离dmax与阈值dset的值,将最大距离dmax大于阈值dset的轮廓曲线在所在点处分割;
重复上述所述的将轮廓曲线首尾相连,以及分割轮廓曲线的步骤,直到所有的轮廓曲线均满足最大距离dmax小于阈值dset为止;
计算分割完成的轮廓曲线的亚像素边缘的全局特征值,根据全局特征值将轮廓线段拟合成为几何图像;
对所述的几何图像进行最小二乘法的拟合计算,得到标准拟合图像。
第二方面,本发明实施例还提出了一种工件尺寸的检测装置,包括至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行如以上任一项所述的一种工件尺寸的检测方法。
第三方面,本发明实施例还提出了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如以上任一项所述的一种工件尺寸的检测方法。
本发明实施例中提供的技术方案,至少具有如下有益效果:通过运用图像金字塔、canny算法、双线性插值法和hausdorff距离的结合,实现对候选图像的识别,提高了匹配的精度和速度;对拟合图像进行仿射变换与边缘的分切、拟合,得到的标准拟合图像的拟合程度高,误差率底,有效的提高了产品的合格率。
附图说明
下面结合附图和实例对本发明作进一步说明:
图1是本发明的工件尺寸的检测方法的一个实施例的整体流程图;
图2是本发明的工件尺寸的检测方法的关联像素点一个实施例的示意图;
图3是本发明的工件尺寸的检测方法的校正图像进行边缘分切的一个实施例的示意图。
具体实施方式
在生产过程中,对质量的监控尤为重要,目前针对工件的尺寸检测,主要通过使用米尺进行手工测量,这样的测量方法误差大、精度低、效率下,因此现代工业生产迫切需要新的技术出现,来代替人工的尺寸测量。
基于此,本发明提供了一种工件尺寸的检测方法及装置,能够实时检测工件的质量,检测的速度快、精确度高,提高了产品的合格率。
下面结合附图,对本发明实施例作进一步阐述。
参照图1,本发明的一个实施例提供了一种工件尺寸的检测方法,包括如下步骤:
步骤s100:获取工件的候选图像信息,对候选图像信息中的坐标进行相机的标定,得到候选图像的标定坐标;
步骤s200:创建工件的标准图像和用于与标准图像匹配的图像金字塔,将所述候选图像的标定坐标输入到图像金字塔中进行筛选,得到匹配图像;
步骤s300:利用canny算法和双线性插值法分别计算所述标准图像和匹配图像的亚像素边缘,得到标准图像的标准亚像素边缘,和匹配图像的匹配亚像素边缘;
步骤s400:计算所述标准亚像素边缘和匹配亚像素边缘之间的hausdorff距离,获取hausdorff距离最小的匹配图像,得到拟合图像;
步骤s500:计算所述标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,得到校正图像;
步骤s600:将所述校正图像进行边缘分切与拟合,得到标准拟合图像;
步骤s700:比较所述标准图像和标准拟合图像之间的尺寸差异,在允许误差的范围内选取合格样品。
在本实施例中,步骤s100对候选图像信息进行标定,使候选图像信息更加准确;步骤s200中,图像金字塔的匹配条件是与标准图像的相似程度,例如是标准图像的标定坐标、面积等,通过图像金字塔对候选图像的标定坐标的筛选,可以加快匹配的速度、提高搜索效率;步骤s300利用canny算法和双线性插值法的结合,计算标准图像的标准亚像素边缘,和匹配图像的匹配亚像素边缘,能够有效的提高执行速度和插值精度。
在步骤s400中,hausdorff距离是标准亚像素边缘与匹配亚像素边缘间的最大距离h(a,b),以及匹配亚像素边缘与标准亚像素边缘的最大距离h(b,a)的最大值h(a,b):
其中,hausdorff距离值越小,标准亚像素边缘与匹配亚像素边缘就越接近,那么标准图像和匹配图像就越相似,因此拟合图像选取hausdorff距离差异较小的匹配图像,即h(a,b)的值差异较小,并且hausdorff距离的计算过程简单,操作方便,拟合程度高。
在步骤s500中,对拟合图像进行仿射变换,使拟合图像通过旋转和平移变换到标准图像的位置,实现了对拟合图像的精确变换与定位,提高了拟合的程度;步骤s600和步骤s700,对校正图像进行边缘分切与拟合,拟合程度高,误差率底,并且在允许误差的范围内选取合格样品,能够有效的提高产品的合格率,优选地,标准拟合图像的允许误差范围为标准图像规格的±2.5%。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,获取采集到的候选图像信息,将候选图像信息中的坐标进行相机的标定,包括如下步骤:
步骤s110:采集候选图像,获取候选图像中各点的世界坐标,将世界坐标转换为像素坐标;
步骤s120:对所述像素坐标进行畸变矫正,得到标定坐标。
在本实施例中,步骤s110通过摄像机获取候选图像中各点的世界坐标,将候选图像的世界坐标(xw,yw,zw)转换为像素坐标(u,v):
其中,
其中,径向半径
步骤s110和步骤s120将候选图像的坐标转换像素坐标,并对像素进行了畸变校正,使候选图像的坐标信息更加准确、对候选图像进行比较筛选的过程更加方便,简化了操作流程。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,获取候选图像包括:采用红光隧道型光源采集候选图像。
在本实施例中,摄像机在采集候选图像时,使用红光隧道型光源进行采集,因为红光的波长最高,并且接近传感器敏感度的最高值,能够有效避免工件表面成像的反高光问题,使候选图像的清晰度更高。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,创建标准图像和用于与标准图像匹配的图像金字塔,将所述标定坐标输入到图像金字塔中进行筛选,得到匹配图像,包括如下步骤:
步骤s210:获取标准模板的标定坐标,将标定坐标输入到扰动算法,生成标准图像;
步骤s220:提取所述标准图像和候选图像的中心坐标和水平夹角;
步骤s230:将所述标准图像的中心坐标和水平夹角作为图像金字塔的匹配条件,将候选图像的中心坐标和水平夹角输入到图像金字塔进行筛选,得到匹配图像。
在本实施例中,步骤s210的标准模板选取形状固定,规格大小在所需范围,且灰度差异较大的图像,即轮廓比较明显的图像作为标准模板,并计算标准模板的标定坐标;扰动算法是线性方法,在标定坐标附近进行迭代,直到迭代结果满足误差允许范围,例如是百万分之一,因此将标定坐标输入到扰动算法中进行计算,生成的标准图像能够减少外界因素对标准模板数据的影响,提高了准确率。在步骤s220中,根据标准图像的标定坐标和候选图像的标定坐标,分别计算标准图像的中心坐标和水平夹角,以及候选图像的中心坐标和水平夹角;步骤s230将标准图像的中心坐标和水平夹角作为图像金字塔的匹配条件,每层的图像金字塔设置的筛选条件为候选图像的中心坐标和水平夹角与标准图像的中心坐标和水平夹角的差异程度,将候选图像的中心坐标和水平夹角输入到图像金字塔中进行筛选,最后经过筛选得到差异范围在较低程度的匹配图像的集合。图像金字塔的应用加快了对候选图像的匹配速度、提高搜索效率。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,利用canny算法和双线性插值法分别计算所述标准图像和匹配图像的亚像素边缘,得到标准图像的标准亚像素边缘,和匹配图像的匹配亚像素边缘,包括如下步骤:
步骤s310:将所述标准图像和匹配图像输入到canny算法,分别计算标准图像和匹配图像的像素级边缘,得到标准图像的像素级边缘的标准像素点,和匹配图像的像素级边缘的匹配像素点;
步骤s320:将所述标准像素点和匹配像素点各自组合为四个互相关联的关联像素点,得到标准像素点的标准关联像素点,和匹配像素点的匹配关联像素点;
步骤s330:将标准关联像素点和匹配关联像素点输入到双线性插值算法中,得到标准图像的标准亚像素边缘和匹配图像的匹配亚像素边缘。
在本实施例中,步骤s310的canny算法具有良好的信噪比,对单一边缘具有唯一的响应,高低阈值的选取能优化边缘提取的精度。将标准图像和匹配图像输入到canny算法,首先利用高斯滤波器对图像进行平滑消噪,二维高斯滤波函数为:
其对应的梯度矢量为:
然后,利用一阶偏导的有限差分来计算canny算法的梯度幅值和方向:
其中
参照图2,在步骤s320中,获取标准图像的i行j列的标准像素点(i1,j1),则对于标准像素点(i1,j1)的四个互相关联的标准关联像素点为(i1,j1),(i1+1,j1),(i1,j1+1),(i1+1,j1+1);步骤s330通过双线性插值算法计算标准关联像素点的标准亚像素点(i.j):
f(i,j)=(i1,j1)(j1+1-j)(i1+1-i)+(i1+1,j1)(j1+1-j)(i-i1)+(i1,j1+1)(j-j1)(i1+1-i)+(i1+1,j1+1)(j-j1)(i-i1)。
对匹配图像的匹配像素点同样运行步骤s320和步骤s330,即可得到匹配亚像素点。双线性插值算法的插值精度较高,因此,标准关联像素点和匹配关联像素点经过双线性插值算法运算后,各自联合所有得到的标准亚像素点和匹配亚像素点,即可得到高精度的标准亚像素边缘和匹配亚像素边缘。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,计算标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,包括如下步骤:
步骤s510:计算拟合图像的中心坐标和水平夹角的大小,得到拟合图像相对于标准图像的平移矩阵和旋转矩阵;
步骤s520:将所述的平移矩阵和旋转矩阵作用于拟合图像上进行仿射变换,得到校正图像。
在本实施例中,步骤s510通过计算拟合图像的中心坐标(row,column)和水平夹角phi的大小,结合标准图像的中心坐标(refrow,refcolumn)和水平夹角refphi,得到拟合图像的平移矩阵在x轴方向上的平移效果(refrow-row)、y轴方向上的平移效果(refcolumn-column),以及旋转矩阵的旋转效果(refphi-phi),则平移矩阵和旋转矩阵分别为:
步骤s520将平移矩阵和旋转矩阵作用于拟合图像上进行仿射变换,使拟合图像通过旋转和平移变换到标准图像的位置,实现了对拟合图像变换的精确定位,提高了拟合的精确度。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,计算标准图像和拟合图像之间的平移矩阵和旋转矩阵,对拟合图像进行仿射变换,还包括如下步骤:
步骤s530:将标准图像和校正图像内相邻但未闭合的区域用线段首尾连接,分别计算对比标准图像和校正图像的闭合区域内的亚像素边缘的亚像素单元数量,在亚像素单元数量允许的误差范围内,筛选出校正图像的闭合区域,得到保留真实边缘的校正图像。
在本实施例中,步骤s530通过计算标准图像和校正图像的闭合区域内的亚像素边缘的亚像素单元数量,在允许的误差范围内,筛选出在相同位置的亚像素单元数量近似的闭合区域,剔除数量差异较大的闭合区域,得到保留真实边缘的校正图像,保证了校正图像的准确性。优选地,允许的误差范围为校正图像的亚像素单元数量与标准图像的亚像素单元数量的差异在±1%内。
进一步地,本发明的另一个实施例还提供了一种工件尺寸的检测方法,其中,将所述校正图像进行边缘分切与拟合,得到标准拟合图像,包括如下步骤:
步骤s610:采用区域分裂算法将校正图像分割为若干轮廓曲线;
步骤s620:将所述轮廓曲线各自首尾相连,得到连接线段;
步骤s630:设定距离阈值dset,比较轮廓曲线到连接线段的最大距离dmax与阈值dset的值,将最大距离dmax大于阈值dset的轮廓曲线在所在点处分割;
步骤s640:重复上述所述的将轮廓曲线首尾相连,以及分割轮廓曲线的步骤,直到所有的轮廓曲线均满足最大距离dmax小于阈值dset为止;
步骤s650:计算分割完成的轮廓曲线的亚像素边缘的全局特征值,根据不同的全局特征值将轮廓线段拟合成不同的几何图像;
步骤s660:对所述的几何图像进行最小二乘法的拟合计算,得到标准拟合图像。
在本实施例中,步骤s610利用区域分裂算法对图像中区域特征不一致的区域进行分裂,形成四个相等的子区域,既得到区域特征一致的若干轮廓曲线。
图3为本实施例的边缘分切的示意图,参照图3(a)和图3(b),步骤s620和步骤s630将轮廓曲线到连接线段的最大距离dmax与阈值dset进行比较,将最大距离dmax大于阈值dset的轮廓曲线在所在点处分割,形成两段轮廓曲线,其中,所在点为分割点;参照图3(c)和图3(d),步骤s640为重复步骤s620和步骤s630的操作,即重复将分割的轮廓曲线首尾连接,以及重新分割轮廓曲线,直到所有的轮廓曲线的最大距离dmax均小于阈值dset为止。步骤s650对分割完成的轮廓曲线计算亚像素边缘的全局特征值cont_approx,将cont_approx=1的轮廓曲线用直线拟合,cont_approx=0的轮廓曲线用椭圆形弧拟合,将cont_approx=-1的轮廓曲线用圆拟合,得到初步完成拟合的轮廓曲线,且轮廓曲线拟合程度较高。
步骤s660对不同的曲线轮廓分别进行最小二乘法的拟合,首先根据曲线轮廓假设拟合的曲线轮廓的函数关系,例如是直线、圆形或椭圆的函数关系,然后对函数关系进行最小二乘法处理,在计算最小二乘法的参数时,需要满足拟合值的残差最小,使得实际点与最小二乘法的拟合点之间的距离的平方和达到最小,即可得到关于曲线轮廓的标准轮廓段方程,进而得到标准拟合图像。最小二乘法的计算过程简单,拟合值的精确度高,得到的标准拟合图像的拟合程度也较高,很好地还原了图像的真实度。
另外,本发明的另一个实施例还提供了一种工件尺寸的检测方法,该识别方法包括如下步骤:
步骤s110:采用红光隧道型光源采集候选图像,获取候选图像中各点的世界坐标,以及摄像机的内参矩阵和外参矩阵,将世界坐标转换为像素坐标;
步骤s120:对所述像素坐标进行畸变矫正,得到标定坐标;
步骤s210:获取标准模板的标定坐标,将标定坐标输入到扰动算法,生成标准图像;
步骤s220:提取所述标准图像和候选图像的中心坐标和水平夹角;
步骤s230:将所述标准图像的中心坐标和水平夹角作为图像金字塔的匹配条件,将候选图像的中心坐标和水平夹角输入到图像金字塔进行筛选,得到匹配图像;
步骤s310:将所述标准图像和匹配图像输入到canny算法,分别计算标准图像和匹配图像的像素级边缘,得到标准图像的像素级边缘的标准像素点,和匹配图像的像素级边缘的匹配像素点;
步骤s320:将所述标准像素点和匹配像素点各自组合为四个互相关联的关联像素点,得到标准像素点的标准关联像素点,和匹配像素点的匹配关联像素点;
步骤s330:将标准关联像素点和匹配关联像素点输入到双线性插值算法中,得到标准图像的标准亚像素边缘和匹配图像的匹配亚像素边缘;
步骤s400:计算所述标准亚像素边缘和匹配亚像素边缘之间的hausdorff距离,获取hausdorff距离最小的匹配图像,得到拟合图像;
步骤s510:计算拟合图像的中心坐标和水平夹角的大小,得到拟合图像相对于标准图像的平移矩阵和旋转矩阵;
步骤s520:将所述的平移矩阵和旋转矩阵作用于拟合图像上进行仿射变换,得到校正图像;
步骤s530:将标准图像和校正图像内相邻但未闭合的区域用线段首尾连接,分别计算对比标准图像和校正图像的闭合区域内的亚像素边缘的亚像素单元数量,在亚像素单元数量允许的误差范围内,筛选出校正图像的闭合区域,得到保留真实边缘的校正图像;
步骤s610:采用区域分裂算法将校正图像分割为若干轮廓曲线;
步骤s620:将所述轮廓曲线各自首尾相连,得到连接线段;
步骤s630:设定距离阈值dset,比较轮廓曲线到连接线段的最大距离dmax与阈值dset的值,将最大距离dmax大于阈值dset的轮廓曲线在所在点处分割;
步骤s640:重复上述所述的将轮廓曲线首尾相连,以及分割轮廓曲线的步骤,直到所有的轮廓曲线均满足最大距离dmax小于阈值dset为止;
步骤s650:计算分割完成的轮廓曲线的亚像素边缘的全局特征值,根据不同的全局特征值将轮廓线段拟合成不同的几何图像;
步骤s660:对所述的几何图像进行最小二乘法的拟合计算,得到标准拟合图像;
步骤s700:比较所述标准图像和标准拟合图像之间的尺寸差异,在允许误差的范围内选取合格样品。
在本实施例中,步骤s110通过红光隧道型光源的摄像机获取候选图像中各点的世界坐标,红光隧道型光源的灵敏度高,能够有效避免工件表面成像的反高光问题,使候选图像的清晰度更高。将候选图像的世界坐标(xw,yw,zw)转换为像素坐标(u,v)的公式为:
其中,
其中,径向半径
步骤s110和步骤s120将候选图像的坐标转换像素坐标,并对像素进行了畸变校正,使候选图像的坐标信息更加准确、对候选图像进行比较筛选的过程更加方便,简化了操作流程。
步骤s210的标准模板选取形状固定,规格大小在所需范围,且灰度差异较大的图像,即轮廓比较明显的图像作为标准模板,并计算标准模板的标定坐标;扰动算法是线性方法,在标定坐标附近进行迭代,直到迭代结果满足误差允许范围,例如是百万分之一,因此将标定坐标输入到扰动算法中进行计算,生成的标准图像能够减少外界因素对标准模板数据的影响,提高了准确率。在步骤s220中,根据标准图像的标定坐标和候选图像的标定坐标,分别计算标准图像的中心坐标和水平夹角,以及候选图像的中心坐标和水平夹角;步骤s230将标准图像的中心坐标和水平夹角作为图像金字塔的匹配条件,每层的图像金字塔设置的筛选条件为候选图像的中心坐标和水平夹角与标准图像的中心坐标和水平夹角的差异程度,将候选图像的中心坐标和水平夹角输入到图像金字塔中进行筛选,最后经过筛选得到差异范围在较低程度的匹配图像的集合。图像金字塔的应用加快了对候选图像的匹配速度、提高搜索效率。
步骤s310的canny算法具有良好的信噪比,对单一边缘具有唯一的响应,高低阈值的选取能优化边缘提取的精度。将标准图像和匹配图像输入到canny算法,首先利用高斯滤波器对图像进行平滑消噪,二维高斯滤波函数为:
其对应的梯度矢量为:
然后,利用一阶偏导的有限差分来计算canny算法的梯度幅值和方向:
其中
参照图2,在步骤s320中,获取标准图像的i行j列的标准像素点(i1,j1),则对于标准像素点(i1,j1)的四个互相关联的标准关联像素点为(i1,j1),(i1+1,j1),(i1,j1+1),(i1+1,j1+1);步骤s330通过双线性插值算法计算标准关联像素点的标准亚像素点(i.j):
f(i,j)=(i1,j1)(j1+1-j)(i1+1-i)+(i1+1,j1)(j1+1-j)(i-i1)+(i1,j1+1)(j-j1)(i1+1-i)+(i1+1,j1+1)(j-j1)(i-i1)。
对匹配图像的匹配像素点同样运行步骤s320和步骤s330,即可得到匹配亚像素点。双线性插值算法的插值精度较高,因此,标准关联像素点和匹配关联像素点经过双线性插值算法运算后,各自联合所有得到的标准亚像素点和匹配亚像素点,即可得到高精度的标准亚像素边缘和匹配亚像素边缘。
在步骤s400中,计算标准亚像素边缘与匹配亚像素边缘间的hausdorff距离,hausdorff距离是标准亚像素边缘与匹配亚像素边缘间的最大距离h(a,b),以及匹配亚像素边缘与标准亚像素边缘的最大距离h(b,a)的最大值h(a,b):
其中,hausdorff距离值越小,标准亚像素边缘与匹配亚像素边缘就越接近,那么标准图像和匹配图像就越相似,因此拟合图像选取hausdorff距离差异较小的匹配图像,即h(a,b)的值差异较小,并且hausdorff距离的计算过程简单,操作方便,拟合程度高。
步骤s510通过计算拟合图像的中心坐标(row,column)和水平夹角phi的大小,结合标准图像的中心坐标(refrow,refcolumn)和水平夹角refphi,得到拟合图像的平移矩阵在x轴方向上的平移效果(refrow-row)、y轴方向上的平移效果(refcolumn-column),以及旋转矩阵的旋转效果(refphi-phi),则平移矩阵和旋转矩阵分别为:
步骤s520将平移矩阵和旋转矩阵作用于拟合图像上进行仿射变换,使拟合图像通过旋转和平移变换到标准图像的位置,实现了对拟合图像变换的精确定位,提高了拟合的精确度。
步骤s530通过计算标准图像和校正图像的闭合区域内的亚像素边缘的亚像素单元数量,在允许的误差范围内,筛选出在相同位置的亚像素单元数量近似的闭合区域,剔除数量差异较大的闭合区域,得到保留真实边缘的校正图像,保证了校正图像的准确性。优选地,允许的误差范围为校正图像的亚像素单元数量与标准图像的亚像素单元数量的差异在±1%内。
步骤s610利用区域分裂算法对图像中区域特征不一致的区域进行分裂,形成四个相等的子区域,既得到区域特征一致的若干轮廓曲线。
图3为本实施例的边缘分切的示意图,参照图3(a)和图3(b),步骤s620和步骤s630将轮廓曲线到连接线段的最大距离dmax与阈值dset进行比较,将最大距离dmax大于阈值dset的轮廓曲线在所在点处分割,形成两段轮廓曲线,其中,所在点为分割点;参照图3(c)和图3(d),步骤s640为重复步骤s620和步骤s630的操作,即重复将分割的轮廓曲线首尾连接,以及重新分割轮廓曲线,直到所有的轮廓曲线的最大距离dmax均小于阈值dset为止。步骤s650对分割完成的轮廓曲线计算亚像素边缘的全局特征值cont_approx,将cont_approx=1的轮廓曲线用直线拟合,cont_approx=0的轮廓曲线用椭圆形弧拟合,将cont_approx=-1的轮廓曲线用圆拟合,得到初步完成拟合的轮廓曲线,且轮廓曲线拟合程度较高。
步骤s660对不同的曲线轮廓分别进行最小二乘法的拟合,首先根据曲线轮廓假设拟合的曲线轮廓的函数关系,例如是直线、圆形或椭圆的函数关系,然后对函数关系进行最小二乘法处理,在计算最小二乘法的参数时,需要满足拟合值的残差最小,使得实际点与最小二乘法的拟合点之间的距离的平方和达到最小,即可得到关于曲线轮廓的标准轮廓段方程,进而得到标准拟合图像。最小二乘法的计算过程简单,拟合值的精确度高,得到的标准拟合图像的拟合程度也较高,很好地还原了图像的真实度。
步骤s700在允许误差的范围内选取合格样品,能够有效的提高产品的合格率,优选地,标准拟合图像的允许误差范围为标准图像规格的±2.5%。
根据上述步骤,特别地选取下水槽来进行实验,已知下水槽的外边缘尺寸为500mm*440mm,内槽边缘尺寸为400mm*400mm,针对下水槽的已知尺寸,对下水槽进行人工多次测量和基于工件的尺寸检测方法进行测量,测量结果如下表1和表2所示:
表1:人工测量下水槽尺寸结果
表2:基于本发明的下水槽尺寸测量结果
根据表1和表2的数据可知,人工测量的精度较低,特别是在对角线的测量时,由于存在悬空测量的过程,极易产生超出误差允许范围的情况,导致产品的误检。相比较于本文的基于工件的尺寸检测方法,该方法只在成像平面进行测量,对对角线和对边缘的测量精度是一致的,所以平均误差值较低,可靠性强,精度较高。并且,人工测量下水槽的一条边缘的时间大概是5s,测量一条对角线大概是9s,那么对一个下水槽的完整的测量时间至少需要80s,而工件的尺寸检测方法中,对下水槽的所有边缘和对角线的测量几乎同时进行,因此对一个下水槽的完整的测量时间只需要1.2s。综上所述,工件的尺寸检测方法能够有效地提高检测的精度和速率,很好地提高了产品的合格率。
此外,本发明的另一个实施例还提供了一种工件尺寸的检测装置,包括至少一个控制处理器和用于与所述至少一个控制处理器通信连接的存储器;所述存储器存储有可被所述至少一个控制处理器执行的指令,所述指令被所述至少一个控制处理器执行,以使所述至少一个控制处理器能够执行如上的任一项所述的一种工件尺寸的检测方法。
在本实施例中,检测装置包括:一个或多个控制处理器和存储器,控制处理器和存储器可以通过总线或者其他方式连接。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态性计算机可执行程序以及模块,如本发明实施例中的检测方法对应的程序指令/模块。控制处理器通过运行存储在存储器中的非暂态软件程序、指令以及模块,从而执行检测装置的各种功能应用以及数据处理,即实现上述方法实施例的检测方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据检测装置的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于控制处理器远程设置的存储器,这些远程存储器可以通过网络连接至该检测装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
所述一个或者多个模块存储在所述存储器中,当被所述一个或者多个控制处理器执行时,执行上述方法实施例中的检测方法,例如,执行以上描述检测方法步骤s100至s700、s110至s120、s210至s230、s310至s320、s510至s530,以及s610至s660的功能。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,一个控制处理器执行,可使得上述一个或多个控制处理器执行上述方法实施例中的检测方法,例如,执行以上描述的图1中的方法步骤s100至s700、s110至s120、s210至s230、s310至s320、s510至s530,以及s610至s660的功能。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现。本领域技术人员可以理解实现上述实施例方法中的全部或部分流程是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(readonlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。
以上是对本发明的较佳实施进行了具体说明,但本发明并不局限于上述实施方式,熟悉本领域的技术人员在不违背本发明精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。