基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法转让专利

申请号 : CN201711188161.8

文献号 : CN107945164B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 贾靓王新鹏庄丽华颜榴红

申请人 : 常州大学

摘要 :

本发明提供一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,该方法分析基于照明光源下平坦纺织品表面的数字图像像素灰度信息,将图像分割为互不重叠的网格,计算每个网格的IRM,HOG,GLCM和Gabor特征值,根据特征值分布自动定位纺织品表面瑕疵。本发明特别适用于自动识别在稳定照明光源下采集的纺织品平坦表面灰度数字图像中的纺织品表面瑕疵。

权利要求 :

1.一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,其特征在于:包括训练阶段和测试阶段两个阶段;训练阶段,根据一系列无瑕疵纺织品灰度图像,以下简称无瑕图像或训练样本,计算图格分割所需参数,而后对无瑕图像进行图格分割并计算测试阶段瑕疵识别所需参数;测试阶段,根据训练阶段得到的参数对一副纺织品图像进行图格分割并判断图格是否包含瑕疵,最后标记含有瑕疵的图格;

所述训练阶段包括以下步骤:

步骤1:使用形态学成分分析方法计算训练样本卡通成分Ic,将Ic按索引所在的行与列进行分割,获得训练样本图格;

步骤2:根据步骤1中获得的训练样本图格,计算任意训练样本的理想行数和理想列数,以获得阈值系数,然后根据训练样本的横向投影和纵向投影计算熵阈值,重复上述步骤以计算得到所有训练样本的阈值系数和熵阈值;

步骤3:对于训练样本集中任一训练样本,根据步骤2中所计算的阈值系数和熵阈值,采用HOG特征提取方法计算图格的特征向量,由特征向量计算距离矩阵,将距离矩阵经过傅里叶变换得到计算图格周期;根据图格周期计算图格各特征的理想统计值;

所述测试阶段包括以下步骤:

步骤4:图像校准,对于图格排列角度未知的测试样本,使用Canny边缘检测方法计算测试样本的边缘,使用Hough变换将边缘投影到参数空间中,取参数空间中前nθ个峰值所对应的直线斜率的角度θ,根据所取θ旋转测试样本,得到nθ个旋转图像,根据每个旋转图像的横向投影和纵向投影计算横向投影熵和纵向投影熵的最大值对应的角度 将测试样本旋转碍到最终的校准结果;

步骤5:测试样本图格分割,对步骤4产生的校准结果,根据步骤2得到的阈值系数重复步骤1得到测试样本校准结果的行分割位置 和列分割位置 并根据 和 将测试样本分割为图格;

步骤6:瑕疵识别,按照步骤3的方法计算测试样本的特征向量、图格周期、图格各特征的理想统计值以及理想统计值阈值,并将计算结果与理想统计值阈值进行比较,以识别有瑕疵的图格;

步骤1训练样本图格分割具体包括以下步骤:

对于一个训练样本,使用形态学成分分析方法计算训练样本卡通成分Ic,使用阈值fc·max(Ic)二值化Ic得到二值图像Itc,由Moore-Neighbor跟踪算法获取Itc中对象的闭合边缘,其中,fc为阈值系数;对于每个具有闭合边缘的对象,找出该对象行列索引的极值,如果该对象行索引极值之差的绝对值超过0.75·dimx(Itc),或列索引极值之差的绝对值超过

0.75·dimy(Itc),则从Itc中删除该对象,其中,dimx(I)表示二维图像I的总行数,dimy(I)表示I的总列数;统计Itc每行和每列的背景像素个数,按行和列的索引分别排列背景像素个数构成背景像素的横向投影 和纵向投影 和 的峰值分别记为多重集 和 对 和分别应用自适应聚类算法进行聚类,聚类中心分别保存为多重集 和 和 有可能包含多个相近的聚类中心,这些相近聚类中心中的最小值被分别选为阈值 和 中不小于 的峰值按所对应的行索引,记为S′h; 中不小于 的峰值按所对应的列索引,记为S′v;对于S′h,将S′h中元素做升序排列,行索引间距的多重集定义为具有行索引连续的稳定行间距的多重集 定义如下:

其中xi∈S′h,i为数值连续的正整数,作为图格分界集合Sh的初始值,其定义如下:类似地,计算 和Sv的初始值,定义

如下:

根据理想行数 和理想列数 其中 和 分别表示

具有最多元素的 和 对Sh和Sv进行扩展,即:从min(Sh)开始,以步长 向Itc行索引最小值1移动,即计算 检查是否存在 满足如果存在x′,则将x′添加进Sh,否则将x添加进Sh并保持Sh中元素升序排列,再次计算并重复上述步骤;类似地,从max(Sh)开始,以步长 向Itc行索引最大值dimx(Ic)移动,即计算 检查是否存在 满足如果存在x′,则将x′添加进Sh,否则将x添加进Sh,再次计算 并重复上述步骤;对Sv以步长 做类似扩展;根据Sh与Sv分别包含的行与列索引,将Ic按这些索引所在的行与列进行分割,分割所得的区域定义为图格,其定义如下:其中ir,ic,k1, 且1≤ic≤|Sv|-1,因此Ic分割出(|Sh|-1)·(|Sv|-1)个 而ir和ic分别是 以图格为单位的行与列索引;

步骤2计算阈值系数和熵阈值具体包括以下步骤:

对于训练样本集I1,I2...IN和N′个fc的可选值c1,c2...cN′,根据其中任意训练样本Ii(i=1,2...N),通过步骤1可计算N′个理想行数 和N′个理想列数 共中l=1,

2...N′;在Ii的多重集 和多重集 中出现次数最多元素所对应阈值系数fc的取值分别记为ch(i,l)和cv(i,l),定义如下:对于Ii,如果ch(i,l)与cv(i,l)相同,则相应索引(i,l)保存在集合 中,的定义如下:对于每个 即对于Ii,如果至少存在一个l′使得ch(i,l′)三cv(i,l′)成立,则与med({cl})距离最近的ch(i,l′)参与fc的计算,fc的定义如下:其中ch(i,l)的索引 表示取符合 定义中的i值;对于训练样本集I1,I2...IN中第i幅图像Ii,根据参数为fc的步骤1所计算Ii的横向投影 和纵向投影 分别计算 的熵 和 的熵 对于所有训练样本的 和 分别取这些熵的均值的整数部分得到阈值ex和ey;

步骤3计算测试阶段参数具体包括以下步骤:

步骤3.1计算图格周期,对于训练样本集I1,I2...IN中的第i 个训练样本Ii,根据步骤2所计算的阈值系数对Ii重复步骤1可得Sh和Sv,根据Sh和Sv将Ii分割为m×n个图格(m=|Sh|-1,n=|Sv|-1);使用HOG特征提取方法计算Ii图格 的特征向量并使特征向量索引与其对应的图格索引相同;计算 与第ir行中所有图格的欧氏距离,按计算所涉及图格的列索引升序排列,则可构成距离向量;对于 将 对应的距离向量按ic升序排列得到第ir行的n×n距离矩阵;对于 将第ir行对应的n×n距离矩阵按ir升序排列得到Ii的行距离矩阵 类似地,计算Ii的列距离矩阵 对向量进行傅立叶变换,得到 的周期与频谱;根据

的周期与频谱,计算周期中位值和频谱中位值,即图像行周期和图像行频谱;类似地,构建Ii的列距离矩阵 并计算图像列周期和图像列频谱;根据I1,I2...IN,可计算N个图像行周期和对应的N个图像行频谱,计算图像行频谱中位值 找出高于 的图像行频谱所对应的图像行周期,计算这些图像行周期的中位值 对图像列周期和图像列频谱重复相同步骤得到图像列频谱中位值 和图像列周期中位值 若 或 或则t取值为1,否则通过比较 与 相应的频谱大小确定t的取值,即:若

则t取 否则t取 其中, 表示图格理想行尺寸行数, 表示图格理想行尺寸列数;

步骤3.2计算图格各特征的理想统计值,该步骤包括四个子步骤:步骤3.2.1计算特征统计值,步骤3.2.2计算特征统计值排序,步骤3.2.3计算稳定特征元素,步骤3.2.4计算理想统计值;

步骤3.2.1计算特征统计值,根据步骤3.1计算训练样本集I1,I2...IN的图格周期t,对于第i个训练样本Ii,根据步骤2分割Ii得到图格 通过|T|个输入为二维灰度图像矩阵且输出为一维实向量的特征提取方法f1,f2...f|T|计算Ii图格 的特征向量其中,T为特征提取方法名称有序集合;基于fj的特征向量长

度定义为fj的特征元素数Fj;根据假设条件和图格周期t,Ii中的图格 与和 的纹理相同而L1,1,L2,1...Lt,1的纹理均不相同,其中l1,因此存在t类纹理不同的图格并且第k 类图格在第ir行和第(ir+l1t)行的列索引相同,因此列索引相同的第k类图格可按行列索引升序组成图格矩阵;对于第k类图格,最多存在t个图格矩阵C1,C2...Ct,根据组成图格矩阵的图格,由下式计算第k类图格基于fj的Ii的特征统计值 和其中 表示图格L是第it个图格矩阵 的任意元素, 表示基于

fj的图格矩阵 中所有元素的特征向量中第iF个元素的多重集,其中 且1≤iF≤Fj,将opt替换为mean,std,max或min时,则 定义相应的 和步骤3.2.2计算特征统计值排序,计算训练样本I1,I2...IN之间基于fj的 的欧式距离平均值d(j),其定义如下:对于f1,f2...f|T|,可得对应的d(1),d(2)...d(|T|);对于第k类图格纹理和第j个特征提取方法fj,根据I1,I2...IN,步骤3.2.1可产生N个 应用聚类算法对N个 进行聚类,聚类算法类别参数设为t,得到t个类别中心 对于 根据下式计算离 最近的类别中心所对应的类标签u*;

若 其中 表示t个聚类算法产生的类别中具有最多元素个数的类别中心,则* *交换索引(i,j,k)所确定的特征统计值和索引(i,j,k)所确定的特征统计值,其中k定义如下:对于索引k和j的所有固定组合,对于每个 重复上述 u*和 的

计算并判断 是否成立,若成立则重复k*的计算并交换索引(i,j,k)所确定的特征统计值和索引(i,j,k*)所确定的特征统计值;根据d(j)的定义,再次计算训练样本I1,I2...IN之间基于fj的 的欧式距离平均值,得到对应f1,f2...f|T|的d′(1),d′(2)...d′(|T|);

若d(j)≥d′(j)对于 都成立,则保留上述特征统计值交换结果,否则将特征统计值排序恢复到步骤3.2.1结束时的状态;

步骤3.2.3计算稳定特征元素,对于第k类图格纹理和第j个特征提取方法fj,根据上述步骤和I1,I2...IN计算的N个 的第iF 个元素 和 的第iF个元素 可计算第k类图格纹理基于fj的特征向量第iF个元素的稳定值s(j,k)(iF),其定义如下:将s(j,k)(iF)按索引iF升序排列则得到第k类图格纹理基于fj的稳定值向量s(j,k);若参数nf表示预定义的最小特征向量长度,那么当nf<Fj成立时,应用自适应聚类算法对s(j,k)(1),s(j,k)(2)...s(j,k)(Fj)进行聚类,若将自适应聚类算法产生的类别按从1开始的正整数依次编号,第iF个稳定值s(j,k)(iF)所属类别编号记为Ls(iF),则这些编号定义集合Ls;若定义预设参数最小特征数 则第k类图格纹理基于fj的特征向量第iF个元素的稳定性定义如下:表示将自适应聚类算法产生的类别按其元素数量降序排列得到的前nf个类别的编号集合;将 按索引iF升序排列则得到第k类图格纹理基于fj的稳定性向量 对于索引k和j的所有固定组合,重复上述 的计算;

步骤3.2.4计算理想统计值,对于第k类图格纹理和第j个特征提取方法fj,根据上述步骤和I1,I2...IN可计算 和 通过自适应聚类算法,可对向量进行聚类,若将自适应聚类算法产生的类别按

从1开始的正整数依次编号且第i个向量 所属类别编号记为 则这些编

号定义集合 对于第iu 个类别,第k类图格纹理基于fj的

理想统计值 定义如下:

表示属于第k类图格纹理基于fj的第iu个子类图格纹理的特征统计值中均值的平均值;对于索引k和j的所有固定组合,重复上述 的计算;

步骤3.3计算各特征的理想统计值阈值,根据训练样本集和上述步骤,可计算基于第j个特征提取方法fj的第k类图格纹理的第iu个子类图格纹理的理想统计值 对于任意训练样本由步骤2产生的任意图格L,根据其特征向量fj(L)按下式计算理想统计值索引k*和对于 可能存在多个L其理想统计值索引满足k*=k和 这些图格组成集合当 成立时,可按下式计算基于第j个特征提取方法的第k类图格纹理的第

iu个子类图格纹理的最大距离 即理想统计值阈值:

对于索引j,k和iu的所有固定组合,重复上述 的计算。

2.如权利要求1所述的基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,其特征在于:步骤6瑕疵识别具体包括:对测试样本的任意图格 限据特征提取方法f1,f2...f|T|计算特征向量 对于fj计算的特征向量 根据步骤3.2和步骤3.3计算理想统计值索引k*和 和 若

则 标记为有瑕疵,否则标记为无瑕疵;当所有图格基于fj的标记结束,检查每个有瑕疵图格Ll的8临域 内图格的标记,若存在无瑕图格 则判断是否成立,若成立则标记 为有瑕疵并令 且按下式计算dl+1,继续检查

内图格的标记并重复上述步骤直至dl+1为 其中,

其中阈值系数 0<γ≤1, L1表示基于fj的标记结束得到的有瑕图

格;当动态阈值为 时,全部有瑕图格所包含像素的行列索引即为检测结果。

说明书 :

基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法

技术领域

[0001] 本发明涉及纺织品瑕疵检测技术领域,特别是涉及一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法。

背景技术

[0002] 传统的纺织品瑕疵人工识别准确率只有60-75%(参见文献:K.Srinivasan,P.H.Dastoor,P.Radhakrishnaiah,et al..FDAS:a knowledge-based framework for analysis of defects in woven textiles tructures,J.Text.Inst.83(1992)431–448.),机器自动识别纺织品瑕疵的方法具有实际应用需求。平坦纺织品表面的数字图像采样(以下简称纺织品图像)属于二维纹理,二维纹理已被证明可根据17种壁纸群(wallpaper group)定义的图案排列方法生成(参见文献:H.Y.T.Ngan,G.K.H.Pang,N.H.C.Yung.Motif-based defect detection for patterned fabric,Pattern Recognit.(2008)1878–
1894.),用于生成二维纹理的图案称为图格(lattice)(参见:https://en.wikipedia.org/wiki/Wallpaper_group),图格内部图案称为motif。多数纺织品瑕疵自动检测方法只能处理墙纸群中p1类型的纺织品图像(参见文献:H.Y.T.Ngan,G.K.H.Pang,
N.H.C.Yung.Automated fabric defect detection—Areview,Image and Vision Computing 29(7)(2011)442–458.),仅有少数方法能处理p1类型以外的纺织品图像(参见文献:H.Y.T.Ngan,G.K.H.Pang,N.H.C.Yung.Motif-based defect detection for patterned fabric,Pattern Recognit.(2008)1878–1894.),例如基于小波预处理的基准图像差分方法(wavelet-pre-processed golden image subtraction,以下简称WGIS)(参见文献:H.Y.T.Ngan,G.K.H.Pang,N.H.C.Yung,et al.,Wavelet based methods on patterned fabric defect detection,Pattern Recognit.38(4)(2005)559–576.),共生矩阵方法(参见文献:C.J.Kuo,T.Su,Gray relational analysis for recognizing fabric defects,Text.Res.J.73(5)(2003)461–465.),布林带方法(Bollinger bands,以下简称BB)(参见文献:H.Y.T.Ngan,G.K.H.Pang,Novel method for patterned fabric inspection using bollinger bands,Opt.Eng.45(8)(2006)087202-1–087202-15.),规则带方法(regular bands,以下简称RB)(参见文献:H.Y.T.Ngan,G.K.H.Pang,Regularity analysis for patterned texture inspection,IEEE Trans.Autom.Sci.Eng.6(1)(2009)
131–144.),Elo评估方法(Elo rating method,以下简称ER)(参见文献:C.S.C.Tsang,H.Y.T.Ngan,G.K.H.Pang,Fabric inspection based on the Elo rating method,Pattern Recognit.51(2016)378–394.)等。尽管这些方法可以处理p1以外的纺织品图像,但它们的计算方法多是建立在基于人工选择的类似格的图案(以下简称图格)之上。例如WGIS要求人工选择图格的尺寸和纹理,BB,RB和ER要求人工定义图格的尺寸。这些先验知识在一定程度上降低了机器识别纺织品瑕疵的自动化程度。

发明内容

[0003] 本发明所要解决的技术问题是:为了提高机器识别纺织品瑕疵的自动化程度,本发明提供一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,主要包括设计一种自动分割纺织品图像为图格的方法以及基于图格并混合特征提取方法HOG、GLCM和Gabor相结合的瑕疵识别方法。
[0004] 为使陈述清楚明了,现集中定义本发明所涉及的部分符号和概念。
[0005] 表示正整数集合。表示包括零的整数集合。 表示包括零的正实数集合。表示包括零的实数集合。 表示元素个数为 的实向量。表示复数集合。 表示元素个数为 的复向量。T表示矩阵或向量转置。 表示n×m大小的实矩阵,其中表示k×n×m大小的实矩阵,其中 若 且 则Ai,:表示矩
阵A的第i行,A:,j表示矩阵A的第j列。
[0006] 若 且 则Al,:,:表示A中大小为n×m的第l层矩阵,Al,i,:表示A中大小为n×m的第l层矩阵的第i行,Al,:,j表示A中大小为n×m的第l层矩阵的第j列。
[0007] 表示比 小的最大整数,例如
[0008] {ai}表示由索引i确定的由元素ai组成的集合或多重集。
[0009] |S|表示集合S中的元素个数,若S为向量,则|S|表示向量所含元素个数,|S|称为向量长度。
[0010] avg(S)或mean(S):计算集合或多重集S的均值,S的元素均为实数。
[0011] std(S):计算集合或多重集S的标准差,S的元素均为实数。med(S):计算集合或多重集S的中位值,S的元素均为实数。mod(S):计算多重集S的众数,S的元素均为实数。max(S)表示找出集合或多重集S的元素最大值,例如max(Ic)代表Ic中像素的最大灰度值。max(s「条件)表示找出符合条件的 的最大值。min(S)表示找出集合或多重集S的元素最小值,例如min(Ic)代表Ic中像素的最小灰度值。
[0012] arg maxsf(s)表示在函数f的定义域内变量s的取值范围中,使得函数f(s)取最大值的s。
[0013] arg minsf(s)表示在函数f的定义域内变量s的取值范围中,使得函数f(s)取最小值的s。
[0014] arg maxsf1(s),f2(s)表示在函数f1和f2的定义域交集内变量s的取值范围中,使得函数f1(s)和f2(s)取最大值的s。
[0015] arg 表示在函数f(s)的定义域内变量s1和s2的取值范围中,使得函数f(s)取最大值的s1和s2。
[0016] arg modi({ai})表示对应多重集{ai}众数mod({ai})的索引。
[0017] dimx(I)表示二维图像I的总行数,dimy(I)表示I的总列数。
[0018] 图像原点:图像中像素行列索引开始的位置,该位置假设在图像左上角并且值为(1,1)。
[0019] I(x,y)表示在二维图像I中具有行列索引(x,y)的像素值。行索引 由图像原点开始以1为步长向下递增,1≤x≤dimx(I);列索引 由图像原点开始以1为步长向右递增,1≤y≤dimy(I)。
[0020] 图像边界:具有行索引dimx(I)的行和列索引dimy(I)的列。
[0021] 纺织品图像卡通成分Ic:对一幅灰度化的纺织品图像,应用基于曲波(curvelet)和离散余弦变换(local discrete cosine transform,以下简称DCT)的形态成分分析方法(morphological component analysis,以下简称MCA)所计算的具有光滑边缘图案的图像称为卡通成分Ic,Ic是一幅灰度图像。
[0022] DCT尺寸:MCA在图像局部应用DCT,即首先将图像划分为不重叠且具有固定大小的矩形区域,然后对每个区域应用DCT,矩形区域的大小称为DCT尺寸,单位为像素,区域内一行的像素数称为DCT尺寸的宽,一列的像素数称为DCT尺寸的高。
[0023] 阈值系数fc:用于二值化Ic的参数,该参数由步骤2计算得到。
[0024] 二值化卡通成分Itc:使用fc·max(Ic)作为阈值二值化Ic所得到的二值图像,其中1表示前景像素,即Ic中灰度值不小于阈值的像素,0表示背景像素。Itc与Ic的行数和列数相同。
[0025] 横向投影 是 的多重集,其中 1≤k≤dimy(I),即 表示行索引为x的背景像素个数。
[0026] 纵向投影 是 的多重集,其中 1≤l≤dimx(I),即 表示列索引为y的背景像素个数。
[0027] 表示 的峰值多重集, 中的元素称为峰值,峰值是指 中满足和 的元素 其中x表示行索引。
[0028] 表示 的峰值多重集, 中的元素称为峰值,峰值是指 中满足 和的元素 其中y表示列索引。
[0029] 二值对象质心:Itc中二值对象所包含前景像素图像行索引的平均值和列索引的平均值。
[0030] 表示按操作数顺序连接产生向量,例如标量v1=1和向量v2=[2  3]T,对于标量s1=8,s2=1,s3=5, 对于向量v1=[2 3]T,v2=[5 0 4]T,
[0031] 表示逐元素向量乘法,例如向量v1=[5  0.9 4]T,v2=[1 0 1]T,那么[0032] 其中
[0033] 图格索引(ir,ic):当图像分割为不重叠的图格后,根据图格在图像中的排列位置,每个图格具有唯一的图格行索引ir和唯一的图格列索引ic,图像中左上角图格索引为(1,1),紧邻该图格的右侧图格索引为(1,2),紧邻索引为(1,1)图格的下侧图格索引为(2,1),依此类推。 表示图格索引为(ir,ic)的图格,其中L1,1称为第一个图格。
[0034] 图格像素索引:图格由像素组成,因此图格是一副图像,图像原点和像素行列索引的定义也适用于图格像素索引。
[0035] 图格尺寸:图格所含像素行数与列数。
[0036] 图格纹理种类:基于图格分割和纺织品灰度图像产生图格纹理的种类,如图9所示,居中的图像根据图格分割产生了5×7个图格,按照图格的纹理,35个图格可分为3类。
[0037] 图格矩阵:以图格为单位的矩阵,即矩阵中每个元素都是一个图格。如图10所示,每个图像包含2×2的图格,对应一个2×2的图格矩阵,即矩阵中元素索引与图格索引相同。
[0038] 特征矩阵:使用特征提取方法计算图格矩阵中的每个元素的特征向量,以特征向量为单位组成矩阵,即矩阵中每个元素都是一个图格的特征向量,矩阵中元素索引与其对应的图格在图格矩阵中的索引相同。
[0039] 训练样本集:N副图像I1,I2…IN的分辨率相同,所有图像根据图格分割产生的图格纹理种类及其数量都相同且排列角度均为0°,若图格纹理种类数为 且不考虑形状畸变和光照变化等影响图像采样的因素下,第i副图像Ii中的图格 与 和的纹理相同且L1,1,L2,1…Lt,1的纹理均不相同,其中 例如附图10所示的四副图像I1,I2,I3和I4根据图格分割,每幅图像产生4个图格,四副图像的图格只有2种纹理类型,且排列方式均满足上述条件。Ii称为训练样本。
[0040] 测试样本集:与训练样本集类似,所有图像分辨率相同,且根据图格分割产生的图格纹理种类及其数量都相同,每幅图像图格的排列方式与训练样本集定义中描述的一致,与训练样本集不同的是,测试样本集中的图像含有位置随机且纹理不属于图格纹理种类的不规则区域,该区域定义为瑕疵。测试样本集中的图像称为测试样本。
[0041] 特征提取方法名称有序集合T:表示特征提取方法f1,f2…f|T|的名称集合,例如T={HOG,LBP},那么|T|=2且f1表示HOG方法,f2表示LBP方法。
[0042] maxx(a)表示包含行列索引(x,y)的集合a中,行索引x的最大值。minx(a)表示包含行列索引(x,y)的集合a中,行索引x的最小值。maxy(a)表示包含行列索引(x,y)的集合a中,列索引y的最大值。miny(a)表示包含行列索引(x,y)的集合a中,列索引y的最小值。
[0043] 表示根据横向投影 包含的背景像素数计算的熵。 表示根据横向投影 包含的背景像素数计算的熵。熵阈值ex表示根据一组图格排列角度为0°的无瑕纺织品灰度图像计算的 均值的整数部分。熵阈值ey表示根据一组图格排列角度为0°的无瑕纺织品灰度图像计算的 均值的整数部分。
[0044] 在以上定义的基础上,本发明解决其技术问题所采用的技术方案是:一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,包括两个阶段:训练阶段和测试阶段。训练阶段根据一系列无瑕疵纺织品图像(以下简称无瑕图像)分割图格并计算瑕疵识别所需参数;测试阶段根据训练阶段得到的参数对一副纺织品图像进行图格分割并判断图格是否包含瑕疵,最后标记含有瑕疵的图格。本发明方法假设纺织品图像具有如下特点:相对于纺织品图像的行和列,图格依图像行的方向横向排列,并按列的方向纵向排列;在MCA的卡通成分Ic中,图格具有几何形状并与背景像素在灰度上有显著差异。
[0045] 训练阶段包含三个步骤:步骤1训练样本图格分割,步骤2计算阈值系数和熵阈值,步骤3计算测试阶段参数。测试阶段包含三个步骤:步骤4图像校准,步骤5测试样本图格分割和步骤6瑕疵识别。
[0046] 步骤1训练样本图格分割。对于一个训练样本,使用形态学成分分析方法(MCA,出自文献Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738)计算训练样本卡通成分Ic,使用阈值fc·max(Ic)二值化Ic得到二值图像Itc,由Moore-Neighbor跟踪算法(Moore-Neighbor tracing algorithm,出自文献Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738)获取Itc中对象的闭合边缘。对于每个具有闭合边缘的对象,找出该对象行列索引的极值,如果该对象行索引极值之差的绝对值超过0.75·dimx(Itc),或列索引极值之差的绝对值超过0.75·dimy(Itc),则从Itc中删除该对象。统计Itc每行和每列的背景像素个数,按行和列的索引分别排列背景像素个数构成背景像素的横向投影 和纵向投影 和 的峰值分别记为多重集 和 对 和 分别应用自适应K-mean算法(Adaptive K-means)算法(Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738,以下简称自适应聚类算法)进行聚类,聚类中心分别保存为多重集 和和 有可能包含多个相近的聚类中心,这些相近聚类中心中的最小值被分别选为阈值 和 中不小于 的峰值按所对应的行索引,记为S′h; 中不小于 的峰值按所对应的列索引,记为S′v。对于S′h,将S′h中元素做升序排列,行索引间距的多重集定义为 具有行索引连续的稳定行间距的多重集 定
义如下。
[0047]
[0048] 其中xi∈S′h,i为数值连续的正整数。作为图格分界集合Sh的初始值,其定义如下。
[0049]
[0050] 类似地,可以计算 和Sv的初始值,定义如下。
[0051]
[0052]
[0053] 根据理想行数 和理想列数 其中 和 分别表示具有最多元素的 和 对Sh和Sv进行扩展,即:从min(Sh)开始,以步长 向Itc行索引最小值1移动,即计算 检查是否存在 满足
如果存在x′,则将x′添加进Sh,否则将x添加进Sh并保持Sh中元素升序排列,再次计算 并重复上述步骤;类似地,从max(Sh)开始,以步长 向Itc行索引最大值dimx(Ic)移动,即计算 检查是否存在 满足
如果存在x′,则将x′添加进Sh,否则将x添加进Sh,再次计算 并重
复上述步骤。对Sv以步长 做类似扩展。根据Sh与Sv分别包含的行与列索引,可以将Ic按这些索引所在的行与列进行分割,分割所得的区域定义为图格,其定义如下。
[0054]
[0055] 其中 1≤ir≤|Sh|-1且1≤ic≤|Sv|-1,因此Ic分割出(|Sh|-1)·(|Sv|-1)个 而ir和ic分别是 以图格为单位的行与列索引。
[0056] 步骤2计算阈值系数和熵阈值。对于训练样本集I1,I2…IN和N′个fc的可选值c1,c2…cN′,根据其中任意训练样本Ii(i=1,2…N),通过步骤1可计算N′个理想行数 和N′个理想列数 其中l=1,2…N′。在Ii的多重集 和多重集 中出现次数最多元素所对应fc的取值分别记为ch(i,l)和cv(i,l),定义如下。
[0057]
[0058] 对于Ii,如果ch(i,l)与cv(i,l)相同,则相应索引(i,l)保存在集合 中,的定义如下。
[0059]
[0060] 对于每个 即对于Ii,如果至少存在一个l′使得ch(i,l′)≡cv(i,l′)成立,则与med({cl})距离最近的ch(i,l′)参与fc的计算,fc的定义如下。
[0061]
[0062] 其中ch(i,l)的索引 表示取符合 定义中的i值。对于训练样本集I1,I2…IN中第i幅图像Ii,根据参数为fc的步骤1所计算Ii的横向投影 和纵向投影 分别计算的熵 和 的熵 对于所有训练样本的 和 分别取这些熵的均值的整数部分得到阈值ex和ey。
[0063] 步骤3计算测试阶段参数。该步骤具体包括以下三个步骤:步骤3.1计算图格周期;步骤3.2计算图格各特征的理想统计值;步骤3.3计算各特征的理想统计值阈值。
[0064] 步骤3.1计算图格周期。对于训练样本集I1,I2…IN中的第 个训练样本Ii,根据步骤2所计算的阈值系数对Ii重复步骤1可得Sh和Sv,根据Sh和Sv将Ii分割为m×n个图格(m=|Sh|-1,n=|Sv|-1)。使用HOG特征提取方法计算Ii图格 的特征向量并使特征向量索引与其对应的图格索引相同。计算 与第ir行中所有图格的欧氏距离,按计算所涉及图格的列索引升序排列,则可构成距离向量。对于 将 对应的距离向量按ic升序排列得到第ir行的n×n距离矩阵。对于 将第ir行对应的n×n距离矩阵按ir升序排列得到Ii的行距离矩阵 类似地,可以计算Ii的列距离矩阵 对向量
( 1≤l1≤m,1≤l3≤n)进行傅立叶变换,得到 的周期与频谱。根据 (
和 )的周期与频谱,计算周期中位值和频谱中位值,即图像行周期和图像行频谱。类似地,可以构建Ii的列距离矩阵 并计算图像列周期和图像列频谱。根据I1,I2…IN,可计算N个图像行周期和对应的N个图像行频谱,计算图像行频谱中位值 找出高于的图像行频谱所对应的图像行周期,计算这些图像行周期的中位值 对图像列周期和图像列频谱重复相同步骤得到图像列频谱中位值 和图像列周期中位值 若 或 或
则t取值为1,否则通过比较 与 相应的频谱大小确定t的取值,即:若 则
t取 否则t取
[0065] 步骤3.2计算图格各特征的理想统计值。该步骤包括四个子步骤:步骤3.2.1计算特征统计值,步骤3.2.2计算特征统计值排序,步骤3.2.3计算稳定特征元素,步骤3.2.4计算理想统计值。
[0066] 步骤3.2.1计算特征统计值,根据步骤3.1计算训练样本集I1,I2…IN的图格周期t。对于第i个训练样本Ii,根据步骤2分割Ii得到图格 通过|T|个(T为特征提取方法名称有序集合)输入为二维灰度图像矩阵且输出为一维实向量的特征提取方法f1,f2…f|T|计算Ii图格 的特征向量 基于fj的特征向量长度定义为fj的特
征元素数Fj。根据假设条件和图格周期t,Ii中的图格 与 和 的纹
理相同而L1,1,L2,1…Lt,1的纹理均不相同,其中 因此存在t类纹理不同的图格并且第k( 1≤k≤t)类图格在第ir行和第(ir+l1t)行的列索引相同,因此列索引相同的第k类图格可按行列索引升序组成图格矩阵。对于第k类图格,最多存在t个图格矩阵C1,C2…Ct,根据组成图格矩阵的图格,由下式计算第k类图格基于fj的Ii的特征统计值

[0067]
[0068] 其中 表示图格L是第it个图格矩阵 的任意元素, 表示基于fj的图格矩阵 中所有元素(图格)的特征向量中第iF个元素(实数)的多重集,其中且1≤iF≤Fj,将opt替换为mean,std,max或min时,则 定义相应的

[0069] 步骤3.2.2计算特征统计值排序。计算训练样本I1,I2…IN之间基于fj的 的欧式距离平均值d(j),其定义如下。
[0070]
[0071] 对于f1,f2…f|T|,可得对应的d(1),d(2)…d(|T|)。对于第k类图格纹理和第j个特征提取方法fj(即固定索引k和j),根据I1,I2…IN,步骤3.2.1可产生N个 应用聚类算法对N个 进行聚类,聚类算法类别参数设为t,得到t个类别中心 对于根据下式计算离 最近的类别中心所对应的类标签u*。
[0072]
[0073] 若 其中 表示t个聚类算法产生的类别中具有最多元素个数的类别中心,则交换索引(i,j,k)所确定的特征统计值和索引(i,j,k*)所确定的特征统计值,其中k*定义如下。
[0074]
[0075] 对于索引k和j的所有固定组合,对于每个 重复上述 u*和的计算并判断 是否成立,若成立则重复k*的计算并交换索引(i,j,k)所确定的特征统计值和索引(i,j,k*)所确定的特征统计值。根据d(j)的定义,再次计算训练样本I1,I2…IN之间基于fj的 的欧式距离平均值,得到对应f1,f2…f|T|的d′(1),d′(2)…d′(|T|)。若d(j)≥d′(j)对于 都成立,则保留上述特征统计值交换结果,否则将特征统计值排序恢复到步骤3.2.1结束时的状态。
[0076] 步骤3.2.3计算稳定特征元素。对于第k类图格纹理和第j个特征提取方法fj(即固定索引k和j),根据上述步骤和I1,I2…IN计算的N个 的第iF( 1≤iF≤Fj)个元素和 的第iF个元素 可计算第k类图格纹理基于fj的特征向量第iF个元素的稳定值s(j,k)(iF),其定义如下。
[0077]
[0078] 将s(j,k)(iF)按索引iF升序排列则得到第k类图格纹理基于fj的稳定值向量s(j,k)。若参数nf表示预定义的最小特征向量长度,那么当nf若定义预设参数最小特征数 则第k类图格纹理基于fj的特征向量第iF个元素的稳定性 定义如下。
[0079]
[0080] 表示将自适应聚类算法产生的类别按其元素数量降序排列得到的前nf个类别的编号集合。将 按索引iF升序排列则得到第k类图格纹理基于fj的稳定性向量 对于索引k和j的所有固定组合,重复上述 的计算。
[0081] 步骤3.2.4计算理想统计值。对于第k类图格纹理和第j个特征提取方法fj(即固定索引k和j),根据上述步骤和I1,I2…IN可计算 和 通过自适应聚类算法,可对向量 进行聚类,若将自适应聚类算
法产生的类别按从1开始的正整数依次编号且第i个向量 所属类别编号记为
则这些编号定义集合 对于第 个类别,第k类
图格纹理基于fj的理想统计值 定义如下。
[0082]
[0083] 表示属于第k类图格纹理基于fj的第iu个子类图格纹理的特征统计值中均值的平均值。对于索引k和j的所有固定组合,重复上述 的计算。
[0084] 步骤3.3计算各特征的理想统计值阈值。根据训练样本集和上述步骤,可计算基于第j个特征提取方法fj的第k类图格纹理的第iu个子类图格纹理的理想统计值 (即固定索引j,k和iu)。对于任意训练样本由步骤2产生的任意图格L,根据其特征向量fj(L)按下式计算理想统计值索引k*和
[0085]
[0086] 对于 可能存在多个L其理想统计值索引满足k*=k和 这些图格组成集合 当 成立时,可按下式计算基于第j个特征提取方法的第k类图格纹理的第iu个子类图格纹理的最大距离 即理想统计值阈值。
[0087]
[0088] 对于索引j,k和iu的所有固定组合,重复上述 的计算。
[0089] 步骤4图象校准。对于图格排列角度未知的测试样本I,使用Canny边缘检测方法计算I的边缘,使用Hough变换将边缘投影到参数空间中,取参数空间中前nθ个峰值所对应的直线斜率的角度θ,根据所取θ旋转I,得到nθ个旋转图像,根据每个旋转图像的 和 计算和 取 和 中最大值对应的角度 将I旋转 得到最终的校准结果。
[0090] 步骤5测试样本图格分割。对步骤4产生的校准结果,根据步骤2得到的阈值系数重复步骤1得到测试样本校准结果的行分割位置 和列分割位置 并根据 和 将测试样本分割为图格。
[0091] 步骤6瑕疵识别。对测试样本的任意图格 根据特征提取方法f1,f2…f|T|计算特征向量 对于fj计算的特征向量 根据步骤3.2和步骤3.3计算理想统计值索引k*和 和 若 则
标记为有瑕疵,否则标记为无瑕疵。当所有图格基于fj的标记结束,检查每个有瑕疵图格Ll的8临域 内图格的标记,若存在无瑕图格 则判断 是否成
立,若成立则标记 为有瑕疵并令 且按下式计算dl+1,继续检查 内图格
的标记并重复上述步骤直至dl+1为
[0092]
[0093] 其中阈值系数 0<γ≤1, L1表示基于fj的标记结束得到的有瑕图格。当动态阈值为 时,全部有瑕图格所包含像素的行列索引即为检测结果。
[0094] 本发明的有益效果是:本发明提供的一种基于峰值阈值、旋转校准和混合特征的纺织品瑕疵检测方法,该方法分析基于照明光源下平坦纺织品表面的数字图像像素灰度信息,将图像分割为互不重叠的网格,计算每个网格的IRM,HOG,GLCM和Gabor特征值,根据特征值分布自动定位纺织品表面瑕疵。本发明特别适用于自动识别在稳定照明光源下采集的纺织品平坦表面灰度数字图像中的纺织品表面瑕疵。

附图说明

[0095] 下面结合附图和实施例对本发明作进一步说明。
[0096] 图1是本发明的总流程示意图;图2是本发明的假设条件示意图;图3是本发明的步骤1训练样本图格分割的流程示意图;图4是本发明的步骤1中计算Sh初始值的基本原理示意图;图5是本发明的步骤2中纹理相同但方向各异的纺织品图像背景像素分布示意图;图6是本发明的步骤4中图像校准示意图;图7是本发明的步骤4中图像旋转示意图;图8是本发明的步骤3.1中计算图格周期流程示意图;图9是本发明的步骤3.2.1中计算每个无瑕纺织品灰度图像的特征统计值流程示意图;图10是本发明的步骤3.2.2中训练样本集示意图;图11是本发明的步骤3.2.2中排序流程示意图;图12是本发明的步骤3.3中计算各特征的理想统计值阈值流程示意图;图13是本发明的步骤6中瑕疵识别过程示意图;图14是步骤1图格分割算法流程图;图15是步骤2计算阈值系数和熵阈值算法流程图;图16是步骤3.1计算图格周期算法流程图;图17是算法A.1计算特征矩阵算法流程图;图18是算法A.2计算距离算法流程图;图19是算法A.3计算信号周期算法流程图;图20是步骤3.2.1计算特征统计值算法流程图;图21是步骤3.2.2计算特征统计值排序算法流程图;图22是步骤3.2.3计算稳定特征元素算法流程图;图23是步骤3.2.4计算理想统计值算法流程图;图24是步骤3.3计算各特征的理想统计值阈值算法流程图;图25是步骤4图像校准算法流程图;图26是算法A.4图像旋转算法流程图;图27是步骤6瑕疵识别算法流程图。

具体实施方式

[0097] 现在结合附图对本发明作详细的说明。此图为简化的示意图,仅以示意方式说明本发明的基本结构,因此其仅显示与本发明有关的构成。
[0098] 本发明计算方法的实施方式由编写计算机程序完成,具体实施过程涉及的自定义算法由伪代码描述。程序输入为灰度化的纺织品图像,程序输出为含瑕疵的图格集合。本发明的实施方案包括六个步骤,前三个步骤为训练阶段,后三个步骤为测试阶段。
[0099] 所述训练阶段包括以下步骤:步骤1:使用形态学成分分析方法计算训练样本卡通成分Ic,将Ic按索引所在的行与列进行分割,获得训练样本图格;步骤2:根据步骤1中获得的训练样本图格,计算任意训练样本的理想行数和理想列数,以获得阈值系数,然后根据训练样本的横向投影和纵向投影计算熵阈值,重复上述步骤以计算得到所有训练样本的阈值系数和熵阈值;步骤3:对于训练样本集中任一训练样本,根据步骤2中所计算的阈值系数和熵阈值,采用HOG特征提取方法计算图格的特征向量,由特征向量计算距离矩阵,将距离矩阵经过傅里叶变换得到计算图格周期;根据图格周期计算图格各特征的理想统计值;
[0100] 所述测试阶段包括以下步骤:步骤4:图像校准,对于图格排列角度未知的测试样本,使用Canny边缘检测方法计算测试样本的边缘,使用Hough变换将边缘投影到参数空间中,取参数空间中前nθ个峰值所对应的直线斜率的角度θ,根据所取θ旋转测试样本,得到nθ个旋转图像,根据每个旋转图像的横向投影和纵向投影计算横向投影熵和纵向投影熵的最大值对应的角度 将测试样本旋转 得到最终的校准结果;步骤5:测试样本图格分割,对步骤4产生的校准结果,根据步骤2得到的阈值系数重复步骤1得到测试样本校准结果的行分割位置 和列分割位置 并根据 和 将测试样本分割为图格;步骤6:瑕疵识别,按照步骤3的方法计算测试样本的特征向量、图格周期、图格各特征的理想统计值以及理想统计值阈值,并将计算结果与理想统计值阈值进行比较,以识别有瑕疵的图格。该方法的顺序及逻辑关系详见图1。
[0101] 如图2所示,本发明方法假设纺织品图像具有如下特点:相对于纺织品图像的行和列,图格依图像行的方向横向排列,并按列的方向纵向排列;在MCA的卡通成分Ic中,图格具有几何形状并与背景像素在灰度上有显著差异。图2中显示三种情况,每一行显示了一种情况,每行第一列是纺织品图像,第二列是Ic,第三列是Ic的三维Mesh图,第四列是二值化卡通成分每行背景像素的个数分布,第四列图的横坐标是行索引,纵坐标是背景像素个数。图2中第一行纺织品图像的图格没有几何形状,这导致了背景像素分布缺乏明显的周期性;第二行纺织品图像的图格虽然有几何形状,但图格中的形状与背景在Ic中的差异小,即相应的Mesh图大部分区域几乎是平坦的,这导致背景像素数量过多,背景像素分布缺乏明显的周期性;第三行纺织品图像图格具有几何形状并在Ic中与背景的差异大,其背景像素分布具有周期性。
[0102] 以下分别对这六个步骤展开说明。
[0103] 1、训练阶段
[0104] 如图1所示,训练阶段首先根据一系列无瑕纺织品灰度图像计算图格分割所需参数,而后对无瑕图像进行图格分割并计算测试阶段所需参数。训练阶段包含三个步骤:步骤1训练样本图格分割,步骤2计算阈值系数和熵阈值,步骤3计算测试阶段参数。本发明提出的图格分割方法根据步骤2得到的参数,通过步骤1分割图格。
[0105] 步骤1训练样本图格分割。如图3所示,对于一幅给定的纺织品图像,根据如图14所示的图格分割算法,使用MCA计算Ic和纹理成分,根据如图15所示的计算阈值系数和熵阈值的算法,计算得到的阈值系数fc,使用阈值fc·max(Ic)二值化Ic得到Itc。图3中显示了Ic的Mesh图,Ic中的二维图案在Mesh图中显示为三维“山峰”,二值化Ic相当于用一个灰色平面截断山峰,山峰平面上方的部分所对应的像素保存为1,山峰平面下方的部分所对应的像素保存为0,这个二值化结果为Itc,即图3右下方箭头“使用阈值二值化Ic得到Itc”所指的图案。
[0106] 假设纺织品图像至少由4个图格构成,那么Itc中对应图格的对象尺寸应小于图像尺寸的一半,因此如果出现了尺寸过大的情况,那么这个对象则不是图格,应从Itc中删除尺寸过大的对象,即:由Moore-Neighbor跟踪算法(Moore-Neighbor tracing algorithm,出自文献Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738)获取Itc中对象的闭合边缘。对于每个具有闭合边缘的对象,找出该对象行列索引的极值,如果该对象行索引极值之差的绝对值超过0.75·dimx(Itc),或列索引极值之差的绝对值超过0.75·dimy(Itc),则从Itc中删除该对象,即将尺寸过大的对象的像素置为0。
[0107] 纺织品图像图格的几何形状被Itc中的二值对象所描述,图格的丰富多样导致了二值对象几何形状的多样性,但二值对象之间背景像素的分布受其形状影响小,即:不同形状的二值对象,如果其沿相同方向的分布相同,那么背景像素在该方向上的分布相似。如图3所示,统计二值化卡通成分每行和每列的背景像素个数,按行和列的次序分别排列背景像素个数即构成了背景像素的横向投影 和纵向投影 和 的峰值分别记为多重集 和即图3中横向投影和纵向投影图示中靠近标签“横向投影 ”和“纵向投影 ”的深色小点,这些峰值反映了Itc中图格的分界。
[0108] 为获取这些峰值而过滤其他峰值,对 和 分别应用自适应K-mean算法(Adaptive K-means)算法(Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738,以下简称自适应聚类算法)进行聚类,聚类中心分别保存为多重集 和[0109] 由于数据的随机性, 和 有可能包含多个相近的聚类中心,这些相近聚类中心中的最小值被分别选为阈值 和 即:将 降序排列,从 开始,计算前后两元素之差的绝对值,差大于DCT尺寸高的 的第一个元素为 类似地,将 降序排列,从开始,计算前后两元素之差的绝对值,差大于DCT尺寸宽的 的第一个元素为
中不小于 的峰值按所对应的行索引,记为S′h; 中不小于 的峰值按所对应的列索引,记为S′v。
[0110] 由于瑕疵等因素的干扰,S′h和S′v中的行列索引不一定准确反映图格的分界。因此,需要评估S′h中是否存在具有稳定行间距的行索引,以及S′v中是否存在具有稳定列间距的列索引,这些行列索引作为图格的分界以分割图格。对于S′h,将S′h中元素做升序排列,行索引间距的多重集定义为 具有行索引连续的稳定行间距的多重集 定义如下。
[0111]
[0112] 其中xi∈S′h,i为数值连续的正整数,例如i可以取2,3,4,但不能只取2和4。由于可能存在多个符合 定义的连续间距,所以可能存在多个 其中具有最多元素个数的(记作 )所对应的行索引作为图格分界集合Sh的初始值,其定义如下。
[0113]
[0114] 如图4所示,显示了以一副纺织品图像横向投影 为基础计算Sh初始值的过程,左侧显示了 峰值 以深色小点表示,对 进行聚类则得到 图4中通过聚类 得到了7个类的聚类中心,根据 的聚类中心计算得到阈值 即图中标有 的直线上的叉。根据筛选 的元素,删除较小峰值,即图4中间的图示,根据行索引连续的峰值的行索引计算其行间距,则得到具有不同长度(元素个数)的 其中具有最多元素的 (即图4中标有“最大的 ”)为 Sh的初始值即为 如图4最右侧所示。类似地,可以计算和 的初始值,定义如下。
[0115]
[0116]
[0117] 因为Sh与Sv初始值所对应的 和 分别包含稳定行间距和稳定列间距,因此与 中位值定义为理想行数 和理想列数 Sh与Sv的初始值示例见附图3,如图3所示,纺织品图像仅部分区域被Sh和Sv的初始值同时覆盖,即图3标有“Sh和Sv的初始值”图示中的网格,只有竖直直线的区域仅有Sv覆盖。Sh和Sv的扩展基于和 进行。由于Sh中的行索引按升序排列,从min(Sh)开始,以步长 向Itc行索引最小值1移动,即计算 检查是否存在 满足 如
果存在x′,则将x′添加进Sh,否则将x添加进Sh并保持Sh中元素升序排列,再次计算并重复上述步骤;类似地,从max(Sh)开始,以步长 向Itc行索引最大值dimx(Ic)移动,即计算 检查是否存在 满足 如
果存在x′,则将x′添加进Sh,否则将x添加进Sh,再次计算 并重复上述步骤。
对Sv以步长 做类似扩展,详见图14所示的图格分割算法流程。扩展得到的Sh与Sv基本覆盖了纺织品图像大部分区域,如图3所示。根据Sh与Sv分别包含的行与列索引,可以将Ic按这些索引所在的行与列进行分割,分割所得的区域定义为图格,其定义如下。
[0118]
[0119] 其中 1≤ir≤|Sh|-1且1≤ic≤|Sv|-1,因此Ic分割出(|Sh|-1)·(|Sv|-1)个 而ir和ic分别是 以图格为单位的行与列索引。
[0120] 步骤2计算阈值系数和熵阈值。图格分割的一个重要参数是阈值系数fc,如图3所示,Ic的二值化是基于阈值fc·max(Ic)完成,而该阈值取决于fc。对于训练样本集I1,I2…IN的Ii应用基于不同fc取值的图格分割算法(其流程如图14所示)能得到多个 和 计算所得的 和 的直方图,其中出现次数最多的 和 及其对应的fc取值对确定fc的最终取值具有参考意义。对于训练样本集I1,I2…IN和N′个fc的可选值c1,c2…cN′,令 和分别表示输入为Ii,i=1,2…N且fc=cl,l=1,2…N′的步骤1计算得到的 和 对于每个Ii都存在N′个 和N′个 在关于Ii的多重集 和多重集中出现次数最多元素所对应的fc取值分别记为ch(i,l)和cv(i,l),定义如下。
[0121]
[0122] 对于Ii,如果ch(i,l)与cv(i,l)相同,则相应索引(i,l)保存在集合 中,的定义如下。
[0123]
[0124] 对于每个 即对于Ii,如果至少存在一个l′使得ch(i,l′)≡cv(i,l′)成立,则与med({cl})距离最近的ch(i,l′)参与fc的计算,fc的定义如下。
[0125]
[0126] 其中ch(i,l)的索引 表示取符合 定义中的i值。图像校准建立在对二值化纺织品图像卡通成分中背景像素分布的分析上,如图5所示。在图5中,位于中心的纺织品图像从0o开始,每隔15°旋转一次,一共旋转了7次(即0°,15°,30°,…),旋转的图像按顺时针方向围绕原图像排列,每幅图像根据参数为fc的步骤1所计算的横向投影 和纵向投影 以图形方式显示,图形下方标注有分别根据 和 计算的熵 和 观察附图5所示的和 可以发现0°和90°图像的熵超过其它旋转图像的熵。对于训练样本集I1,I2…IN,计算每幅图像的 和 取这些熵的均值的整数部分得到两个阈值ex和ey,可以用于判断图格的排列角度是否接近0°或90°的倍数。ex和ey的计算过程的伪代码描述见图15所示的计算阈值系数和熵阈值的算法流程。
[0127] 步骤3计算测试阶段参数。该步骤具体包括以下三个步骤:步骤3.1计算图格周期;步骤3.2计算图格各特征的理想统计值;步骤3.3计算各特征的理想统计值阈值。
[0128] 步骤3.1计算图格周期流程详见图8。根据训练样本集I1,I2…IN和步骤1.3可计算图格理想尺寸行数 和列数 再由步骤2分割第i( 1≤i≤N)个训练样本Ii得到Ii的m×n个图格。假设在Ii的每行和每列图格中,每相隔 个图格的两个图格的纹理相同,t′取值中的最小值称为图格周期t。例如t=1时,Ii的所有图格的纹理相同;t=2时,Ii的图格纹理每隔一个图格则相同。按图格的纹理分类,则Ii有t个类型的图格纹理。使用HOG(Dalal,N.,Triggs B.,Histograms of Oriented Gradients for Human Detection,IEEE Comput.Soc.Conf.on Comput.Vision and Pattern Recognition 1(2005)886–893)特征提取方法(以下简称HOG方法)计算Ii图格的特征向量并使特征向量索引与其对应的图格索引相同,即按图格的排列方式排列图格所对应的特征向量。对于Ii的图格 (1≤ir≤m,1≤ic≤n),计算 与第ir行中所有图格的欧氏距离,按计算所涉及图格的列索引升序排列,则可构成距离向量。因此固定第ir行中每个图格,根据第ir行的所有图格都可计算一个距离向量,将这些距离向量按计算所涉及的固定图格列索引升序排列,则得到基于第ir行的n×n距离矩阵,将距离矩阵按ir升序排列,得到Ii的行距离矩阵类似地,可以计算Ii的列距离矩阵 将向量 作为
一维信号进行快速傅立叶变换(fast Fourier transform,以下简称FFT),则可得到 的周期与频谱,这个周期和频谱定义为为Ii的行周期和行频谱,计算所有1≤l1≤m和1≤l3≤n所对应的 的行周期和行频谱并计算行周期中位值和行频谱中位值,所得中位值分别定义为图像行周期和图像行频谱。类似地,根据列距离矩阵D(c),可以计算Ii的列周期和列频谱,并计算相应的图像列周期和图像列频谱。附图8展示了I1,I2…IN的行周期和行频谱的概念性二维散点图,列周期和列频谱的概念性二维散点图。根据I1,I2…IN,可计算N个图像行周期和对应的N个图像行频谱,计算图像行频谱中位值 找出高于 的图像行频谱所对应的图像行周期,计算这些图像行周期的中位值 对图像列周期和图像列频谱重复相同步骤得到图像列频谱中位值 和图像列周期中位值 若 或 或 则t取值
为1,否则通过比较 与 相应的频谱确定t的取值,即:若 则t取 否则t取 步骤
3.1算法流程详见图16所示的计算图格周期算法流程图,图17所示的算法A.1计算特征矩阵算法流程图,图18所示的算法A.2距离计算算法流程图以及图19所示的算法A.3计算信号周期算法流程图。
[0129] 步骤3.2包括四个子步骤:步骤3.2.1计算特征统计值,步骤3.2.2计算特征统计值排序,步骤3.2.3计算稳定特征元素,步骤3.2.4计算理想统计值。
[0130] 步骤3.2.1计算每个无瑕纺织品灰度图像的特征统计值。根据上述步骤计算训练样本集I1,I2…IN的图格周期t,即纹理相同图格的排列规律。对于第i( 1≤i≤N)副无瑕图像Ii,可以分为t类纹理不同的图格,第ir行第k( 1≤k≤t)类图格和第(ir+t)行该类图格的图格列索引取值相同,由此可在Ii中只访问同属一类的图格,对于第k类图格,第ir行,第(ir+t)行,第(ir+2t)行…,的该类图格可组成矩阵,该矩阵称为图格矩阵,对于第k类图格,图格矩阵最多可存在t个,即C1,C2…Ct。如图9所示,当t=3时,第3类图格有3个矩阵:C1由第1行和第4行(即1+t行)的第3类图格组成,C2由第2行第5行的第3类图格组成,C3由第3行的第3类图格组成。假设存在|T|个输入为二维灰度图像矩阵且输出为一维实向量的特征提取方法f1,f2…f|T|,这些特征提取方法对于行数及列数相同的输入图像产生长度相同的特征向量,那么Ii中的图格 可根据f1,f2…f|T|计算|T|个特征向量 若Ii所有图格的尺寸根据I1,I2…IN中图格所含像素最小行数nr与最小列数nc进行调整,即只保留图格内第1行到第nr行和第1行到第nc列的像素,则Ii中任意两个图格 与 基于的特征向量长度相同,即 这个基于fj的特征向量长
度定义为fj的特征元素数Fj。对于Ii中第k类图格,可根据该类图格的图格矩阵C1,C2…Ct计算基于fj的特征向量中每个元素的均值 标准差 最大值 和最小值 这4
个值定义为Ii的特征统计值,即由下式定义。
[0131]
[0132] 其中 表示图格L是第it个图格矩阵 的任意元素, 其中表示基于fj的图格矩阵 中所有元素(图格)的特征向量中第iF个元素(实
数)的多重集,将opt替换为mean,std,max或min时,则 定义相应的
和 步骤3.2.1流程详见图20所示的计算特征统计值算法流程图。
[0133] 步骤3.2.2计算特征统计值排序。虽然I1,I2…IN为同一训练样本集的无瑕样本,但训练样本集的定义并不保证每个样本中第一个图格L1,1的纹理相同。如图10所示的训练样本集,该训练样本集包含4副无瑕图像I1,I2,I3和I4,其中I3中L1,1的纹理和其它样本中的第一个图格纹理不同。如果所有训练样本的第一个图格的纹理不同,那么步骤3.2.1计算特征统计值就需要重新排序。如图11所示,训练样本集包含训练样本I1,I2,I3,I4,I5和I6,其中I4的L1,1与其它样本的第一个图格纹理不同,导致特征统计值与其它样本的排序也不同。如果所有训练样本的第一个图格纹理都相同,那么排序则没有意义。为了检测排序是否必要,计算训练样本I1,I2…IN之间基于fj的 (1≤i≤N,1≤k≤t)的欧式距离平均值d(j),其定义如下。
[0134]
[0135] 对于f1,f2…f|T|,可得对应的d(1),d(2)…d(|T|),相应地,在完成排序后可再次根据上式计算d′(1),d′(2)…d′(|T|),比较前后两组距离平均值,若d(j)≥d′(j)对于1≤j≤|T|都成立,则保留排序结果,否则恢复排序前的状态。排序流程如图11所示。对于第k类图格纹理的N个 (1≤i≤N),应用聚类算法对其聚类,聚类算法类别参数设为t,则得到t个类别中心 对于 根据下式计算离 最近的类别中心所对应的类标签u*。
[0136]
[0137] 若 其中 表示t个类别中具有最多元素个数的类的中心,则交换索引(i,j,k)所确定的特征统计值与索引(i,j,k*)所确定的特征统计值,其中k*定义如下。
[0138]
[0139] 对于索引k和j的所有固定组合,对于每个 重复上述 u*和的计算并判断 是否成立,若成立则重复k*的计算并交换索引(i,j,k)所确定的特征统计值和索引(i,j,k*)所确定的特征统计值。步骤3.2.2流程详见图21所示的计算特征统计值排序算法流程图。
[0140] 步骤3.2.3计算稳定特征元素。根据训练样本集中I1,I2…IN的t种图格纹理可计算基于fj的N×t组特征统计值,对于第k( 1≤k≤t)类图格纹理,根据其 ( 1≤i≤N)的第iF( 1≤iF≤Fj)个元素 和 的第iF个元素 其中Fj为fj(
1≤j≤|T|)的特征元素数,可计算第k类图格纹理基于fj的特征向量第iF个元素的稳定值s(j,k)(iF),其定义如下。
[0141]
[0142] 将s(j,k)(iF)按索引iF升序排列则得到第k类图格纹理基于fj的稳定值向量s(j,k)。若参数nf表示预定义的最小特征向量长度,本方法nf取值为nf=8,那么当nf
[0143]
[0144] 其中δ为狄拉克δ函数,表示将自适应聚类算法产生的类别按类别所包含元素数降序排列得到的前nf个类别的编号集合。将 按索引iF升序排列则得到第k类图格纹理基于fj的稳定性向量 对于索引k和j的所有固定组合,重复上述 的计算。步骤3.2.3流程详见图22所示的算法流程图。
[0145] 步骤3.2.4计算理想统计值。对于训练样本集中I1,I2…IN的第k( 1≤k≤t)类图格纹理,根据步骤3.2.3可计算第k类图格纹理基于fj( 1≤j≤|T|)的稳定性向量通过自适应聚类算法,可对向量 进行聚类,若将自适应聚类算法产生的类别按从1开始的正整数依次编号且第i( 1≤i≤N)个向量 所属类别的编号记为 则这些编号定义集合 在实际情况中,可能
会发生 接近N的情况,因此定义参数 若U(j,k)>nK,则重新进行聚类,本方
法nK取值为nK=5。对于第iu( 1≤iu≤U(j,k))个类别,第k类图格纹理基于fj的理想统计值 定义如下。
[0146]
[0147] 表示属于第k类图格纹理基于fj的第iu个子类图格纹理的特征统计值中均值的平均值。对于索引k和j的所有固定组合,重复上述 的计算。步骤3.2.4流程详见图23所示的计算理想统计值算法图。
[0148] 步骤3.3计算各特征的理想统计值阈值。对于训练样本集中I1,I2…IN,根据步骤3.2.4可得到第k( 1≤k≤t)类图格纹理基于fj( 1≤j≤|T|)的第iu(1≤iu≤
U(j,k))个子类图格纹理的理想统计值 对于任意训练样本根据图格分割产生的任意图格L,可计算基于fj的特征向量fj(L)及其和所有理想统计值之间的欧氏距离,可找出其中最小距离所对应的理想统计值索引k*和 定义如下。
[0149]
[0150] 因此,对于第k类图格纹理基于fj的第iu个子类图格纹理的理想统计值 可能存在多个图格且图格相关的k*和 与 的索引k和iu相同,这些图格组成集合 当成立时,可计算 中图格的特征向量与 的最大距离 定义如下。
[0151]
[0152] 对于索引j,k和iu的所有固定组合,重复上述 的计算。 即为理想统计值阈值,其计算过程如附图12所示。附图12中,左侧为已完成图格分割的纺织品灰度图像,该图像包括2类图格纹理,对于图像中的任意图格 根据f1,f2…f|T|计算该图格的|T|个特征向量 对于第j个特征向量 计算k*和 结果以包含对应图格位置灰度色块的图像表示,其中深色灰度色块表示小距离,每个色块上的数字从左到右依次为k*和 对于 对应的索引k和iu,删除相应的 步骤3.3流程详见图
24所示的计算各特征的理想统计值阈值算法流程图。
[0153] 2、测试阶段
[0154] 在训练阶段得到的参数基础上,测试阶段对测试样本集中的一副图像进行瑕疵检测和定位。测试阶段包含三个步骤:步骤4图象校准,步骤5测试样本图格分割和步骤6瑕疵识别。
[0155] 步骤4图象校准。对于图格排列角度未知的测试样本I,将I依次旋转θ=1°,2°,3°…360°并计算相应的 和 如果角度θ中存在对应 和 最大值的 那么 称为理想校准角度,对应的旋转图像则作为校准结果。的定义如下。
[0156]
[0157] 上述计算 的过程由于θ的取值过多,计算效率不高,本法采用如图6所示的流程计算 的近似值。如图6所示,对于图格排列角度未知的纺织品图像I,本发明使用Canny边缘检测方法计算I的边缘,使用Hough变换将边缘投影到参数空间中,取参数空间中前nθ个峰值所对应的直线斜率的角度θ,根据所取θ旋转I,得到nθ个旋转图像,根据每个旋转图像的 和计算 和 取 和 中最大值对应的角度,用该角度近似 对应的旋转图像则作为最终的校准结果。校准流程的伪代码描述见图25所示图像校准算法流程图。
[0158] 虽然图像旋转可以通过仿射变换完成,但由仿射变换的图像的边角部分为空,如图7所示。图7中从左往右数依次排列了5幅图像,第一幅显示了图格按37°排列的纺织品图像I,第二副显示了应用仿射变换旋转负37°得到的图像(原始Ir),该图像中出现了留空(像素值为0)的4个三角形区域 如果不处理这些留空区域,那么这些区域不仅会影响 和的计算,还有可能被后续步骤识别为瑕疵。为填充 本发明采取了找出过 斜边 端点且平行于 的较长的直角边的直线,以该直线为对称轴将仿射变换得到的原始旋转图像Ir的像素复制给 附图7中从左往右数的第三幅和第四副图像视觉化了该过程,其伪代码描述见图26所示图像旋转算法流程图。图7最右边标有“最终Ir”的图像是图像旋转算法的旋转结果,虽然留空区域得到填充,但一些伪影(artifacts)出现在旋转结果中,例如左下角的图格排列出现了错位。
[0159] 步骤5测试样本图格分割。对步骤4产生的校准结果,根据步骤2得到的阈值系数重复步骤1得到测试样本校准结果的行分割位置 和列分割位置 并根据 和 将测试样本分割为图格。
[0160] 步骤6瑕疵识别,流程如附图13所示。对于一副给定纺织品灰度图像I,由步骤5产生I的图格,对I中的任意图格 根据特征提取方法f1,f2…f|T|计算 的|T|个特征向量对于基于fj( 1≤j≤|T|)的特征向量 计算步骤*
3.3定义的理想统计值索引k 和 并比较特征值距离 和
的大小,若 则 标记为有瑕疵,否则标记为无瑕疵。
[0161] 当所有图格基于fj的标记结束,检查每个有瑕疵图格Ll的8临域 内图格的标记,若存在无瑕图格 则比较 与动态阈值dl的大小,若 则 标记为有瑕疵并令 且按下式计算dl+1,继续检查 内图格的标记,并重复上述步骤
直至新计算的动态阈值为
[0162]
[0163] 其中 0<γ≤1,本方法取值为γ=0.93, L1表示基于fj的标记结束得到的有瑕图格。当动态阈值为 时,全部有瑕图格所包含像素的行列索引即为检测结果。
[0164] 步骤6流程详见图27所示瑕疵识别算法流程图。
[0165] 本发明的高效性实验证明:
[0166] 本发明方法的瑕疵检测效果评估中使用了香港大学电气和电子工程系工业自动化实验室提供的56幅像素大小为256×256的24位彩色纺织品图像,在实验中这些图像被转换为8位的灰度图像。56幅图像包括一种图案:箱形图像。箱形图像包括26幅无瑕疵和30幅有瑕疵图像。对每个有瑕纺织品图像使用算法A.4以随机角度生成10幅旋转图像,然后删除存在严重伪影的图像,最终得到251张图格按随机方向排列的有瑕纺织品图像作为测试样本集和未经旋转的26张无瑕纺织品图像作为训练样本集。训练样本集包括5种瑕疵类型:断端(broken end),孔洞(hole),网纹(netting multiple),粗条纹(thick bar)和细条纹(thin bar),每种瑕疵类型的具体数量详见表1的第一列。所有瑕疵图像都有相同大小的瑕疵基准图(ground-truth image),瑕疵基准图为2值图像,其中1表示瑕疵,0表示背景。用于比较的算法包括WGIS,BB,RB和ER,这些算法的参数设置与文献(Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738)相同。本发明方法基于该数据集的参数选择为:最小特征数nf=8,类别数极限nK=5,阈值系数γ=0.93,T={“HOG”,“GLCM”,“Gabor”}。
[0167] 用于评估的指标包括真阳性(true  positive,以下简称TP),假阳性(positiverate,以下简称FPR),真阳性率(truepositiverate,以下简称TPR),假阳性率(positiverate,以下简称FPR),阳性预测值(positivepredictivevalue,以下简称PPV)和阴性预测值negativepredictivevalue,以下简称NPV)。TPR衡量瑕疵基准图中表示瑕疵的像素被算法正确标定为瑕疵的比例,FPR衡量瑕疵基准图中表示背景的像素被算法错误标定为瑕疵的比例,PPV衡量算法输出的瑕疵中瑕疵基准图中的瑕疵所占比例,NPV衡量算法输出的背景中瑕疵基准图中的背景所占比例。对于TPR,PPV和NPV,指标值越大越好,对于FPR则越小越好。相关数学定义可以在文献(M.K.Ng,H.Y.T.Ngan,X.Yuan,,et al.,Patterned fabric inspection and visualization by the method of image decomposition,IEEETrans.Autom.Sci.Eng.11(3)(2014)943–947)中找到。本发明方法,WGIS,BB,RB和ER的指标计算方法与文献(Jia L.,Liang J.,Fabric defect inspection based on isotropic lattice segmentation,Journal of the Franklin Institute 354(13)(2017)5694-5738)相同。实验硬件平台为含处理器Intel CoreTMi7-3610QM 230-GHz和8.00GB内存的笔记本电脑,软件为Windows 10和Maltab8.4。
[0168] 表1罗列了箱形图像瑕疵检测结果,其中标记瑕疵类型的每行指标值为对应方法对该瑕疵类型所有测试样本运算结果的指标平均值。根据表1概况一栏,本发明方法具有最优的全局TPR(0.724)和全局NPV(0.994),其全局TPR比WGIS次高的全局TPR(0.558)高很多,但WGIS的全局FPR较低。对于孔洞,网纹和细条纹类型的瑕疵,本发明方法的TPR达到最优,同时FPR偏大。断端和粗条纹TPR(0.68;0.85)比WGIS(0.98;1.00)低,但FPR(0.2,0.3)比WGIS(0.12,0.16)高。综上,本发明方法达到了全局最优TPR和NPV,其全局FPR较大,同时本发明方法特别适用于检测箱形图像的孔洞,网纹和细条纹类型的瑕疵。
[0169] 表1箱形图像瑕疵检测结果
[0170]
[0171] 以上述依据本发明的理想实施例为启示,通过上述的说明内容,相关的工作人员完全可以在不偏离本发明的范围内,进行多样的变更以及修改。本项发明的技术范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。