王 彤,倪 懿
1.蘇州高博軟件技術職業(yè)學院,江蘇 蘇州 215163
2.蘇州農(nóng)業(yè)職業(yè)技術學院,江蘇 蘇州 215000
農(nóng)業(yè)害蟲為導致全球農(nóng)業(yè)經(jīng)濟損失的主要因素,其依靠不同種類的植物與農(nóng)作物存活,為農(nóng)業(yè)帶來了不同損害[1,2]。農(nóng)業(yè)害蟲產(chǎn)生的經(jīng)濟影響是世界范圍內(nèi)的,歐美農(nóng)業(yè)經(jīng)濟損失為30%左右,而亞洲與非洲農(nóng)業(yè)經(jīng)濟損失超過50%[3-5]。從20 世紀60 年代之后,病蟲害綜合防治變成被廣泛應用的蟲害防治方式,而農(nóng)業(yè)害蟲圖像匹配點識別對病蟲害綜合防治而言非常重要[6]。
傳統(tǒng)匹配點識別方法通常是在提取圖像局部特征的基礎上完成的,如SURF 方法和SIFT 方法等,局部特征主要突出圖像細節(jié),有很好的轉換魯棒性,然而對圖像中光照等外界環(huán)境較為敏感[7,8],可應用場景被限制,在很大程度上會導致圖像信息缺失,對農(nóng)業(yè)害蟲圖像匹配點識別結果產(chǎn)生不好的影響。卷積神經(jīng)網(wǎng)絡從大規(guī)模數(shù)據(jù)中對學習特征進行描述,其逐層提取的特征較為抽象,但有大量語義信息,可提高匹配準確度。提出一種基于卷積神經(jīng)網(wǎng)絡的農(nóng)業(yè)害蟲圖像匹配點識別方法,卷積神經(jīng)網(wǎng)絡提取的特征有一定的語義信息,并且通過視覺詞袋模型構造索引,提高匹配點識別準確性。經(jīng)實驗驗證,所提方法在外界環(huán)境改變的狀態(tài)下匹配點識別魯棒性更優(yōu)。
當前我國常見的農(nóng)業(yè)害蟲主要有稻飛虱、白粉病、玉米螟、棉鈴蟲、小麥銹病、棉蚜、稻紋枯病、稻瘟病、麥蚜、麥紅蜘蛛、蝗蟲、麥類赤霉病等[9,10],危害相對嚴重,所以將上述害蟲當成研究對象。訓練集與測試集是害蟲標本與活體圖片,圖片源于網(wǎng)絡。
在采用卷積神經(jīng)網(wǎng)絡方法對農(nóng)業(yè)害蟲圖像進行處理前,需對其進行去均值處理[11],公式描述如下:
其中,用于描述訓練集樣本的平均值。通過去均值處理令數(shù)據(jù)點平均分布于0 點附近,從而方便后續(xù)卷積神經(jīng)網(wǎng)絡訓練。
卷積神經(jīng)網(wǎng)絡基本結構主要由輸入層、卷積層、池化層、全連接層和學習層等構成[12,13](圖1)。
圖1 卷積神經(jīng)網(wǎng)絡基本結構Fig.1 The basic structure of the convolution neural network
式中,δ用于描述動量變量;β用于描述動量因子;γ用于描述權重延時;ε用于描述學習率。代表目標函數(shù)針對?在第i次迭代過程中產(chǎn)生的批量樣本Ci平均梯度。在目標函數(shù)趨近于最小值的情況下,因為曲率相對較小,梯度的改變也相對較小,尤其在深度網(wǎng)絡中,最后一層梯度通過反向傳播方式傳輸至前面若干層的情況下,梯度將逐漸變小,造成隨機梯度下降法收斂速度變慢。梯度下降主要用于對整體樣本進行更新[15],隨機梯度下降主要用于對樣本進行更新,批量隨機梯度下降法處于上述二者之間,可對其中一些樣本進行更新。
為了提高整個過程的收斂速度,防止隨機梯度下降陷于局部最優(yōu),針對目標函數(shù),通過Momentum 動量法進行處理。
本節(jié)采用建立的數(shù)據(jù)集對卷積神經(jīng)網(wǎng)絡特征視覺詞袋模型進行訓練。為了和人工選擇特征產(chǎn)生對比,依據(jù)通過卷積神經(jīng)網(wǎng)絡提取的農(nóng)業(yè)害蟲圖像特征,利用k-means 分類計數(shù)對全部訓練農(nóng)業(yè)害蟲圖像進行聚類處理,獲取六層樹形結構,其中除了葉子節(jié)點,所有節(jié)點均含8 個子節(jié)點。
在對位置進行識別的過程中,可通過視覺詞袋模型對和目前農(nóng)業(yè)害蟲圖像類似的候選圖像進行訓練,防止出現(xiàn)大量匹配點識別過程,提高識別精度。這主要是由于訓練完成的詞袋模型屬于樹形結構,這種結構中所有葉子節(jié)點通過離線訓練獲取該節(jié)點的離線權重,用于描述該葉子節(jié)點的判斷性能,離線權重值越高,節(jié)點對農(nóng)業(yè)害蟲圖像匹配點的區(qū)分性能越好。
其中,s(i)描述離線權重,M描述全部蟲害圖像的數(shù)量,mi描述出現(xiàn)葉子節(jié)點的蟲害圖像的數(shù)量。
在進行測試的過程中,輸入一幅農(nóng)業(yè)害蟲圖像,通過卷積神經(jīng)網(wǎng)絡對其特征進行提取,在所有特征均達到詞袋模型的葉子節(jié)點的情況下,把所有葉子節(jié)點在農(nóng)業(yè)害蟲圖像中出現(xiàn)的頻率與離線權重之間的乘積當成該葉子節(jié)點在農(nóng)業(yè)害蟲圖像中的最終權重,同時把農(nóng)業(yè)害蟲圖像的位置與權重保存于葉子節(jié)點中,當成反向索引。葉子節(jié)點在該蟲害圖像中的權重可通過下式求出:
式中,f(i,I)用于描述葉子節(jié)點i在蟲害圖像I中出現(xiàn)的頻率;miI用于描述葉子節(jié)點i在農(nóng)業(yè)害蟲圖像中出現(xiàn)的次數(shù);∑yi用于描述農(nóng)業(yè)害蟲圖像總特征。
對一幅農(nóng)業(yè)害蟲圖像中全部特征進行提取并參與計算,能夠獲取所有葉子節(jié)點對該圖像的權重,同時把得到的權重組成該農(nóng)業(yè)害蟲圖像的描述性向量Ji。在對農(nóng)業(yè)害蟲圖像匹配點進行識別的過程中,僅需對處于同一葉子節(jié)點上的匹配點進行相似度計算,即可完成對匹配點的識別,相似度可通過下式計算:
分析上式可以看出,蟲害圖像匹配點相似程度越高,那么公式分數(shù)值就越大,經(jīng)大量實驗設定閾值,將相似度高于閾值匹配點當成識別匹配點。
卷積神經(jīng)網(wǎng)絡有很多模型參數(shù),其擬合函數(shù)存在很高的非凸性,在進行模型訓練的過程中,模型會逐漸變得復雜,訓練誤差也會逐漸降低,在模型足夠復雜的情況下,測試集上的誤差反倒會提升,即網(wǎng)絡模型在訓練的過程中誤差較低,然而在測試的過程中誤差很大,即為過擬合現(xiàn)象,這樣的模型泛化能力相對較差。為了提升卷積神經(jīng)網(wǎng)絡的泛化能力,本節(jié)采用數(shù)據(jù)集擴增以及正則化技術進行處理。數(shù)據(jù)擴增技術即將農(nóng)業(yè)害蟲圖像樣本xi分割為k個圖像塊,組成圖像塊數(shù)據(jù)袋,從而獲取更多圖像塊,擴增了訓練集。在訓練過程中的全連接層引入Dropout 技術,Dropout 技術的基本思想為在網(wǎng)絡的全連接層,每次向前傳播時任意把部分隱藏節(jié)點設置成0,這些節(jié)點在迭代時停止工作,在進行反向傳播的過程中也不更新上述節(jié)點的權值。在下次迭代的過程中,以同樣的比例任意設置部分節(jié)點不工作,進行誤差反向傳播的過程中也不更新。對參數(shù)進行合理設定,從而令迭代過程中不工作比例保持穩(wěn)定,該參數(shù)即為Dropout 率。
另一種避免模型過擬合的技術為針對模型目標函數(shù)或代價函數(shù)添加正則項。正則項是為了減少模型復雜程度,防止模型區(qū)分過擬合訓練數(shù)據(jù)。從別的角度進行分析,正則化也就是假設模型參數(shù)滿足先驗概率,即為模型參數(shù)加入先驗知識,而不同正則化方式先驗分布是存在差異的,據(jù)此設定參數(shù)分布情況,令模型復雜程度減少,提高對噪聲的抑制能力,提高模型泛化能力。
將本文提出的基于卷積神經(jīng)網(wǎng)絡的蟲害圖像特征點匹配方法與基于SURF 的蟲害圖像特征點匹配方法及基于BRIEF 的蟲害圖像特征點匹配方法進行比較。
實驗環(huán)境如下:Intel Xeon E5 處理器,在Ubuntu 環(huán)境下開展實驗,選用C++編程語言,卷積神經(jīng)網(wǎng)絡程序選用Caffe 框架。
訓練數(shù)據(jù)集包含Image 數(shù)據(jù)集與Place 數(shù)據(jù)集,Image 數(shù)據(jù)集為農(nóng)業(yè)害蟲圖像數(shù)據(jù)集,有1150個類別,Place 數(shù)據(jù)集代表場景數(shù)據(jù)集,共有1220 個場景種類,訓練集共有260 萬張圖像。
為了對三種方法的性能進行比較,實驗將三個數(shù)據(jù)集當成測試數(shù)據(jù)集,依次對視角發(fā)生改變、溫度環(huán)境發(fā)生改變與光照發(fā)生改變的條件下,匹配點識別效果。
A 數(shù)據(jù)集為大場景數(shù)據(jù)集,通過雙目攝像頭對農(nóng)業(yè)害蟲圖像與其他場景圖像進行拍攝,劃分成左視圖與右視圖兩個部分。
B 數(shù)據(jù)集在春夏秋冬四個季節(jié)對相同區(qū)域內(nèi)農(nóng)業(yè)害蟲及其它場景圖像進行采集。為了對不同季節(jié)農(nóng)業(yè)害蟲圖像匹配點進行識別,實驗選擇場景溫度與外觀差異最大的冬季與夏季對應的圖像。
C 數(shù)據(jù)集采用單目攝像頭對農(nóng)業(yè)害蟲圖像與其它場景圖像進行采集。在進行實驗時,測試數(shù)據(jù)集C 依次在清晨、中午、下午與傍晚進行。
各個數(shù)據(jù)集均有兩組不同環(huán)境下位置相應的農(nóng)業(yè)害蟲圖像,采用任意一組數(shù)據(jù)構造數(shù)據(jù)庫,將另一組數(shù)據(jù)當成相應匹配點,在數(shù)據(jù)庫中農(nóng)業(yè)害蟲圖像匹配點和搜索農(nóng)業(yè)害蟲圖像匹配點位置對應的情況下,即認為得到識別結果。因為數(shù)據(jù)集中相鄰幀有很高的相似度,所以在進行實驗的過程中引入容忍度,也就是和實際匹配點間的間隔,在設定容忍度區(qū)間中,都認為識別成功。
本節(jié)把匹配比率當成不同方法識別性能測試指標,公式描述如下:
式中,n用于描述數(shù)據(jù)庫中的圖像數(shù)量,h用于描述搜尋獲取的匹配度最高的匹配點相應圖像數(shù)量,v用于描述容忍度,gij用于描述第i幅農(nóng)業(yè)害蟲圖像相應數(shù)據(jù)庫識別結果中分數(shù)第j大的圖像,Wi(u)用于描述在第i幅待匹配農(nóng)業(yè)害蟲圖像與容忍度u情況下相應數(shù)據(jù)庫中農(nóng)業(yè)害蟲圖像集合,xi用于描述第j幅數(shù)據(jù)庫中農(nóng)業(yè)害蟲圖像。
圖2 病蟲圖像匹配效果圖Fig.2 Matching effect of diseases and insects images
本文把得到的實驗結果通過數(shù)據(jù)的形式描述出來,取前4 幅匹配分數(shù)最高的農(nóng)業(yè)害蟲圖像,在不同容忍度下匹配比率的改變情況。
為了驗證本文方法的識別精度,將本文方法識別結果和SURF 方法、BRIEF 方法進行比較。在A 數(shù)據(jù)集下,三種方法的實驗結果用表1 進行描述。
表1 數(shù)據(jù)集A 下三種方法匹配比率Table 1 Three method matching ratios in data set A
分析表1 可知,在視角出現(xiàn)改變的情況下,本文方法和SURF 方法、BRIEF 方法的匹配效果較為類似,都有很好的位置識別性能。這主要是由于在視角出現(xiàn)改變的情況下,兩幅農(nóng)業(yè)害蟲圖像在外觀上很接近,并且,SURF 方法、BRIEF 方法都屬于依據(jù)局部特征完成特征點識別,對視角改變情況下的匹配有一定的魯棒性。
針對B 數(shù)據(jù)集,三種方法匹配結果用表2 進行描述。分析表2 可知,本文方法匹配比率與SURF方法、BRIEF 方法相比有較大程度的提升,在容忍度相對較大的情況下,本文方法匹配率基本上是其它兩種方法的兩倍左右,表明本文采用卷積神經(jīng)網(wǎng)絡的方法更優(yōu)。這主要是因為冬季與夏季,農(nóng)業(yè)害蟲圖像受季節(jié)影響場景差異相對較大,SURF 方法、BRIEF 方法受農(nóng)業(yè)害蟲圖像中物體顏色等影響匹配性能明顯降低,而本文方法盡管也在一定程度上受季節(jié)環(huán)境的影響,然而本文方法提取特征有一定的語義信息,和SURF 方法、BRIEF 方法相比有更高的匹配精度。
表2 數(shù)據(jù)集B 下三種方法匹配比率Table 2 Matching ratios of three methods under data set B
針對C 數(shù)據(jù)集,三種方法的匹配結果用表3 進行描述。分析表3 可知,本文方法匹配比率和SURF方法、BRIEF 方法相比提高了9%~42%,這主要是因為SURF 方法、BRIEF 方法在光照改變的條件下非常敏感,而本文卷積神經(jīng)網(wǎng)絡屬于特征描述,更能體現(xiàn)整個蟲害圖像的整體屬性,并且和語義信息結合在一起,在光照發(fā)生改變的情況下,對匹配點的識別能力仍舊很高。
表3 數(shù)據(jù)集C 下三種方法匹配比率Table 3 Matching ratios of three methods under data set C
綜合上述實驗結果可知,在視角發(fā)生改變的情況下,三種方法的匹配比率沒有很大的差異,而在季節(jié)改變與光照改變的情況下,本文方法的匹配比率明顯優(yōu)于SURF 方法、BRIEF 方法,這主要是因為這兩種方法以局部特征為依據(jù),同時對環(huán)境的改變非常敏感,而本文方法識別精度很好。
本文提出一種基于卷積神經(jīng)網(wǎng)絡的蟲害圖像匹配點識別方法,通過公開農(nóng)業(yè)害蟲數(shù)據(jù)集訓練好的卷積神經(jīng)網(wǎng)絡模型對蟲害圖像特征進行提取,對視角變化情況下的蟲害圖像匹配點識別有很好的魯棒性,提取的特征含語義信息,所以對外觀的改變也有很高的魯棒性。除此之外,通過視覺詞袋模型為蟲害圖像構建索引,提高識別準確性。
實驗時,選擇數(shù)據(jù)集A、B、C,在視角、季節(jié)與光照發(fā)生改變時,對本文方法、SURF 方法、BRIEF 方法的匹配比率進行比較,發(fā)現(xiàn)在視角發(fā)生改變的情況下,三種方法的匹配比率沒有很大的差異,而在季節(jié)改變與光照改變的情況下,本文方法的匹配比率明顯優(yōu)于SURF 方法、BRIEF 方法。