基于改进的背景差分法的焊缝缺陷实时检测方法与流程

文档序号:12451591阅读:228来源:国知局
基于改进的背景差分法的焊缝缺陷实时检测方法与流程

本发明公开了一种基于改进的背景差分法的焊缝缺陷实时检测方法。



背景技术:

目前,在金属制罐行业内,如食品罐、饮料罐、油漆桶等生产企业,主要通过成套制罐流水线进行产品生产。除了金属制罐的焊缝检测环节,其余的生产工艺环节均已达到较高的自动化程度。在焊接过程中由于多种因素的影响,焊缝中很可能会出现裂纹、气孔、夹渣、未融合等多种缺陷,这严重影响焊接工件的使用性能及安全性。而受技术所限,现有的绝大部分焊缝检测环节仍采用传统的人工目测方法,这不仅大大影响了生产效率,还很可能造成焊缝缺陷的误检和漏检,影响最终的产品质量。因此,如何实现自动化焊缝缺陷检测,并能够保证焊缝缺陷检测的准确率,具有直接而重要的现实意义。

现有的半自动与自动化检测技术主要有X射线照相探伤检测、模糊神经网络检测法、红外检测法等。这些检测方法都有各自的特点,但也存在不足之处。例如X射线照相探伤虽然能保证无损检测,但无法做到全自动化,并且对薄壁金属罐的检测效果并不明显。模糊神经网络检测法虽然能够较准确的识别出缺陷类型,但需要大量的缺陷样本作为训练集。红外检测法检测的缺陷类型较为单一,无法满足复杂情况下的缺陷检测。



技术实现要素:

本发明的目的在于克服上述不足之处,从而提供一种基于改进的背景差分法的焊缝缺陷实时检测方法,解决了金属制罐焊缝缺陷的自动化检测问题,具有良好的运行速度和检测准确率,能够满足在线生产的实时检测需求;采样设备通过相机高速拍摄代替人工目测,大大减轻了产线工人的工作压力,并且也在一定程度上解决了原有人工检测技术带来的误检与漏检问题。

按照本发明提供的技术方案,基于改进的背景差分法的焊缝缺陷实时检测方法,其特征在于该方法包含如下步骤:

(1)提取焊缝图像的核心区域,核心区域不包括焊缝周围的印刷图像,同时尽可能多的保留焊缝的特征部分;

(2)采用改进的背景差分法构建焊缝核心区域图像的背景模型,具体步骤如下:

(2.1)混合高斯模型的定义:对背景模型中的每一个点都定义一个混合高斯模型。定义G11)和G22)为混合高斯模型中的两个高斯模型,分别为θ1=(μ1,σ1,φ1)和θ2=(μ2,σ2,φ2),分别对应图像的焊缝区域和留空区域。其中,参数μ1和μ2为聚类中心,参数σ1和σ2为聚类距离,参数φ1和φ2为权值。

(2.2)混合高斯模型参数的初始化:

(2.2.1)在当前拍摄的连续多帧焊缝核心区域图像序列中随机选取一帧图像;

(2.2.2)采用Otsu算法来将图像的焊缝区域和留空区域分割开来,分别用来初始化混合高斯模型中的两个高斯模型。假设Otsu算法获取的阈值为T,I1由所有灰度值小于等于T的像素组成,对应焊缝区域,I2由所有灰度值大于T的像素组成,对应留空区域;

(2.2.3)分别计算I1和I2像素灰度均值μ10和μ20

(2.2.4)分别计算I1和I2像素灰度值标准差σ10和σ20

(2.2.5)令φ10=1,φ20=1,得到两个高斯模型的初始化参数为θ10=(μ10,σ10,φ10)和θ20=(μ20,σ20,φ20)。

(2.3)用训练样本对模型进行训练,用线性插值法更新像素点均值、标准差和权值,具体步骤如下:

将训练样本中的每个点带入背景模型中所对应的点的两个高斯模型中:

若N1>N2,则f(x,y)∈G1,若N1<N2,则f(x,y)∈G2。依据如下公式更新对应的θi

φi=φi+1 (4)

对于每个训练样本中的每个点都重复(2.3)中的步骤,对背景像素中的每个点的混合高斯模型参数进行更新,直到模型中所有μi的参数变化率平均值|δ|<10-3

(2.4)比较每个像素点两个高斯模型的权值,取权值较高的高斯模型的均值(即聚类中心)作为背景模型中该点的灰度值。

(3)将每个样本的核心区域依次与背景模型作差分,提取焊缝缺陷区域,根据缺陷区域的总面积判断该焊缝样本是否存在缺陷,具体步骤如下:

(3.1)当前样本的核心区域图像与背景模型进行差分,得到前景部分的二值图像:

式中,Dk为第k帧样本的核心区域图像,Bk为背景模型,T为动态阈值,T=3*σi,Fk为得到的二值图像。

(3.2)对二值图像去噪得到焊缝缺陷区域:使用9×9的结构元素进行开运算来消除较小的噪声区域,之后再删除连通区域面积小于400的较大面积的噪声区域,即可得到焊缝缺陷区域。

(3.3)统计缺陷区域总面积,排除焊缝周围污点或是位移因素的干扰,判断样本是否存在焊缝缺陷:

式中,S为缺陷区域总面积,T1为阈值,在焦距55mm,拍摄距离35cm的条件下,取T1=1×104。T1的取值可以根据产线及产品的不同情况进行对应的调整。

(4)若连续20帧图像与背景模型的作差分后,其缺陷区域的面积均超过核心区域总面积的60%,则认为背景发生了改变,重复步骤(2.2)~(2.4)进行背景模型的重构。

本发明与人工检测技术相比,实现了自动化实时检测,提高了生产效率,具有较高的检测准确率,避免了人工检测中容易出现的漏检现象;与现有的半自动化及自动化检测技术相比,本发明是基于机器视觉技术,能够满足大部分不同类型焊缝的检测要求,也不需要大量的缺陷样本作为依据,对绝大部分视觉特征较为明显的缺陷均有着良好的检测效果。

本发明的优点可以从以下实验中得到验证:

实验1:以下是一组在模拟实验平台上对150张事先拍摄好的焊缝图片进行的模拟检测实验,意图模拟实际检测过程。图片均通过实际生产线环境进行拍摄,并通过以上一系列算法进行缺陷检测和分类。这些样本包含了几种不同类型的缺陷样本、含污点样本以及正常样本。实验通过Mat lab7.10(R2010a)软件进行。

表1模拟检测实验数据

模拟实验的结果表明,本文的检测算法准确率达到96%,误检率为4%,而在实际生产中,由于缺陷样本的比例非常小,检测准确率会进一步提高。因此,可以认为该检测算法的准确率基本能够满足实际生产的需求,可以投入到实际生产应用中。

实验2:通过模拟检测试验后,将整个算法工程部署到一条薄壁金属罐生产线的工控机上,投入实际生产应用。生产线运行一周后,共生产19140个产品,出现78个缺陷产品(人工严格筛选,包含多种不同类型的缺陷),次品率0.4%,含污点产品92个(同样人工严格筛选)。检测系统的检测结果如下:

表2实际生产线检测结果

从检测结果可以看出,有少部分的正常样本和含污点样本被误检为缺陷焊缝,通过观察误检的样本,发现这些样本由于生产线的振动而成像模糊,或是污点所在的位置过于靠近焊缝核心区域,从而导致误检。还有少数的缺陷样本没有被系统检测出来,通过检测次品发现,这些缺陷视觉上表现的不太明显,在拍摄样本中的特征区域较小,从而被误认为正常焊缝。总体而言,99.55%的检测准确率可以满足实际生产的需要。

附图说明

图1为本发明的工艺流程简图。

图2为正常焊缝拍摄样本的参考图像。

图3为图2进行横向灰度值累加后得到的波形图。

图4为提取焊缝核心区域后得到的参考图像。

图5为图4所在的焊缝样本序列构建出的背景模型。

图6为某个缺陷样本的核心区域参考图像。

图7为图6与图5差分后得到的参考图像。

图8为图7进行去噪之后的参考图像。

图9为存在污点的焊缝图像核心区域的参考图像。

图10为图9对应焊缝缺陷区域的参考图像。

图11为焊缝成像宽度略微改变的焊缝图像核心区域的参考图像。

图12为图11对应焊缝缺陷区域的参考图像。

具体实施方式

为了更好的理解本发明的技术方案,下面结合具体附图和实施例子对本发明作进一步说明。

1、提取焊缝图像的核心区域

为了避免焊缝周围的印刷图像的不确定性对后续建模造成干扰,同时为了保证建模样本背景图像的稳定性,需要对焊缝图像的核心区域进行提取,核心区域不包括焊缝周围的印刷图像,同时需尽可能多的保留焊缝的特征部分。

具体步骤如下:

(1)、图2为正常焊缝拍摄的样本举例,对该图像横向累加灰度值,得到波形如图3所示。

(2)、寻找波形的极大值点MaxPoint。

(3)、分别从左右两侧搜索焊缝波形图的极大值点top_boundary和bottom_boundary。通常认为首个达到MaxPoint*80%值的点即为boundary点。

(4)、从top_boundary和bottom_boundary之间的序列中寻找极小值y*,认为是焊缝区域Y轴方向的中心坐标。

(5)、以y*为中心,提取其上下各60像素宽度,总计120像素宽度的区域。

图2提取核心区域后如图4所示。从图4可以看出,焊缝两侧的印刷区域被完全剔除了,而焊缝的核心区域则被保留了下来。

2、采用改进的背景差分法构建焊缝核心区域图像的背景模型

提取了焊缝核心区域图像后,能够得到一组连续拍摄的核心区域图像序列,依据该序列来构建对应的背景模型。初始化模型构建时,对于背景模型中的每一个像素点,都用一个混合高斯模型来表示。在背景模型构建的过程中,本发明采用线性插值法更新高斯模型中的均值和距离,避免了算法对于初始值选择的依赖性,同时提高了算法的运算速度。

具体步骤如下:

(1)、定义并初始化混合高斯模型参数

定义G11)和G22)为混合高斯模型中的两个高斯模型,分别为θ1=(μ1,σ1,φ1)和θ2=(μ2,σ2,φ2),分别对应图像的焊缝区域和留空区域。其中,参数μ1和μ2为聚类中心,参数σ1和σ2为聚类距离,参数φ1和φ2为权值。

一般初始化混合高斯模型是根据经验给予一个先验初始值,这种初始化方法的稳定性相对较差,且不同种类的金属制罐焊缝差别较大,很难通过经验找到一个合适的初始值。而由于连续拍摄的若干张焊缝核心区域图像的差别通常较小,因此,本发明提出了一种基于当前焊缝图像拍摄序列的初始化方法,经试验能够保证算法的稳定性,其步骤如下:

在当前拍摄的连续多帧焊缝核心区域图像序列中随机选取一帧图像;

采用Otsu算法来将图像的焊缝区域和留空区域分割开来,分别用来初始化混合高斯模型中的两个高斯模型。假设Otsu算法获取的阈值为T,I1由所有灰度值小于等于T的像素组成,对应焊缝区域,I2由所有灰度值大于T的像素组成,对应留空区域;

分别计算I1和I2像素灰度均值μ10和μ20

分别计算I1和I2像素灰度值标准差σ10和σ20

令φ10=1,φ20=1,得到两个高斯模型的初始化参数为θ10=(μ10,σ10,φ10)和θ20=(μ20,σ20,φ20)。

(2)、用训练样本对模型进行训练,用线性插值法更新像素点均值、标准差和权值

模型初始化完成后,将图像序列的核心区域图像依次作为训练样本对模型进行训练。定义训练样本中坐标为(x,y)的像素点灰度值为f(x,y),用f(x,y)来更新点(x,y)处的混合高斯模型参数。即将f(x,y)分别带入两个高斯模型中:

若N1>N2,则f(x,y)∈G1,若N1<N2,则f(x,y)∈G2。依据如下公式更新对应的θi

φi=φi+1 (4)

对于每个训练样本中的每个点都重复(2)中的步骤,对背景像素中的每个点的混合高斯模型参数进行更新,直到模型中所有μi的参数变化率平均值|δ|<10-3

(3)、比较每个像素点两个高斯模型的权值,取权值较高的高斯模型的均值(即聚类中心)作为背景模型中该点的灰度值。图4所在的焊缝样本序列构建出的背景模型如图5所示。

3、提取焊缝缺陷区域,判断是否存在焊缝缺陷

本发明将每个样本的核心区域依次与背景模型作差分,提取焊缝缺陷区域,并根据缺陷区域的总面积判断该焊缝样本是否存在缺陷。具体步骤如下:

(1)、当前样本的核心区域图像与背景模型进行差分,得到前景部分的二值图像

式中,Dk为第k帧样本的核心区域图像,Bk为对应的背景模型。T为动态阈值,本发明将每个点阈值与其对应的背景高斯模型结合起来,即采用高斯模型中的标准差σi的倍数作为阈值T,使其能够随不同的背景模型而变化,经过大量的实验,取3倍的标准差作为阈值,即T=3*σi。Fk为得到的二值图像。

图6为某个缺陷样本核心区域的参考图像,它所在图像序列对应的背景模型即为图5,两者差分后,得到图7。

(2)、对二值图像去噪,得到焊缝缺陷区域

由于拍摄的焊缝部分的纹理在不断变化,其位置也可能因为生产线的振动发生细微的改变,而这些变化都会体现在前景图像Fk上,具体表现为噪声。从图7可以看出图像上存在很多噪声。去噪步骤如下:

使用9×9的结构元素进行开运算来消除较小的噪声区域;

统计每个连通区域的面积,面积小于400的连通区域也被认为是噪声区域,也要删除。

图7进行去噪操作后得到的图像如图8所示。可以看出,噪声区域基本都被去除了,焊缝缺陷区域被提取了出来。

(3)、统计缺陷区域总面积,判断样本是否存在焊缝缺陷

由于部分样本的焊缝周围存在较大污点,如图9所示,图9提取缺陷区域后如图10;又或者由于金属制罐的略微变形导致焊缝成像的宽度发生了些许变化,如图11所示,图11提取缺陷区域后如图12。还有一些类似的情况,如成像位置发生略微偏移等,如不加以处理,则会导致误检。本发明通过统计缺陷区域总面积的方法排除这些可能发生的误检:

式中,S为缺陷区域总面积,T1为阈值,在焦距55mm,拍摄距离35cm的条件下,取T1=1×104可以满足要求。T1的取值可以根据产线及产品的不同情况进行对应的调整。

4、背景模型更新

由于不同的产品其成像特点必然不同,即使是同样的产品其前后拍摄样本的成像特点也可能存在较大差异,这些都会导致背景模型发生变化,故背景模型应当能够自动更新来确保检测的稳定性和准确性。

本发明采用的背景模型更新策略如下:

如果当前拍摄的连续20帧与背景图像进行差分后,得到的差图像中有差异的像素比例都大于某一阈值(这里取60%),则可以认为是背景模型发生了很大变化,需要进行背景模型的更新。基于当前拍摄的焊缝图像序列,重复上述的步骤(1)和步骤(2)来重构背景模型。

这种背景模型更新算法不但能够适应背景模型的突然变化,而且能够大大减少背景模型的更新频率,极大的减少了整个算法在背景更新上的运算时间,符合实际生产中实时性要求高的检测需求。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1