李幗,曹蘇艷,錢婷婷,陸聲鏈,3
(1.廣西師范大學(xué)計算機(jī)科學(xué)與信息工程學(xué)院,廣西桂林,541004;2.上海市農(nóng)業(yè)科學(xué)院農(nóng)業(yè)科技信息研究所,上海市,201403;3.廣西多源信息挖掘與安全重點實驗室,廣西桂林,541004)
作物圖像分割是精準(zhǔn)農(nóng)業(yè)、植物表型的關(guān)鍵技術(shù)。實現(xiàn)自然條件下作物圖像的自動分割對農(nóng)作物生長檢測、機(jī)器采摘、病蟲害識別等應(yīng)用無疑具有重要意義。圖像分割算法已經(jīng)有幾十年的研究歷史,常用的圖像分割方法包括顏色因子法、閥值分割法和基于機(jī)器學(xué)習(xí)的方法。顏色因子法最早由Woebbecke等[1]于1995年提出,此后經(jīng)過多年的不斷完善改進(jìn),陸續(xù)形成了以EXG、EXR、EXB為代表的顏色因子算法。時至今日,國內(nèi)外學(xué)者仍然還在不斷探索各種顏色因子在植物分割中的應(yīng)用[2-5]。在基于閾值的圖像分割方法中,Ostu(又名最大類間差法)是最經(jīng)典的方法之一,在植物圖像分割中也有較多研究。例如,Montalvo等[6]針對部分丟失綠色特征農(nóng)田圖像,提出采用兩次Ostu方法實現(xiàn)農(nóng)田圖像的分割,其分割準(zhǔn)確率達(dá)到了91.8%;齊銳麗等[7]通過將圖像的RGB顏色空間轉(zhuǎn)換到HSV顏色空間,然后利用Ostu方法進(jìn)行花椒圖像的分割。近年來,基于機(jī)器學(xué)習(xí)方法的圖像分割得到越來越多的研究。Dhanachandra等[8]采用K-means聚類算法進(jìn)行自然條件下室外植物圖像的分割,他們?yōu)榱吮WCK-means聚類算法的初始聚類中心最優(yōu),提出了采用減法聚類獲取初始聚類中心,結(jié)果發(fā)現(xiàn)這種處理比直接采用K-means算法好;黃巧義等[9]綜合利用RGB、CIE L*a*b*、HSV等多色彩空間和支持向量機(jī)(SVM)進(jìn)行水稻圖像分割,獲得了不超過4%的分割誤差。杜娟將模板匹配算法和K-means聚類算法相結(jié)合用于從大田油菜圖像中提取油菜花[10],該方法具有高效、快速的優(yōu)點;Singh則基于粒子群算法開發(fā)了一種用于向日葵葉圖像分割和分類的系統(tǒng)[11]。最近幾年來,隨著深度學(xué)習(xí)技術(shù)的廣泛應(yīng)用,也涌現(xiàn)出了一批利用深度神經(jīng)網(wǎng)絡(luò)進(jìn)行植物圖像分割的研究報道[12-13]。但深度學(xué)習(xí)方法需要大量的數(shù)據(jù)標(biāo)注工作,如何標(biāo)注數(shù)據(jù)、需要多少訓(xùn)練數(shù)據(jù)尚缺乏統(tǒng)一的標(biāo)準(zhǔn),往往依賴于經(jīng)驗,且其模型的內(nèi)部運(yùn)行機(jī)理仍然缺乏可解釋性。
盡管圖像分割技術(shù)已有多年歷史,但至今仍沒有一個通用的分割方法,通常需要針對特定應(yīng)用選擇合適的算法。本研究結(jié)合EXG超綠分割和GrabCut算法的優(yōu)缺點提出了改進(jìn)的算法,并對不同生長時期和不同光照條件下黃瓜圖像進(jìn)行試驗,以便為作物表型自動測量、作物冠層功能計算等應(yīng)用提供方便易用的核心算法。
1995年,Woebbecke等[1]發(fā)現(xiàn)了在一般情況下,針對綠色植物圖像的處理時,將綠色通道的權(quán)重增強(qiáng),就可以提高土壤等背景環(huán)境與植物之間的對比度,從而借助這一個特征就可以完成綠色作物的精準(zhǔn)分割。基于這個特性,只需要把綠色作物圖像中的每一個像素點,通過對其進(jìn)行2G-R-B的轉(zhuǎn)換操作,就能夠?qū)儆谇熬暗木G色作物與非綠色的背景分割出來,這就是EXG超綠分割算法。EXG超綠算法的分割過程如圖1所示,在識別目標(biāo)作物圖像之前需要先對圖像進(jìn)行灰度化處理,然后采用最大類間方差法對灰度化圖像進(jìn)行分割。
圖1 EXG超綠算法分割過程
1.1.1 灰度化因子
對于要進(jìn)行分割的原圖像來說,作物與背景在R、G、B三個顏色分量上的值有著不同的特征。使用不同的色彩特征組合值來對圖像中的像素點進(jìn)行轉(zhuǎn)換就可以增強(qiáng)作物與背景的顏色對比度,這樣轉(zhuǎn)化后的圖像則是原圖像的灰度圖像,灰度化因子就是三種色彩特征的不同組合。在RGB模型中,R代表著像素的紅色分量,G代表著像素的綠色分量,B代表著像素的藍(lán)色分量。在EXG超綠特征分割里使用的灰度化因子是綠色因子,經(jīng)過綠色因子灰度化的圖像增強(qiáng)了綠色通道的權(quán)重,使得圖像里的綠色作物與背景有了更強(qiáng)的對比度。綠色因子灰度化采用式(1)計算[1]。
EXG=2G-R-B
(1)
1.1.2 最大類間方差法
將經(jīng)過灰度化因子處理過的彩色圖像轉(zhuǎn)化成了灰度圖像,在灰度圖像中綠色作物與背景的灰度值差距較大,此時就可以使用閾值分割法對圖像進(jìn)行分割。最大類間方差法不需要人工選擇閾值,它的計算過程簡單、穩(wěn)定且用時少。確定合適的閾值后,通過把圖像中的像素點與這個閾值比較,就能夠區(qū)別出前景與背景。
最大類間方差法的基本原理是:對于一幅大小為X×Y的圖像,前景與背景之間的分割閾值為T,圖像的總平均灰度值為G。前景像素點是灰度值大于閾值T的像素點,記為N1;前景像素點數(shù)與圖像總像素點數(shù)的比例記為W1;前景像素點的平均灰度值記作G1。背景像素點是灰度值小于閾值T的像素點,記為N2;背景像素點數(shù)與圖像總像素點數(shù)的比例記為W2;背景像素點的平均灰度值記作G2。前景部分和背景部分之間的方差記作M[14],使得方差M取到最大值的灰度值T就是最佳分割閾值。
(2)
(3)
N1+N2=X×Y
(4)
W1+W2=1
(5)
G=G1×W1+G2×W2
(6)
M=W1×(G-G1)2+W2×(G-G2)2
(7)
M=W1×W2×(G1-G2)2
(8)
1.1.3 EXG超綠分割算法在作物圖像分割上的效果
將EXG超綠分割應(yīng)用于作物圖像分割,就是使用綠色因子將彩色圖像灰度化,轉(zhuǎn)化成為灰度圖像,再使用最大類間方差法確定最佳分割閾值來進(jìn)行閾值分割,實現(xiàn)作物與背景的分割。如圖2所示為該方法用于分割黃瓜植株圖像的效果。可以看到,采用超綠因子來提取綠色作物圖像的效果比較好,雜草、土壤等其他非綠色的背景都能夠很好區(qū)分,綠色作物的圖像可以突出顯示出來。而其缺點是如果背景中含有綠色的成分則很容易錯分,誤把背景中綠色的地方認(rèn)為是前景的綠色作物,造成分割誤差。
(a)原圖
GrabCut算法是在2004年由微軟英國研究院的Carsten Rother等設(shè)計[15],它是基于Graph Cuts改進(jìn)而來的一種圖像分割算法,相當(dāng)于是對Graph Cuts的多次迭代版本。該算法只需要手動對圖像里的前景區(qū)域進(jìn)行標(biāo)注,通過圖像處理算法可以實現(xiàn)良好的圖像分割效果。GrabCut以其交互簡單、分割精度高的特點,被廣泛應(yīng)用在計算機(jī)視覺處理的圖像分割領(lǐng)域[16-17]。
1.2.1 算法原理
GrabCut的實現(xiàn)過程如圖3所示,用戶首先通過選擇一個矩形來創(chuàng)建一個初始的分割區(qū)域,矩形內(nèi)的像素標(biāo)記為未知像素,被框在外面的像素點標(biāo)記為背景;接著生成一個初始的圖像分割結(jié)果,所有未知像素都暫定放置在前景類中,并且所有已知的背景像素都放置在背景類中;接下來分別為初始前景和背景類別進(jìn)行高斯混合模型(GMM)建模,前景類中的每個像素都分配給可能是前景GMM中的高斯分量。同樣,背景中的每個像素都分配給可能是背景中的高斯分量。然后再通過迭代能量最小化分割算法進(jìn)行最小化分割的迭代,每次迭代都會使前面可能前景和可能背景的GMM的參數(shù)更優(yōu),從而獲得更加準(zhǔn)確的前景和背景區(qū)域。
圖3 GrabCut算法分割過程
1.2.2 GrabCut算法在作物圖像分割上的效果
GrabCut是一個非常好用的圖像分割算法。對于前景和背景完全分開的圖像,僅需要用戶手動對前景區(qū)域進(jìn)行簡單的矩形標(biāo)注,GrabCut即可穩(wěn)健地分割出圖像中的前景和背景。如圖4所示為該算法在黃瓜植株圖像上的分割效果。
(a)經(jīng)框選后的結(jié)果圖
從圖中可以看出,該算法能夠較好地把較為單一的背景分割掉,而對于靠近綠色植物的那部分背景,包括栽培盆和盆內(nèi)的土壤,則需要經(jīng)過多次迭代分割后才能去除大部分。試驗中也發(fā)現(xiàn),經(jīng)過多次迭代后,依然有部分土壤背景殘留在分割圖像中。這也是該算法的不足之一,即對于前景與背景顏色相近或者背景與前景相互交錯的圖像,它就會把背景識別為前景一并輸出。同時,該算法需要用戶手工勾選才可以進(jìn)行下一步的操作,自動化程度相比于其他算法比較弱。
通過對EXG超綠分割和GrabCut算法優(yōu)缺點的分析,以及對圖像特點的分析。EXG超綠分割難以較好的將綠色背景去除,而GrabCut算法不方便去除黑色布背景和花盆土壤等,所以本文將EXG超綠分割和GrabCut算法進(jìn)行了結(jié)合改進(jìn),改進(jìn)后的算法不再需要手工標(biāo)記。為便于敘述,下文將我們改進(jìn)的算法稱為Combined算法。
Combined算法的主要思想是,通過預(yù)設(shè)的矩形框參數(shù)實現(xiàn)待分割圖像目標(biāo)區(qū)域的自動框選,并將矩形框內(nèi)的部分作為前景、矩形框外部作為背景輸入GrabCut算法進(jìn)行初步分割,然后再用EXG超綠分割算法對初步分割得到的圖像進(jìn)行進(jìn)一步處理,得到最終的分割結(jié)果。Combined算法的分割過程如圖5所示,圖6為Combined算法分割效果圖。從圖中可以看出,經(jīng)過第一步GrabCut分割后,此時還未能夠?qū)⒛繕?biāo)植物與背景完全分割開,再經(jīng)過超綠分割,可以很好地將植物與花盆土壤等背景分開提取出來,獲得更好的分割結(jié)果。由于在采集圖像時是通過固定角度拍攝植物,圖像中目標(biāo)所處的位置相對固定,可以認(rèn)為圖像邊緣區(qū)域為背景,圖像中間部分為前景,因此我們的算法中,預(yù)設(shè)原始圖像邊緣的20個像素為背景,內(nèi)部的區(qū)域就是前景所在的矩形框。當(dāng)然也可以根據(jù)實際需要調(diào)整預(yù)設(shè)矩形框的大小,理論上,預(yù)設(shè)的矩形框越小,處理速度越快;但矩形框太小有可能把部分目標(biāo)區(qū)域劃分為背景,從而影響分割精度。
圖5 改進(jìn)的Combined算法分割過程
(a)原圖
為了更好地驗證本文提出的改進(jìn)算法的有效性,采用早、中、晚三個不同生長時期的室內(nèi)黃瓜群體圖像,以及室外晴天和陰天兩種不同光照條件黃瓜群體圖像進(jìn)行圖像分割試驗。
本文試驗所采用的黃瓜品種為迷你黃瓜,在上海市農(nóng)業(yè)科學(xué)院的試驗基地進(jìn)行,分別在溫室和室外大田種植了兩批,時間為2019年秋季。為了獲取黃瓜整個生長過程的圖像,在以上兩個地點中均選取了一個小區(qū)并在小區(qū)頂部安裝了網(wǎng)絡(luò)相機(jī),從苗期開始至黃瓜結(jié)果,每天按上午、中午、下午各一張的頻率從固定角度拍攝黃瓜群體的圖像。為了便于說明問題,本文將黃瓜生長過程粗略分為早、中、晚三個時期,在溫室中每個生長時期各隨機(jī)選取了6張圖像,在室外大田圖像中,選取了晴天和陰天條件下拍攝的圖像各3張,共24張圖像。為了方便描述,對每張圖像進(jìn)行了編號。早期的六張圖像表示為E1、E2、E3、E4、E5、E6;中期的六張圖像表示為M1、M2、M3、M4、M5、M6;晚期的六張圖像表示為L1、L2、L3、L4、L5、L6;晴天的三張圖像表示為S1、S2、S3;陰天的三張圖像表示為O1、O2、O3。
上述幾種圖像分割算法,包括本文改進(jìn)的算法均使用Python 語言結(jié)合OpenCV圖像處理庫編碼實現(xiàn),試驗環(huán)境如下:操作系統(tǒng)Windows 10家庭版,CUP處理器為Intel(R)Pentium(R)CPU N3710 @ 1.60 GHz,內(nèi)存(RAM)4.00 GB。為對各種分割算法的分割質(zhì)量進(jìn)行定量比較,本文以像素為基礎(chǔ),通過像素級別的對比來評價分割的有效性,分別計算出手工分割圖像中目標(biāo)區(qū)域的像素個數(shù)和各個算法分割圖像中目標(biāo)區(qū)域的像素個數(shù),使用精度(ACC)來驗證算法的分割精準(zhǔn)度。
式中:f0——算法分割圖像中目標(biāo)區(qū)域的像素與手工分割圖像中目標(biāo)區(qū)域的像素交集;
f——算法分割圖像中目標(biāo)區(qū)域的像素。
對玻璃溫室中獲取的黃瓜早、中、晚不同生長時期獲取的三組圖像,分別采用EXG超綠分割算法、GrabCut算法和本文改進(jìn)的Combined算法進(jìn)行了試驗,圖7~圖9為分割效果,分割精度和運(yùn)行時間的對比如表1和表2所示。
從圖7~圖9可以看出,EXG超綠分割沒有將背景分割干凈,GrabCut對于葉片邊緣的細(xì)節(jié)部分處理的不夠好,還有部分土壤殘留,而Combined算法能夠比較干凈完整的分割出植株圖像。
(a)原圖
(a)原圖
(a)原圖
在精度上,從表1可以看出,本文的改進(jìn)算法Combined的平均分割精度達(dá)到了96.56%,高于EXG超綠分割的84.89%和GrabCut算法的91.69%,表明本文改進(jìn)的算法在分割精度上相比前述兩種經(jīng)典算法有較大的提高。從表1中還可以看出,Combined算法對于早期圖像的分割效果明顯優(yōu)于其他兩種算法,對中期和晚期的黃瓜圖像而言,分割效果的差距較小,而EXG超綠分割和GrabCut算法分割的精確度隨著黃瓜植株的長大而提高,經(jīng)過分析發(fā)現(xiàn)是因為圖像中所含的綠色葉片面積越大,這兩種算法的分割精度就會越高。本文改進(jìn)的Combined算法的分割精度則不會因為黃瓜植株的生長發(fā)生大的變化,說明了該算法具有更好的魯棒性。
表1 三個算法的分割精度
由于算法的運(yùn)行時間受試驗環(huán)境的影響,本文在采集算法運(yùn)行時間時是在同一設(shè)備的試驗環(huán)境下進(jìn)行的,對比結(jié)果如表2所示。從表2可以看出,Combined算法運(yùn)行時間平均稍長于EXG超綠分割和GrabCut算法的平均時間,這也是此算法尚存在的不足之處。從表2中也可以看到,Combined算法和GrabCut算法在個別圖像上的處理時間特別長,而且Combined算法和GrabCut算法的運(yùn)行時間波動較大。在試驗過程中發(fā)現(xiàn)矩形框參數(shù)的值對運(yùn)行時間的影響比較大,研究發(fā)現(xiàn)矩形框數(shù)值設(shè)置的越小,運(yùn)行的時間就越少且同一個時期內(nèi)的圖像分割所需運(yùn)行時間值的波動越小。此外對于個別圖像運(yùn)行時間特別長的原因作了推測,可能是因為圖像在采集過程中的光照情況略有不同,導(dǎo)致個別圖像在處理時需要花費(fèi)較多的時間。這也是該改進(jìn)算法的不足之處,運(yùn)行效率有待提升。
表2 三個算法的運(yùn)行時間比較
為了測試以上算法對不同光照條件獲取圖像的影響,本文還選取了室外晴天和陰天情況下采集的圖像各三張進(jìn)行分割試驗,結(jié)果如圖10和圖11所示,而表3為上述三種分割算法的分割精度對比結(jié)果,其中本文改進(jìn)的Combined算法的平均分割精度達(dá)到了96.59%,稍為優(yōu)于EXG超綠分割的95.4%和GrabCut算法的94.75%。即在強(qiáng)光照與弱光照的情況下,Combined算法的分割精度均高于其他兩種算法。從該試驗中也可以看出,EXG超綠分割和GrabCut算法在室外自然條件下獲取的黃瓜群體圖像上的分割效果明顯好于日光溫室內(nèi)獲取的圖像,說明這兩種算法受光照影響較大,其魯棒性不如本文改進(jìn)的算法。
(a)原圖
(a)原圖
表3 室外自然條件下的圖像分割精度
同時,從圖10、圖11這兩組圖像中也可以發(fā)現(xiàn),在晴天光照過強(qiáng)的情況下,EXG和Combined算法會產(chǎn)生過分割的現(xiàn)象,導(dǎo)致部分葉片的像素缺失,但總體分割精度仍然優(yōu)于CrabCut算法;而對于陰天光照條件下的圖像,上述三種算法的分割效果相當(dāng)。
本文試驗所用到的黃瓜植株圖像來自于溫室和室外大田,包含了黃瓜早、中、晚三個不同生長時期,以及室外晴天和陰天兩種不同光照條件。本文以O(shè)penCV庫結(jié)合Python語言研究了EXG超綠分割和GrabCut兩種圖像分割算法并針對分割效果提出了改進(jìn)算法,由試驗的分析結(jié)果可以看出,本文改進(jìn)的算法Combined具有更好的分割效果。
1)分析研究了EXG超綠分割和GrabCut兩種分割算法,基于其在黃瓜群體圖像上的分割試驗結(jié)果分析了兩種算法的優(yōu)點與不足。
2)針對黃瓜植株圖像的準(zhǔn)確、自動、快速分割的需要,提出了一種改進(jìn)的算法。
3)為了驗證本文改進(jìn)算法的有效性,對溫室內(nèi)不同生長時期和室外不同光照條件下的黃瓜植株圖像進(jìn)行了試驗驗證。試驗結(jié)果顯示,本文提出的改進(jìn)算法在室內(nèi)不同生長時期的黃瓜群體圖像上平均分割精度達(dá)到了96.56%,在室外自然條件下圖像上的平均分割精度達(dá)到了96.59%,均優(yōu)于EXG超綠分割和GrabCut算法,且在黃瓜不同生長時期和不同光照條件下的分割精度差異不大,表明該改進(jìn)算法具有更好的魯棒性。