景軍鋒,寧小翠,李鵬飛,張緩緩
(西安工程大學(xué) 電子信息學(xué)院,陜西 西安 710048)
紗線毛羽對(duì)于紗線的質(zhì)量有著很大的影響,也會(huì)影響紡織品的外觀以及手感,故對(duì)于紗線毛羽的檢測(cè)是紡織行業(yè)的重要一環(huán)[1]。Uster公報(bào)對(duì)于紗線毛羽的評(píng)價(jià)包括毛羽長(zhǎng)度指數(shù)、CV值等,紗線單位長(zhǎng)度上毛羽根數(shù)對(duì)于毛羽指數(shù)有著很大的影響,因此對(duì)于紗線毛羽的準(zhǔn)確計(jì)數(shù)至關(guān)重要。
目前毛羽統(tǒng)計(jì)的方法有投影計(jì)數(shù)法,如采用YG172毛羽儀測(cè)試;圖像處理法,如等高線統(tǒng)計(jì)法[2]、像素追蹤法等,然而這些方法中多數(shù)忽略了重疊交叉毛羽以及圈毛羽的影響[3],因而對(duì)于重疊交叉毛羽的分割計(jì)數(shù)鮮有涉及。傳統(tǒng)的圖像分割方法包括基于聚類的方法[4],形態(tài)學(xué)方法[5],分水嶺方法[6],最大類間方差法[7]等。 形態(tài)學(xué)方法包括形態(tài)學(xué)開運(yùn)算和形態(tài)學(xué)閉運(yùn)算,其需要運(yùn)用膨脹腐蝕輪廓邊緣線, 但膨脹腐蝕的次數(shù)需要人工手動(dòng)設(shè)置,存在效率低、普適性不足的問題。分水嶺方法的計(jì)算簡(jiǎn)單,精度高,但對(duì)噪聲敏感,會(huì)產(chǎn)生過分割現(xiàn)象,造成較大的誤差,故該方法在實(shí)際的纖維重疊交叉圖像中并不實(shí)用。最大類間方差法是應(yīng)用最廣泛的圖像分割方法,然而交叉毛羽的灰度值相近,導(dǎo)致將重疊部分多根毛羽連為一體,常用的分割方法難以分割準(zhǔn)確。
實(shí)驗(yàn)采用XSP-06-1600X光學(xué)顯微鏡進(jìn)行紗線毛羽圖像的采集,顯微鏡放大倍數(shù)為40倍。首先利用載玻片搭載紗線,通過調(diào)節(jié)顯微鏡的光圈來得到清晰的紗線毛羽圖像,然后進(jìn)行圖片抓取。
首先對(duì)采集到的圖像進(jìn)行灰度化處理,紗線毛羽圖像見圖1,紗線圖像灰度化處理結(jié)果見圖2。
圖1 紗線毛羽圖像
圖2 紗線圖像灰度化處理結(jié)果
圖3 紗線圖像形態(tài)學(xué)重建結(jié)果
邊界提取方法有Canny邊緣檢測(cè)、Sobel算子[13]邊緣檢測(cè)等。Canny邊緣檢測(cè)具有準(zhǔn)確度高、使用方便的優(yōu)點(diǎn),但在檢測(cè)中會(huì)造成邊緣不連貫存在斷層,從而給后續(xù)處理帶來障礙。水平集的測(cè)地活動(dòng)輪廓模型對(duì)于圖像的拓?fù)渥兓哂辛己玫倪m用性,該特點(diǎn)對(duì)于復(fù)雜的紗線毛羽輪廓來說十分有利。水平集方法的基本思想是引入偏微分方法將n維空間的演化問題表達(dá)為n+1維空間的高維演化問題。將活動(dòng)輪廓模型轉(zhuǎn)化為求解最小化能量泛函的值,這樣可以有效地改善在曲線演化過程中拓?fù)浣Y(jié)構(gòu)改變問題。測(cè)地活動(dòng)輪廓模型是基于邊緣的圖像分割方法,如果圖像中的對(duì)象與背景的分界處存在像素值上的差異,那么對(duì)象的輪廓就會(huì)形成明顯的邊緣,也就是說圖像的梯度模值在圖像的邊緣處會(huì)達(dá)到局部最大值。在該理論的基礎(chǔ)上,Caselles等提出了測(cè)地活動(dòng)輪廓模型(GAC),對(duì)于Snake模型的部分不足進(jìn)行了改進(jìn),解決了模型初始條件影響較大、無法自動(dòng)處理拓?fù)渥兓膯栴}[14]。GAC模型可以用式(1)泛函表示:
(1)
引入Heaviside函數(shù),可以得到變分水平集方法表示,如式(2)所示:
E(φ)=?Ωg|H(φ)|dxdy+cΩ1g[1-H(φ)]dxdy
(2)
GAC模型的梯度下降流表達(dá)式如式(3)所示:
(3)
式中:c為常速度系數(shù);g為邊緣停止函數(shù);z為紗線圖像的梯度模值;r為選擇的一個(gè)值為正的常數(shù);H(z)為Heaviside函數(shù);δe為所選擇的Heaviside函數(shù)的導(dǎo)數(shù);ε為控制函數(shù)從0變?yōu)?的速度快慢參數(shù)。其中δe、c、g可以使函數(shù)在紗線圖像平坦區(qū)域的演化速度加快。
基于水平集的測(cè)地活動(dòng)輪廓模型的處理結(jié)果以及Canny邊緣檢測(cè)結(jié)果圖的對(duì)比見圖4。
現(xiàn)以第十期監(jiān)測(cè)數(shù)據(jù)為例展開分析,此階段所有的檢測(cè)點(diǎn)均已布設(shè)完畢,其中21個(gè)監(jiān)測(cè)點(diǎn)被破壞、遮擋或存在積水無法觀測(cè),其余98個(gè)測(cè)點(diǎn)數(shù)據(jù)均在平差后錄入數(shù)據(jù)庫,并生成相應(yīng)圖表。
在圖像的識(shí)別和圖像處理中,許多重疊或者黏連物體的分割都需要圖像輪廓的凹點(diǎn)信息。凹點(diǎn)提取的前提是紗線毛羽邊緣的角點(diǎn)檢測(cè)。在利用水平集測(cè)地活動(dòng)輪廓模型獲取紗線毛羽的連續(xù)邊界輪廓后,進(jìn)行角點(diǎn)提取。
角點(diǎn)即曲線上局部曲率最大的點(diǎn),是圖像重要的特征,對(duì)圖像圖形的理解和分析有著重要的作用[15]。目前的角點(diǎn)檢測(cè)算法可以歸納為3類:基于灰度圖像的角點(diǎn)檢測(cè),基于二值圖像的角點(diǎn)檢測(cè),基于輪廓曲線的角點(diǎn)檢測(cè)。對(duì)于連續(xù)曲線來說,可以直接計(jì)算其曲率,而數(shù)字圖像由一組離散坐標(biāo)點(diǎn)組成,故無法直接計(jì)算紗線毛羽輪廓線上各個(gè)像素點(diǎn)的曲率,因此采用離散曲率公式計(jì)算各個(gè)像素點(diǎn)的曲率大小。常用的離散曲率計(jì)算方法有增量曲率,點(diǎn)到弦距離累加,k轉(zhuǎn)交曲率,k余弦曲率等。然而增量曲率以及點(diǎn)到弦距離累加的角點(diǎn)檢測(cè)算法存在角點(diǎn)定位低,算法時(shí)間復(fù)雜度高的問題。故采用k余弦曲率檢測(cè)方法。使用k余弦曲率計(jì)量圖像輪廓曲線上的曲率值,通過控制輸入的參數(shù)得到曲率,曲率的局部極值點(diǎn)輸出為角點(diǎn)。
將第t條輪廓曲線表示為:
S={Pi:(xi,yi)|i=1,2,…,n}
(4)
式中n為第t條輪廓線上點(diǎn)的個(gè)數(shù)。
對(duì)于點(diǎn)Pi(xi,yi)找出前移和后移的第k個(gè)點(diǎn)Pi-k(xi-k,yi-k)以及Pi+k(xi+k,yi+k),k余弦示意圖見圖5,向量Pi-kPi以及向量Pi+kPi之間夾角的k余弦定義如式(5)所示:
(5)
圖5 k余弦示意圖
將在Pi兩側(cè)計(jì)算曲線上所有點(diǎn)與P形成的向量夾角的余弦值進(jìn)行比較,可以得到余弦值最大的夾角,記作Cmax,當(dāng)前的k值記作km。曲率的極大值點(diǎn)應(yīng)該滿足余弦值極大,然后設(shè)定閾值Ct,若某點(diǎn)的余弦值大于閾值就意味著該點(diǎn)是輪廓曲線的曲率極大值點(diǎn),即角點(diǎn)。紗線毛羽的角點(diǎn)檢測(cè)結(jié)果見圖6。
圖6 紗線毛羽角點(diǎn)檢測(cè)結(jié)果
圖6角點(diǎn)中,有一部分是毛羽的不規(guī)則輪廓形成的,稱之為偽角點(diǎn),偽角點(diǎn)會(huì)對(duì)檢測(cè)造成干擾引起誤差,因此通過對(duì)輪廓邊界點(diǎn)與其的前繼點(diǎn)和后繼點(diǎn)形成夾角進(jìn)行非極大值抑制來實(shí)現(xiàn)偽角點(diǎn)剔除。偽角點(diǎn)剔除后的檢測(cè)結(jié)果見圖7。
圖7 剔除偽角點(diǎn)后的檢測(cè)結(jié)果
為了使紗線交叉毛羽的角點(diǎn)更加清晰可見,對(duì)角點(diǎn)提取的圖片放大20倍。紗線毛羽角點(diǎn)檢測(cè)局部放大圖見圖8。
圖8 紗線毛羽角點(diǎn)檢測(cè)局部放大圖
計(jì)算每一個(gè)候選角點(diǎn)P與其等距離的前繼點(diǎn)Pi-k和后繼點(diǎn)Pi+k組成向量的逆時(shí)針夾角θ, 設(shè)定角點(diǎn)與前繼點(diǎn)和后繼點(diǎn)所組成的夾角閾值為α,若向量OPi-k沿逆時(shí)針方向到向量OPi+k的夾角值θ大于等于設(shè)定的夾角閾值α,那么該角點(diǎn)是凹點(diǎn);否則該點(diǎn)是非凹點(diǎn)。凹點(diǎn)和非凹點(diǎn)的示意圖見圖9。
圖9 凹點(diǎn)和非凹點(diǎn)示意圖
采用凹點(diǎn)匹配算法表示紗線毛羽圖像輪廓邊界上的凹點(diǎn)是黏連毛羽分割中重要的特征,也是確定分割線的依據(jù)。在紗線毛羽的圖像中,對(duì)于交叉的毛羽來說,重疊交叉區(qū)域包含4個(gè)凹點(diǎn)。通過將凹點(diǎn)進(jìn)行匹配,然后連接匹配的凹點(diǎn)即可實(shí)現(xiàn)交叉黏連毛羽的分離。算法的主要流程為:將紗線毛羽輪廓邊界的凹點(diǎn)按照順時(shí)針方向存儲(chǔ),坐標(biāo)從凹點(diǎn)集中的第1個(gè)凹點(diǎn)開始,為每一個(gè)凹點(diǎn)找到匹配的凹點(diǎn)。設(shè)起始的凹點(diǎn)為Pi,按順序?qū)ふ以擖c(diǎn)處理相鄰點(diǎn)之外的匹配凹點(diǎn),需滿足2個(gè)條件:①2個(gè)凹點(diǎn)之間的歐氏距離最短;②2個(gè)凹點(diǎn)連線的中點(diǎn)處在紗線毛羽輪廓的內(nèi)部。此時(shí)2個(gè)匹配凹點(diǎn)的連線即為重疊交叉毛羽的分割線。凹點(diǎn)匹配示意圖見圖10。
圖10 凹點(diǎn)匹配示意圖
仿真實(shí)驗(yàn)在MATLAB2016a環(huán)境下進(jìn)行編譯,實(shí)驗(yàn)采用32 tex和40 tex 2種規(guī)格的新疆純棉紗線作為樣本進(jìn)行驗(yàn)證。樣本分為2組,每種規(guī)則的紗線采集500幅紗線圖片,圖片放大45倍。2根毛羽交叉,3根毛羽交叉以及多根毛羽重疊交叉的凹點(diǎn)匹配結(jié)果分別見圖11、12、13。
圖11 2根毛羽重疊交叉的凹點(diǎn)匹配結(jié)果
圖12 3根毛羽重疊交叉的凹點(diǎn)匹配結(jié)果
圖13 多根毛羽重疊交叉的凹點(diǎn)匹配結(jié)果
由圖11~13可以看出,對(duì)于紗線的交叉毛羽,2根毛羽的情況利用提出的凹點(diǎn)匹配可以較為準(zhǔn)確的得到分割線,而對(duì)于3根毛羽交叉的情況,凹點(diǎn)匹配存在欠分割的情況,對(duì)于多根毛羽交叉的情況存在過分割的情況。 對(duì)于2根毛羽的重疊交叉情況分割準(zhǔn)確率較高,可以達(dá)到96.8%;對(duì)于3~5根毛羽重疊交叉情況隨著毛羽交叉黏連情況的復(fù)雜度增加,分割準(zhǔn)確率有一定程度的下降,但分割準(zhǔn)確率可以達(dá)到73.4%。因?yàn)樵谠O(shè)置凹點(diǎn)匹配條件時(shí),取了凹點(diǎn)對(duì)的最短歐氏距離,利用顯微鏡拍攝的紗線毛羽圖像不均勻,導(dǎo)致干擾的凹點(diǎn)過多,所以出現(xiàn)了欠分割和過分割現(xiàn)象,使得本文算法對(duì)于超過3根毛羽交叉的情況準(zhǔn)確率有所下降。
為了解決紡織行業(yè)紗線毛羽檢測(cè)中存在的紗線毛羽重疊交叉問題,提出利用凹點(diǎn)匹配來進(jìn)行毛羽分割的方法。利用形態(tài)學(xué)重建消除了采集過程中過多的噪聲影響,采用水平集活動(dòng)輪廓模型得到了連續(xù)流暢的紗線毛羽輪廓邊界曲線,再通過焦點(diǎn)檢測(cè)結(jié)合凹點(diǎn)檢測(cè)原則提取凹點(diǎn),最后進(jìn)行凹點(diǎn)匹配進(jìn)行分割線的連接。通過大量的樣本進(jìn)行驗(yàn)證,本文提出的算法對(duì)于2根重疊交叉毛羽的分割準(zhǔn)確率達(dá)到了96.8%,2根以上的重疊交叉毛羽分割準(zhǔn)確率達(dá)到73.4%,具有一定的普適性。