APP下载

基于ButterWorth滤波和EM算法的电子布疵点检测

2019-10-18景军锋张缓缓苏泽斌

测控技术 2019年9期
关键词:疵点高斯灰度

郑 敏,景军锋,张缓缓,苏泽斌

(西安工程大学电子信息学院,陕西西安 710048)

玻璃纤维电子布,又称电子布,是由玻璃纤维纱线织造而成的一种工业用品,作为增强材料,被广泛用于航天航空、机械零件等领域[1]。在工业生产过程中,疵点是影响其价格和品级评定的重要因素,也是产品质量把关的关键环节[2]。目前,国内外大多数电子布生产企业主要依靠人工来进行电子布疵点检测。人工检测受主观因素影响比较大,如长时间的视觉疲劳,工作环境等,疵点检出率只有70%左右[3],并且存在检测速度慢、准确率低或漏检率高等问题,无法满足企业的实际生产需求,因此研究电子布疵点的自动化检测具有良好的应用前景。

近年来,疵点检测已成为数字图像处理和机器视觉领域的研究热点[4-5]。目前,国内外学者对织物的疵点检测方法大致分为:基于统计的方法,基于频谱的方法和基于模型的方法[6]。Sayed[7]等人将熵滤波和最小误差阈值用于检测不同织物疵点,该算法的检测成功率为96.66%,但处理时间较长。刘洲峰[8]等人结合局部统计特征和上下文整体显著性分析获得织物显著图,使用迭代最优阈值分割织物疵点,实时性较差。Liapis[9]等人利用离散小波变换在L通道提取灰度特征,在a、b通道提取颜色特征,对彩色图像疵点检测效果较好,处理时间长。Chen[10]等人在织物图像上采用多尺度匹配滤波算法,可检测不同尺寸的疵点,但计算量大。程为[11]等人利用高斯差分(Difference of Gaussians,DoG)算法增强图像,消除图像噪声对疵点检测的影响,但细节信息损失较多。

为了提高电子布质量管理水平,促进纺织企业的自动化与智能化发展,本文提出了一种基于Butter-Worth滤波和EM算法的电子布疵点检测方法。首先对灰度化后的图像进行ButterWorth滤波,抑制背景纹理信息,增强疵点与背景的对比度;对经过预处理的电子布图像建立高斯混合模型,通过EM算法不断迭代,求解出模型最优解,进而对整幅图像进行像素标记;最后根据像素标记实现疵点的二值化分割,检测效果优于其他算法。该算法可以检测多种类型的疵点,细节保留较好且精确度高。

1 电子布疵点检测算法

基于ButterWorth滤波和EM算法的电子布疵点检测算法流程图如图1所示。首先,对待检测的电子布图像灰度化后,使用ButterWorth低通滤波器对图像进行平滑处理,抑制背景纹理信息对疵点检测的影响。然后将预处理得到的图像进行高斯混合模型处理,需要初始化类别个数、均值向量、协方差和先验概率,结合EM算法对其进行参数估计,使用E步骤计算最大似然函数的期望值,M步骤用来更新相应的高斯混合模型参数。重复E步骤和M步骤,直到最大似然函数收敛为止,可得到高斯混合模型的最优解。最后,经过上述操作后,电子布疵点图像的像素被分为两类:背景区域和疵点区域,利用已经标记的像素进行二值化处理,分割出电子布疵点的具体位置。

图1 算法流程图

1.1 ButterWorth低通滤波器

电子布背景纹理信息与疵点区域在颜色特征上具有一定的相似性,若直接进行高斯混合模型对电子布图像处理,纹理信息会严重干扰疵点检测效果,不能有效区分疵点与背景区域,结果如图2所示。

图2 未经预处理的检测结果

对于一幅电子布图像f(x,y),图像背景主要位于低频分量中,而高频分量主要包含噪声和图像细节信息。f(x,y)的傅里叶变换为F(u,v),在频率域进行卷积处理后,再进行傅立叶反变换获得滤波后的图像g(x,y),如式(1)所示,可以达到平滑图像的目的。

式中,H(u,v)代表滤波器,在诸多滤波器中,Butter-Worth低通滤波器“振铃”现象微弱,能够增强图像细节信息,所以采用ButterWorth低通滤波器[12-13]。ButterWorth低通滤波器(BLPF)传递函数如式(2)所示。

式中,n为阶数,取正整数,用来控制衰减速度;D0为截止频率;D(u,v)是点(u,v)距原点的距离。实验选取阶数n=2,截止频率D0=50,滤波后的结果如图3所示。

图3 ButterWorth滤波器处理结果

将图3中的两幅图像变换到频域,可得到对应的傅里叶变换频谱图如图4所示。在一幅频谱图中,中心点对应的是高频分量,4个角对应的是低频分量。通过对比原图像和ButterWorth滤波处理后图像的频谱图,可以看出,经过ButterWorth滤波处理后的图像频谱图,4个角的低频分量被消除,即表示在时域中,抑制了电子布图像的背景纹理。

对图3中的原图像和ButterWorth滤波处理后的图像绘制相应的灰度直方图,如图5所示。

图4 傅立叶变换频谱图

图5 灰度直方图

通过对比两幅灰度直方图可得到:ButterWorth滤波器处理后的图像呈现双峰性,说明滤波后的电子布图像所包含的背景和疵点区域在灰度值上有一定差异,可以通过建立高斯混合模型实现疵点分割。

1.2 高斯混合模型与EM算法

高斯混合模型[14]是用若干个高斯概率密度函数(即正态分布曲线)精确量化图像而形成的模型。通过初始化类别个数、均值向量、协方差和先验概率,用高斯混合模型对图像灰度直方图进行拟合,进而来表征电子布图像。带有疵点的电子布图像由背景区域和疵点区域组成,高斯混合模型通过类别的先验概率对高斯分布概率密度函数进行加权,估计特征向量的整体概率密度,可以实现无监督的分类决策[15-17]。

预处理后的电子布图像为g(x,y),若用k个高斯概率密度函数来描述g(x,y)的灰度直方图特征X={x1,x2,…,xN},则高斯混合模型的整体概率密度分布为

高斯分量的概率密度函数为

在式(3)和式(4)中,xi表示第i个观测数据,i=1,2,…,N;k为高斯混合模型中高斯分量的个数,k=1,2,…,K;αk为观测数据属于第 k个高斯函数的概斯函数的分布参数,μk表示均值向量,Σk表示协方差矩阵;f(xiθk)表示第k个高斯混合模型分量的概率密度;d为随机向量维数。

当N个观测数据满足独立的条件时,则xi的联合概率为

其对数似然估计表示形式为

在求解高斯混合模型参数的过程中,为了得到式(6)的极大值参数,使用期望最大化(Expectation-Maximization),即EM算法对高斯混合模型的均值,协方差进行求解。

EM算法包括两个步骤:E(Expectation)步骤和M(Maximization)步骤[18]。E步骤用来求解最大似然函数的期望值,M步骤用来更新高斯混合模型的均值、协方差和后验概率。根据M步骤得到参数,重新计算E步骤最大似然函数的期望值,重复迭代,直到最大似然函数收敛为止[15]。

①E步骤。首先初始化先验概率αk和高斯混合模型的参数θk=(μk,Σk),则第i个观测数据属于第k个高斯分量的后验概率rjk为

②M步骤。采用E步骤得到的后验概率rjk更新第k个单高斯混合模型的先验概率αk,如式(8)所示。然后利用更新后的先验概率αk,根据式(9)和式(10)对高斯混合模型中的均值μk和协方差Σk进行更新。

1.3 图像分割

对预处理后的图像建立高斯混合模型,利用EM算法进行参数估计,不断迭代直到最大似然函数收敛为止。此时,一幅有疵点的电子布图像可以被k个高斯函数叠加用来拟合它的灰度直方图,图像灰度直方图不仅可以反映图像中某个灰度值出现的频次,也可以表示图像灰度概率密度的估计。由图5(b)可知,经过ButterWorth滤波后,电子布图像的灰度直方图呈现明显的双峰性,背景与疵点区域的对比度明显,用2个高斯函数就可以表征电子布缺陷图像,一个高斯函数拟合背景区域,另一个高斯函数拟合缺陷区域,实验选取k=2。根据每个像素点i属于第k个高斯分量的概率,判别该点像素属于背景区域还是疵点区域,进而对每个像素点进行标记类别为k=1或者k=2。最后利用像素标记的结果,对图像进行二值化分割,达到电子布疵点的精确检测。

2 实验结果研究

2.1 实验数据和平台

实验选取366幅电子布样本,图像尺寸为256像素×256像素,样本来源为工厂实际采集图像,疵点包括断经、断纬、污渍、稀密路、结头等15种常见缺陷类型。实验环境为Matlab R2015a,计算机处理器为IntelRCoreTMi5-2400CPU@3.20 GHz。

2.2 ButterWorth滤波器的参数选择

ButterWorth低通滤波器有阶数n和截止频率D0两个参数。选定截止频率D0=50,针对不同的滤波器阶数处理结果如图6所示。由图6可知:当n=1时,仍存在较为明显的背景纹理信息,对于细小的疵点,背景纹理信息会严重干扰后续的疵点检测。当n=3时,处理结果出现“振铃”现象,并且随着阶数的增大,“振铃”现象会越来越明显。

考虑不同截止频率D0对电子布图像的处理效果,如图7所示。截止频率越小,图像中细节被消除得越严重,当D0=10时,损失了图像中的细节信息;截止频率越大,模糊程度越弱,图像的纹理越清晰,当D0=90时,电子布图像的纹理信息较为明显,影响检测结果。故选取阶数n=2,截止频率D0=50。

2.3 实验结果与分析

将本文方法与高斯差分(DoG)算法、Gabor算法和最大熵算法的疵点检测结果进行对比,检测结果如表1所示。

图6 不同滤波器阶数的效果对比

图7 不同截止频率的效果对比

表1 不同算法检测效果对比

DoG算法的疵点检测结果丢失大量的疵点信息,不能精确分割疵点区域。原因是:高斯差分算法在处理过程中会减少图像高频信息,部分疵点被当作高频信息滤除。

Gabor算法对于方向单一疵点,检测结果较好;当图像中疵点具有各向异性,很难将所有疵点信息检测出来。原因是:在Gabor算法的检测过程中,需要针对不同疵点设计相应的尺度和方向,并进行图像融合,才能够定位疵点位置,处理过程复杂,通用性较差。

最大熵算法对大多数电子布疵点图像的分割结果较好,但几乎对每种疵点的检测结果都存在大量的“杂点”。原因是电子布纹理信息对最大熵的计算有很大影响,尽管在最大熵算法之前进行了ButterWorth滤波,但电子布纹理信息对疵点的检测结果还是造成了影响。

与其他3种方法进行对比,本文算法可以准确定位疵点,并且对疵点的细节部分保留较好,疵点二值图中没有出现任何背景纹理信息。原因是:使用Butter-Worth低通滤波,可提高对背景纹理的平滑和降噪能力,增强疵点区域与背景区域的对比度;对预处理得到的图像,进行高斯混合模型处理,通过EM算法不断迭代求解出高斯混合模型的最优解,进而对整幅图像进行像素标记。最终通过像素分割的方法,将疵点区域以二值化的形式展现出来。

为了验证本文算法的检测时间,使用256像素×256像素的电子布图像作为样本,进行多次实验,并统计每种算法的平均时间,结果如表2所示。本文算法的检测效率优于Gabor算法和最大熵算法,但与DoG算法相比较,处理时间略长,主要原因是采用迭代的方法求解高斯混合模型最优解耗时较长。

表2 不同方法的处理时间 单位:s

3 结束语

采用基于ButterWorth滤波和EM算法对电子布疵点进行检测。首先对灰度化后的图像进行Butter-Worth滤波,以消除背景纹理信息对疵点检测的影响;然后初始化类别个数、均值向量、协方差和先验概率来对图像灰度直方图建立高斯混合模型,通过EM算法不断迭代,直到最大似然函数趋于收敛时,可获得高斯混合模型的最优解,进而对整幅图像进行像素标记;最后对已标记的像素进行二值化处理,精确区分背景与疵点区域。该算法与高斯差分算法、Gabor算法、最大熵算法进行对比,不仅能够消除背景纹理的影响而精确检测出疵点位置,而且对疵点的细节部分保留较好。本文算法均在Matlab平台上进行仿真模拟,若将该算法应用于电子布实际生产过程中,需要对电子布进行实时采集与处理,提高算法的处理效率,达到硬件与软件相统一,这将是下一阶段的研究方向。

猜你喜欢

疵点高斯灰度
小高斯的大发现
采用改进导重法的拓扑结构灰度单元过滤技术
喷丝板疵点检测系统设计
基于灰度拉伸的图像水位识别方法研究
基于FPGA的图像疵点处理设计与实现
天才数学家——高斯
家蚕品种单粒茧丝疵点差异及遗传性研究初报
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算
有限域上高斯正规基的一个注记