发明内容
本发明的目的在于针对现有技术的不足,提供一种基于人眼视觉注意机制的铸件缺陷识别方法,本发明对铸件缺陷的识别效果良好,准确率较高,且针对铸件、焊缝等缺陷的两大类缺陷(区域型和线型),建立不同的实现模型,在准确提取出缺陷的同时,提高了缺陷检测的效率。
本发明的目的是这样实现的:一种基于人眼视觉注意机制的铸件缺陷识别方法,包括如下步骤:
1)在系统初始化后进行参数导入,系统开始工作后,获取铸件射线图像的动态序列;
2)确定铸件射线图像中的可疑缺陷区域:对图像动态序列中的各幅铸件射线图像均进行图像分割,将各幅铸件射线图像划分成若干子区域。搜索各子区域内的峰值点,然后以各峰值点为中心在中心峰值点的N个邻域方向上分别搜索离其最近的峰值点即为周边峰值点,分别计算N个邻域方向上的中央-周边差Δfi,将计算出来的各个邻域方向上的中央-周边差Δfi分别与设定的中央-周边差阈值Ti进行比较,如果Δfi≥Ti,则将该邻域方向上的周边峰值点作为可疑缺陷区域的边界参考点,根据得到的边界参考点确定可疑缺陷区域,使边界参考点位于可疑缺陷区域的边界上或边界内。
各区域内的峰值点的要求就是该方向上这个点两边的值都大于或者都小于该点灰度值。峰值点包括极大值点和极小值点。极大值点为该方向上其两边的值都小于其灰度值。极小值点为该方向上其两边的值都大于其灰度值。根据图像不同,中心点可以根据实际需要选择为分割后区域内的极大值点或极小值点。周边点也可以根据实际需要选择为分割后区域内的极大值点或极小值点。当中心点选择极大值点时,周边点选择极小值点,当中心点选择极小值点时,周边点选择极大值点。
3)缺陷匹配:对图像动态序列中的铸件射线图像进行特征点提取和特征点初步匹配,得到初步匹配点,将初步匹配点与可疑缺陷区域做对比,选出在可疑缺陷区域内的最终匹配点。本发明将图像动态序列中的所有铸件射线图像进行缺陷匹配,后一幅图像是前一幅图像平移所得,将前一副图像作为后一副图像的基准图像,这样在图像的运动序列中对缺陷进行实时提取和动态跟踪,利用人眼视觉注意机制模型等图像处理方法在每幅图像中分离出潜在缺陷,保证提取出全部真缺陷而不必考虑伪缺陷的数量,进一步提高铸件缺陷的识别的准确率。
根据铸件、焊缝等缺陷类型(区域型和线型)可以选择对应的图像分割手段,如区域分割手段或线段(行或列)分割手段。优选地,步骤2)采用区域分割手段或线段(行或列)分割手段对铸件射线图像进行图像分割,当步骤2)采用区域分割手段对铸件射线图像进行图像分割时,分割后的各子区域内的多个像素点呈纵横排列的矩阵分布,当步骤2)采用线段分割手段对铸件射线图像进行图像分割时,分割后的各子区域内的多个像素点呈直线(行或列)分布。
步骤2)中心峰值点的N个邻域方向为该中心峰值点的8邻域方向的部分以及全部,1≤N≤8,8邻域方向包括该中心峰值点的上、下、左、右4个邻域方向以及中心峰值点对角线方向上的4个邻域方向。
优选地,当步骤2)采用区域分割手段对铸件射线图像进行图像分割时,N为8,这8个邻域方向为中心峰值点的上、下、左、右4个邻域方向以及中心峰值点对角线方向上的4个邻域方向,当步骤2)采用线段分割手段对铸件射线图像进行图像分割时,N为2,这2个邻域方向为中心峰值点的上、下2个邻域方向或中心峰值点的左、右2个邻域方向。
步骤2)采用区域分割手段对铸件射线图像进行图像分割时,将求得的边界参考点外接一个矩形,将所有相连矩形进行合并,合并后的矩形区域即为可疑缺陷区域。
步骤2)采用线段分割手段对铸件射线图像进行图像分割时,边界参考点与中心峰值点之间为缺陷像素,为了降低误判,将缺陷像素区域扩大作为待处理区域,将所有相连待处理区域进行合并,合并后的待处理区域即为可疑缺陷区域。本发明可以将缺陷像素区域扩大为矩形作为待处理区域,缺陷像素区域位于该矩形内。
中央-周边差阈值Ti=Ti=SΔf+kσΔf,其中σΔf为中央-周边差标准差,SΔf为中央-周边差平均值,k为常数。σΔf为扫描同类型无缺陷铸件射线图像得出的中央—周边差的标准差。SΔf为扫描同类型无缺陷铸件射线图像得出的中央-周边差平均值。k根据实际情况取值,一般取1-5。各子区域均对应同一中央-周边差阈值Ti或各子区域分别对应有各自的中央-周边差阈值Ti。
对图像动态序列中的铸件射线图像进行Harris角点提取和初步匹配,得到Harris初步匹配点集合,对图像动态序列中的铸件射线图像进行SIFT特征提取和初步匹配,得到SIFT初步匹配点集合,将Harris初匹配点集合与SIFT初匹配点集合进行合并,得到初步匹配点集合,初步匹配点集合为Harris初匹配点集合与SIFT初匹配点集合的并集,将初步匹配点集合与可疑缺陷区域做对比,选出在可疑缺陷区域内的最终匹配点。
引入RANSAC方法分别对Harris初匹配点集合、SIFT初匹配点集合进行优化,进一步剔除伪匹配点,校正匹配结果。
本发明可以利用缺陷定位方法求取最终匹配点的空间位置坐标,即为缺陷的空间位置坐标。优选地,缺陷定位方法采用平移视差法。当然还可以采用立体观测法或黑度计定位法等。
本发明的有益效果为:
本发明的步骤2)通过模拟视觉注意机制,以区域或者行(列)分割为手段,提出了基于视觉注意机制且利用中心-周边算子的铸件射线图像缺陷检测模型以及其实现方法,避免了传统Itti方法存在的问题,减少了无关区域对核心区域的干扰以及数据处理量,达到顺利选择出射线图像中应该被关注的重点区域的目的,为后续缺陷提取打下基础。通过模拟人眼视觉的扫描来进行自适应中央-周边差计算来直接获得显著图即ROI(regionofInterest)的方法,以迅速有效地减少图像处理的数据量,提高检测速度,保证检测效率;更重要的是有效地消除无效数据对缺陷检测区域的干扰,有助于提高检测精度和准确度。
建立人眼立体立体视觉中的极线约束和三维重建算法模型。按照匹配条件对潜在缺陷区域依次进行两两匹配,经过缺陷匹配后获得的潜在缺陷区域。根据检测图像的线灰度或者区域灰度分布特点研究定位特征点的选择方法,建立复杂铸件中缺陷深度与偏移量计算的数学模型。实现自动地计算缺陷深度、偏移量,减少人为因素的干扰和提高程序运行的鲁棒性。
本发明的步骤3)分析总结了Harris角点提取和SIFT特征点提取的原理及一般流程,之后通过介绍RANSAC方法的原理及优点,优化了匹配过程中伪缺陷的问题,进一步保证了缺陷匹配的准确性。在此基础上,提出了基于Harris-SIFT的缺陷匹配方法。
对图像动态序列中的铸件射线图像进行Harris角点提取和初步匹配,得到Harris初步匹配点集合,对图像动态序列中的铸件射线图像进行SIFT特征提取和初步匹配,得到SIFT初步匹配点集合,将Harris初匹配点集合与SIFT初匹配点集合进行合并,得到初步匹配点集合,初步匹配点集合为Harris初匹配点集合与SIFT初匹配点集合的并集,将初步匹配点集合与可疑缺陷区域做对比,选出在可疑缺陷区域内的最终匹配点。
本发明通过将步骤2)中确定的可疑缺陷区域以及步骤3)中匹配成功的缺陷综合对比后,得到铸件中缺陷的真实位置,而后利用平移视差法定位铸件缺陷在空间中的具体坐标。
本发明将人眼视觉选择注意机制和立体机制引入到X射线图像目标检测中,提出一种动态的基于人眼视觉机制的X射线数字图像自动识别新方法。该方法在图像的运动序列中对缺陷进行实时提取和动态跟踪,利用人眼视觉注意机制模型等图像处理方法在每幅图像中分离出潜在缺陷,保证提取出全部真缺陷而不必考虑伪缺陷的数量,并将此方法应用于工业检测机器人在线检测过程中,有很大的现实意义。
总之,本发明对铸件缺陷的识别效果良好,准确率较高,检测效率高。
具体实施方式
参见图1,本发明公开了一种基于人眼视觉机制的铸件缺陷检测系统,该系统包括巡检机器人和上位计算机,所述巡检机器人用于获取连续的铸件射线图像即铸件射线图像的动态序列,并将获得的连续的铸件射线图像上传至上位计算机,所述上位计算机用于采集巡检机器人上传的连续的铸件射线图像,并对铸件射线图像进行图像分割、缺陷匹配、缺陷定位处理后输出定位数据。
巡检机器人在传送带附近随机或者固定对运动中的工件进行图像获取,之后系统的工作过程是:(1)系统启动,传动带开始工作,上料机将铸件放在传送带上,传送带做迅速运动;(2)巡检机器人随机在其巡检范围内对传送带上的铸件进行拍照,获取连续的X射线图像,而后巡检机器人将获得的图像上传至上位机进行处理;(3)上位机对获得的图像进行程序处理,而后导出相关数据。
参见图2,本发明公开了一种基于人眼视觉注意机制的铸件缺陷识别方法,包括如下步骤:
本发明的步骤1)为在系统初始化后进行参数导入,系统开始工作后,获取铸件射线图像的动态序列;
本发明的步骤2)为确定铸件射线图像中的可疑缺陷区域:对图像动态序列中的各幅铸件射线图像均进行图像分割,将各幅铸件射线图像划分成若干包含多个像素点的子区域,搜索各子区域内的峰值点,然后以各峰值点为中心在中心峰值点的N个邻域方向上分别搜索离其最近的峰值点即为周边峰值点,分别计算N个邻域方向上的中央-周边差Δfi,将计算出来的各个邻域方向上的中央-周边差Δfi分别与该子区域的中央-周边差阈值Ti进行比较,如果Δfi≥Ti,则将该邻域方向上的周边峰值点作为可疑缺陷区域的边界参考点,根据得到的边界参考点确定可疑缺陷区域,使边界参考点位于可疑缺陷区域的边界上或边界内;
根据铸件、焊缝等缺陷类型(区域型和线型)可以选择对应的图像分割手段,如区域分割手段或线段(行或列)分割手段。优选地,步骤2)采用区域分割手段或线段(行或列)分割手段对铸件射线图像进行图像分割,当步骤2)采用区域分割手段对铸件射线图像进行图像分割时,分割后的各子区域内的多个像素点呈纵横排列的矩阵分布,当步骤2)采用线段分割手段对铸件射线图像进行图像分割时,分割后的各子区域内的多个像素点呈直线(行或列)分布。
针对铸件、焊缝等的区域型缺陷,本发明采用基于区域分割的视觉注意机制实现方法确定铸件射线图像中的可疑缺陷区域,参见图3,该方法首先将目标射线图像划分成8*8大小的若干子区域,之后搜索该子区域内的局部峰值点,以该峰值点为中心向该点8邻域方向(图4所示)寻找各个方向最近的峰值点如图5所示,通过中央-周边差算子与既定阈值作对比,把符合条件的点作为可疑缺陷区域的边界点,外接所有边界点为一个矩形后获得可疑缺陷区域。后续的图像处理、分析、识别都以得到可疑缺陷区域为基础。
参见图3,基于区域分割的视觉注意机制实现方法如下:
(1)对射线图像进行子区域划分,如本实施例每个子区域包含8*8个像素点;
(2)搜索各子区域得到第i个子区域峰值点f(xi,yi)(i=1,2,…,n)即中心点,该中心点对应的像素坐标为(xi,yi)。搜索各个子区域峰值点8邻域方向的峰值点,分别为f(xin,yin)(n=1,2,…,8),记做(xin,yin);
(3)分别计算8个中央-周边差:
Δfi(i=1,2,…,8)=f(xi,yi)-f(xin,yin)(n=1,2,…,8);
(4)设Ti=SΔf+kσΔf为中央-周边差阈值,其中σΔf为中央-周边差标准差,SΔf为中央-周边差平均值,k为常比例系数,一般取1~3。将中央-周边差Δfi与该子区域阈值Ti作比较。如果Δfi≥Ti,则标记该方向上的峰值点记为可疑区域边界参考点,如果Δfi<Ti,则该点不作为可疑区域边界参考点;
(5)将求得的标记点外接一个矩形,如图5所示,将所有相连矩形进行合并,合并后的矩形区域即为可疑缺陷区域,之后的处理皆以该可疑缺陷区域为基础。
针对铸件、焊缝等的线型缺陷,本发明采用基于行(列)分割的视觉注意机制实现方法确定铸件射线图像中的可疑缺陷区域,该方法首先将目标射线图像的行(列)划分成相等的线段,之后搜索该线段内的局部峰值点,以该峰值点为中心向该点左、右(上、下)邻域方向寻找各个方向最近的峰值点,通过中央-周边差算子与既定阈值作对比得到缺陷像素区域,通过外接、合并缺陷像素区域矩形从而获得可疑区域。后续的图像处理、分析、识别都以得到可疑区域为基础。
参见图6,基于行(列)分割的视觉注意机制实现方法如下:
(1)将射线图像的每行或每列划分为以多个像素点为单位的线段,如本实施例将射线图像的每列划分为以12个像素点为单位的线段。
(2)本实施例的中心点取局部极大值点,搜索第j列灰度曲线各子线段的局部极大值点f(xi,yj)(i=1,2,…,n)即中心点,n为中心点的个数,各中心点对应的像素坐标为(xi,yj)。从各个中心点开始向两侧分别搜索离其最近的局部极小值点,分别为f(xiL,yj)和f(xiR,yj),得到的两个周边点,记做(xiL,yj)和(xiR,yj)。
(3)设ΔfL=f(xi,yj)-f(xiL,yj)和ΔfR=f(xi,yj)-f(xiR,yj)为两个中央-周边差;Tj为第j列扫描的中央-周边差算子阈值,Tj=SΔf+kσΔf,其中σΔf为中央-周边差的标准差,SΔf为中央-周边差平均值,k为常数,本实施例k取3。
(4)将ΔfL和ΔfR与各扫描线的阈值Tj作比较。如ΔfL≥Tj,则该周边点(xiL,yj)与中心点中间部分为缺陷像素区域,ΔfR≥Tj,则该周边点(xiR,yj)与中心点中间部分为缺陷像素区域,如ΔfL≥Tj,ΔfR≥Tj,则两个周边点中间部分为缺陷像素区域,同时,该列扫描线上其余各点显著度置零。
(5)将所得缺陷像素区域外接矩形扩大2倍作为待处理区域,合并相连的待处理区域即可得到可疑缺陷区域,之后的处理皆以该可疑缺陷区域为基础。
在铸件、焊缝等射线图像中,焊缝中的不同材质使得亮度比铸件图像更加不均匀且模糊,因此以提取难度更大的焊缝射线图像为研究对象进行实验分析。图7(a)为含有气孔、夹渣、裂纹等缺陷的X射线图像。可以看出其整体亮度不均匀,灰度起伏大,其灰度分布直方图为图7(b),如果采用传统方法对其进行处理,效率较低。
应用本发明提出的基于区域分割的视觉注意机制实现方法处理图7(a)中含有气孔、夹渣等缺陷的铸件缺陷图像。对图像进行子区划分,并经过中央-周边差算子结果与阈值比较后可得如图8(上)效果,之后通过合并相连区域后得到可疑缺陷区域,如图8(中)所示,二值化后得到图8(下)。
采用本发明提出的基于线段(行或列)分割的视觉注意机制实现方法处理图7(下)中的含有裂纹等细长状缺陷的图像。对图像每行进行划分,经过中央-周边差算子结果与阈值比较后得到图9(a)中的缺陷像素区域,如图9(b)所示将这些缺陷区域外接矩形得到待处理区域,合并相连的待处理区域后得到可疑缺陷区域如图9(c),将可疑缺陷区域二值化后的结果如图9(d)所示。实验表明,本发明提出的方法能够后效的检测出铸件射线图像中的缺陷。
本发明对130相关射线图像进行了微小缺陷的提取实验,并与传统方法做了对比,传统方法处理后的图像见图10,相关数据结果如表1所示:
表1实验结果
本发明通过模拟视觉注意机制,以区域或者行(列)分割为手段,提出了基于视觉注意机制且利用中心-周边算子的铸件射线图像缺陷检测模型以及其实现方法,避免了传统Itti方法存在的问题,减少了无关区域对核心区域的干扰以及数据处理量,达到顺利选择出射线图像中可疑缺陷区域的目的,为后续缺陷提取打下基础。
本发明通过借鉴生物选择注意机制完成序列内图像的缺陷快速检测,降低了漏检率,提高了生产效率。但只针对孤立的图像进行缺陷检测,并不能保证提取出的缺陷的真实性,不能降低伪缺陷的存在率,故仍需在图像动态序列中进行缺陷匹配,剔除噪声等伪缺陷,提高缺陷检测正确率,且同时利用平移视差法对缺陷进行定位,进一步提高缺陷检测精度。
本发明的步骤3)为缺陷匹配:对图像动态序列中的铸件射线图像进行特征点提取和特征点初步匹配,得到初步匹配点,将初步匹配点与可疑缺陷区域做对比,选出在可疑缺陷区域内的最终匹配点。
优选地,参见图11,本发明对图像动态序列中的铸件射线图像进行Harris角点提取和初步匹配,得到Harris初步匹配点集合,对图像动态序列中的铸件射线图像进行SIFT特征提取和初步匹配,得到SIFT初步匹配点集合,将Harris初匹配点集合与SIFT初匹配点集合进行合并,得到初步匹配点集合,初步匹配点集合为Harris初匹配点集合与SIFT初匹配点集合的并集,将初步匹配点集合与可疑缺陷区域做对比,选出在可疑缺陷区域内的最终匹配点。优选地,引入RANSAC方法分别对Harris初匹配点集合、SIFT初匹配点集合进行优化,进一步剔除伪匹配点,校正匹配结果。
Harris角点的提取的基本流程为:(1)取以目标像素点为中心的一个小区域作为窗口;(2)计算窗口内沿任何方向移动后的灰度变化,并用解析形式表达。设以像素点(x,y)为中心的小窗口在X方向上移动u,Y方向上移动v,灰度变化度量的解析表达式如(1):
将Gx,y化为二次型有:
通过对角化处理可以得到:
其中R为旋转因子,λ1,λ2两个特征值反映了两个主轴方向的图像表面曲率。为了简便运算,采用Tr(M)和Det(M)来代替λ1,λ2,现假设:
则矩阵M(x,y)的行列式和迹为:
Tr(M)=λ1+λ2=A+B Det(M)=λ1λ2=AB-C2式(5)
可得Harris的角点相应函数式子:
R(x,y)=Det(M)-k(Tr(M))2=(AB-C2)-k(A+B)2式(6)
式中k为大于0的参数,一般取0.04。在实际应用过程中,当目标点的R值大于给定的阈值时,该点即为角点。
在角点提取过程中,当R值越大,则得到的角点越少,大部分为特征明显的角点,反之,则提取的角点越多,更加密集。由于角点相应阈值R的选择范围大,使得提取角点的数目易于控制,为后续过程中得到新的特征点提供了可行性条件。
Harr i s角点的初步匹配的基本流程为:对提取到的角点运用归一化互相关函数进行一致性匹配,式(7)为归一化函数具体形式。首先设定相关系数的阈值t,然后计算基准图像上所有特征点与匹配图像上所有特征点的相关系数。图像序列中前一副图像为后一副图像的基准图像。若基准图像上的特征点pi与匹配图像上的特征点p'i之间的相关系数大于特征点p'i与匹配图像上其余特征点之间的相关系数,且该相关系数还要是匹配图像上的特征点p'i与基准图像上所有特征点之间的相关系数中的最大值,同时大于相关系数的阈值t,即满足匹配的约束条件,则特征点pi与p'i被确定为匹配点,为下一步匹配工作做准备。
其中m,n表示匹配窗口的大小,w
i,j为基准图像上特征点p
i在(i,j)点的灰度,w'
i+r,j+c为匹配图像上特征点p'
i在点(i+r,j+c)的灰度,
表示基准区域和匹配区域的灰度平均值,ρ(r,c)表示特征点p
i与p'
i之间的相关系数。
SIFT特征提取的基本流程为:
(1)SIFT特征点检测
在不同尺度kσ(k=1,尺度以k倍递增)的高斯滤波函数G(x,y,kσ)下对图像I(x,y)进行平滑得到第一组s+3层的高斯图像L(x,y,kσ)。将图像I(x,y)进行二次采样,得到新的二次采样图像,用不同尺度kσ(k=2,尺度以k倍递增)的高斯滤波函数G(x,y,kσ)对其进行平滑得到第二组s+3层的高斯图像L(x,y,kσ)。依次类推,最终得到由多组高斯图像L(x,y,kσ)构成的高斯尺度金字塔,如图12所示。将每组内相邻的两层图像L(x,y,k2σ)和L(x,y,kσ)相减得到s+2层高斯差分影像D(x,y,kσ),得到由多组高斯差分影像D(x,y,kσ)构成的高斯差分金字塔Dog,如图13所示。在高斯差分金字塔中,将每组中间s层中的每个像素点与它同尺度的8个相邻像素点和上下相邻尺度对应的9*2个像素点(总共26个点)进行灰度值比较,若该点为极值点,则可作为SIFT候选特征点,如图14所示。再将低对比度和边缘候选极值点去掉,得到稳定特征点,并通过曲线拟合对特征点进行精确定位,将关键点邻域内各点的梯度方向直方图中最大值对应的方向作为该点的方向,如图15所示。
(2)特征点描述
为保证特征的旋转不变性,第一步先将坐标轴旋转至关键点的方向。然后在特征点所在的尺度空间内取以其为中心的16*16像素大小的窗口,将其分为4*4个子区域,接着计算每个子区域每个方向上的的梯度方向直方图。再把所有子区域的梯度方向直方图按位置排序,形成一个128维(4*4*8)的特征向量。最后再将特征向量长度归一化去除光照变化影响。
图16左边的图的中央为当前关键点的位置,关键点周围的小格子代表其邻域所在的尺度空间内的一个像素点,右图中的箭头指向该像素点的梯度方向,箭头的长短表示梯度的值,接着用高斯窗口对其进行加权运算。
高斯加权运算的范围如图16中左图圆圈的范围。然后在每个4×4的小块上计算8个方向的梯度方向直方图和每个梯度方向的累加值,即可形成一个种子点,如图右部分示,图中有4个种子点,每个种子点有8个方向向量的信息。SIFT特征点提取及算法的流程如图17所示。
SIFT特征的匹配的基本流程为:根据最近邻特征点距离与次近邻特征点距离之比d(即NN算法)确定匹配点对。采用该策略时d的取值很重要,当d较高时匹配点对的数量很大,但易产生弱匹配点,减弱主要匹配点对在计算中的权值,从而影响匹配效果和计算速度;当d较小时,匹配点对的数量较少,可能会集中在影像的局部区域,影响其它区域的匹配效果。为避免d的取值,消除了人为经验的影响,本发明将双向匹配约束条件引入到SIFT特征匹配过程中进行初匹配,在此之前需要确定特征点的最近邻点,所以如何快速有效地寻找到特征点的最近邻点是SIFT特征匹配的关键问题,虽然穷举法能找到最精确的最近邻点,但是如果特征点数目很大时,计算量会以指数级别增长,实用性不强。
由于SIFT特征向量的维数高达128维,故需一种高效的数据结构以达到快速搜索的目的,K-D树(K-dimensiontree,K-D树中K表示为K个维度)搜索算法是二叉搜索树的扩展,能避免穷举法的不足而快速找到最近邻点。对于K-D树的每个节点而言,每个节点都代表一个维度的分割,其左子树之节点都小于等于其代表的值,而右子树皆大于其值。若父节点为第i个维度的分割,则子节点代表第i+1个维度的分割。当一个节点中的点数少于给定的最大点数时,分割结束,K-D树的时间复杂度为O(nlogn),其中n表示为点的个数。本发明以二维树为例介绍K-D树数据组织结构的建立步骤:
(1)对n个k维向量(x11,x12,...,x1k),(x21,x22,...,x2k),...,(xn1,xn2,...,xnk)按第i个维度的大小排序(i=1,2,...k);
(2)取排序后的中位数v,将点集分为左右两部分,左子树节点第i个维度小于v值,右子树节点第i个维度大于v值;
(3)按上述步骤类推从第i+1维度建立左点集的K-D树;
(4)同上从i+1维度建立右点集的K-D树。
小维度的K-D树搜索十分高效,但是随着其维度的提高,K-D树的搜索效率会降低。所以本发明采用一种适合高维度空间的搜索方法Best-Bin-First,简称BBF方法,对K-D树进行最近邻搜索。BBF搜索算法是在K-D树的基础上采用优先队列将节点和被查询节点间的最短距离按递增排序来搜索节点,在沿着某一方向的分支搜索节点时,优先队列将会加入一个成员,该成员记录了对应节点的相关信息,包括此节点在树中的位置信息和该节点到被查询节点间的距离信息,当搜索到叶子节点后删除队列的队首,再搜索包含最近邻节点的其它分支。
确定搜索最近邻点的方法后利用双向一致性约束实现SIFT特征点的初匹配,其匹配原理是:首先利用BBF-KD树方法在匹配影像(右影像)中寻找并确定基准影像(左影像)上某SIFT特征点pi,的最近邻点p'i,如果再利用BBF-KD树方法在左影像中寻找并确定右影像上特征点p'i的最近邻点对应为pi,,则此时特征点pi与p'i,满足双向一致性约束条件,并可认为它们是一对初匹配点。双向匹配后将获取得到的SIFT匹配点作为下一步精匹配的候选匹配点(简称SIFT初匹配点)。
为了进一步剔除伪缺陷导致的误匹配等情况,故引入RANSAC方法进行优化。
RANSAC基本思想为:在相对定向过程中,引入RANSAC(RandomSampleConsensus:随机抽样一致性)方法,RANSAC算法的基本假设是样本中包含正确数据(inliers,可以被模型描述的数据),也包含异常数据,即数据集中含有噪声。这些异常数据可能是由于错误的测量、错误的假设、错误的计算等产生的。同时RANSAC也假设,给定一组正确的数据,存在可以计算出符合这些数据的模型参数的方法。
RANSAC算法流程为
(1)应用对前文中提到的角点提取或者特征提取对图像进行特征点提取;
(2)按照前文中提出的方法进行特征点初步匹配;
(3)对上述初步匹配的结果进行N次的抽样:
1)随机选择一定量的初步匹配点,解核线方程;
2)计算每组初步匹配点与其对应核线件的距离;
3)统计距离小于阈值的匹配点的数量,将这些点定作内点;
(4)利用内点最多的一组匹配结果计算左右篇核线;
(5)利用(4)得到的结果引导校正匹配结果,同时用新的匹配结果重新计算核线,将该步骤多次迭代后,直到获得稳定的结果为止。
依照本发明提出的方法,首先将基准图像和平移后的匹配图像用Harris-SIFT角点和特征点匹配方法提取出初步匹配点,原图为图18,处理后效果如图19所示:
而后通过RANSAC优化后得到如图20所示的初步匹配点集合。将所得的初步匹配点集合与步骤2)检测出的可疑缺陷区域做比较后,得到最终的匹配点,如图21所示。图22为缺陷较多的情况下的匹配效果。
本发明可以利用缺陷定位方法求取最终匹配点的空间位置坐标,即为缺陷的空间位置坐标。优选地,缺陷定位方法采用平移视差法。当然还可以采用立体观测法或黑度计定位法等。
将最终获得的匹配点的坐标代如平移视差法中的公式可得如表2的匹配点的坐标:表2
此一些列坐标即为缺陷的空间位置坐标,由此完成了铸件缺陷的匹配及定位功能。
本发明的步骤3)利用Harris-SIFT方法提取出铸件射线图像中的缺陷点特征,同时结合步骤2)中选择出的可疑区域,减少了其他无关区域的影响。
本发明使用SVM方法对铸件射线图片缺陷的提取进行验证。针对夹渣以及裂纹这两种最常见的铸件缺陷,共有样本130个,每种65个,选择每种的55个作为训练集,另外的10个作为测试集,用训练集对SVM机器学习进行训练得到分类模型,使用分类模型对测试集的样本进行标签判别。判别结果如图23所示,通过结果图发现,利用SVM成功对2种典型的铸件缺陷进行了分类识别,正确率达100%,证明本发明的方法中对铸件射线图像中缺陷提取的正确性以及准确性。
本发明不仅仅局限于上述实施例,在不背离本发明技术方案原则精神的情况下进行些许改动的技术方案,应落入本发明的保护范围。