本发明涉及缺陷检测领域,具体地说,涉及一种金属加工区域提取方法。
背景技术:
金属加工表面缺陷检测在金属制造的重要工序。金属表面常见缺陷包括划伤、压伤、碰伤。在精密机械装备中,上述缺陷可能导致工况恶化等潜在问题,影响设备传动精度、产生噪音、甚至导致设备损坏,带来巨大损失。受工装铁屑残留、工件装夹不当、物理碰撞等影响,金属加工表面缺陷问题经常发生,且容易出现批量性问题。当前,制造企业对金属加工表面缺陷的检测主要采用人工抽检方式,存在依赖人工经验、误检漏检、耗时长等问题,难以及时有效的开展检测。
针对上述问题,申请号为cn2017112469470的中国专利公开了《零部件表面缺陷的识别方法和装置》,其中,识别方法包括:获取多个样品图像,其中,多个样品图像包括:多个无缺陷零部件的样品图像和多个有缺陷零部件的样品图像;根据多个样品图像,建立用于识别表面缺陷的卷积神经网络;获取待检测的零部件图像;根据待检测的零部件图像和用于识别表面缺陷的卷积神经网络,确定待检测的零部件是否存在表面缺陷。由于该方案通过先利用多个样品图像建立用于识别表面缺陷的卷积神经网络,再利用上述卷积神经网络识别零部件表面缺陷,从而解决了现有方法中存在的无法准确地识别零部件表面缺陷的技术问题,达到可以在光照较差的环境中快速、准确地识别零部件表面缺陷的技术效果。申请号为us15130851的美国专利公开了《用于检测电子设备中的裂缝的方法和系统》,该方法包括接收移动设备的正面的图像并且自动识别图像中的边缘。对于所识别的边缘之中的给定边缘,该方法包括确定所识别的边缘之中的另一边缘是否存在于给定边缘的预定距离内。接下来,识别对应于另一边缘在预定距离内的边缘的直线段,然后至少部分地基于所识别的直线段,将裂纹评估评估分配给移动设备。
在没有其他干扰因素的情况下,上述方法可以实现缺陷的识别。但是,在完成金属表面的加工后,在加工表面及其临近区域通常会残留毛刺、油污以及其他在识别过程中产生与部分加工表面缺陷相似特征信息的干扰因素。若直接将上述方法应用于金属加工表面缺陷检测中,这些毛刺、油污以及非加工区域存在的与部分缺陷相似的特征信息会对缺陷检测的结果造成不利影响。
因此,如何避免缺陷检测过程中毛刺、油污以及非加工区域存在的与部分缺陷相似的特征信息所带来的不利影响,成为了本领域技术人员急需解决的问题。
技术实现要素:
针对上述现有技术的不足,本发明实际需要解决的问题是如何避免缺陷检测过程中毛刺、油污以及非加工区域存在的与部分缺陷相似的特征信息所带来的不利影响。
为了解决现有技术中的问题,本发明采用了如下的技术方案:
一种金属加工区域提取方法,包括:
s1、基于金属表面图像中金属表面的镜面反射强度差异提取显著性图;
s2、将显著性图二值化并去噪,得到加工区域掩模图像;
s3、将金属表面图像与掩模图像进行与运算提取出加工区域图。
优选地,步骤s1包括:
s101、对金属表面图像进行高斯滤波得到各像素点像素值;
s102、将高斯滤波后的金属表面图像转入lab颜色空间,计算各像素点在lab颜色空间中l、a及b三个通道的像素平均值;
s103、计算各像素点的像素值及像素平均值的欧氏距离作为对应像素点在显著性图中的像素值,得到显著性图。
优选地,步骤s2包括:
s201、将显著性图中像素值低于预设阈值k的像素点的像素值置为第一像素值,大于或等于预设阈值k的像素点的像素值置为第二像素值,得到二值化图;
s202、将二值化图进行中值滤波和/或形态学运算得到加工区域掩模图像。
优选地,预设阈值k的计算方法包括:
s2011、基于下式计算显著性图的相对直方图pi:
wd=n1 n2 n3 … nl
pi=ni/wd
式中,l为预设灰度级数,ni为第i个灰度级数所包含的像素点个数,wd为金属表面图像的像素点总数;
s2012、基于下式计算后景累计概率pc1(k)与前景累计概率pc2(k):
式中,c1和c2分别表示金属表面加工区域与背景区域,背景区域的灰度级数范围为[1,k],金属表面加工区域灰度级数范围为[k 1,l];
s2013、基于下式计算后景与前景的灰度均值mc1(k)与mc2(k)
s2014、基于下式计算金属表面图像全局均值mg:
s2015、基于下式计算类间方差
s2016、基于下式计算预设阈值k:
优选地,中值滤波公式如下:
式中,sxy表示的是金属表面图像的像素点的坐标范围,sj(x,y)表示的是在中心点为x,y的j*j大小的滤波核内的像素值,f(x,y)为对滤波核内像素点进行中值排序后输出的像素点值。
优选地,形态学运算包括对二值化图或中值滤波后的二值化图进行先膨胀后腐蚀的形态学闭运算,形态学闭运算的迭代预设次数;
膨胀运算公式:
腐蚀运算公式:
式中,a为金属表面图像;b为结构元,x,y为金属表面图像的像素点的坐标,(b)xy为结构元的中心所在位置。
优选地,步骤s3包括:
将金属表面图像中与加工区域掩模图像中像素值为第一像素值的像素点对应的像素点的像素值置0,得到加工区域图。
综上所述,本发明公开了一种金属加工区域提取方法,包括:s1、基于金属表面图像中金属表面的镜面反射强度差异提取显著性图;s2、将显著性图二值化并去噪,得到加工区域掩模图像;s3、将金属表面图像与掩模图像进行与运算提取出加工区域图。本发明可将金属表面图像中的加工区域图像提取出来,从而避免了后续的缺陷检测中,检测结果受到毛刺、油污以及非加工区域存在的与部分缺陷相似的特征信息的不利影响,提高了检测精度。
附图说明
为了使发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1为一种金属加工区域提取方法的一种具体实施方式的流程图;
图2为一具体的显著性图的灰度直方统计图;
图3为中值滤波前后的对比示意图;
图4为形态学运算前后的对比示意图;
图5(a)和(b)分别为毛刺进行提取加工区域前后的局部放大图;
图6(a)和(b)分别为油污进行提取加工区域前后的局部放大图;
图7(a)和(b)分别为非加工区域进行加工区域提取前后的局放大图。
具体实施方式
下面结合附图对本发明作进一步的详细说明。
如图1所示,为本发明公开的一种金属加工区域提取方法的一种具体实施例,包括:
s1、基于金属表面图像中金属表面的镜面反射强度差异提取显著性图;
利用金属加工区域与非加工区域的镜面反射强度差异带来的区域亮度不同的特点,可使用ft(frequency-tuned)方法提取金属表面图像显著性图。
s2、将显著性图二值化并去噪,得到加工区域掩模图像;
s3、将金属表面图像与掩模图像进行与运算提取出加工区域图。
金属加工表面结构复杂,包括加工区域、非加工区域以及退油槽等,针对非加工区域、毛刺、油污等干扰因素的存在导致的特征提取难度、缺陷的识别难度大的问题,本发明可将金属表面图像中的加工区域图像提取出来,从而消除金属表面缺陷检测过程中的表面毛刺、非加工表面、油污的干扰。
具体实施时,步骤s1包括:
s101、对金属表面图像进行高斯滤波得到各像素点像素值;
s102、将高斯滤波后的金属表面图像转入lab颜色空间,计算各像素点在lab颜色空间中l、a及b三个通道的像素平均值;
s103、计算各像素点的像素值及像素平均值的欧氏距离作为对应像素点在显著性图中的像素值,得到显著性图。
由于金属表面加工区域与非加工区域镜面反射强度不同,导致加工区域与非加工区域的亮度差异较大,而lab颜色空间中的l通道对亮度十分敏感,因此,本发明采用频域调谐显著算法(ft)生成金属加工表面图像显著图,对图像进行高斯滤波后将其转入lab颜色空间,通过公式
具体实施时,步骤s2包括:
s201、将显著性图中像素值低于预设阈值k的像素点的像素值置为第一像素值,大于或等于预设阈值k的像素点的像素值置为第二像素值,得到二值化图;
s202、将二值化图进行中值滤波和/或形态学运算得到加工区域掩模图像。
本实施例中选取第一像素值为0,第二像素值为255。
具体实施时,预设阈值k的计算方法包括:
s2011、基于下式计算显著性图的相对直方图pi(pi为灰度级数i出现的概率):
wd=n1 n2 n3 … nl
pi=ni/wd
式中,l为预设灰度级数,ni为第i个灰度级数所包含的像素点个数,wd为金属表面图像的像素点总数;
s2012、基于下式计算后景累计概率pc1(k)与前景累计概率pc2(k):
式中,c1和c2分别表示金属表面加工区域与背景区域,背景区域的灰度级数范围为[1,k],金属表面加工区域灰度级数范围为[k 1,l];
s2013、基于下式计算后景与前景的灰度均值mc1(k)与mc2(k)
s2014、基于下式计算金属表面图像全局均值mg:
s2015、基于下式计算类间方差
s2016、基于下式计算预设阈值k:
如图2所示,显著性图的两个峰值代表了背景和目标(金属表面加工区域)两个类别的像素点分布,背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小。因此,使类间方差最大的分割意味着错分概率最小。本实施例中,第一像素值为0,第二像素值为255时,选取预设灰度级数为255。
具体实施时,中值滤波公式如下:
式中,sxy表示的是金属表面图像的像素点的坐标范围,sj(x,y)表示的是在中心点为x,y的j*j大小的滤波核内的像素值,f(x,y)为对滤波核内像素点进行中值排序后输出的像素点值。
在对金属表面显著图二值化时,由于非加工区域不平整,少部分区域存在亮度突变。提取显著图过程中,这部分区域被误提取为显著性区域,如图3所示,使用二值化会进一步将该区域的噪声放大。针对该类噪声,可运用中值滤波法进行处理。
本实施例中选取滤波核尺寸为5*5。
如图4所示,具体实施时,形态学运算包括对二值化图或中值滤波后的二值化图进行先膨胀后腐蚀的形态学闭运算,形态学闭运算的迭代预设次数;
膨胀运算公式:
腐蚀运算公式:
式中,a为金属表面图像;b为结构元,x,y为金属表面图像的像素点的坐标,(b)xy为结构元的中心所在位置。
在对金属表面显著图二值化时,受油污、毛刺、及部分缺陷的影响,导致二值化图像内部产生规则不一的小孔。针对该类问题,可运用形态学方法进行处理。运用先膨胀后腐蚀的形态学闭运算对二值化图像内部的噪声点进行去噪处理,若只进行一次腐蚀膨胀运算,可能会存在噪声点的遗留,因此可采用多次迭代的方式彻底去除噪声点,本实施例中选取3*3的结构元,膨胀与腐蚀迭代次数可为3次。
采用的3*3的结构元时
具体实施时,步骤s3包括:
将金属表面图像中与加工区域掩模图像中像素值为第一像素值的像素点对应的像素点的像素值置0,得到加工区域图。
如图5至图7所示,加工区域图中,各种干扰因素被极大的弱化,可有效提高后续检测的精度。
采用相同的目标检测方法,分别输入金属表面图像与采用本发明的方法提取出的加工区域图,由于本发明的方法有效的消除了毛刺、非加工区域、油污、以及部分边缘反光等干扰因素的影响,突出了缺陷特征,因此,降低了误检率、漏检率。
1.一种金属加工区域提取方法,其特征在于,包括:
s1、基于金属表面图像中金属表面的镜面反射强度差异提取显著性图;
s2、将显著性图二值化并去噪,得到加工区域掩模图像;
s3、将金属表面图像与掩模图像进行与运算提取出加工区域图。
2.根据权利要求1所述的金属加工区域提取方法,其特征在于,步骤s1包括:
s101、对金属表面图像进行高斯滤波得到各像素点像素值;
s102、将高斯滤波后的金属表面图像转入lab颜色空间,计算各像素点在lab颜色空间中l、a及b三个通道的像素平均值;
s103、计算各像素点的像素值及像素平均值的欧氏距离作为对应像素点在显著性图中的像素值,得到显著性图。
3.根据权利要求1或2所述的金属加工区域提取方法,其特征在于,步骤s2包括:
s201、将显著性图中像素值低于预设阈值k的像素点的像素值置为第一像素值,大于或等于预设阈值k的像素点的像素值置为第二像素值,得到二值化图;
s202、将二值化图进行中值滤波和/或形态学运算得到加工区域掩模图像。
4.根据权利要求3所述的金属加工区域提取方法,其特征在于,预设阈值k的计算方法包括:
s2011、基于下式计算显著性图的相对直方图pi:
wd=n1 n2 n3 … nl
pi=ni/wd
式中,l为预设灰度级数,ni为第i个灰度级数所包含的像素点个数,wd为金属表面图像的像素点总数;
s2012、基于下式计算后景累计概率pc1(k)与前景累计概率pc2(k):
式中,c1和c2分别表示金属表面加工区域与背景区域,背景区域的灰度级数范围为[1,k],金属表面加工区域灰度级数范围为[k 1,l];
s2013、基于下式计算后景与前景的灰度均值mc1(k)与mc2(k)
s2014、基于下式计算金属表面图像全局均值mg:
s2015、基于下式计算类间方差
s2016、基于下式计算预设阈值k:
5.根据权利要求3所述的金属加工区域提取方法,其特征在于,中值滤波公式如下:
式中,sxy表示的是金属表面图像的像素点的坐标范围,sj(x,y)表示的是在中心点为x,y的j*j大小的滤波核内的像素值,f(x,y)为对滤波核内像素点进行中值排序后输出的像素点值。
6.根据权利要求3所述的金属加工区域提取方法,其特征在于,形态学运算包括对二值化图或中值滤波后的二值化图进行先膨胀后腐蚀的形态学闭运算,形态学闭运算的迭代预设次数;
膨胀运算公式:
腐蚀运算公式:
式中,a为金属表面图像;b为结构元,x,y为金属表面图像的像素点的坐标,(b)xy为结构元的中心所在位置。
7.根据权利要求3所述的金属加工区域提取方法,其特征在于,步骤s3包括:
将金属表面图像中与加工区域掩模图像中像素值为第一像素值的像素点对应的像素点的像素值置0,得到加工区域图。
技术总结