应用非负字典学习的机织物瑕疵检测算法

2016-05-25 07:14毛兆华卜佳仙李立轻
纺织学报 2016年3期
关键词:疵点瑕疵字典

毛兆华, 汪 军,2, 周 建, 卜佳仙, 陈 霞,2, 李立轻,2

(1. 东华大学 纺织学院, 上海 201620; 2. 东华大学 纺织面料技术教育部重点实验室, 上海 201620;3. 江南大学 纺织服装学院, 江苏 无锡 214122)

应用非负字典学习的机织物瑕疵检测算法

毛兆华1, 汪 军1,2, 周 建3, 卜佳仙1, 陈 霞1,2, 李立轻1,2

(1. 东华大学 纺织学院, 上海 201620; 2. 东华大学 纺织面料技术教育部重点实验室, 上海 201620;3. 江南大学 纺织服装学院, 江苏 无锡 214122)

为进一步提高织物瑕疵检测算法对瑕疵类型的通用性,提出一种采用非负字典学习的机织物瑕疵检测算法。首先对正常机织物图像进行窗口分割,将每个子窗口按列展开成列向量,所有列向量联合组成1个矩阵;然后对该矩阵进行非负字典学习,得到个数最佳的非负字典,即基向量;最后应用该字典对待检测样本在最小平方误差下进行近似,并在重构误差的基础上进行疵点检测。重点探讨了窗口大小和字典个数对检测效果的影响。对4 864个样本的实验结果表明,所提算法能在误检率小于10%情况下,取得90%的检出率。

非负字典学习; 子窗口尺寸; 字典大小; 机织物瑕疵; 检测

Abstract In order to improve the versatility of detection algorithm on varying fabric defect types, an algorithm for woven fabric defect detection using non-negative dictionary learning (NNDL) is proposed. Firstly, normal fabric image is divided into small image patches and unfolded into a column vector, then all the column vectors are combined into a matrix. Secondly, the matrix composed of column vectors is solved by NNDL, and then the non-negative dictionary with the optimal number (basis vectors) is extracted. Finally the dictionary is applied to reconstruct testing samples in minimal least square error, where the reconstruction error between original and reconstruction image is used for defect detection. The influence of the patch size and the number of the dictionary are also investigated. Experiment results on 4 864 samples show that the proposed method can achieve 90% of detection rate with false detection rate below 10%.

Keywords non-negative dictionary learning; patch size; dictionary size; fabric defect; detection

在纺织生产过程中,纺织品表观质量的客观评定是控制生产质量的重要环节之一,但是传统的织物表面瑕疵检测仍旧是人工完成,受到人为因素的影响较大,检测效率也很低。随着人工智能和模式识别技术的快速发展,采用计算机视觉代替人眼进行机织物瑕疵的自动检测已经成为一种趋势。

应用计算机进行织物瑕疵区别时,如果选择和提取适当的且能够有效区别正常织物区域与有瑕疵的区域的特征值或特征向量非常重要。查阅相关文献,机织物瑕疵检测方法可粗略为4类:基于结构[1-3]、统计[4-5]、模型[6-7]和信号的[8-11]处理。

近年来,使用字典学习进行信号的表达也受到了广泛的关注,特别是在计算机视觉领域。机织物图像属于一种典型的结构性纹理图像,先应用字典学习对织物纹理进行近似表达,然后在此基础上进行织物瑕疵识别,可以更有效地适应不同异常特征瑕疵类型。与传统上使用固定的或预先定义的字典如傅里叶变换中使用的正余弦字典的表达方法相比,通过学习所得的字典能够更好地适应信号特征,允许字典学习对输入信号进行更有效的表达,为此,本文提出一种基于非负字典学习的机织物疵点检测方法。

1 基于字典学习的疵点检测原理

在信号处理领域中,信号通常可以分解成为一些基本元素或函数的线性组合来进行表达。应用一些基元素(称为字典)对织物图像进行线性表达时,可以取得很好的近似效果。本文就是利用字典学习的方法对机织物图像进行疵点检测,所学习的字典里面所有元素皆为非负,即更进一步来说本文就是用学习字典中非负字典来进行机织物疵点检测的。

1.1 非负字典学习

将织物图像分割为子窗口,并视每个子窗口为1个样本。通常情况下,可以对每个子窗口样本在最小平方误差下进行最优字典求解。实际运算过程中,可以选取不同的目标函数进行字典设计,或者直接选用预先定义好的字典,例如不同性质的小波字典、Gabor字典和余弦字典等[12]。

基于非负约束分解在图像领域的广泛应用,本文选用非负约束的方法来优化寻求非负字典,从而得出信息更为精简的学习字典。设m×n的数据矩阵X=[x1,x2,…,xn],xi∈Rm,其中m是向量的维数,n是样本的个数,所要寻求的非负字典可以写成如下的最优化问题:

(1)

式中:D=[d1, d2,…,dk],dj∈Rm,为所要学习的字典;k为字典大小,αi∈Rk为X中元素xi的系数向量。从矩阵分解的角度来讲,式(1)通常被称为一个非负矩阵分解(NMF)问题。该问题自Lee等[13]首先正式提出后,NMF受到了众多不同领域学者们的广泛关注和研究,例如特征提取[14]、聚类分析[15-16]及相关推广[17]。

在对式(1)的求解过程中,本文选用Kim等[18]提出的一种利用有效集(activeset)改进的非负矩阵分解算法,即基于有效集方法的交替非负最小二乘算法。有效集方法是一个可行点方法,即每个迭代点都要求是可行点,每次迭代求解一个不等式约束的二次规划。该非负算法具有优异的收敛性能,故选取该算法来优化学习字典。

1.2 检测算法原理

检测瑕疵过程包括训练和测试2个阶段。在训练阶段里,基向量(非负字典)通过学习样本计算获得;测试阶段则应用所获取的基向量对测试样本进行近似。由于基向量都是通过从正常样本中学习而来,因此它们将只包含正常样本的纹理信息,即对正常样本的重构效果会很好,而对瑕疵样本很差,从而可以通过计算原图像与近似图像之间的重构误差来判断当前样本是否有瑕疵。

训练样本阶段,首先将正常织物图像划分成h像素×h像素的子窗口,并将每个子窗口视为1个样本。然后将所有子窗口样本按列首尾相接展开成1个列向量,记为x。通过式(1)实施字典学习并提取最佳个数为k的字典元素(基向量)D=[d1,d2,…,dk]。

(2)

由于基向量是从正常样本中获取的,只会反映正常的纹理信息,故当检测样本是瑕疵样本时,则会产生比较大的重构误差,其定义如下:

(3)

从式(1)、(3)可看出,重构误差的大小与字典元素个数和窗口大小有较大的关联。换言之,如果要取得最佳的瑕疵检测效果,对所用的字典元素个数和窗口大小进行优选是非常必要的,本文将详细讨论这2个参数的选取原则。

2 字典大小和窗口大小的优选

2.1 字典大小的优选

在得到机织物的非负字典之前,首先要确定字典元素的个数。从理论上讲,k较大时有利于减小对正常纹理的近似误差,但另一方面,k较大时,又很有可能会将一些瑕疵区域引入到基向量中,使得瑕疵区域也被近似得很好,进而降低对织物瑕疵的鉴别度。

由此可见,织物的近似效果非常重要。为将非负字典对检测样本的近似程度进行量化,本文设计了一个基于信息熵的量化指标(简记为E),其定义如下:

(4)

从式(4)可看出,指标E所在的区间为0~1,当近似样本与原样本完全一样时,则E=1。故就实际意义而言,E越大表示学习字典对该种织物的近似效果越好。

以一幅正常平纹织物样本为例,将其分割成子窗口后应用式(1)进行非负字典学习,然后计算k=1~20时的指标E,所得曲线图如图1所示。

从图1可看出随着k的增加,E值也会随之增加,即织物图像的近似效果越来越好。然而对瑕疵检测而言,指标E并非越大越好。通过对一些常规机织物及其瑕疵样本的实验结果表明,通常选取8个字典元素时,所得的近似指标E较为适中,同时又能保证近似图像与原图像之间有较大的可分区性。

2.2 窗口大小的优选

本文算法视1个子窗口为1个样本,在实际检测时,子窗口的尺寸对检测结果影响也较大。例如当子窗口尺寸过小时,虽然有利于突出瑕疵,但不能包含完整的织物纹理信息;当子窗口过大时,虽有利于刻画织物的纹理信息,但会减小瑕疵区域在子窗口中所占比例,影响检测精度。结合本文采集织物图像的分辨率(约230 dpi),本文将选用16像素×16像素,26像素×26像素和32像素×32像素3种小、中、大型子窗口对瑕疵检测结果的影响进行分析。如此选择是为了使子窗口尺寸能够适应尺寸的瑕疵,并用此对子窗口的大小进行优选。文中选小、中和大型3种瑕疵类型进行检测效果对比,具体结果如图2所示。从图可看出,子窗口大小与瑕疵类型都能对瑕疵检测效果产生直接影响。若瑕疵面积较小时,检测效果比较理想是16像素×16 像素或32像素×32像素的子窗口。当瑕疵面积较大时,选取较小的子窗口会将瑕疵区域切割多个不同的子窗口中,从而丢失瑕疵纹理信息,导致漏检,如图2(j)所示;但若选用较大的子窗口,例如32像素×32像素,则能取到较好的检测效果,因为用较大尺寸的子窗口划分时,能够充分利用瑕疵的信息。另一方面,对于中型的26像素×26像素的子窗口,其检测效果介于小型和大型之间,是一个折中的子窗口尺寸。从图中还可观察到32像素×32像素的窗口无论针对哪种类型的疵点,检测效果都比较理想,因此,为了方便起见,本文最终选用32像素×32像素的子窗口进行机织物瑕疵检测。实际上可针对相应瑕疵的尺寸选用合适的子窗口尺寸,这样检测效果会更佳。

3 实验结果与讨论

本文实验所用的检测图像全部来自生产线,样本包括平纹和斜纹2种基本组织,瑕疵包含百脚、双纬、沉纱、星跳等多种典型瑕疵类型。将原图像与近似图像之间的差异作为瑕疵检测的基准。此外,为了客观评价算法检测效果,采用正确检出率D和误检率F2个指标,其定义如下:

式中x为被正确检测为瑕疵样本的个数;y为瑕疵样本总数;z为误判为瑕疵样本的个数;yz为正常样本总数。

本文对平纹数据集中2 304个样本和斜纹数据集中2 560个样本进行统计,每图像大小256像素×256像素,窗口大小为32像素×32像素,字典大小为8。瑕疵检测统计结果如表1和表2所示。

表1 平纹织物瑕疵检测结果汇总

表2 斜纹织物瑕疵检测结果汇总

从表1、2的统计结果可以分析出,平纹和斜纹织物中包含的各种类型瑕疵的检测效果都比较好,基本都在90%以上,只有拖纱这种体积较大的疵点的检出率在90%以下。这是因为拖纱瑕疵较长,纵横向都比较容易分布,故该疵点非常容易被分割到不同的子窗口中去。而且拖纱的前段一般较小,在子窗口中占的比例相应就比较小,另一方面,拖纱在空间分布的概率是随机的,这样经常会导致漏检。

此外,斜纹瑕疵织物的检测效果优于平纹瑕疵织物,这主要是由于斜纹织物的纹理通常要比平纹织物规整,当织物图像中出现瑕疵时,该瑕疵会对斜纹织物的纹理破坏性很大,从而使得近似图像与原图像之间的差异比较大,有助于织物上疵点区域的区分。这同时也说明本文算法对纹理规则的织物有更好的检测效果。

从表2还可观察到星跳瑕疵的检出率较其他类型的疵点稍微低一些,这主要是因为该星跳瑕疵的面积较小,用32像素×32 像素的子窗口进行分割时,每个子窗口中相应的瑕疵比较少,占的比例自然比较小,对纹理和灰度值的影响不大,故近似图像与原图像之间的差异就会比较小,重构误差值会选得比较小,使得疵点的检出率会低些,而一些正常纹理又容易被判为瑕疵纹理,即产生误检。

因此,在条件允许时,可以针对不同瑕疵类型选择不同的窗口尺寸,这样在很大程度上可以增加瑕疵的检测效果。

4 结 论

本文在非负字典学习的基础上提出了一种机织物瑕疵的检测算法。该方法充分利用了机织物的纹理信息间的相关性,这可以用线性表达来重构图像,着重探讨了字典大小及子窗口尺寸对瑕疵检测效果的影响,并通过构造相应的量化指标来表征图像的近似效果。实验结果表明,本方法能在较小误检率下,取得90%的检出率,同时对不同类型瑕疵有较强适应性。

[1] TUCERYAN M,JAIN A K.Texture analysis.Handbook of Pattern Recognition and Computer Vision[M].2nd ed.Singapore:World Scientific Publishing Co,1998:207-248.

[2] 王锋,焦国太,杜烨.基于数学形态学的织物疵点检测方法[J].测试技术学报,2007,21(6):515-518. WANG Feng,JIAO Guotai,DU Ye.Method of fabric defects detection based on mathematical morph-ology[J].Journal of Test and Measurement Technology,2007,21(6):515-518.

[3] 祝双武,郝重阳,李鹏阳,等.基于纹理结构分析的织物瑕疵检测方法[J].计算机应用,2008,28(3): 647-649. ZHU Shuangwu,HAO Chongyang,LI Pengyang,et al.Fabric defect detection method based on texture structure analysis[J].Computer Applications,2008,28(3):647-649.

[4] 韩立伟,徐德,王麟琨.基于统计信息的织物瑕疵自适应检测 [J].计算机工程与应用,2007,43(36):233-237. HAN Liwei,XU De,WANG Linkun.Adaptive detection of fabric flaw based on statistical information[J].Computer Engineering and Applications,2007,43(36):233-237.

[5] 高晓丁,汪成龙,左贺,等.基于直方图统计的织物疵点识别算法[J].纺织学报,2005,26(2):121-123. GAO Xiaoding,WANG Chenglong,ZUO He,et al.Fabric blemish detection based on attributed relational histogram[J].Journal of Textile Research,2005,26(2):121-123.

[6] CAMPBELL J G,FRALEY C,MURTAGH F,et al.Linear flaw detection in woven textiles using model-based clustering[J].Pattern Recognition Letters,1997,18(14):1539-1548.

[7] 步红刚,黄秀宝,汪军.基于多分形特征参数的织物瑕疵检测[J].计算机工程与应用,2007,43(36):233-237. BU Honggang,HUANG Xiubao,WANG Jun.Fabric defects detection based on multiple fractal features[J].Computer Engineering and Applications,2007,43(36):233-237.

[8] KUMAR A,PANG G K H.Defect detection in textured materials using Gabor filters [J].IEEE Transactions on Industry Applications,2002,38(2):425-440.

[9] DUNN D,HIGGINS W E.Optimal Gabor filters for texture segmentation [J].Image Processing,IEEE Transactions on,1995,4(7):947-964.

[10] 解凯,张峰.基于双正交基字典学习的图像去噪方法[J].计算机应用,2012,32(4):1119-1121. XIE Kai,ZHANG Feng.Image denoising method based on dictionary learning with union of two orthonormal bases[J].Journal of Computer Applications,2012,32(4):1119-1121.

[11] 王钢,周建,汪军,等. 采用奇异值分解的机织物瑕疵检测算法[J]. 纺织学报,2014,35(7):61-66. WANG Gang,ZHOU Jian,WANG Jun,et al.Woven fabric defect detection using singular value decomposition [J].Journal of Textile Research,2014,35(7):61-66.

[12] ELAD M.Sparse and Redundant Representations:from Theory to Applications in Signal and Image Processing[M].New York:Springer,2010:201-353.

[13] LEE D D,SEUNG H S.Algorithms for nonnegative matrix factorization[C]//Advances in Neural Information Processing Systems.Berlin:Springer,2001:556-562.

[14] LI Y F,NGOM A.Non-negative matrix and tensor factorization based classification of clinical microarray gene expression data[C]// IEEE International Conference on Bioinformatics and Biomedicine.Piscataway:IEEE Press,2010:438-443.

[15] KIM H,PARK H.Sparse non-negative matrix factorizations via alternating non-negativity-constrained least squares for microarray data analysis [J].Bioinformatics,2007,23(12):1495-1502.

[16] GREENE D,CAGNEY G,KROGAN N,et al.Ensemble non-negative matrix factorization methods for clustering protein-protein interactions [J].Bioinformatics,2008,24(15):1722-1728.

[17] DING C,LI T,JORDAN M I.Convex and semi-nonnegative matrix factorizations [J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2010,32(1):45-55.

[18] KIM H,PARK H.Nonnegative matrix factorization based on alternating non-negativity constrained least squares and active set method [J].Society for Industrial and Applied Mathematics,2008,30(2):713-730.

Woven fabric defect detection based on non-negative dictionary learning

MAO Zhaohua1, WANG Jun1,2, ZHOU Jian3, BU Jiaxian1, CHEN Xia1,2, LI Liqing1,2

(1.CollegeofTextiles,DonghuaUniversity,Shanghai201620,China; 2.KeyLaboratoryofTextileScience&Technology,MinistryofEducation,DonghuaUniversity,Shanghai201620,China;3.SchoolofTextilesandClothing,JiangnanUniversity,Wuxi,Jiangsu214122,China)

10.13475/j.fzxb.20141203306

2014-12-22

2015-10-09

国家自然科学基金项目(61379011)

毛兆华(1989—),女,硕士生。主要研究方向为机织物瑕疵自动检测。汪军,通信作者,E-mail:junwang@dhu.edu.cn。

TS 101.9

A

猜你喜欢
疵点瑕疵字典
基于Cascade RCNN 和二步聚类的织物疵点检测
基于改进Pix2PixGAN的织物疵点检测算法
基于总变差的织物疵点分割方法
喷丝板疵点检测系统设计
登记行为瑕疵与善意取得排除的解释论
哦,瑕疵
字典的由来
哦,瑕疵
大头熊的字典
正版字典