葛蕓萍
(黃河水利職業(yè)技術(shù)學(xué)院,河南開封 475004)
紡織品在生產(chǎn)過程中受原材料、靜電、溫濕度等因素影響,會(huì)產(chǎn)生各種各樣的疵點(diǎn)并嚴(yán)重影響紡織品的使用價(jià)值,因此在驗(yàn)布過程中需要及時(shí)檢測(cè)出疵點(diǎn)[1]。人工方法對(duì)織物疵點(diǎn)檢測(cè)是在無眩光的背面窗旁或日光燈照明條件下通過經(jīng)驗(yàn)檢測(cè)。此方法簡(jiǎn)單,但是存在效率低、漏檢率高等缺點(diǎn),檢驗(yàn)結(jié)果正確率較低。自動(dòng)化檢測(cè)織物疵點(diǎn)已成為對(duì)織物質(zhì)量進(jìn)行控制和實(shí)現(xiàn)織造及驗(yàn)布工序的關(guān)鍵環(huán)節(jié),因此受到了紡織行業(yè)的關(guān)注。目前較為成熟的織物圖像疵點(diǎn)檢測(cè)算法有:小波變換(Wavelet transform,WT)檢測(cè)方法[2],如果邊緣周圍存在與疵點(diǎn)相似的痕跡,就很容易造成算法的誤判,對(duì)疵點(diǎn)定位效果明顯下降。均值濾波(Mean filtering,MF)檢測(cè)方法計(jì)算比較簡(jiǎn)單[3],但是不能很好地保護(hù)圖像細(xì)節(jié),對(duì)圖像邊緣的處理效果比較差。神經(jīng)網(wǎng)絡(luò)(Neural network,NN)算法[4],訓(xùn)練神經(jīng)網(wǎng)絡(luò)需要大量的數(shù)據(jù)樣本,但是織物生產(chǎn)過程的復(fù)雜性,隨機(jī)出現(xiàn)的疵點(diǎn)很可能存在與訓(xùn)練模型不一致,難以準(zhǔn)確判斷疵點(diǎn),同時(shí)神經(jīng)網(wǎng)絡(luò)參數(shù)值難于確定。裂變粒子濾波(Fission particle filter,FPF)算法[5],粒子的多次裂變生成更多的粒子,粒子濾波獲得疵點(diǎn)區(qū)域的最佳分割閾值,但是粒子多次裂變的次數(shù)不易控制。雙混沌機(jī)制粒子群(Double chaotic mechanism particle swarm optimization,DCMPSO)算法[6],在粒子群的全局、局部尋優(yōu)中采用不同的混沌機(jī)制,利于粒子群搜索到最優(yōu)解,但是雙混沌機(jī)制增加了算法的復(fù)雜性,檢測(cè)速度較低。改進(jìn)宇宙(Improved universe,IU)算法[7],通過設(shè)計(jì)宇宙空間拓?fù)浣Y(jié)構(gòu)以及宇宙進(jìn)化策略使得檢測(cè)率上具有較大的優(yōu)越性及良好的適應(yīng)性,但是宇宙空間拓?fù)浣Y(jié)構(gòu)對(duì)宇宙之間移民、交互存在制約性,導(dǎo)致具有傾斜度的疵點(diǎn)無法檢測(cè)出。
本文采用并行綜合學(xué)習(xí)粒子群算法(Parallel comprehensive learning particle swarm optimization,PCLPSO)對(duì)疵點(diǎn)進(jìn)行檢測(cè),綜合學(xué)習(xí)策略保持種群多樣性,使群體的搜索范圍加大,并行分群策略算法能夠在增加全局搜索最優(yōu)解的同時(shí)減少搜索時(shí)間。
在織物下方通過高頻率熒光燈光源照射[8],其上方的光學(xué)系統(tǒng)計(jì)算光敏面上成像單元ds的亮度信號(hào)Φ,見式(1):
(1)
式中:τ0為光學(xué)系統(tǒng)的透射率;π為圓周率;L為透光亮度;F為透鏡光圈數(shù);ds為光敏面像元的單位面積。
為計(jì)算方便,需要把Φ進(jìn)行轉(zhuǎn)換為電信號(hào)Q,見式(2):
Q=η·t·Φ
(2)
式中:t為曝光時(shí)間;η為光學(xué)系統(tǒng)響應(yīng)系數(shù)。
再利用圖像采集卡采集織物圖像的灰度值,見式(3):
h=k·η·t·Φ
(3)
式中:h為通過光敏面形成的織物像素灰度值;k為圖像采集卡的圖像轉(zhuǎn)換系數(shù)。
光敏面成像單元的Φ信號(hào)決定了圖像采集卡所獲像素的灰度值,通過計(jì)算Φ信號(hào)的差值即可發(fā)現(xiàn)織物疵點(diǎn),假設(shè)織物有疵點(diǎn)透光亮度為L(zhǎng)1,織物無疵點(diǎn)透光亮度為L(zhǎng)2,經(jīng)過光學(xué)系統(tǒng)采樣、量化,則獲得織物圖像的灰度值,見式(4):
(4)
當(dāng)織物有疵點(diǎn)時(shí),其像元處產(chǎn)生透光率的變化為Δτ,并且與織物的灰度值變化成正比,見式(5):
(5)
因此Δτ即可獲得織物圖像的疵點(diǎn),Δτ變化越大,說明疵點(diǎn)面積最大。
當(dāng)獲得待檢測(cè)織物圖像疵點(diǎn)后,需要把疵點(diǎn)與周圍像素進(jìn)行區(qū)分,以便檢測(cè)。但是疵點(diǎn)周圍可能存在一些噪聲[9-10],使得疵點(diǎn)表現(xiàn)不具有顯著性,因此需要把疵點(diǎn)進(jìn)行顯著性增強(qiáng)。在織物圖像疵點(diǎn)顯著性增強(qiáng)中,基于像素方法由于需要統(tǒng)計(jì)大量的像素導(dǎo)致計(jì)算量比較大,同時(shí)也影響了運(yùn)行效率。由于織物疵點(diǎn)往往集中在圖像的顯著區(qū)域,同時(shí)圖像灰度變化值比周圍非疵點(diǎn)區(qū)域圖像灰度變化值大,因此通過圖像灰度值差異來獲得顯著區(qū)域,即檢測(cè)出疵點(diǎn)區(qū)域。
將圖像劃分為若干個(gè)塊,把圖像所對(duì)應(yīng)的塊pi與其余塊pj對(duì)比,灰度值之間的差異性計(jì)算,見式(6):
(6)
式中:pi為以像素i為中心的像素塊,pj為以像素j為中心的像素塊,dgray(pi,pj)為像素塊pi、像素塊pj灰度值的歐式距離,dposition(pi,pj)為像素塊pi和像素塊pj的歐式距離,gi為像素塊pi的灰度值均值,gj為像素塊pj的灰度值均值,(Xi、Yi)為像素塊pi的中心坐標(biāo),(Xj、Yj)為像素塊pj的中心坐標(biāo),c為調(diào)節(jié)系數(shù),根據(jù)文獻(xiàn)以及驗(yàn)證其值取3較好。
如果像素塊之間灰度值差異越大,塊之間的位置距離越遠(yuǎn),則d(pi,pj)值越大,越顯著。為了使計(jì)算簡(jiǎn)便進(jìn)行,把dgray(pi,pj)和dposition(pi,pj)歸一化在[0,1]之間。
在織物圖像中,如果計(jì)算圖像中全部與pi相似的像素塊,則產(chǎn)生大量的數(shù)據(jù)計(jì)算,因此在實(shí)際疵點(diǎn)檢測(cè)中,為了評(píng)估像素塊唯一性,不需要考慮與其他所有像素塊的不同,只需計(jì)算K個(gè)與pi相似的像素塊,根據(jù)Goferman算法[11],當(dāng)K取64時(shí)檢測(cè)效果較好。在某尺度r下,則像素塊pi的單尺度顯著性值,見式(7):
(7)
單尺度顯著性計(jì)算無法避免背景部分對(duì)疵點(diǎn)區(qū)域的影響,通過多尺度顯著性計(jì)算使得疵點(diǎn)區(qū)域顯著性增強(qiáng),假設(shè)像素塊pi顯著性檢測(cè)的n個(gè)多尺度集合為R={r1,r2,…,rn},將多尺度顯著性的均方根值計(jì)算為像素塊pi的顯著性值,見式(8):
(8)
利用距離上的信息降低離顯著區(qū)域遠(yuǎn)的非顯著區(qū)域的顯著值,從而弱化背景紋理的影響,顯著性值計(jì)算見式(9):
(9)
式中:dfoci(i)為像素i與最鄰近的顯著像素的位置歐氏距離,且歸一化至區(qū)間[0,1]。
最后通過并行綜合學(xué)習(xí)粒子群算法尋優(yōu)獲得疵點(diǎn)區(qū)域的分割閾值。
基本粒子群算法啟動(dòng)時(shí)隨機(jī)產(chǎn)生一定數(shù)量的粒子,在搜索空間中尋找最合適的解決方案,更新速度和位置信息,見式(10):
(10)
式中:t為迭代次數(shù),vi,j(t)為第i個(gè)粒子在第t次迭代時(shí)的第j維速度,xi,j(t)為第i個(gè)粒子在第t次迭代時(shí)的第j維位置,pi,j為當(dāng)前最佳解,gg,j為歷史最佳解,ω為權(quán)重,c1、c1為相互獨(dú)立的隨機(jī)函數(shù),c1、c2為調(diào)節(jié)pi,j、gg,j的加速參數(shù)。
pi,j、gg,j在優(yōu)化過程中不斷更新,在算法的最后找到全局最優(yōu)或接近全局最優(yōu)的解,但是基本粒子群算法在運(yùn)行后期存在收斂速度慢、易陷入局部最優(yōu)的缺點(diǎn)。
2.2.1 綜合學(xué)習(xí)過程
當(dāng)粒子i的最優(yōu)值變化較小的時(shí)候,綜合學(xué)習(xí)粒子群算法對(duì)其速度更新見式(11):
vi,j(t+1)=ωvi,j(t)+c1r1[pfi(j)-xi,j(t)]
(11)
式中:pfi(j)為第i個(gè)粒子第j維位置參數(shù)對(duì)應(yīng)的學(xué)習(xí)對(duì)象,fi=[fi(1),fi(2),…,fi(J)]表示粒子i將學(xué)習(xí)哪個(gè)粒子的歷史最優(yōu)值,對(duì)于J維問題,隨機(jī)選取l維向群體最佳經(jīng)驗(yàn)gg,j學(xué)習(xí),而剩下的J-l維則根據(jù)學(xué)習(xí)概率pc來決定是學(xué)習(xí)粒子自身的最佳經(jīng)驗(yàn)還是學(xué)習(xí)其他粒子的最佳經(jīng)驗(yàn)[12-13]。
假定第i個(gè)粒子的第j維位置存在局部吸引因子μij,見式(12):
(12)
每個(gè)粒子的學(xué)習(xí)概率pc決定局部吸引因子μij主要向哪個(gè)粒子學(xué)習(xí),見式(13):
(13)
式中:pcmax和pcmin分別為學(xué)習(xí)概率最大值和最小值,e為算法間隔代數(shù),M為粒子群的大小,本文pcmax=0.5,pcmin=0.05,e=10。
對(duì)于粒子i的每一維,首先產(chǎn)生一個(gè)隨機(jī)數(shù)u,如果u>pc,則從自身個(gè)體的最優(yōu)值學(xué)習(xí);否則,采用局部吸引因子比較方法隨機(jī)選取種群中另外一個(gè)粒子的相應(yīng)維進(jìn)行更新,其步驟為:
a)隨機(jī)從種群中選擇兩個(gè)速度未更新的粒子;
b)比較兩個(gè)粒子的局部吸引因子,選擇局部吸引因子較大的粒子;
c)把選擇步驟b)的粒子所在維的個(gè)體最優(yōu)值作為學(xué)習(xí)依據(jù)。
2.2.3 并行搜索過程
為了減少搜索時(shí)間[14],采用并行搜索過程,并行綜合學(xué)習(xí)粒子群算法通過多群和合作策略提高了解的質(zhì)量和全局搜索能力,提高計(jì)算效率。
在并行策略中,粒子群被分為多個(gè)子群體。每個(gè)子群代表一個(gè)群體,并且每個(gè)子群只有兩種群:主群和從群,主群主要進(jìn)行全局搜索,獲得全局最優(yōu)值,從群主要進(jìn)行局部搜索,獲得局部最優(yōu)值,主群和從群的個(gè)體都進(jìn)行均勻分布,使得盡可能少的粒子能全面地表征整個(gè)空間所有潛在解的分布,并且各個(gè)子群的全局最優(yōu)值與局部最優(yōu)值可相互共享,分別將每個(gè)子群中粒子的坐標(biāo)以各個(gè)坐標(biāo)軸對(duì)應(yīng)的最大值、最小值為邊界,構(gòu)建出等同于峰值點(diǎn)數(shù)的各個(gè)并行空間。各個(gè)子群si,i∈(1,2,…,n)獨(dú)立運(yùn)行,因此每個(gè)子群si均可探索整個(gè)搜索區(qū)域。
主群內(nèi)部粒子個(gè)體更新搜索策略,見式(14):
(14)
然后,從群內(nèi)部粒子個(gè)體更新搜索策略,見式(15):
(15)
在閾值分割疵點(diǎn)顯著區(qū)域過程中,把疵點(diǎn)區(qū)域的顯著性值作為粒子個(gè)體的適應(yīng)度,見式(16):
(16)
式中:ζi為第i個(gè)粒子個(gè)體的適應(yīng)度。
粒子群收斂狀態(tài)通過適應(yīng)度方差σ2判斷,見式(17):
(17)
式中:ζavg為粒子群的平均適應(yīng)度,ξ為歸一化因子。
ξ主要是限制群體適應(yīng)度方差,計(jì)算見式(18):
ξ=max(1,max|ζi-ζavg|)
(18)
當(dāng)ξ<0.015時(shí),此時(shí)停止粒子群并行搜索、綜合學(xué)習(xí),其算法步驟如下:
a)輸入待檢測(cè)圖像;
b)設(shè)置PCLPSO相關(guān)參數(shù),包括粒子個(gè)數(shù)、最大迭代次數(shù)、劃分并行子群數(shù)量等;
c)粒子的位置、飛行速度隨機(jī)初始化;
d)按照式(11)、式(14)、式(15)更新粒子群;
e)若ξ<0.015或到最大迭代次數(shù),則算法結(jié)束,運(yùn)行步驟f);否則運(yùn)行步驟d);
f)輸出疵點(diǎn)檢測(cè)結(jié)果。
實(shí)驗(yàn)硬件配置內(nèi)存為16 GB,CPU 3.0GHz、獨(dú)立顯卡2 GB,軟件為Matlab 7.0,工業(yè)相機(jī)在織物上方15 cm處垂直拍攝以獲取織物圖像。粒子重要參數(shù):種群總數(shù)量為150個(gè)、最大迭代次數(shù)為400次、并行子群數(shù)量為8個(gè)、ω=0.8、c1=2.0、c2=1.5。
各種算法對(duì)不同疵點(diǎn)檢測(cè),涉及到的算法有PCLPSO與WT、MF、NN、FPF、DCMPSO、IU,涉及到的織物圖像疵點(diǎn)有:破損、缺失、移位、斷經(jīng),疵點(diǎn)檢測(cè)結(jié)果如圖1所示。從圖1各種算法對(duì)比實(shí)驗(yàn)可以看出,本文算法對(duì)織物不同疵點(diǎn)檢測(cè)效果較清晰,疵點(diǎn)區(qū)域的細(xì)節(jié)信息保留,在復(fù)雜的織物圖像中,本文算法不僅很好避免的背景紋理影響,而且疵點(diǎn)區(qū)域完整檢測(cè)出來,受噪聲干擾比較小,這是因?yàn)椴⑿芯C合學(xué)習(xí)粒子群算法對(duì)織物圖像疵點(diǎn)檢測(cè)時(shí),疵點(diǎn)區(qū)域通過多尺度顯著性增強(qiáng),把非顯著性區(qū)域弱化,從而有效地突出了織物疵點(diǎn)區(qū)域。其他算法對(duì)背景簡(jiǎn)單的織物圖像檢測(cè)有效,在檢測(cè)背景噪聲比較明顯時(shí)效果較差。
圖1 各種算法對(duì)各種疵點(diǎn)檢測(cè)結(jié)果Fig.1 Detection results of various defects of different algorithms
3.2.1 疵點(diǎn)檢測(cè)準(zhǔn)確率性能比較分析
為驗(yàn)證算法的有效性,對(duì)疵點(diǎn)檢測(cè)準(zhǔn)確率指標(biāo)性能比較分析,見式(19)。
Z/%=Z1/Z2×100
(19)
式中:Z為準(zhǔn)確率;Z1為檢測(cè)出疵點(diǎn)數(shù);Z2為疵點(diǎn) 總數(shù)。
各種算法對(duì)破損、缺失、移位、斷經(jīng)疵點(diǎn)檢測(cè),分別進(jìn)行40次蒙特卡羅仿真實(shí)驗(yàn),檢測(cè)準(zhǔn)確率指標(biāo)性能比較如圖2所示。從圖2可以看出,PCLPSO算法對(duì)各種疵點(diǎn)檢測(cè)準(zhǔn)確率較高,其中破損疵點(diǎn)檢測(cè)準(zhǔn)確率為88.15%,相比WT、MF、NN、FPF、DCMPSO、IU分別提高了1.91%、2.50%、4.32%、6.20%、8.16%、10.19%;缺失疵點(diǎn)檢測(cè)準(zhǔn)確率為90.46%,相比WT、MF、NN、FPF、DCMPSO、IU分別提高了2.21%、4.12%、5.68%、7.05%、8.99%、10.99%;移位疵點(diǎn)檢測(cè)準(zhǔn)確率為93.87%,相比WT、MF、NN、FPF、DCMPSO、IU分別提高了2.59%、3.72%、4.77%、6.19%、7.16%、8.39%;斷經(jīng)疵點(diǎn)檢測(cè)準(zhǔn)確率為86.54%,相比WT、MF、NN、FPF、DCMPSO、IU分別提高了1.81%、3.39%、4.52%、6.18%、8.18%、10.24%。
圖2 不同算法對(duì)各種疵點(diǎn)檢測(cè)準(zhǔn)確率指標(biāo)結(jié)果Fig.2 Defect detection accuracy index results of various defects of different algorithms
3.2.2 消耗時(shí)間指標(biāo)性能比較
統(tǒng)計(jì)各種算法獲得疵點(diǎn)檢測(cè)準(zhǔn)確率的消耗時(shí)間,分析結(jié)果如圖3所示。從圖3可以看出,本文PCLPSO算法對(duì)破損疵點(diǎn)檢測(cè)消耗時(shí)間為3.11 s;缺失疵點(diǎn)檢測(cè)消耗時(shí)間為2.81 s;移位疵點(diǎn)檢測(cè)消耗時(shí)間為2.42 s;斷經(jīng)疵點(diǎn)檢測(cè)消耗時(shí)間為3.26 s;消耗時(shí)間均少于其他算法,這說明本文PCLPSO算法具有較強(qiáng)的處理性能。
圖3 不同算法對(duì)各種疵點(diǎn)消耗時(shí)間指標(biāo)結(jié)果Fig.3 Time consuming index results of various defects of different algorithms
本文采用并行綜合學(xué)習(xí)粒子群算法對(duì)疵點(diǎn)進(jìn)行檢測(cè),通過織物透光率獲得織物圖像的疵點(diǎn),多尺度顯著性增強(qiáng)疵點(diǎn)區(qū)域;綜合學(xué)習(xí)粒子增設(shè)局部吸引因子,多群和并行策略提高全局搜索能力。實(shí)驗(yàn)仿真顯示本文算法識(shí)別疵點(diǎn)清晰,對(duì)破損疵點(diǎn)檢測(cè)準(zhǔn)確率為88.15%,檢測(cè)消耗時(shí)間為 3.11 s;缺失疵點(diǎn)檢測(cè)準(zhǔn)確率為90.46%,檢測(cè)消耗時(shí)間為2.81 s;移位疵點(diǎn)檢測(cè)準(zhǔn)確率為 93.87%,檢測(cè)消耗時(shí)間為 2.42 s;斷經(jīng)疵點(diǎn)檢測(cè)準(zhǔn)確率為86.54%,檢測(cè)消耗時(shí)間為3.26 s,檢測(cè)指標(biāo)優(yōu)于其他算法,為織物圖像疵點(diǎn)檢測(cè)研究提供了一種新方法。