1.本发明涉及图像数据处理领域,具体涉及基于视觉的船舶发动机配件缺陷检测方法。
背景技术:2.船舶发动机上气缸盖的作用是密封气缸,由于气缸盖与高温燃气接触,所以承受很大的气压和很高的热负荷,因此,气缸盖容易产生裂纹,如果气缸盖出现裂纹,则会影响气缸密封性,导致船舶发动机动力下降。
3.现有技术检测气缸盖的裂纹缺陷时,首先获取气缸盖图像的多个不同尺度的第一下采样图像和多个不同尺度的第二下采样图像,再对最小尺度的第二下采样图像进行上采样得到上采样特征图,将上采样特征图和与上采样特征图尺度相同的第二下采样图像进行融合得到融合特征图,通过融合特征图检测缺陷;但是,对图像进行多次下采样、多次上采样、再图像融合会使图像中的信息丢失过多,从而导致图像中缺陷部分信息丢失,最终检测出的缺陷不准确。
技术实现要素:4.本发明提供基于视觉的船舶发动机配件缺陷检测方法,以解决现有的检测出的缺陷不准确的问题。
5.本发明的基于视觉的船舶发动机配件缺陷检测方法,采用如下技术方案:s1、获取气缸盖的灰度图像,设置分割阈值,根据分割阈值得到前景区域和背景区域;s2、对背景区域进行金字塔下采样得到下采样后的背景区域,根据前景区域中的像素点灰度值及所在位置进行聚类得到多个灰度区域,获取每个灰度区域中像素点的密度,根据每个灰度区域中像素点的密度和对应灰度区域中每个像素点的梯度得到每个灰度区域的下采样权重;s3、根据每个灰度区域的下采样权重得到每个灰度区域的下采样尺寸,根据每个灰度区域的下采样尺寸对每个灰度区域进行金字塔下采样得到每个下采样后的灰度区域,对每个下采样后的灰度区域和下采样后的背景区域进行超像素分割得到多个目标区域;s4、获取每个目标区域边缘上相邻像素点所在直线的斜率,根据每个目标区域边缘上每两个相邻像素点所在直线的斜率得到每个目标区域的平滑程度,根据每个目标区域的平滑程度确定缺陷区域。
6.进一步的,所述分割阈值是按如下方法确定的:获取灰度图像的灰度直方图中的最高波峰;将最高波峰左侧拐点的灰度级作为分割阈值。
7.进一步的,所述得到前景区域和背景区域的方法是:将分割阈值左侧的直方图所对应的像素点作为前景区域像素点,将前景区域像素
点对应到灰度图像中得到前景区域;将分割阈值右侧的直方图所对应的像素点作为背景区域像素点,将背景区域像素点对应到灰度图像中得到背景区域。
8.进一步的,所述获取每个灰度区域中像素点的密度的方法是:获取每个灰度区域中每个像素点与其他所有像素点的距离;根据每个像素点与其他所有像素点的距离得到距离均值,将该距离均值作为对应灰度区域的像素点的密度。
9.进一步的,所述每个灰度区域的下采样权重是按如下方法确定的:将每个灰度区域的像素点密度与对应灰度区域中每个像素点梯度的均值相乘得到每个灰度区域的乘积;将每个灰度区域的乘积累加得到乘积累加和;利用每个灰度区域的乘积与乘积累加和得到每个灰度区域的下采样权重。
10.进一步的,所述每个灰度区域的下采样尺寸是按如下方式确定的:将每个灰度区域的下采样权重作为指数函数的指数得到每个灰度区域的指数函数;对每个灰度区域的指数函数扩大十倍得到每个灰度区域扩大十倍后的指数函数;对每个灰度区域扩大十倍后的指数函数进行平方得到每个灰度区域的下采样尺寸。
11.进一步的,所述得到多个目标区域的方法是:对每个灰度区域的下采样尺寸进行归一化得到每个灰度区域归一化后的下采样尺寸;根据每个灰度区域归一化后的下采样尺寸对下采样后的每个灰度区域和下采样后的背景区域进行超像素分割得到多个目标区域。
12.进一步的,所述得到每个目标区域的平滑程度的方法是:获取每个目标区域边缘上每两个相邻像素点所在直线的斜率;根据每个目标区域边缘上每两个相邻像素点所在直线的斜率得到每个目标区域边缘上所有每两个相邻像素点所在直线斜率的均值;设置斜率阈值,根据每个目标区域边缘上所有每两个相邻像素点所在直线斜率的均值得到每个目标区域的平滑程度。
13.进一步的,所述缺陷区域是按如下方法确定的:设置斜率阈值,当目标区域的平滑程度大于斜率阈值,则该目标区域为缺陷区域。
14.本发明的有益效果是:本发明获取了气缸盖灰度图像的前景区域和背景区域,因为背景区域灰度值单一,含有缺陷的概率小,因此对背景区域直接进行下采样,减小了计算量,提高了检测效率;将前景区域分为了多个灰度区域,每个灰度区域可能是纹理,可能是缺陷裂纹,因此需要计算每个区域的权重,按照权重对每个区域进行自适应金字塔下采样提高了缺陷检测的准确性;对下采样后的灰度区域和背景区域进行超像素分割得到了多个目标区域,其中,超像素分割是将具有相似特征的像素点构成多个目标区域,超像素分割后目标区域中细节特征更为明显,能够更加准确的分辨出缺陷和纹理;
计算每个目标区域的平滑度,根据平滑度定位缺陷所在的目标区域;本发明通过对气缸盖灰度图像的前景区域和背景区域的区分,减小了背景区域缺陷检测的计算量;通过对前景区域分区域下采样提高了气缸盖缺陷检测的准确性,且利用下采样检测缺陷,提高了缺陷检测的效率。
附图说明
15.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
16.图1为本发明的基于视觉的船舶发动机配件缺陷检测方法的实施例的结构示意图;图2为本发明的基于视觉的船舶发动机配件缺陷检测方法的实施例中气缸盖灰度图像的灰度直方图。
具体实施方式
17.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
18.本发明的基于视觉的船舶发动机配件缺陷检测方法的实施例,如图1所示,包括:s1、获取气缸盖的灰度图像,设置分割阈值,根据分割阈值得到前景区域和背景区域。
19.s2、对背景区域进行金字塔下采样得到下采样后的背景区域,根据前景区域中的像素点灰度值及所在位置进行聚类得到多个灰度区域,获取每个灰度区域中像素点的密度,根据每个灰度区域中像素点的密度和对应灰度区域中每个像素点的梯度得到每个灰度区域的下采样权重。
20.获取气缸盖的灰度图像的具体步骤为:本发明需要通过图像处理的方法对气缸盖进行缺陷检测,因此需要获取气缸盖表面的图像,但是在采集气缸盖表面图像的过程中,因为金属的表面会发生光的反射,所以在采集气缸盖表面图像时,需要光照均匀。光线的照射方向为俯视照射,且需要多个光源,从而形成均匀的光线,照射在气缸盖的表面,使用相机采集气缸盖图像,将采集到的气缸盖图像进行语义分割处理,获得只含有目标检测物体气缸盖的区域。并对气缸盖图像进行灰度化处理,并对气缸盖图像进行均值滤波去除噪,得到气缸盖的灰度图像。
21.因为微小裂纹缺陷在灰度图像中占很少一部分,因此根据整幅灰度图像寻找裂纹会加大运算量,降低缺陷检测效率,因此本发明首先使用分割阈值将灰度图像分割为前景区域和背景区域,(其中,前景区域包含纹理区域和缺陷区域,纹理区域包含气缸盖表面突起或凹陷区域,背景区域为平坦区域)。再采用金字塔采样的方法对前景区域和背景区域进行下采样,根据像素点的分布密度与像素点的梯度大小,自适应金字塔的采样尺寸,然后根
据梯度与像素密度的变化决定金字塔的采样层数,最终得到含有关键信息较多的,无用信息较少的采样后的图像,然后根据金字塔采样的采样尺寸选择超像素块的半径,对前景区域和背景区域进行超像素分割。最后根据裂纹缺陷与本身的纹理的特征不同将其分开,从而检测出气缸盖缺陷。
22.金属气缸盖的表面质地是光滑的,缺陷只占整个灰度图像的一小部分,背景区域所占的图像的面积远远大于气缸盖表面前景区域,所以背景区域的像素点个数远远多于前景区域,且背景区域的灰度值变化幅度小,其灰度值大于前景区域,因此在灰度直方图中背景区域的波峰为最右侧所含像素点个数最多的波峰,因此,本发明根据灰度图像的灰度直方图像素点的频数分布特征,获取分割阈值,分割前景区域和背景区域。
23.设置分割阈值,根据分割阈值得到前景区域和背景区域的具体步骤为:获取灰度图像的灰度直方图,因为气缸盖灰度图像的表面的灰度值不同,处于前景区域的像素点的灰度值小,处于平坦区域即背景区域的像素点的灰度值大。因此,灰度直方图上至少会出现两个波峰,如图2所示,并且一个波峰大,一个波峰小;大的波峰对应背景区域,而小的波峰为前景区域,即前景区域;获取灰度图像的灰度直方图中的最高波峰,将最高波峰左侧拐点的灰度级作为分割阈值,分割阈值将灰度直方图分为两部分,处于分割阈值的左侧的灰度直方图对应为灰度图像中的前景区域,处于分割阈值的右侧的灰度直方图对应为灰度图像中的背景区域,根据分割阈值的左侧的灰度直方图对应的所有灰度级得到灰度图像的前景区域,根据分割阈值的右侧的灰度直方图对应的所有灰度级得到灰度图像的背景区域。
24.至此,得到了背景区域和前景区域。
25.对背景区域图像进行金字塔下采样得到下采样后的背景区域的具体步骤为:由于背景区域所含缺陷的概率极小,因此采用原始的下采样规则,即直接将背景区域图像的偶数行和偶数列删除,删除后的图像的大小就变成了一幅大小的图像,得到了下采样后的背景区域,其中,表示背景区域图像大小。
26.对前景区域进行金字塔下采样的具体步骤为:首先,对前景区域中的像素点根据灰度值及所在位置进行聚类得到多个灰度区域,具体的是:获取前景区域中的所有像素点的灰度值,首先对前景区域中的所有像素点进行聚类,去除离散像素点,根据前景区域中的所有像素点的灰度值,根据灰度值将相同灰度值像素点按照就近原则进行聚类,即将位置相近灰度值相同的像素点划分为一个区域,得到多个灰度区域。其中,多个灰度区域包含缺陷区域和纹理区域。
27.其次,获取每个灰度区域中像素点的密度,具体的是:获取每个灰度区域中每个像素点与其他所有像素点的距离,根据每个像素点与其他所有像素点的距离得到距离均值,将该距离均值作为对应灰度区域的像素点的密度。
28.最终,根据每个灰度区域中像素点的密度和对应灰度区域中每个像素点的梯度得到每个灰度区域的下采样权重,具体表达式为:
式中:表示第个灰度区域的下采样权重,表示第个灰度区域的像素点密度,表示第个灰度区域中第个像素点的梯度,表示第个灰度区域中像素点的个数,表示第个灰度区域中每个像素点梯度的均值。
29.其中,为了表示逻辑的完整性,该公式中的不选择约分,因为每个灰度区域的密度越大,则该灰度区域像素点越密集,其中,包含的信息越多,越有利用进行缺陷检测,因此,密度对每个灰度区域下采样权重的确定至关重要,而每个灰度区域中像素点的梯度越大,则说明该区域中像素点灰度值越离散,则该灰度区域更有可能为缺陷区域,因此梯度对每个灰度区域下采样权重的确定也至关重要。故利用密度和梯度共同确定每个灰度区域的下采样权重。
30.因此,利用每个灰度区域的密度和每个灰度区域中每个像素点的梯度来确定每个灰度区域下采样权重,每个灰度区域密度越大,像素点梯度越大,采样权重越大。反之,每个灰度区域密度越小,像素点梯度越小,采样权重越小,利用公式所得结果与所需权重结果一致。
31.至此,得到了每个灰度区域的下采样权重。
32.s3、根据每个灰度区域的下采样权重得到每个灰度区域的下采样尺寸,根据每个灰度区域的下采样尺寸对每个灰度区域进行金字塔下采样得到下采样后的灰度区域,根据每个灰度区域的下采样尺寸对每个灰度区域和下采样后的背景区域进行超像素分割得到多个目标区域。
33.s4、获取每个目标区域边缘上相邻像素点所在直线的斜率,根据每个目标区域边缘上每两个相邻像素点所在直线的斜率得到每个目标区域的平滑程度,根据每个目标区域的平滑程度确定缺陷区域。
34.根据每个灰度区域的下采样权重得到每个灰度区域的下采样尺寸的具体步骤为:金字塔下采样规则为间隔采样,所以本发明中每个灰度区域的权重不同,则每个灰度区域的采用尺寸不同,权重越大,采样间隔越宽,则该灰度区域图像的信息损失越小,对每个灰度区域的下采样权重进行归一化得到了每个灰度区域归一化后的下采样权重,根据每个灰度区域的下采样权重得到每个灰度区域的下采样尺寸的具体表达式为:式中:表示第个灰度区域归一化后的下采样权重,表示第个灰度区域下采样后的尺寸。
35.其中,灰度区域的下采样权重越大,越有可能为缺陷区域,为了减少图像信息丢失,则采样尺寸需要越大,指数函数在自变量大于零时,值域的范围大于1,因此根据不同的
采样权重确定采样尺寸,而指数函数能反映权重越大,采样尺寸越大。
36.至此,得到了每个灰度区域的下采样尺寸。
37.根据每个灰度区域的下采样尺寸对每个灰度区域进行金字塔下采样得到下采样后的灰度区域的具体步骤为:根据每个灰度区域的下采样尺寸,对每个灰度区域进行金字塔下采样,但是金字塔下采样层数过多,会导致灰度区域的信息丢失过多,从而导致缺陷检测结果不准确,因此,当金字塔下采样达到停止条件时,需要停止金字塔下采样,停止条件的具体表达式如下:式中:表示第个灰度区域的金字塔下采样停止条件,表示第个灰度区域金字塔下采样第层像素点的密度,表示第个灰度区域金字塔下采样第层像素点的密度,表示第个灰度区域金字塔下采样后间隔尺寸的像素点梯度差值,表示第个灰度区域中第的像素点的梯度,表示第个灰度区域中第的像素点间隔尺寸的像素点梯度。
38.其中,该公式利用不同采样层数中,采样前后每个灰度区域中像素点密度及每个像素点梯度的变化,获取对应灰度区域金字塔下采样截至条件,若每个灰度区域像素点密度和梯度与前一层相差大,则在采样过程中丢失了过多信息,需要停止下采样。
39.利用的比值结果可以得到金字塔下采样前一层与后一层像素点密度变化情况,利用表示每个区域中像素点梯度变化情况,根据两比值相乘的结果表征金字塔下采样前一层与后一层灰度区域中信息变化情况,若比值与1的差距越大,则金字塔下采样当前层灰度区域中信息丢失越多。
40.设置采样停止阈值为,当灰度区域的金字塔下采样停止条件值大于采样停止阈值时,则停止采样,最终下采样后的灰度区域应选择其前一层的下采样图像。当灰度区域的金字塔下采样停止条件值小于采样停止阈值时,继续金字塔下采样,直到满足停止采样条件,停止采样,并获取灰度区域下采样后的图像。
41.至此,得到了金字塔下采样后的灰度区域。
42.金字塔下采样后的每个灰度区域图像基本只包含原始图像中的纹理信息和缺陷信息,因此本发明根据纹理与缺陷的特征不同使用超像素分割。超像素由一系列位置相邻且颜色、亮度、纹理等特征相似的像素点组成的小区域。每个小区域大多保留了图像分割的有效信息,且一般不会破坏图像中物体的边界信息,用少量的超像素代替大量像素表达图像特征,降低了图像处理的复杂度。
43.根据每个灰度区域的下采样尺寸对每个灰度区域和下采样后的背景区域进行超
像素分割得到多个目标区域的具体步骤为:对每个灰度区域的下采样尺寸进行归一化得到每个灰度区域归一化后的尺寸,根据归一化后的尺寸对下采样后的每个灰度区域和背景区域进行超像素分割得到多个目标区域,其中,超像素分割尺寸的大小为:式中:表示第个灰度区域超像素分割尺寸,表示第个灰度区域归一化后的下采样尺寸。
44.其中,灰度区域下采样尺寸越大,则该灰度区域越有可能为缺陷区域,因此需要保留该灰度区域的细节信息,因此,该灰度区域超像素分割的尺寸需要越小,因为超像素分割尺寸越小,图像细节越清晰,因此,将归一化后的灰度区域的尺寸进一步放大,该指数函数与归一化后的灰度区域的尺寸成正比关系,而超像素分割尺寸与归一化后的灰度区域的尺寸成反比关系,因此,可以表征超像素分割尺寸与归一化后的灰度区域的尺寸成反比关系。
45.至此,得到了每个灰度区域的超像素分割尺寸。由于背景区域包含缺陷的概率极低,因此,对其使用每个灰度区域的超像素分割尺寸中最大尺寸进行超像素分割得到了多个目标区域。
46.利用每个灰度区域的超像素分割尺寸对金字塔下采样后的对应灰度区域进行超像素分割也得到多个目标区域,利用边缘检测得到每个目标区域的边缘,得到每个目标区域的边缘,由于气缸盖表面纹理线条平滑,而裂纹缺陷边缘毛糙,因此计算每个目标区域边缘的平滑程度,根据边缘的平滑程度判断该目标区域是否为缺陷区域。
47.其中,计算每个目标区域边缘的平滑程度的具体步骤为:计算每个目标区域边缘上每两个相邻像素点所在直线的斜率,将每个目标区域边缘上每两个相邻像素点所在直线的斜率求和,再对其结果求均值,得到每个目标区域边缘上所有每两个相邻像素点所在直线斜率的均值。设置斜率阈值1.05,根据每个目标区域边缘上所有每两个相邻像素点所在直线斜率的均值得到每个目标区域的平滑程度。
48.具体的,当目标区域边缘上所有每两个相邻像素点所在直线斜率的均值大于时,该目标区域边缘不平滑,该目标区域为缺陷区域,该目标区域所在位置为缺陷所在位置;当目标区域边缘上所有每两个相邻像素点所在直线斜率的均值小于时,该目标区域边缘平滑,为纹理区域。
49.本发明的有益效果是:本发明获取了气缸盖灰度图像的前景区域和背景区域,因为背景区域灰度值单一,含有缺陷的概率小,因此对背景区域直接进行下采样,减小了计算量,提高了检测效率;将前景区域分为了多个灰度区域,每个灰度区域可能是纹理,可能是缺陷裂纹,因此需要计算每个区域的权重,按照权重对每个区域进行自适应金字塔下采样提高了缺陷检测的准确性;对下采样后的灰度区域和背景区域进行超像素分割得到了多个目标区域,其中,超像素分割是将具有相似特征的像素点构成多个目标区域,超像素分割后目标区域中细节特征更为明显,能够更加准确的分辨出缺陷和纹理;计算每个目标区域的平滑度,根据平滑度定位缺陷所在的目标区域;本发明通过
对气缸盖灰度图像的前景区域和背景区域的区分,减小了背景区域缺陷检测的计算量;通过对前景区域分区域下采样提高了气缸盖缺陷检测的准确性,且利用下采样检测缺陷,提高了缺陷检测的效率。
50.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。