石鳳梅 ,趙開才 ,孟慶林,馬立功
(1.黑龍江省農(nóng)業(yè)科學(xué)院植物保護(hù)研究所,哈爾濱 150080;2.黑龍江省科學(xué)技術(shù)情報(bào)研究所,哈爾濱 150001)
水稻稻瘟病是水稻生產(chǎn)上危害最大的病害之一,流行年份一般減產(chǎn)10%~20%,嚴(yán)重時(shí)達(dá)40%~50%,甚至絕產(chǎn)[1]。目前,水稻稻瘟病病害識(shí)別診斷主要是通過(guò)人為判斷或?qū)I(yè)書籍提供的相關(guān)病斑圖像進(jìn)行對(duì)比判斷。會(huì)引起人為誤判,效率低下,專家依賴性大,難以及時(shí)對(duì)癥下藥,引起水稻減產(chǎn)[2]。已有學(xué)者嘗試?yán)糜?jì)算機(jī)圖像處理技術(shù)和模式識(shí)別技術(shù)對(duì)作物病害進(jìn)行自動(dòng)識(shí)別與診斷[3]。支持向量機(jī)作為一種新的模式識(shí)別方法,它采用結(jié)構(gòu)風(fēng)險(xiǎn)最小化(SRM)原理,兼顧訓(xùn)練誤差和泛化能力,在解決小樣本、非線性、高維數(shù)局部極小值等模式識(shí)別問(wèn)題中表現(xiàn)出特有的優(yōu)勢(shì)[4],已有學(xué)者采用支持向量機(jī)技術(shù)進(jìn)行玉米、葡萄、黃瓜等植物病害圖像分割的研究,取得較好的分割效果[5-7],關(guān)于支持向量機(jī)技術(shù)在水稻稻瘟病圖像分割上的應(yīng)用還未見報(bào)道。由于作物種類不同,其病害特征表現(xiàn)截然不同,需要針對(duì)不同作物的具體病斑進(jìn)行具體的分割方法研究。本文將以已經(jīng)采集的水稻稻瘟病病害圖像為對(duì)象,研究基于支持向量機(jī)的水稻稻瘟病彩色圖像分割方法,將病斑從葉片中分離出來(lái),為后續(xù)植物病害識(shí)別與量化分級(jí)奠定基礎(chǔ)。
支持向量機(jī)方法是從線性可分情況下的最優(yōu)分類面(Optimal hyperplane)提出的,其要求是分類線不但能將兩類樣本無(wú)錯(cuò)誤地分開,而且要使兩類之間的距離最大。假定訓(xùn)練樣本(xi,yi),i=1,2,…,為,n樣本數(shù),輸入集xi∈Rm,m為樣本維數(shù);輸出集yi∈{-1,1},yi=-1,1為分類標(biāo)號(hào)。學(xué)習(xí)目標(biāo)在于構(gòu)造一個(gè)判別函數(shù)g(x)=w·x+b,將訓(xùn)練樣本盡可能地正確分類,并尋找最優(yōu)分類超平面,分類面方程為:
將判別函數(shù)進(jìn)行歸一化,使兩類所有樣本都滿足|g(x)|≥1,即使離分類面最近樣本的|g(x)|=1,這樣分類間隔就等于2/||w||,等價(jià)于使||w||2最??;而要求分類線對(duì)所有樣本正確分類,要求其滿足:
滿足上述條件且使||w||2最小的分類面就是最優(yōu)分類面。應(yīng)用二次規(guī)劃方法可求出此最優(yōu)分類函數(shù)為:
式中:為L(zhǎng)agrange乘子,yi為分類標(biāo)記,xi為支持向量,x為未知向量,b*為分類閾值。針對(duì)樣本集線性不可分的情形,Vapnik在考慮允許擬和誤差的情況下,引入一個(gè)非負(fù)的松弛變量ζi和錯(cuò)分懲罰常熟C,公式(2)變成yi[(w·xi)+b]-1+ζi=≥0,約束條件由ai>0變?yōu)?<ai<C求得的最優(yōu)分類函數(shù)與式(1)相同。
而對(duì)于樣本集非線性情形,通過(guò)非線性變換將輸入空間變換到一個(gè)高維特征空間,通過(guò)引入核函數(shù)K(w·xi)避免在高維特征空間的復(fù)雜運(yùn)算和“維數(shù)災(zāi)難”,這也就是支持向量機(jī)的基本原理[4],最優(yōu)分類超平面的分類函數(shù)為:
目前最常用的核函數(shù)有線性核函數(shù)、多項(xiàng)式核函數(shù)、徑向基核函數(shù)及兩層神經(jīng)網(wǎng)絡(luò)核函數(shù)等4種[4]。
基于支持向量機(jī)進(jìn)行水稻稻瘟病圖像分割的實(shí)質(zhì)是把圖像分割問(wèn)題轉(zhuǎn)化為像素點(diǎn)的分類問(wèn)題,通過(guò)分類將目標(biāo)區(qū)(病斑)從葉子正常區(qū)域中分離出來(lái)[9-10]。基于支持向量機(jī)的水稻稻瘟病圖像分割算法首先從葉子正常區(qū)域和病斑區(qū)域像素點(diǎn)的顏色特征信息出發(fā),提取各自的顏色特征,作為正、負(fù)樣本點(diǎn)的特征向量,訓(xùn)練和測(cè)試支持向量機(jī),利用訓(xùn)練好的支持向量機(jī)模型對(duì)待分割圖像中的所有像素點(diǎn)進(jìn)行分類,病斑像素點(diǎn)歸為一類,葉子正常區(qū)域像素點(diǎn)歸為另一類,所有病斑像素點(diǎn)的集合就是要分割的目標(biāo)。
由于分類器是通過(guò)對(duì)訓(xùn)練樣本學(xué)習(xí)得到的,因此,訓(xùn)練樣本的選取對(duì)分類器性能有很大影響,對(duì)于任何一個(gè)實(shí)際問(wèn)題,訓(xùn)練樣本數(shù)足夠多且分布良好是學(xué)習(xí)分類器性能良好的基礎(chǔ)[8]。目前主要有兩種樣本獲取方法,一種是自動(dòng)隨機(jī)選取方法,另一種是人工選取方法。對(duì)于有結(jié)果的分類問(wèn)題,一般采用自動(dòng)選取方法,而對(duì)于沒(méi)有參考結(jié)果的分類問(wèn)題,一般采用人工選取方法。本文采用人工選取方法,即通過(guò)人工觀察,在圖像中病害區(qū)域選取50個(gè)像素點(diǎn)作為訓(xùn)練正樣本點(diǎn),在圖像中正常區(qū)域選取50個(gè)像素做為訓(xùn)練負(fù)樣本點(diǎn),圖像的其余像素點(diǎn)及其它圖像像素點(diǎn)作為測(cè)試樣本。
特征提取支持向量機(jī)是分類的基礎(chǔ),只有正確提取代表病斑的特征才能利用支持向量機(jī)的方法正確有效地將病斑分割開來(lái)。由于彩色圖像相對(duì)單色圖像包含的信息更豐富,且植物病害由于致病病原物種類不同病斑顏色各不相同,故可利用顏色信息作為特征向量[11]。對(duì)于一幅彩色圖像每一個(gè)像素點(diǎn)而言,具有R、G、B三個(gè)分量值,且對(duì)于病斑像素點(diǎn)和葉子正常部位像素點(diǎn)而言,其R、G、B分量值差異較大,故本文的分割算法中采用當(dāng)前像素點(diǎn)的R、G、B分量值為樣本的特征分量。
支持向量機(jī)方法的重要思想是采用核技術(shù),其核函數(shù)類型選擇、核函數(shù)參數(shù)選擇及懲罰因子選擇統(tǒng)稱為模型選擇,目前指導(dǎo)模型選擇的精確理論尚未完善,一般都是結(jié)合具體的應(yīng)用憑借經(jīng)驗(yàn)或是通過(guò)實(shí)驗(yàn)選擇[4]。本文針對(duì)水稻稻瘟病病害圖像的特點(diǎn),選用高斯徑向基核函數(shù),針對(duì)核函數(shù)參數(shù),文中采用網(wǎng)格搜索法,根據(jù)分類錯(cuò)誤率和測(cè)試時(shí)間對(duì)懲罰參數(shù)和核參數(shù)進(jìn)行選擇[9]。網(wǎng)格搜索法首先給出一定的參數(shù)搜索范圍[CminCmax;],在每一對(duì)(Ci,)下用訓(xùn)練樣本和測(cè)試樣本對(duì)支持向量機(jī)進(jìn)行訓(xùn)練和預(yù)測(cè),計(jì)算各自的分類錯(cuò)誤率和測(cè)試時(shí)間。分類錯(cuò)誤率公式:
將圖像分割問(wèn)題轉(zhuǎn)化為圖像像素點(diǎn)分類問(wèn)題是本文算法的特點(diǎn),其分割步驟如下:①通過(guò)人工觀察,選取具有代表性的病斑區(qū)域和葉子正常區(qū)域,在病斑區(qū)域選取若干像素為正訓(xùn)練樣本,在正常葉子區(qū)域選取若干像素為負(fù)訓(xùn)練樣本;②計(jì)算樣本R、G、B分量值作為樣本的特征分量;③利用標(biāo)記好的樣本對(duì)SVM進(jìn)行訓(xùn)練,根據(jù)網(wǎng)格搜索法得到最優(yōu)分類器模型參數(shù);④使用訓(xùn)練好的分類器對(duì)待分割病害圖像進(jìn)行分析,由分類器的輸出值確定圖像中像素的所屬類別,輸出值為“1”的像素為病斑,輸出值為“0”的像素為正常部位,完成所有像素的分類,得到病斑的二值圖像,完成分割。流程圖如圖1所示:
圖1 基于支持向量機(jī)的稻瘟病圖像分割流程Fig.1 Flow of rice blast image segmentation based on SVM
試驗(yàn)中,選用由黑龍江省農(nóng)科院植物保護(hù)研究所采集的白點(diǎn)型、慢性型和急性型水稻稻瘟病病害圖像各20幅,每類病害選用10幅進(jìn)行支持向量機(jī)訓(xùn)練,另外10幅用于測(cè)試并計(jì)算分割精度。為方便分析,圖像首先歸一化為13035、24位真彩色BMP格式。編程環(huán)境為Matlab 7.1,支持向量機(jī)訓(xùn)練算法采用序列最小優(yōu)化算法,核函數(shù)選用徑向基函數(shù)。
采用網(wǎng)格搜索法,計(jì)算徑向基核函數(shù)下核參數(shù)的分類錯(cuò)誤率、支持向量數(shù)及測(cè)試時(shí)間,通過(guò)比較最小分類錯(cuò)誤率確定模型參數(shù)C和δ,訓(xùn)練樣本為通過(guò)鼠標(biāo)選擇的像素點(diǎn),測(cè)試樣本為圖像的全部像素點(diǎn)。文中針對(duì)白點(diǎn)型、急性型及慢性型水稻稻瘟病病害圖像采用徑向基核函數(shù),分別計(jì)算了不同參數(shù)下的病斑區(qū)域像素點(diǎn)的分類錯(cuò)誤率、支持向量數(shù)及測(cè)試時(shí)間,確定了每一類圖像的最佳模型參數(shù)和,結(jié)果分別如表1~3所示。
表1 白點(diǎn)型病斑徑向基核函數(shù)下不同參數(shù)Table1 White spots under different parameters of RBF kernel SVM
從表1的結(jié)果可以看出,在參數(shù)C=1,δ=100時(shí)獲得0.39的最小分類錯(cuò)誤率,對(duì)應(yīng)的支持向量數(shù)為22,測(cè)試時(shí)間為1.47 s。因此,文中對(duì)于白點(diǎn)型水稻稻瘟病病害圖像的分割,選擇C=1,δ=100作為支持向量機(jī)模型的參數(shù)。
從表2的結(jié)果可以看出,在參數(shù)C=1,δ=100時(shí)獲得0.07的最小分類錯(cuò)誤率,對(duì)應(yīng)的支持向量數(shù)為6,測(cè)試時(shí)間為0.98 s。因此,文中對(duì)于急性型水稻稻瘟病病害圖像的分割,選擇C=1,δ=100作為支持向量機(jī)模型的參數(shù)。
表2 急性型病斑徑向基核函數(shù)下不同參數(shù)Table 2 Acute spots under different parameters of RBF kernel SVM
表3 慢性型病斑徑向基核函數(shù)下不同參數(shù)Table3 Spots under different parameters of RBF kernel SVM
從表3的結(jié)果可以看出,在參數(shù)C=1,δ=100時(shí)獲得0.17的最小分類錯(cuò)誤率,對(duì)應(yīng)的支持向量數(shù)為32,測(cè)試時(shí)間為0.61 s。因此,本文中對(duì)于慢性型水稻稻瘟病病害圖像的分割,選擇C=1,δ=100作為支持向量機(jī)模型的參數(shù)。
為了比較不同分割算法的分割效果,選擇急性型病斑、白點(diǎn)型病斑及慢性型病斑各10幅圖像,采用植物病斑圖像分割中經(jīng)常用到的最大類間方差算法(OTSU)對(duì)三種稻瘟病病害圖像進(jìn)行分割,并與文中提出的支持向量機(jī)方法進(jìn)行比較。基于支持向量機(jī)的分割方法中采用表1~3確定的及,三種類型稻瘟病病斑的原始圖像及其OTSU分割效果、支持向量機(jī)分割效果分別如圖2~4所示(彩版見封三)。
圖2 急性型稻瘟病病斑分割效果對(duì)比Fig.2 Comparison image of segmentation result of acute spots
圖3 白點(diǎn)型稻瘟病病斑分割效果對(duì)比Fig.3 Comparison image of segmentation result of white spots
圖4 慢性型稻瘟病病斑分割效果對(duì)比Fig.4 Comparison image of segmentation result of chronic spots
為了評(píng)價(jià)分割效果,采用客觀評(píng)估法,根據(jù)圖2~4分別計(jì)算支持向量機(jī)分割算法與OTSU分割算法對(duì)急性型稻瘟病病斑、白點(diǎn)型稻瘟病病斑及慢性型稻瘟病病斑的分割精度,其結(jié)果分別如表4~6所示。
表4 急性型病斑支持向量機(jī)算法與OTSU算法分割精度比較Table 4 Segmentation accuracy comparison of SVM and OTSU of acute spots
從表4~6可以看出,針對(duì)急性型、白點(diǎn)型及慢性型稻瘟病病斑各10幅圖像,采用支持向量機(jī)算法分割精度的平均值分別為98.5%、94%、90%,優(yōu)于采用OTSU方法的分割精度,表明文中提出的基于支持向量機(jī)的分割算法對(duì)急性型、白點(diǎn)型及慢性型稻瘟病病斑的分割是有效的。
表5 白點(diǎn)型病斑支持向量機(jī)算法與OTSU算法分割精度比較Table5 Segmentation accuracy comparison of SVM and OTSU of whit espots
表6 慢性型病斑支持向量機(jī)算法與OTSU算法分割精度比較Table 6 Segmentation accuracy comparison of SVM and OTSU of chronic spots
本文針對(duì)急性型、慢性型及白點(diǎn)型三種類型水稻稻瘟病病害圖像特點(diǎn),提出一種基于支持向量機(jī)的水稻稻瘟病病害彩色圖像分割算法,給出基于支持向量機(jī)的水稻稻瘟病病害彩色圖像分割流程,通過(guò)比較不同模型參數(shù)的分割精度,確定分割支持向量機(jī)的最佳模型參數(shù)。仿真結(jié)果表明,基于支持向量機(jī)的水稻稻瘟病病害圖像分割算法對(duì)三種類型稻瘟病病斑的平均分割精度達(dá)到94.2%,分割精度優(yōu)于傳統(tǒng)的OTSU分割方法,分割出的病斑能夠滿足后續(xù)對(duì)稻瘟病病斑進(jìn)行特征提取及分類識(shí)別的需要。
[1]孫國(guó)昌,杜新法,陶榮祥,等.水稻稻瘟病防治研究進(jìn)展和21世紀(jì)初研究設(shè)想[J].植物保護(hù),2000,26(1):33-35.
[2]馬成云,申宏波,馬淑梅,等.黑龍江省水稻稻瘟病發(fā)生危害情況調(diào)查及防治建議[J].植物保護(hù),2006,32(5):95-97.
[3]賴軍臣,李少昆,明博,等.作物病害機(jī)器視覺(jué)診斷研究進(jìn)展[J].中國(guó)農(nóng)業(yè)科學(xué),2009,42(4):1215-1221.
[4]張學(xué)工.關(guān)于統(tǒng)計(jì)學(xué)習(xí)理論與支持向量機(jī)[J].自動(dòng)化學(xué)報(bào),2000,26(1):32-42.
[5]宋凱,孫曉艷,紀(jì)建偉.基于支持向量機(jī)的玉米葉部病害識(shí)別[J].農(nóng)業(yè)工程學(xué)報(bào),2007(1):155-157.
[6]田有文.基于支持向量機(jī)的黃瓜病葉彩色圖像分割[J].儀器儀表學(xué)報(bào),2007,28(4):461-463.
[7]Marcuzzoa m,Quelhasa P,Campilho A.Automated Arabidopsis plant root cell segmentation based on SVM classification and region merging[J].Computers in Biology and Medicine,2009(39):785-793.
[8]Burges C J C.A tutorial on support vector machines for pattern recognition[J].Data Mining and Knowledge Discovery,1998,2(2):121-167.
[9]郝曉偉.基于支持向量機(jī)的圖像分割方法的研究[D].北京:中國(guó)石油大學(xué),2009.
[10]Guyer D E,Miles G E,Gaultney D L,et al.Application of machine vision to shape analysis in leaf and plant identification[C].Transactions of ASAE,1993,36(1):163-171.
[11]Wang Xiangyang,Wang Ting,Bu Juan.Color image segmentation using pixel wise support vector machine classification[J].Pattern Recognition,2011,44(4):777-787.