高攀,錢宇珊,王佩玲,呂 新
(1.石河子大學(xué)信息科學(xué)與技術(shù)學(xué)院,新疆石河子 832000;2.石河子大學(xué)農(nóng)學(xué)院,新疆石河子 832000)
【研究意義】棉花的病害是導(dǎo)致棉花產(chǎn)量減少的重要因素,當(dāng)前棉花病害監(jiān)測(cè)主要通過棉田觀察棉花葉片,基于經(jīng)驗(yàn)或部分結(jié)合現(xiàn)代實(shí)驗(yàn)室檢測(cè)手段實(shí)現(xiàn)對(duì)病害的監(jiān)測(cè)。這些傳統(tǒng)的病害監(jiān)測(cè)方法費(fèi)時(shí)費(fèi)力,且手段存在滯后性?!厩叭搜芯窟M(jìn)展】近年來,國(guó)內(nèi)外學(xué)者探索使用圖像處理技術(shù)以實(shí)現(xiàn)棉花病害的識(shí)別[1-4],這些研究中都會(huì)涉及到圖像分割技術(shù)。關(guān)于作物葉片分割方法的研究也有很多[5-12],但主要集中在實(shí)驗(yàn)室狀態(tài)下的圖像分割算法的研究,一般是先轉(zhuǎn)換為灰度圖再做進(jìn)一步的處理,包括腐蝕,膨脹,開運(yùn)算,閉運(yùn)算,濾波,二值化,邊緣檢測(cè),閾值分割。實(shí)驗(yàn)室狀態(tài)的圖像分割特點(diǎn)是背景單一,噪音少,在這一基礎(chǔ)上采用的分割算法效果都比較明顯[5,8],但在實(shí)驗(yàn)室條件下的研究局限性也比較明顯,圖像需要通過人為或者器械對(duì)采集的葉片進(jìn)行二次收集[9]。為了快速高效的獲取棉花病葉,圖像一般是從棉田通過攝像機(jī)、無(wú)人機(jī)鏡頭直接拍攝而來。直接拍攝的圖像無(wú)法直接使用實(shí)驗(yàn)室狀態(tài)下的分割方法,而需要進(jìn)行棉田復(fù)雜背景下棉花植株提取和基于植株的棉花葉片分割。該研究以棉花黃萎病視頻關(guān)鍵幀圖像為研究對(duì)象,通過顏色空間特征將土壤背景與植株分離,從關(guān)鍵幀圖像中提取植株,并將獲得的無(wú)背景植株經(jīng)過腐蝕膨脹處理,去除棉花植株莖稈,最終通過圖像分割算法分離葉片,為下一步利用圖像識(shí)別算法識(shí)別棉花病害提供高質(zhì)量的樣本,為高效準(zhǔn)確識(shí)別棉花病害奠定基礎(chǔ)。
1.1 材 料
棉花葉部病害的顏色、紋理、形狀三個(gè)特征主要表現(xiàn)在葉部,所以試驗(yàn)選用在棉田隨機(jī)拍攝棉花的棉花植株冠層圖像,圖像背景復(fù)雜,噪聲較多。拍攝原始圖像20幅,3幅見圖1。
圖1 原始植株
1.2 方 法
1.2.1 復(fù)雜背景下的棉花植株與土壤分離
YIQ顏色空間一般是用于電視系統(tǒng)[4],Y是顏色的亮度信號(hào),I、Q為色差信號(hào),分別攜帶彩色信息,I分量色彩從橙色到青色,Q分量色彩從紫色到黃綠色。與YIQ顏色空間相比RGB顏色空間在處理亮度信號(hào)的有較小的劣勢(shì),但RGB色彩空間更易于理解[9]。而圖像來源受到光照的影響較小,不需要特意進(jìn)行亮度信息處理,與YIQ顏色空間相比,棉花植株的RGB顏色特征是十分明顯,植株與土壤的RGB特征有著明顯的差異,選擇RGB色彩空間。
1.2.2 去棉花莖稈
腐蝕膨脹相互組合為形態(tài)學(xué)處理技術(shù)的多種運(yùn)算,包括開運(yùn)算,閉運(yùn)算,形態(tài)梯度等[5]。其中,閉運(yùn)算先進(jìn)行膨脹再腐蝕,主要是可以消除“小型黑洞”尋找極大值聯(lián)通區(qū)域,其數(shù)學(xué)表達(dá)式為:dist = close(src,ele) = erode(dilate(src,ele)),其中dist表示結(jié)果圖像,close表示閉運(yùn)算,src為輸入圖像,ele為卷積核,運(yùn)算順序是先dilate(膨脹)再erode(腐蝕)。開運(yùn)算則是與閉運(yùn)算相反,先進(jìn)行腐蝕再膨脹,其效果是消除獨(dú)立的圖像元素,分離纖細(xì)處物體,數(shù)學(xué)表達(dá)式為:dist = open(src,ele) = dilate(erode(src,ele)),參數(shù)與閉運(yùn)算相同。圖2
圖2 閉運(yùn)算與開運(yùn)算
1.2.3 廣度搜索的分割算法
廣度優(yōu)先搜索(Breadth First Search, BFS)是圖的一種遍歷方法[6]。BFS是一種盲目搜索算法,不考慮位置因素,從根節(jié)點(diǎn)開始,按層次逐層向下遍歷,直到找到結(jié)果。BFS在搜索過程中會(huì)將所有節(jié)點(diǎn)分為兩類,一類是未訪問節(jié)點(diǎn),另一類是已訪問節(jié)點(diǎn),從根節(jié)點(diǎn)開始,其所有子節(jié)點(diǎn)放進(jìn)隊(duì)列中,每一次訪問都從隊(duì)列中取出一個(gè)節(jié)點(diǎn),每一個(gè)被訪問過的節(jié)點(diǎn)會(huì)被標(biāo)記到已訪問的容器中,直到隊(duì)列為空時(shí)搜索才會(huì)結(jié)束。
1.2.4 基于距離變換的分水嶺分割算法
分水嶺分割法是一種基于區(qū)域的圖像分割法[7],常用于處理圖像中的目標(biāo)物體是連接在一起的這類問題,通常會(huì)取得比較好的效果。距離變換是分水嶺分割中常用方法,距離變換就是對(duì)二值圖像的每個(gè)像素點(diǎn)重新賦值為離它最近的背景像素點(diǎn)。與傳統(tǒng)分水嶺算法相比,基于距離變換的分水嶺分割在分割一組相互接觸的類圓形物體的情況下作用明顯[8]。距離變換的距離類型有[7]:歐式距離(Eudlidean Distance Transfrom)、棋盤距離(Chessboard Distance Transform)、城市街區(qū)距離(Cityblock Distance Transform)、倒角距離變換(Chamfer Distance Transform)。其中后三種又稱為非歐式距離。
1.2.5 基于輪廓搜索函數(shù)的分割算法
findContours函數(shù)將輪廓以兩層結(jié)構(gòu)保存[9],頂層為連通域的外邊緣,底層為內(nèi)部空圈的外邊緣,將每個(gè)輪廓做上A、B、C、D、E五個(gè)外輪廓區(qū)域標(biāo)記。函數(shù)的特點(diǎn)是將二值化的白色區(qū)域作為尋找輪廓的區(qū)域,如果白色區(qū)域能夠延伸到了圖像邊界,則將圖像的邊界也當(dāng)作輪廓的一部分。findContour函數(shù)的核心思想是對(duì)數(shù)字二值圖像進(jìn)行拓?fù)浞治觯环N算法是確定外邊界、孔邊界以及他們的層次關(guān)系,另一種算法是修改版本,只找最外面的邊界[11-12],其中第一種算法基于二值圖像確定外邊界與孔邊界的層次關(guān)系,背景為0圖像為1。
2.1 土壤作物分離
超綠特征2*G-R-B是一種常用的特征模型[9],利用該特征能夠較好的將圖像中綠色信息提出來。采用超綠特征模型分割后發(fā)現(xiàn)圖像中仍存在著大量噪聲,分割效果較差。在棉花植株葉片中,植株葉片G分量要高于R、B分量,即G>R且G>B,而相應(yīng)的土壤主要呈灰白色,其R、G、B三種分量的比例接近,依據(jù)R、G、B三種分量的特征,當(dāng)三種分量計(jì)算結(jié)果G-R>0且G-B>0時(shí),像素點(diǎn)保持不變,其余的像素點(diǎn)置零,棉花植株作物保留而土壤及其他背景變?yōu)楹谏?。圖3
圖3 土壤作物分離
2.2 去莖稈操作
由棉田直接拍攝的圖像除了有復(fù)雜的背景噪音存在以外,植株自身的莖稈對(duì)于葉片來說雖然纖細(xì)但也是一種噪音,為了實(shí)現(xiàn)下一步的棉花葉片分割,須要將莖稈與葉片分離。由于莖稈與葉片有著相似的RGB特征,因此無(wú)法通過RGB顏色空間特征去除,但是考慮到植株莖稈纖細(xì),并且與葉片是相連接,是一塊連通區(qū)域,所以可以通過應(yīng)用形態(tài)學(xué)開運(yùn)算消去極小值區(qū)域的連通性實(shí)現(xiàn)莖稈去除。
但是實(shí)驗(yàn)中發(fā)現(xiàn)先腐蝕在膨脹后會(huì)明顯的增加灰度值大的區(qū)域,導(dǎo)致葉片的邊緣信息不準(zhǔn)確,所以在進(jìn)行開運(yùn)算以后必須要去除新增的區(qū)域,再重新定位到彩色圖像中。于是在開運(yùn)算以后需要對(duì)灰度圖和開運(yùn)算得到的圖像進(jìn)行與與運(yùn)算,去除膨脹效果增加的區(qū)域,得到去除莖稈后的植株圖像,具體步驟如下:
將土壤分離后的圖3(c)彩色RGB圖像轉(zhuǎn)為灰度圖像,如圖4(a)所示。后續(xù)操作如下:
第一步:將圖4(a)腐蝕去莖稈后得到如圖4(b)所示;
第二步:對(duì)圖4(b)進(jìn)行膨脹后得到如圖4(c)所示;
第三步:將圖4(a)和圖4(c)做與運(yùn)算得到如圖4(d)所示定位圖,從而去掉圖4(a)中的莖稈和圖4(c)中膨脹出的多余的區(qū)域;
第四步:根據(jù)4(d)在圖4(a)中定位,通過定位得到去莖稈植株彩圖圖,如圖4(e)所示。
從圖4(e)可以看出,經(jīng)過去莖稈操作后得到的最終結(jié)果圖里不存在莖稈噪音,而且原葉片也得到保留,有效去除了植株莖稈。圖4
圖4 去莖稈過程
2.3 基于廣度搜索的輪廓提取與葉片分離
圖像分割的最終目的是從植株中提取出單獨(dú)的葉片,在經(jīng)過去背景,去莖稈后接下來的關(guān)鍵問題如果就是分割出獨(dú)立的葉片。首先需要找到葉片的輪廓并提取輪廓,然后依據(jù)輪廓再定位葉片,最終完成葉片的分離。通過二值化操作成功將葉片與背景分為0與255兩極,保留葉片的輪廓信息。圖5
圖5 圖像二值化
圖像二值化后再結(jié)合邊緣檢測(cè),尋找葉片的邊緣信息,將葉片輪廓提取出來。邊緣檢測(cè)的檢測(cè)算子很多,常用的是Canny算子,該算子不容易受到噪聲干擾,使用兩種不同的閾值,可以分別檢測(cè)強(qiáng)邊緣和弱邊緣,保留較完整的邊緣信息。通過Canny算子進(jìn)行邊緣檢測(cè)得到葉片的邊緣信息。圖6
圖6 邊緣檢測(cè)
葉片經(jīng)過二值化、邊緣檢測(cè)后得到的葉片的邊緣信息與圖相結(jié)合,將每一個(gè)葉片的邊緣看作一個(gè)閉環(huán)圖,為了將每個(gè)葉片單獨(dú)提取,本文在廣度優(yōu)先搜索算法的基礎(chǔ)上,利用廣度搜索,將圖像看做一個(gè)二維數(shù)組,從(0,0)開始掃描,當(dāng)遇到某個(gè)點(diǎn)的值不為0時(shí),掃描到了葉片輪廓,再以此節(jié)點(diǎn)為根節(jié)點(diǎn),將整個(gè)輪廓抽象為一個(gè)連通圖,進(jìn)行廣度搜索。對(duì)節(jié)點(diǎn)的八個(gè)方位進(jìn)行判斷,如果節(jié)點(diǎn)未被訪問且值不為0則將其放入隊(duì)列,對(duì)每一次訪問,都將該節(jié)點(diǎn)信息存放至對(duì)應(yīng)的輔助數(shù)組中輪廓區(qū)域?yàn)?,其余位置為0。則廣度搜索完畢就表示一個(gè)葉片輪廓已經(jīng)找到且葉片輪廓也完整的存儲(chǔ)在輔助數(shù)組中。當(dāng)所有輪廓找完之后,利用輔助數(shù)組將每個(gè)輪廓與最初始圖像進(jìn)行定位,輪廓內(nèi)部像素點(diǎn)賦值為原圖像素點(diǎn),其余不變,最終得到單獨(dú)分離的葉片。圖7
圖7 廣度搜索分割
2.4 基于距離變換分水嶺分割
由于基于距離變換的分水嶺分割算法對(duì)于彼此連接的物體的分割有較好的效果,于是本文在傳統(tǒng)的分水嶺算法基礎(chǔ)上結(jié)合距離變換進(jìn)行葉片分割。分割的過程如下:
第一步:通過threshold將圖像轉(zhuǎn)換為二值圖像,如圖8(a)所示;
第二步:進(jìn)行距離變換,得到結(jié)果如圖8(b)所示;
第三步:分水嶺變換計(jì)算分水嶺脊線,如圖8(c)所示。
第四步:將二值化圖像和分水嶺脊線進(jìn)行邏輯與運(yùn)算完成分割,結(jié)果如圖8(d)所示。
在圖8(d)中白色區(qū)域表示棉花葉片區(qū)域,葉片中的黑線則是分水嶺脊線,基于距離變換的分水嶺分割的確可以分割相互連接區(qū)域,但是由于葉片表面的噪聲影響,很容易出現(xiàn)過分割現(xiàn)象,導(dǎo)致分割效果并不理想。圖8
圖8 基于距離變換的分水嶺分割
2.5 基于輪廓搜索函數(shù)的分割算法
通過將圖像彩色分割可以發(fā)現(xiàn),植株中葉子的輪廓是比較明顯的。以圖4(e)為初始圖,對(duì)圖像運(yùn)用findContours輪廓搜索函數(shù)提取輪廓。先將彩色圖像轉(zhuǎn)換為灰度圖,再進(jìn)行高斯濾波去噪,與之前的廣度搜索的輪廓提取方法不同,findContours函數(shù)可以將圖像的拓?fù)湫畔⒈A?,所以通過函數(shù)計(jì)算出來的圖像既是二值化圖像也是邊緣檢測(cè)圖像。函數(shù)調(diào)用方式為:findContours(Imge,CTurs,HChy,CETR,CHAINs_APPROX),將葉片的輪廓點(diǎn)保存在CTurs中,拓?fù)湫畔⒈4嬖贖Chy中,再通過drawContours函數(shù)將contours中的輪廓畫出并保存。圖9
圖9 輪廓提取
將提取的輪廓與原圖融合定位,進(jìn)行歸一化,完成最終的棉花葉片提取。基于輪廓搜索函數(shù)的分割算法實(shí)現(xiàn)了目標(biāo)圖像分割,并將每個(gè)獨(dú)立的棉花葉片單獨(dú)保留在一張圖像中,該方法與基于距離變換的分水嶺分割算法和基于廣度搜索的分割算法相比較適用性更廣泛,效果更明顯。圖10
圖10 最終分割
3.1 在植株和土壤分離,提取植株的過程中,選擇RGB顏色特征進(jìn)行分割,但是同時(shí)也發(fā)現(xiàn)植株的YIQ顏色特征也有一定特點(diǎn),可以在后續(xù)實(shí)驗(yàn)應(yīng)用YIQ顏色空間。
3.2 提出基于廣度搜索的分割算法,由于算法適用范圍問題而沒有采用,后續(xù)實(shí)驗(yàn)將對(duì)算法進(jìn)行改進(jìn)以擴(kuò)大其適用范圍。
3.3 對(duì)大部分可識(shí)別葉片進(jìn)行了分離,但也存在部分葉片連接的問題,所以后續(xù)實(shí)驗(yàn)將進(jìn)一步研究重疊覆蓋的葉片的精準(zhǔn)分離。
提出一種快速分割棉花植株和棉花葉片分割提取的方法。首先根據(jù)棉花植株和土壤背景顏色空間特征通過棉葉的RGB顏色特征將植株與土壤進(jìn)行分離,再結(jié)合形態(tài)學(xué)處理,將植株的莖稈去除,實(shí)現(xiàn)彩色分割,保留棉花葉片部分;然后分別使用廣度搜索分割算法、分水嶺分割算法和輪廓搜索分割算法,分別對(duì)棉花葉片圖像進(jìn)行分割提取。使用三種棉葉分割算法對(duì)提取的棉花植株進(jìn)行棉葉片分割試實(shí)驗(yàn),基于廣度搜索的分割算法將葉片輪廓搜索出來與原圖融合分離出葉片,該算法對(duì)于圖像結(jié)構(gòu)簡(jiǎn)單的情況分割效果較好,但是當(dāng)葉片在圖像邊界覆蓋較多時(shí),無(wú)法達(dá)到較好的分割效果;基于距離變換的分水嶺分割算法的分割結(jié)果同樣沒有達(dá)到預(yù)期效果,過分割嚴(yán)重;基于輪廓搜索函數(shù)的分割算法將圖像中每個(gè)葉片的輪廓以點(diǎn)的形式保存,并且保存輪廓間的拓?fù)潢P(guān)系,通過對(duì)應(yīng)的drawContours函數(shù)將每個(gè)輪廓畫出,再與原圖定位,將葉片的完整信息也輪廓結(jié)合,實(shí)現(xiàn)葉片的分離。達(dá)到非常理想的分割效果。