盧思童,劉讓同,2,李淑靜,2,李 亮,劉淑萍,2
(1.中原工學(xué)院 服裝學(xué)院,河南 鄭州 450007;2.河南省功能紡織材料重點(diǎn)實(shí)驗(yàn)室,河南 鄭州 450007;3.中原工學(xué)院 紡織學(xué)院,河南 鄭州 450007)
圖像分割是圖像處理的關(guān)鍵技術(shù),其目的是將目標(biāo)區(qū)域與背景區(qū)域分離[1],圖像分割質(zhì)量的好壞直接影響后續(xù)測(cè)量的有效性[2]。常見(jiàn)的圖像分割方法包括邊緣檢測(cè)[3]、閾值分割[4]和區(qū)域跟蹤[5],其中閾值分割簡(jiǎn)單有效,最大類間方差法[6](Otsu)是閾值分割中最常用的方法,其核心是確定圖像分割的閾值。
近年來(lái)很多學(xué)者致力于將新方法運(yùn)用于圖像分割。結(jié)合遺傳算法的Otsu算法在圖像分割中取得了較好的應(yīng)用效果。在工業(yè)上,將遺傳算法與Otsu算法結(jié)合,可實(shí)現(xiàn)產(chǎn)品缺陷的精確檢測(cè)[7-9]。在醫(yī)學(xué)上,利用遺傳算法的自適應(yīng)性和并行性的尋優(yōu)特點(diǎn),可實(shí)現(xiàn)對(duì)醫(yī)學(xué)圖像的精確分割[10-11]。在紡織服裝上,將遺傳算法運(yùn)用于織物疵點(diǎn)檢測(cè),進(jìn)行最優(yōu)的特征集搜索,可實(shí)現(xiàn)織物疵點(diǎn)特征的選擇[12]。
本文將遺傳算法與Otsu算法有機(jī)結(jié)合,提出了一種新的分割遺傳算法并運(yùn)用于織物中液態(tài)水傳輸域圖像的分割,利用遺傳算法以及Otsu算法的適應(yīng)度函數(shù)匹配不同織物中液態(tài)水傳輸域與背景區(qū)域的最佳分割閾值,并對(duì)算法有效性、種群大小、迭代次數(shù)方面進(jìn)行了討論,得到了較為理想的液態(tài)水傳輸域分割效果。
Otsu算法是對(duì)圖像進(jìn)行二值化分割的高效算法。該算法通過(guò)設(shè)定閾值將圖像分為目標(biāo)區(qū)域和背景區(qū)域。閾值選取是通過(guò)計(jì)算二者之間的方差,當(dāng)閾值T為某一個(gè)值時(shí),類間方差最大,此時(shí)T就作為圖像分割的閾值[13]。Otsu算法需要遍歷所有灰度值,計(jì)算每個(gè)灰度值對(duì)應(yīng)的類間方差,計(jì)算量大且步驟繁瑣。
遺傳算法(GA)是一種基于種群的算法,其基本原理如下:隨機(jī)生成N條序列作為初始種群,種群中不同的序列代表問(wèn)題的不同解。采用二進(jìn)制編碼將序列編碼成字符串的形式。將序列視作一條染色體,序列中的每個(gè)節(jié)點(diǎn)視為一個(gè)基因單位,每條染色體都由多個(gè)基因單位組成。染色體序列如圖1所示。
圖1 染色體序列Fig.1 Chromosome sequence
遺傳算法的核心是通過(guò)不斷的交叉、變異,挑選更優(yōu)秀的染色體群,讓染色體的適應(yīng)度值不斷收斂,從而得到全局或局部最優(yōu)解。遺傳算法能夠自適應(yīng)控制搜索過(guò)程以求得最佳分割閾值,有效彌補(bǔ)了傳統(tǒng)Otsu算法的不足。
交叉操作通常按照交叉概率大小從種群中選定2條染色體,以單點(diǎn)交叉的方式互換二者當(dāng)中的部分基因,從而創(chuàng)建2條新的染色體。交叉操作是產(chǎn)生新個(gè)體的主要方法,它決定了遺傳算法的全局搜索能力。圖2是具體的基因交叉操作。
圖2 基因的交叉操作Fig.2 Gene crossover
變異操作通常按照變異概率大小從種群中選定1條染色體,隨機(jī)改變?nèi)旧w的一位或多位基因,若原有的基因值為0,則將其變?yōu)?;反之,則將其變?yōu)?,從而創(chuàng)建1條新的染色體。變異操作決定了遺傳算法在迭代后期的局部搜索能力。圖3是具體的基因變異操作。
圖3 基因的變異操作Fig.3 Gene mutation
遺傳算法具有并行性和自適應(yīng)全局搜索兩大優(yōu)點(diǎn),而Otsu算法尋找閾值的過(guò)程實(shí)質(zhì)上是一種尋求最優(yōu)解的過(guò)程,因此本文將遺傳算法與Otsu算法有機(jī)結(jié)合,提出了一種新的分割遺傳算法,利用遺傳算法快速尋優(yōu)的特點(diǎn),對(duì)Otsu算法進(jìn)行優(yōu)化,從而提高效率。分割遺傳算法的具體實(shí)現(xiàn)過(guò)程如圖4所示。
對(duì)采集的原始圖像進(jìn)行預(yù)處理。預(yù)處理包括圖像減運(yùn)算和濾波處理,以提高圖像的質(zhì)量。
分割遺傳算法的主要步驟如下:
①種群初始化。產(chǎn)生第1代種群,種群大小和迭代次數(shù)是人為設(shè)定的,設(shè)定應(yīng)當(dāng)合理。
②編碼。圖像的灰度值在0~255之間,正好對(duì)應(yīng)了一個(gè)8位二進(jìn)制,將各個(gè)染色體編碼為8位二進(jìn)制。
圖4 分割遺傳算法操作流程圖Fig.4 Operation flow chart of segmentation genetic algorithm
③適應(yīng)度評(píng)估。采用Otsu算法中最大類間方差公式作為適應(yīng)度函數(shù),見(jiàn)式(1):
σ2(T)=Q0(μ0-μ)2+Q1(μ1-μ)2
(1)
式中:T為圖像分割的最優(yōu)閾值;σ2(T)為最大類間方差;Q0為背景區(qū)域出現(xiàn)的概率;Q1為目標(biāo)區(qū)域出現(xiàn)的概率;μ0為背景區(qū)域的灰度值;μ1為目標(biāo)區(qū)域的灰度值;μ為圖像的總灰度平均值。
當(dāng)目標(biāo)區(qū)域與背景區(qū)域的類間方差最大時(shí),T為最優(yōu)閾值。該公式的推導(dǎo)過(guò)程如下:假設(shè)圖像的灰度級(jí)為L(zhǎng),圖像灰度的變化范圍為:(0~L-1),其中,灰度級(jí)為i的像素點(diǎn)的個(gè)數(shù)為ni。每個(gè)像素值在圖像中出現(xiàn)的概率pi為:
(2)
Otsu算法通過(guò)選取閾值T將圖像分為背景區(qū)域w0(灰度級(jí)從1~T)和目標(biāo)區(qū)域w1(灰度級(jí)從T+1~L-1)。w0和w1的出現(xiàn)概率Q0、Q1分別為:
(3)
w0和w1的均值μ0、μ1分別為:
(4)
圖像的總灰度平均值μ為:
μ=Q0μ0+Q1μ1
(5)
④選擇個(gè)體。根據(jù)遺傳算法的收斂定理,計(jì)算每個(gè)個(gè)體的適應(yīng)度值,適應(yīng)度值按照升序排列。淘汰適應(yīng)度低的個(gè)體,保存適應(yīng)度高的個(gè)體。
⑤交叉和變異。按照變異和交叉的概率對(duì)群體內(nèi)的染色體進(jìn)行相關(guān)操作,實(shí)現(xiàn)新個(gè)體的生成。
⑥更新種群。比較得出的新個(gè)體和舊個(gè)體,按照適應(yīng)度評(píng)估對(duì)種群進(jìn)行更新處理,獲取新種群。
⑦算法終止。當(dāng)算法進(jìn)化到最大迭代次數(shù)時(shí)終止。
選取4種織物作為研究對(duì)象,織物的特征參數(shù)如表1所示。利用BASLER工業(yè)相機(jī)acA2500-14gm(深圳市杰智通科技有限公司)采集4種織物中液態(tài)水傳輸域圖像,圖像的水平/垂直分辨率為(2 592像素×1 944像素)。圖像存儲(chǔ)為bmp格式。
表1 織物特征參數(shù)Tab.1 Fabric characteristic parameters
液態(tài)水在織物中傳輸時(shí)會(huì)被織物吸收且在表面形成灰度明顯加深的水印。不同組織結(jié)構(gòu)的織物會(huì)形成不同的液態(tài)水傳輸域,呈現(xiàn)不同的水印形狀[14],如圖5所示。圖5(a)傳輸域形狀近似橢圓;圖5(b)和圖5(c)液態(tài)水分別沿經(jīng)向或緯向傳輸,呈現(xiàn)出單項(xiàng)傳輸特征;圖5(d)液態(tài)水呈現(xiàn)“十”字形狀傳輸??梢?jiàn)液態(tài)水在織物中形成的傳輸域圖像明顯具有時(shí)變性和邊緣形態(tài)復(fù)雜性,具體有:①織物中液態(tài)水傳輸域的邊界比較模糊;②受到光照環(huán)境的影響,織物樣品背景區(qū)域會(huì)出現(xiàn)不同程度的亮度不均勻,光線在織物表面不同區(qū)域的反射存在差異,如果液態(tài)水未被織物完全吸收時(shí),液態(tài)水表面會(huì)產(chǎn)生明顯的亮白反光;③織物表面細(xì)膩的紋理在圖像中清晰可見(jiàn);④經(jīng)緯密度小的織物樣品(W1)紗線間的孔隙相當(dāng)明顯,這導(dǎo)致圖像在形態(tài)特征提取時(shí)難以確定分割時(shí)的合適閾值,影響算法的適應(yīng)性。受到以上因素的影響,不能直接對(duì)織物表面液態(tài)水傳輸域圖像進(jìn)行分割,需要通過(guò)預(yù)處理來(lái)提高圖像的質(zhì)量。
圖5 液態(tài)水傳輸域的形狀Fig.5 Shapes of liquid water transport domains.(a)W1 oval;(b)W2 latitude;(c)W3 longitude;(d)W4 cross
減運(yùn)算:將樣品W1潤(rùn)濕前、后的圖像進(jìn)行同一位置像素相減。減運(yùn)算結(jié)果圖見(jiàn)圖6。
圖6 樣品W1減運(yùn)算結(jié)果圖Fig.6 Sample W1 subtraction result graph.(a)Image before wetting;(b)Image after wetting;(c)Subtraction result
減運(yùn)算處理能夠減少光照環(huán)境的影響,它通過(guò)計(jì)算2幅圖像的像素差,使圖像中液態(tài)水傳輸域區(qū)域突顯出來(lái)。
濾波處理:中值濾波公式如下:
g(x,y)=Med{f(x-i,y-i)},(i,j)∈S
(7)
式中:g(x,y)為輸出像素值;S為二維濾波窗口;i為橫軸所在位置,j為豎軸所在位置;f(x,y)為輸入圖像。
首先選擇(2n+1)×(2n+1)的窗口,讓窗口沿圖像數(shù)據(jù)從左往右、從上到下沿每個(gè)像素滑動(dòng);其次在每次滑動(dòng)后,對(duì)窗口內(nèi)的像素值進(jìn)行排序;最后用序列的中值替換窗口中心位置的像素值。樣品W1的濾波處理結(jié)果見(jiàn)圖7。
圖7 樣品W1濾波處理結(jié)果Fig.7 Sample W1 filter processing result.(a)Original imagel;(b)Filtered image
中值濾波處理能夠平滑織物圖像中的紋理結(jié)構(gòu),同時(shí)能夠很好地保護(hù)織物中液態(tài)水傳輸域邊緣輪廓的細(xì)節(jié),減少織物紋理對(duì)后續(xù)液態(tài)水傳輸域分割的干擾,提高圖像處理結(jié)果的準(zhǔn)確性。
實(shí)驗(yàn)內(nèi)容具體分為3部分:
①分割遺傳算法對(duì)織物中液態(tài)水傳輸域圖像分割的有效性研究。分別利用傳統(tǒng)Otsu算法和分割遺傳算法對(duì)4種織物樣品中液態(tài)水傳輸域圖像進(jìn)行對(duì)比實(shí)驗(yàn)。將分割遺傳算法的參數(shù)設(shè)置為相同值。初始種群N=20,交叉概率Pc=0.7;變異概率Pm=0.1,最大迭代次數(shù)M=50。
②考察不同初始種群大小在分割遺傳算法中對(duì)織物中液態(tài)水傳輸域圖像分割效果的影響。保持其他參數(shù)相同對(duì)圖像進(jìn)行分割實(shí)驗(yàn),主要對(duì)比不同種群大小下算法所得到的最佳閾值和算法運(yùn)行時(shí)間。為了便于比較,參數(shù)設(shè)置為:交叉概率Pc=0.7,變異概率為Pm=0.1,迭代次數(shù)為M=50,每次只改變初始種群數(shù)的大小。
③考察不同迭代次數(shù)在分割遺傳算法中對(duì)織物中液態(tài)水傳輸域圖像分割效果的影響。實(shí)驗(yàn)對(duì)象是4種不同組織結(jié)構(gòu)的織物,采用不同參數(shù)組合對(duì)其進(jìn)行分割實(shí)驗(yàn),主要對(duì)比不同迭代次數(shù)下分割遺傳算法所得到的最大適應(yīng)度值。為了便于比較,參數(shù)設(shè)置為:初始種群N=20,交叉概率Pc=0.7,變異概率Pm=0.1,保持不變,每次只改變迭代次數(shù)的大小。
為驗(yàn)證本文提出的分割遺傳算法的有效性,對(duì)傳統(tǒng)Otsu算法和本文算法的分割結(jié)果進(jìn)行對(duì)比測(cè)試。
樣品W1、W2、W3和W4中液態(tài)水傳輸域圖像的分割結(jié)果如圖8所示。圖8(a)為原始圖像。圖8(b)是傳統(tǒng)Otsu算法得到的分割結(jié)果,液態(tài)水傳輸域周圍以及內(nèi)部都散布著一些噪聲點(diǎn),傳輸域輪廓模糊,圖像分割精度低。圖8(c)圖是分割遺傳算法得到的分割結(jié)果,可見(jiàn)織物表面的液態(tài)水傳輸域已經(jīng)完全從背景區(qū)域中分割出來(lái),傳輸域表面連貫,邊緣清晰,分割效果較好,能夠?yàn)楹罄m(xù)圖像的測(cè)量提供有力幫助。
圖8 樣品W1、W2、W3和W4的分割結(jié)果圖Fig.8 Plot of segmentation results for samples W1, W2, W3 and W4.(a)Original imagel;(b)Otsu arithmetic;(c)Segmentation genetic algorithm
不同種群下的閾值和運(yùn)行時(shí)間如圖9所示。種群設(shè)定過(guò)大,容易使算法的計(jì)算量增大,會(huì)增加算法運(yùn)行時(shí)間,這是由遺傳算法采用迭代進(jìn)化所造成的。種群設(shè)定過(guò)小,難以確保遺傳算法對(duì)種群多樣性的要求,算法可能找不到全局最優(yōu)分割閾值,容易陷入局部最優(yōu)。在4種織物中,種群大小變化會(huì)引起閾值的變化,但波動(dòng)不大,在種群大小為20時(shí),閾值基本趨于穩(wěn)定。因此初始種群設(shè)置為20比較合適。
圖9 不同種群下的閾值和運(yùn)行時(shí)間Fig.9 Thresholds and running times at different population
為分析不同迭代次數(shù)對(duì)遺傳算法處理結(jié)果的影響,實(shí)驗(yàn)給出了分割遺傳算法進(jìn)行50次迭代時(shí),4種織物樣品中液態(tài)水傳輸域圖像的最大適應(yīng)度值和閾值變化曲線。最大適應(yīng)度值表示液態(tài)水傳輸域與背景區(qū)域的最大類間方差。最大適應(yīng)度值和閾值變化曲線如圖10所示。
圖10 最佳適應(yīng)度值和閾值變化曲線Fig.10 Optimal fitness value and threshold change curve
綜合分析4種織物的最大適應(yīng)度值和閾值變化曲線,可知當(dāng)分割遺傳算法迭代到20次左右時(shí),最大適應(yīng)度值已經(jīng)趨于穩(wěn)定,或者說(shuō)算法已經(jīng)收斂。迭代次數(shù)繼續(xù)增加不僅增加算法運(yùn)行時(shí)間,反而增加最大適應(yīng)度值的波動(dòng),使算法收斂困難。為減少算法計(jì)算時(shí)間,設(shè)置迭代次數(shù)為20次。最后確定圖像最大適應(yīng)度值所對(duì)應(yīng)的最佳閾值。
用分割遺傳算法和傳統(tǒng)Otsu算法對(duì)4種織物樣品中液態(tài)水傳輸域圖像進(jìn)行分割實(shí)驗(yàn),對(duì)比實(shí)驗(yàn)結(jié)果。將分割遺傳算法的參數(shù)設(shè)置為相同值,初始種群N=20,交叉概率Pc=0.7,變異概率Pm=0.1,最大迭代次數(shù)M=20,實(shí)驗(yàn)結(jié)果如表2所示。
表2 實(shí)驗(yàn)結(jié)果對(duì)比Tab.2 Comparison of experimental results
由表2可知,遺傳分割算法獲取的4種織物樣品的最佳閾值的運(yùn)行時(shí)間均小于傳統(tǒng)的Otsu算法獲取閾值的時(shí)間。可見(jiàn)遺傳分割算法彌補(bǔ)了傳統(tǒng)Otsu算法的計(jì)算量大,耗時(shí)長(zhǎng),分割精度低等不足,是一種較為理想的圖像分割方法。
通過(guò)將Otsu算法和遺傳算法進(jìn)行分析和有機(jī)結(jié)合,提出了一種新的分割遺傳算法,從算法的有效性、種群大小和迭代次數(shù)對(duì)處理結(jié)果的影響方面進(jìn)行研究,得出以下結(jié)論:
①通過(guò)考察不同種群數(shù)在分割遺傳算法中對(duì)織物中液態(tài)水傳輸域分割效果影響發(fā)現(xiàn),分割遺傳算法存在一定的局限性。分割遺傳算法初始化種群規(guī)模過(guò)小,算法可能陷入局部最優(yōu)解。種群規(guī)模越大,全局搜索能力越強(qiáng),但是如果種群過(guò)大,每一代的適應(yīng)度值的計(jì)算量也會(huì)變大,會(huì)使運(yùn)行時(shí)間快速增加,致使算法運(yùn)行時(shí)間延長(zhǎng)。
②相比于傳統(tǒng)Otsu算法,分割遺傳算法處理獲得的織物樣品中液態(tài)水傳輸域圖像清晰連貫,具有較好的分割效果,有效提取了液態(tài)水在織物中傳輸?shù)奶卣鲾?shù)據(jù)。分割遺傳算法獲取最佳閾值的時(shí)間明顯短于傳統(tǒng)Otsu算法獲取閾值的時(shí)間,能夠?yàn)楹罄m(xù)圖像的測(cè)量提供有力幫助。
③分割遺傳算法能夠進(jìn)行全局搜索、自適應(yīng)能力強(qiáng),能在最短時(shí)間獲得圖像分割的最佳閾值,得到較好的分割效果。將分割遺傳算法應(yīng)用于織物吸濕快干性能評(píng)價(jià),可以提供一種新的解決方案。