纺织品图案主结构的快速提取方法
2018-05-03田俊杰张李超
田俊杰, 张李超, 赵 星, 白 宇
(华中科技大学 材料成型与模具技术国家重点实验室, 湖北 武汉 430074)
目前,智能制造已成为中国制造业的重点发展方向,而机器视觉作为智能制造设备感知信息的核心技术受到越来越广泛的关注[1]。作为传统劳动力密集型行业,纺织品加工在基于机器视觉的纺织品检测、切割加工等智能自动化设备方面有着巨大的潜力[2]。对于许多涉及纺织品智能识别与检测技术都需要提取纺织品的主结构信息,如纺织图案形状大小偏差检测、纺织品缺陷识别、床单窗帘经编织造后沿花边切割等。由于传统基于模板匹配的机器视觉只适用于刚性物体,对具有柔性的纺织品应用效果不理想,目前中国多数纺织品加工企业对于床单、窗帘沿花边切割还采取人工电热丝切割的方式,而对纺织品图案形状大小偏差检测、纺织品缺陷识别也采用人工尺具检测。这种状况极大地影响纺织品产品的一致性,也限制了行业成本降低与生产效率的提高。对纹理进行剔除的同时提取主结构来满足纺织品加工的实时花边提取或形状位置偏差检测,为改变这种状况的瓶颈问题。
快速稳定提取纺织品主结构算法的核心在于剔除纹理的效果和算法处理的速度。剔除纹理效果的重点在于保留主结构信息的同时对纹理进行模糊处理,涉及图像处理中的保边滤波;算法处理速度的重点则是大型稀疏矩阵的求逆。文献[3-4]提出的几种方法采用了优化的总变化量图像正则化器。用总变化量区分纹理和主结构的效果不太令人满意,因为纹理和主结构在优化时可能接受相似的惩罚。Farbman等[5-6]提出了一种边界保留滤波器,在保留边界的同时对图像进行平滑处理,但是由于对纹理和主结构的权重系数大小接近,不能很好地适用于纹理剔除。本文基于加权最小二乘法对纺织品图案进行保边滤波处理,并提出了一种惩罚算子可克服上述几种算法只能区分图像边界的缺陷,可有效区分纹理和主结构区域,在保边滤波过程中保留主结构信息的同时剔除纹理,而且对不同纺织密度、存在织物密度不均和破洞等不同品质缺陷的纺织品有较强的适应性。
纺织品沿轮廓切割或图案形状位置检测一般采用流水线模式,对实时性要求较高。加权最小二乘法提取主结构过程中用到了稀疏的不均匀拉普拉斯矩阵,当图像的大小为m行n列时,拉普拉斯矩阵的大小为m×n行m×n列。要得到处理结果需对拉普拉斯矩阵进行求逆,若用一般的矩阵求逆方式,时间复杂度为O(n3)(n为拉普拉斯矩阵的行数),时间消耗较长而无法接受,必须在求线性方程解的过程中利用稀疏矩阵的特性做特殊处理。
常用的求解大型稀疏矩阵线性系统的方法有Jacobi迭代器法、Gauss-Seidel迭代器法和SOR迭代器法等[7]。Krishnan等[8]为出现在各种计算机图形应用领域的离散泊松方程提出一个新的多级预处理方案。该方法通过去除领域内潜在的细微级变量之间的弱连接以及对这些变化的补偿,并在所得到的较小系统上递归地重复该稀疏过程可得到较好的加速效果;但文中根据邻域内粗细变量的拓扑关系选择不同的稀疏方法加大了时间消耗,且在迭代过程中不能抑制矩阵条件数的增长。本文采用分层预处理器对稀疏矩阵进行预处理以减少时间消耗,并在构建分层预处理器过程中使用一种更简单有效的稀疏与补偿方法用于划分强弱连接。
1 主结构提取算法
1.1 主结构的概念
图1为纺织品主结构与纹理示意图。图中右上角是空间重复纹理的局部放大图,右下角是含有主结构信息区域的局部放大图。本文的目的是快速剔除重复纹理的同时保留主结构信息,以利于后续的纺织品轮廓提取以及纺织品图案形状位置偏差检测处理。
图1 主结构与纹理示例Fig.1 Main structure and texture examples
1.2 惩罚算子的提出
图像处理中采用加权最小二乘法来进行保边滤波,在保留边界的同时对图像进行模糊处理。其中加权最小二乘法的定义为:
(1)
ax,p(u)=Mx,p(u)+ε-1
(2)
ay,p(u)=My,p(u)+ε-1
(3)
式中:ε是一个很小的正数,Mx,p(u)与My,p(u)是本文提出的输入图像u某个像素点p处的惩罚算子,分别定义为:
(6)
式中:σ为超高斯分布的方差,其中进行局部卷积的邻域;xp为yp为像素点p的横纵坐标;xq和yq为像素点q的横纵坐标。
求解式(1)可得输入图像与输出图像之间的关系。加权最小二乘法的求解步骤可参照Farbman等[5]提出的矩阵转换过程。由文献[5]中求解步骤可得到使求和式(1)最小的输出图像S与输入图像之间的关系:
(7)
对于纺织品图案的图像,本文提取主结构的算法1步骤如下:1)图像u、邻域范围σ和权重因子λ作为输入;2)根据式(2)、(3)计算x方向和y方向权重值ax,p(u)、ay,p(u);3)根据ax,p(u)与ay,p(u)计算矩阵L;4)由式(2)对稀疏矩阵L进行分层预处理;5)将输出图像S作为输入图像u,迭代此算法数次;6)将纺织品图案作为输入图像u计算输出图像,迭代数次可从图像u中剔除纹理得到主结构图S。
1.3 惩罚算子有效性验证
为验证本文提出的惩罚算子的有效性,采用了Xu等[9]的纺织品纹理图案样本库,此样本库包含了50张纺织图案,以及对应的人工标出的主结构图案,如图2所示。
本文使用的每张图像为从样本库中随机提取出大小为29像素×29像素点区域的方式生成样本块,并根据人工标出的主结构图将样本块分为主结构样本块和纹理样本块。图2(b)、(c)分别是主结构样本块和纹理样本块的示例。每张图片生成主结构样本块和纹理样本块各 2 500 个,这样就建立了1个主结构样本块和纹理样本块各125 000张的样本库。为验证惩罚算子的有效性,需要证明惩罚算子能在主结构区域像素点和纹理区域像素点附近产生不同的值。
对样本库中每一个样本块根据式(4)、(5)计算图像中心像素点处惩罚算子Mx,p(u)和My,p(u)的值,参数σ的值定为5。图3示出对整个样本库每个样本计算惩罚算子的值而得出的主结构样本块和纹理样本块的Mx,p(u)+Mx,y(u)值分布的概率直方图。可以看出,本文提出的惩罚算子的值在纹理样本中分布大多数集中在0附近,而其在主结构样本上中主要在区间0~0.014 都有分布,所以惩罚算子可有效区分主结构区域与纹理区域。
注:图(a)、(b)中第1行为样本库中随机挑选的纺织品图案;第2行为与其对应的人工标出的主结构边界;图(c)第1行纺织品图案中无主结构边界,与其对应的第2行无图案信息。图2 用于测试惩罚算子有效性的样本库Fig.2 A sample library for testing validity of a penalty operator. (a) Textile pattern; (b) Samples containing boundaries of main structure; (c) Samples only containing texture
图3 惩罚算子值的概率分布直方图Fig.3 Probability distribution histogram of penalty operator values. (a) Texture sample; (b) Main Structure
1.4 算法的应用实例
图4示出应用算法1对纺织品图案提取主结构的示例,其中迭代次数为4次。图4(a)示出大小为250像素×250像素的纺织品图案的1个示例,图像在提取主结构后,可用于后续的形状位置偏差检测。图4(b)示出提取主结构的效果展示。图4(c)是本实验室基于机器视觉的纺织品图案沿轮廓切割项目中的实际图像,大小为1 280像素×1 024像素。此项目中图像处理的目标是提取出纺织品花边所在的轮廓位置以用于切割加工,而使用本文算法提取主结构可减少纹理对提取花边的干扰。在目前国内很多纺织品加工企业中,纺织品本身品质良莠不一,纺织图案各区域的浓密程度不一,还存在小的纺织缺陷的干扰,这使提取纺织品轮廓信息难度加大,图4(c)示例了这种情况,同时比较了不同系数λ的提取效果,增大λ的值可加大模糊程度,从一致性很差的纺织品中提取主结构,有利于后续的轮廓提取。
图4 纺织品图案提取主结构效果Fig.4 Effect of main structure of textile pattern extraction. (a) Figure 1 of raw and extracted; (b) Figure 2 of raw and extracted; (c) Figure 3 raw and extracted
2 分层预处理
2.1 分层预处理算法
算法1中大规模稀疏矩阵直接求逆会消耗大量时间,在流水线轮廓切割或形状位置偏差检测等实时性要求高的场景下时间代价不可接受,本文采用一种分层预处理的方案以减少算法中矩阵求逆的时间消耗,定义为算法2。
来消除粗节点与细节点之间的联系,在矩阵L两边分别乘以PT和P,可得到原问题的一个小的子系统:
划分粗细节点,消除粗节点与细节点之间的连接并对此变化进行补偿。通过在更小的子系统中迭代该过程可构建分层的预处理器。Krishnan等[10]根据领域内粗细节点的分布采用不同的稀疏方法,增加了时间复杂度,且在迭代过程中不能抑制矩阵条件数的增长。本文提出了一种简单的局部稀疏和补偿算法来划分粗细节点。图5示出一个局部稀疏补偿案例。在相邻的3个节点组成的三角形中去除最长边,并将最长边的权重分别加到其他两边上。图5(a)为节点间连接的邻接矩阵的示意图, 其中W表示节点间权重值。图5(b)示出某个局部三角形内去除最长边,并将最长边的权重用于惩罚三角形中其他两边的过程。
图5 矩阵局部稀疏补偿示例Fig.5 Matrix sparse compensation example. (a) Node adjacency matrix diagram; (b) Example of local sparse compensation
算法2为本文在一次稀疏处理中对矩阵L的处理流程:1) 输入为拉普拉斯矩阵L,当前迭代次数为t,节点的网格坐标数组为X、Y。输出为代表粗节点的索引向量C和稀疏后的矩阵L~;2) 去除拉普拉斯矩阵L对角线的元素,将对角线元素存储在D中,将L中元素的值取其相反数,得到邻接矩阵;3) 将所有节点的属性设为未知,第1个节点设为细节点;4) 遍历矩阵中每个节点i,如果i是粗节点,则忽略这个节点,转而对下一个节点进行处理;如果i是细节点,遍历节点i组成的每个三角形V,去除三角形V最长边,并惩罚其他两边。根据节点属性数组中的值设定节点是粗节点还是细节点;5) 矩阵L的值取其相反数,并加上D中对角线元素,得到稀疏后矩阵L~。
其中节点属性数组的分配根据下式计算。
(8)
式中:t表示当前的迭代次数;x和y表示节点的网格坐标;当Flag=1时表示节点为粗节点,Flag=0时表示节点为细节点。
节点属性数组的目的在于根据迭代次数的增加,在邻域内均匀交错的分布粗细节点。图6示出对256个分布在16像素×16像素网格坐标中的点,迭代次数从t=1到t=5变化时粗细节点属性分布的一个示例。红色表示细节点,黑色表示粗节点。
图6 不同迭代次数的节点属性分布示例Fig.6 Example of node attribute distribution at different iterations. (a) First iteration; (b) Second iteration; (c) Third iteration; (d) Fourth iteration; (e) Fifth iteration
图7示出稀疏的过程,每张图片代表了1次稀疏过程,其中红色节点表示细节点,黑色节点表示粗节点,红色连接线代表稀疏过程中被去除的边,蓝色连接线表示稀疏过程被保留下来的边,边的粗细代表权重的相对大小。图7(a)是一个四点邻域的拉普拉斯矩阵的邻接图,节点之间的连线代表权重。图7(h)表示稀疏的最终结果。
图7 矩阵被稀疏化的过程Fig.7 Matrix thinning process. (a) Neighborhood weights; (b) First iteration; (c) Second iteration; (d) Third iteration; (e) Fouth iteration; (f) Fifth iteration;(g) Sixth iteration;(h) Seventh iteration
2.2 分层预处理效果分析
表1 矩阵求逆平均时间比较
由表1中不同图案大小的平均求解时间及预处理前后平均求解时间的对比可看出,对于较小的图案(如64像素×64像素的图案),预处理的加速效果不明显,随着图案大小的增加,预处理前后时间之比越来越大,加速效果越来越明显。
3 结 论
本文提出一种惩罚算子在加权最小二乘法处理纺织品图案过程中对主结构和纹理进行不同程度的模糊处理以剔除纹理,保留主结构。经大量样本测试验证了惩罚算子在主结构和纹理附近可产生不同大小的权重值。由于提取主结构过程中稀疏矩阵的求逆时间消耗较大,本文采用分层预处理对加权最小二乘法处理纺织品图案过程中大型稀疏矩阵的求解进行加速,经实验检测,可在不影响提取主结构效果的同时有效降低稀疏矩阵的条件数以减少求逆时间消耗,加快主结构的提取速度。
FZXB
参考文献:
[1] 王耀南,陈铁健,贺振东,等. 智能制造装备视觉检测控制方法综述[J].控制理论与应用, 2015,32(3): 273-286.
WANG Yaonan, CHEN Tiejian, HE Zhendong, et al. A survey of visual detection and control methods for intelligent manufacturing equipment [J]. Control Theory and Application, 2015,32(3): 273-286.
[2] 李文羽, 程隆棣. 基于机器视觉和图像处理的织物疵点检测研究新进展[J]. 纺织学报, 2014,35(3): 158-164.
LI Wenyu, CHENG Longdi. New advances in fabric defect detection based on machine vision and image processing[J]. Journal of Textile Research, 2014,35(3): 158-164.
[3] LISCHINSKI D, FARBMAN Z, UYTTENDAELE M, et al. Interactive local adjustment of tonal values[J]. ACM Transactions on Graphics, 2006,25(3): 646-653.
[4] YIN W, GOLDFARB D, OSHER S. Image Cartoon-texture Decomposition and Feature Selection Using the Total Variation Regularized L1 Functional[M]. Berlin: Springer Berlin Heideberg, 2005:73-84.
[5] FARBMAN Z, FATTAL R, LISCHINSKI D, et al. Edge-preserving decompositions for multi-scale tone and detail manipulation[J]. ACM Transactions on Graphics, 2008,27(3): 1.
[6] FARBMAN Z, FATTAL R, LISCHINSKI D. Diffusion maps for edge-aware image editing [J]. ACM Transactions on Graphics, 2010,29(6):145.
[7] SAAD Y. Iterative Methods for Sparse Linear Sys-tems[M]. 北京:科学出版社, 2009:245-319.
SAAD Y. Iterative Methods for Sparse Linear Sys-tems [M]. Beijing:Science Press, 2009:245-319.
[8] KRISHNAN D, FATTAL R, SZELISKI R, et al. Efficient preconditioning of lapalacian matrices for computer graphics[J]. ACM Transactions on Graphics, 2013,32(4):142.
[9] XU L, YAN Q, XIA Y, et al. Structure extraction from texture via relative total variation[J]. ACM Transactions on Graphics, 2012, 31(6):139.
[10] KRISHNAN D, SZELISKI R. Multigrid and multilevel preconditioners for computational photography[J]. ACM Transactions on Graphics, 2011, 30(6):1-10.