织物疵点自动检测方法及应用进展
2022-11-22朱文俊祝双武
张 露,朱文俊,祝双武
(西安工程大学 纺织科学与工程学院,陕西 西安710048)
纺织行业是我国国民经济支柱产业之一,规模庞大,人民的生活与纺织行业的发展息息相关,因此,如何提升纺织行业的经济效益、加强纺织企业的生命力,一直以来都是颇受关注的问题。在纺纱、织前准备、织造、染色、印花、后整理这一系列复杂有序的纺织制造过程中,会产生很多影响织物品质的因素,因而每一个环节的质量和稳定性把控都相当重要[1]。在这些环节中,各个阶段都有可能会在布面产生疵点,调查显示,疵点的存在会使纺织品的价格下降45%~65%,织物疵点无疑是一个影响织物品质的重要因素,织物疵点的多少关系着纺织企业的收益,也是公司生产管理水平的象征[2-3]。为了尽量减少织物疵点带来的损失,企业一方面着力提升织造质量,减少疵点的产生,另一方面重点进行织物疵点的检测,尽可能早地发现疵点,进行处理和修复,降低疵点带来的影响。在疵点检测方面,由于织物复杂多样、疵点种类繁杂,人工检测又存在速度慢、工费高、主观性强等问题[4-5],利用机器视觉对织物疵点进行自动检测成为研究的热点话题,以“织物疵点检测”为主题进行中英文文献的检索,可查找到相关文献约3 000篇,且论文发表数量仍呈逐年上升趋势。对织物疵点自动检测系统现状进行了简要介绍,对系统开发所使用到的方法进行总结和分类,对相关论文进行了比较和归纳。
1 织物疵点自动检测系统
国外从20世纪80年代就已经开始了对疵点检测系统的研究,出现了许多知名的在线疵点检测系统,如比利时BARCO公司的Cyclops织机疵点检测系统、以色列EVS公司的IQ-TEX 4智能检测系统、瑞士Uster公司的Fabriscan自动验布系统及Q-Bar 2织物检测仪、Cognex公司的MV-tec NI和Smart View自动验布系统等[6-7]。近年来,随着织物疵点检测算法的成熟,国内也陆续开发出了一些织物疵点的自动检测服务,如陕西长岭纺织机电科技有限公司的FS220型光电自动验布机、深圳灵图慧视的LTAI系列智能验布机、深圳新视智科技术有限公司的纺织全栈式机器视觉质量检测解决方案等[8-9]。
由于技术方面仍待完善,特别是系统检测速度和检测精度的限制,现有的织物疵点自动检测系统通常选择在机下进行验布,一般具有布面牵引系统、图像采集系统、图像识别系统、疵点标记系统和人机界面等配置[10]。
近年来,也出现了一些可解决实时性问题的疵点检测系统,如瑞士Uster的Q-Bar 2织物检测仪,可直接定位在经纱和纬纱的交织区域,在纬纱穿过前对经纱进行监控,同时也能够监控引入纬纱的动作,实时进行织物疵点检测,及时对布面瑕疵做出反应,但此系统主要针对机织物织造阶段。江南大学开发了一款检测装置,可对经编织物织造过程中产生的疵点进行实时预警[11],但检测的仍是平面织物。2018年,Takeuchi等通过使用捕获的织物图像中纵向连续像素(ABW)移动平均线的差值,对针织圆机上的织物进行了简单的定量检测,但只对垂直线性疵点有较好的效果[12],目前,对于曲面织物的实时检测仍待进一步研究。
2 织物疵点检测常用方法
从20世纪80年代开始,众多学者研究并提出了许多不同种类的织物疵点检测算法。东华大学的李立轻等在2002年按照图像处理的方法,将研究的途径分为空间域处理和频域转换处理两种[13]。步红刚、黄秀宝在2006年发表在东华大学学报上的文章中将织物疵点检测方法按使用阶段分为特征提取与选择模块、检测模块两个部分[14]。Ajay Ku mar在2008年对大约160篇参考文献中关于织物疵点检测技术进行了综述,基于来自织物表面特征的性质,把织物疵点检测方法将分为统计方法、谱分析方法和基于模型的方法三类。徐伟峰等分别从图像预处理、图像分割、织物疵点特征提取三个方面介绍了织物疵点检测系统中用到的算法[15]。还有一种比较常见的分类方式主要聚焦在特征提取和分类阶段,按照图像处理的原理不同,分成结构方法、统计学方法、频谱分析方法、基于模型的方法、基于学习的方法以及混合的方法。其中结构法、统计法、频谱分析法、模型法是传统的数字图像处理方法,基于学习的方法则涉及到了机器学习的概念,按照这种分类方式进行织物疵点检测的方法介绍。
2.1 结构方法
结构方法(SA)是将图像纹理看作纹理基元的组合,每种纹理都可根据特定的替换规则,由一个个基元复制[16],主要包括纹理元素的提取和替换规则的推断两个步骤。祝双武等分析织物的纹理结构,利用自相关函数提取织物纹理的基元模板,通过纹理基元与模板间的差对疵点进行增强,再利用Otsu方法对计算出的局部不平整度进行阈值分割,检测织物中的疵点[17]。这种方法存在一定的局限性,只有在织物图像纹理非常规则的情况下表现比较良好,无法应对不规则织物,在进行疵点检测时往往需要借助其他手段。
2.2 统计学方法
对于正常织物,其表面纹理比较规律,统计学特征较为稳定,而如若织物表面存在疵点,则会带来突变,破坏这种稳定性,统计学方法通过研究图像之间关系的统计特性,借助如一阶、二阶统计量,将这类纹理特征量化提取。常用的统计学方法主要包括直方图特征、灰度共生矩阵、分形学[18]、自相关函数、数学形态学及一些特征滤波器。Che-Seung Cho等利用数学形态学的腐蚀操作进行噪声的去除[19]。K.L.Mak等利用Gabor小波网络提取出的纹理特征构建了几个形态学滤波器,计算量不显著,应用在自动检测系统中,对机织物疵点检测率可达97.4%[20]。
灰度共生矩阵法是统计学方法中使用较为频繁的一种,原理是在多角度对一定距离下的两个像素点构建灰度共生矩阵,通过计算矩阵的能量、熵、逆差矩、自相关和对比度等二阶统计量来获取织物的特征[21]。这种方法易于实现,且适应性强、鲁棒性高,对结构型疵点和色彩型疵点都有较为直观的描述效果[22],但存在计算量大的问题。
直方图特征以像素种类为横坐标,像素个数为纵坐标,主要反映图像的像素分布情况,特征可取平均值、标准差、方差和中值等,常见的方法有方向梯度直方图(HOG),提取较为稳定的边缘特征,对局部形状特征效果好,但生成描述子过程较为耗时,且对噪声敏感。局部二值模式(LBP)也是一种常见的统计学方法,一般做法是对图像进行LBP编码,以编码模式为像素种类进行直方图统计,提取特征。这种方法计算量较低,对光照变化不敏感,普遍应用于人脸识别方向,Tajer pour等首次将LBP算子应用于织物疵点检测研究中[23],之后,有许多研究人员对LBP算子进行了改进[24-28],试图解决LBP算子特征模式多、像素相关性弱等问题。
2.3 频谱分析方法
传统的数字图像处理方法主要分为空域分析和频域分析两种,前文提到的两种方法都属于空域分析,是对图像矩阵进行分析处理。而频谱分析法一般会通过傅里叶变换、Gabor变换、小波变换等方法将图像信息从空域转换到频域,再进行分析处理,是织物疵点检测中最常用到的方法,对结构型疵点表现良好,但是对于含有随机纹理的织物效果不明显。傅里叶变换是织物分析的经典方法,对织物图像进行全局分析,现在通常与其他方法一起使用;小波变换能够同时实现时间和频率的局部化,这种方法在边缘突出的疵点中表现良好,但在灰度差异较平滑的疵点中表现不佳;Gabor滤波器很好地模拟了人眼的视觉效果,织物纹理表征效果好,然而,由于Gabor滤波器需在多尺度和多方向上进行滤波,导致计算复杂度高,难以满足实时要求,为了降低计算复杂度,往往要进行优化处理[29]。
2.4 基于模型的方法
图像中的纹理也可以用预先设定的参数确定,然后形成一个确定的或随机的模型,使用的模型参数在捕获纹理细节方面非常重要。该方法的最大优点是可以产生用于匹配被观察织物的织物纹理,对于背景花纹复杂及重复性差的织物也能有较好的检测效果,但计算量大,对于小区域疵点检测效果不佳。最常用的模型是自回归[30]和高斯马尔科夫随机场模型[31],还有Gibbs随机场模型法、Wor d模型、分形(Fractal)模型等[32]。CHUNLEI LI等通过模拟生物视觉感知机制,提出了一种基于生物视觉建模的织物疵点检测算法,对于简单纹理的平纹和斜纹织物以及复杂纹理的图案化织物比其他现有方法更有效,鲁棒性和适应性更强[33]。
2.5 基于学习的方法
基于学习的方法对不同疵点的适应性较强,进一步可分为机器学习和深度学习,机器学习中常用的算法包括支持向量机(SV M)、字典学习、K最近邻法(KNN)、随机森林等,其中SV M、KNN和神经网络被广泛应用于织物疵点检测问题,消耗较短的训练时间,能够达到一定的分类精度。
深度学习作为一种重要的人工智能算法,近年来得到了飞速发展,并在某些实际应用领域取得了显著的成果,目前循环神经网络、卷积神经网络、生成对抗网络(GAN)等都是经典的深度学习算法模型。深度学习进行疵点分类时的准确率高,但学习过程耗时长,需要数据量大,因此对深度学习算法的优化是织物疵点自动检测近期研究的方向,Xie H等提出了一种基于改进的RefineDet的织物疵点鲁棒检测方法,以Refine Det为基础模型,设计基于全卷积通道注意(FCCA)块和自下而上路径增强传递连接块(BA-TCB)的改进头部结构来提高该方法的缺陷定位精度,应用了注意机制、DIo U非大极值抑制法、余弦退火调度等常用的优化方法,对于无图案背景、规则图案和不规则图案的织物都能快速进行疵点检测[34]。
深度学习的方法一般需要大量的疵点数据,但在实际生产过程中,疵点织物是占少数的,采集不便。Shuang Mei等提出了一种基于无监督学习的自动方法来检测和定位织物疵点,无需任何人工干预,且可以用少量的无缺陷样本进行训练,可以处理多种类型的纺织品,在所有数据集上,总体检查准确率达到80.0%以上,综合性能好[35]。生成对抗网络也是近几年的热门话题,LIU J等提出了一种基于生成对抗网络的织物疵点检测框架,尝试训练多阶段GAN来合成新的无疵点样品中的合理疵点,对在原始疵点数据集上训练的预处理语义分割网络进行微调,能够很好地检测简单纹理和复杂纹理织物中不同尺度的疵点[36]。
3 织物疵点检测方法应用现状
研究的五类织物疵点检测方法,在计算成本、织物适应性等方面各有优劣,在实际使用中,一般会采取混合的手段,对方法进行优化,尽量减少劣势,将其优势最大化。
Ngan等提出了一种小波预处理黄金图像相减(WGIS)方法,结合了频谱分析和结构法,用于检测图案织物或重复图案纹理的疵点[37]。Soo Chang Ki m等利用频谱分析法中的小波包分解提取特征,再利用高斯混合模型建模,在Br odatz纹理图像分类中具有较高的识别精度[38]。Hong-gang Bu等根据计盒法的原理和存在的问题,结合机织物的固有特性,提取了多个分形特征,用支持向量数据描述(SVDD)来进行织物疵点检测[39]。Guodong SUN等用灰度直方图反投影算法去除纹理背景信息,结合自适应阈值分割方法快速提取织物图像缺陷,再采用端到端的多层卷积神经网络框架实现疵点分类,在5种不同缺陷的数据库中平均检测准确率高达96.12%,且单幅图像检测速度仅需0.72 s[40]。Gnanaprakash V等从复杂图案织物中提取离散小波变换(DWT)和局部二值化(LBP)处理后的灰度共生矩阵WL-GLCM特征,改善现有的二进制粒子群优化算法(BPSO)在BP神经网络中过早收敛的问题,在TILDA织物数据库中的织物数据集上进行验证,系统分类准确率由原先的77%提升到了99.75%[41]。
在现有文献中,结构法常用于图像预处理阶段对规则织物进行图片分割,频谱分析法可增强图像上的织物疵点,也可和统计学方法一起用于特征提取阶段,减少学习分类的计算量,部分被用于图像预处理,进行去噪等操作。基于模型的方法和基于学习的方法一般用于分类阶段,可与其余3种方法搭配使用,或相互结合进行优化,一些研究结合了机器学习和深度学习,Wang J等将卷积神经网络提取的全局深度特征与手工绘制的底层特征融合,并使用非凸总体变化正则化的非凸鲁棒主成分分析(PCA)进行数据处理和降噪[42],HU G等提出了一种深度卷积生成对抗网络[43],Wang J等在深度卷积生成对抗网络中嵌入了一个名为局部差异分析(LDA)的子模块,以消除误报[44]。
在关于织物疵点检测的文章中,出现频次最高的检测数据集是TILDA织物图像数据集,包含8种不同的织物类型,每种类型又分7种疵点类别。此外,在研究中,一般通过对方案在数据集上验证时的准确率、召回率、精度、真阳性率、假阳性率、真阴性率、假阴性率等指标进行评价,检测所花费的时间也是重点考察因素。现有的公开数据集往往缺少无疵点织物图像,不符合实际生产情况,且数据集中每类疵点图像的数量也不能很好地满足深度学习需求,因此,根据研究的需要,还有很大一部分选择了自行采集或通过学习合成疵点。
未来在算法方面,研究认为主要有两个发展方向:一是提升算法的速度,提高实时性,能够将疵点检测系统配置在织造阶段,甚至于能够进行疵点的预测,最大化降低疵点损失;二是提升算法的适应性,能够很好地应对多尺寸疵点的复杂织物,对非平面状态的、存在一定变形的织物图像也能保持检测的准确率。
4 结语
织物疵点检测系统是一个统一整体,各个组成部分都会对检测效果造成一定影响,需要根据实际情况,考虑到各方面的适配性,其中,疵点检测算法是最重要的部分。根据图像处理的原理,可将常用的疵点检测方法分为结构方法、统计学方法、频谱分析方法、基于模型的方法、基于学习的方法五类,分析相关文献可得,在应用时,这五类方法相互结合,能得到更好的检测效果。
如今国内市场上已经有了较为成熟的织物疵点自动检测系统,但主要方式仍为机下检测,需要进一步提高速度和精度。