馬玉琨,劉子瓊,張文武,馮向榮
(1.河南科技學院人工智能學院,河南新鄉(xiāng)453003;2.河南科技學院信息工程學院,河南新鄉(xiāng)453003)
農(nóng)作物是人們賴以生存的主要食物來源,農(nóng)作物病蟲害嚴重影響了糧食產(chǎn)量和質(zhì)量[1].我國是農(nóng)業(yè)大國,糧食質(zhì)量和產(chǎn)量是國計民生的保障,所以農(nóng)業(yè)病蟲害的防治至關重要.預警和預報是有效預防和控制植物病害的基礎.目前為止,我國農(nóng)作物病蟲害檢測主要依靠人工觀察,但是農(nóng)作物病害種類多,農(nóng)民的專業(yè)知識不全面,容易延誤最佳防治時期,且病蟲害具有突發(fā)性、不可預見性,病害檢測不及時錯過最佳的治理時間,也會導致糧食減產(chǎn)質(zhì)量下降.因此農(nóng)作物病斑的自動檢測問題亟待解決.
近年來,圖像識別技術被應用于農(nóng)業(yè)領域,國內(nèi)外學者基于農(nóng)作物葉部病蟲害圖像對病蟲害自動識別進行了研究.農(nóng)作物病蟲害的自動檢測方法包括基于手工特征和基于深度學習兩種方法.基于手工特征的方法如方向梯度直方圖+支持向量機[2]、mean shift算法[3]等.唐建等[4]提取顏色特征和紋理特征,用貝葉斯判別法對水稻病害識別;楊倩等[5]綜合顏色特征和局部二值化模式(Local Binary Pattern,LBP)紋理特征,特征向量融合構建支持向量機對大麥病害進行識別;陳兵旗等[6]用小波變換和紋理矩陣方法強調(diào)小麥病變部位.縱觀前人用機器學習方法的其主要是基于單一的特征進行分類,無法全面完整地描述病害圖像的特點.深度學習的方法如Hulya Yalcin等[7]通過監(jiān)控在土耳其建立了農(nóng)業(yè)信息系統(tǒng),利用預訓練的卷積神經(jīng)網(wǎng)絡對采集的圖片自動提取特征進行識別;Kamlesh等[8]提出了基于高光譜的卷積神經(jīng)網(wǎng)絡用于植物病害檢測;Mohanty等[9]利用PlantVillage數(shù)據(jù)集對AlexNet,GoogLeNet等網(wǎng)絡做微調(diào),完成網(wǎng)絡的遷移學習,對農(nóng)作物病斑圖像進行識別.此外文獻[10-11]對于黃瓜、水稻等單作物的識別分別做了研究.縱觀前人的深度學習方法需要大量的數(shù)據(jù)、深層的網(wǎng)絡,小樣本的情況下容易過擬合,但農(nóng)業(yè)數(shù)據(jù)的采集具有較長的周期性(一個生長周期),而多種病害的數(shù)據(jù)很難在一個周期內(nèi)完備地收集,海量級別的、帶有標注的數(shù)據(jù)較難實現(xiàn).
鑒于上述分析,提出利用多特征融合的農(nóng)業(yè)圖像病蟲害識別算法,提取農(nóng)作物圖像的LBP和灰度共生矩陣(Grey-Level Co-occurrence Matrix,GLCM)特征,然后使用分數(shù)級融合的方法進行分類識別.解決了單一特征分類的局限性,提取了多角度的圖像信息,該方法可有效識別農(nóng)作物病害,為農(nóng)業(yè)智能檢測提供參考.
圖1列出了小麥和水稻常見的6種病害圖像.
圖1 大田作物病害數(shù)據(jù)集Fig.1 Field crop disease dataset
由圖1可知,農(nóng)作物病害發(fā)病部位主要為葉片和葉鞘,但病害表現(xiàn)各不相同.水稻葉瘟病病斑從外到內(nèi)依次為黃色、褐色、灰白色;水稻胡麻葉斑病多為橢圓或近圓形,斑點密集,芝麻粒大小;水稻紋枯病病斑呈云紋狀,病斑面積較大,病斑主要分布在葉鞘、葉面,病斑邊緣發(fā)黃,中間呈白色;小麥白粉病為橢圓或圓形的白色粉狀霉點;小麥赤霉病病斑主要分布在麥穗,病斑呈褐色;小麥銹病主要分布在葉片上,為黃褐色粉狀斑點.
鑒于病害患病部分體現(xiàn)出不同的紋理特征,本文提出基于多特征融合的農(nóng)作物病蟲害檢測方法,如圖2所示.分別提取農(nóng)作物圖像的LBP和GLCM特征,然后使用分數(shù)級融合的方法進行分類識別,共分LBP、GLCM、SVM和多特征融合4部分.
圖2 多特征融合的農(nóng)作物病害檢測流程Fig.2 Flow chart of crop disease detection based on multi-feature fusion
眾所周知,LBP算法[12]描述圖像局部特征,能夠應對灰度及光照變化,同時理論簡單,實現(xiàn)高效,并且能夠獲得較高的紋理識別精度.LBP算法的定義公式為
式(1)、式(2)中:R表示中心像素點局部鄰域的半徑,P表示中心像素點周圍像素點的個數(shù),gc表示中心像素點的灰度值,gp表示周圍像素點的灰度值[13].本次實驗取R為1,P為8,利用上述方法提取LBP算子.一幅農(nóng)業(yè)圖像記錄的是每個像素點的灰度值,與此同時每個像素點都可以得到一個LBP編碼,遍歷所有像素點后得到特征圖譜;統(tǒng)計LBP特征圖中0~255像素值所占比例,得統(tǒng)計直方圖.LBP特征提取流程如圖2所示,最后得到1*256的特征向量.
GLCM是20世紀70年代初由Haralic等[14]提出的,用于顯示兩個相鄰像素兩個灰度級空間分布特性,可用于描述圖像的紋理[15].f(x,y)為一幅二維數(shù)字圖像,大小為M*N,灰度級別為K.取圖像中任意一點(x,y)及除去(x,y)的任意另一點(x+a,x+b),設該點對的灰度值分別為i和j,用(i,j)出現(xiàn)的總次數(shù)將它們歸一化為出現(xiàn)的概率P(i,j),則灰度共生矩陣為
式(3)中:#(T)表示集合T中元素個數(shù),(x,y)與(x+a,y+b)間距離為d,兩者連線與坐標橫軸的夾角為θ,則可以得到各種間距及角度的灰度共生矩陣P(i,j,d,θ).本次實驗圖片大小調(diào)整為512*512,取灰度級K為16,d為1,分別取θ為0°、45°、90°和135°得到四個方向的大小為16*16的灰度共生矩陣.為了減小運算量,對4個角度的灰度共生矩陣提取參數(shù):分別為能量(Asm)、對比度(Con)、熵(Ent)、反差分矩陣(IDM),上述4者融合相加可得到1*16的特征向量.
本次實驗采用SVM分類器[16].SVM解決的是二分類問題,對于線性問題通過構建最優(yōu)超平面實現(xiàn)模型的最優(yōu)化,使經(jīng)驗風險和結(jié)構風險降低到最小.非線性問題需借助核函數(shù)將訓練數(shù)據(jù)從非線性空間變換到線性空間的同時從低維空間變換到高維空間,然后求解最優(yōu)超平面實現(xiàn)非線性的數(shù)據(jù)分類[17].對于訓練數(shù)據(jù)D,選擇合適的核函數(shù)K和懲罰因子C,可以構建和求解最優(yōu)化問題
式(4)中:(xi,yi)是訓練樣本,i=1,2,…,N.xi為第i個訓練樣本特征向量,yi為第i個樣本對應的標簽.構建最優(yōu)超平面,求解最優(yōu)目標函數(shù)
式(5)中:K為核函數(shù),a為拉格朗日乘子,利用上述表達式選擇合適的核函數(shù)求得最優(yōu)解,選擇的一個分量滿足條件,計算得
以及支持向量機的目標決策函數(shù)
農(nóng)業(yè)病蟲害屬于非線性分類,所提方法采用高斯徑向基核函數(shù),既能夠?qū)崿F(xiàn)非線性映射又沒有數(shù)值困難.令懲罰因子C為5 000,將訓練集中的六類病害輪流作為正類,構建6個分類器,每當輸入一個測試樣本在6個分類器里分別進行計算.
通過上一節(jié)的分析,不同的手工設計的特征表達了不同的紋理信息,因此采用多特征融合的方式綜合利用各個信息.
設農(nóng)作物病害共有K類,將圖像的LBP特征輸入SVM分類器因而得到該圖像分別屬于K類別的概率表示如下
同理,圖像的GLCM特征可得到
將每種特征向量分類得到的概率值相加融合
測試結(jié)果xi所屬類別為D
概率融合算法如圖2所示.本次實驗將測試樣本分別在LBP單特征訓練及GLCM單特征訓練的分類器測試,共6種病害,故每個測試樣本可得到6個概率,將在兩個分類器上測試的概率融合相加所得概率最大值對應類別即為識別結(jié)果.
本次實驗選用大田作物病害圖像識別技術挑戰(zhàn)賽數(shù)據(jù)集[18],包含有3 000張患有病蟲害的水稻和小麥圖像,圖像分辨率為3 000*2 000,其中水稻病害有葉瘟病,紋枯病,胡麻葉斑病三類共1 800張,每類600張,小麥病害有白粉病,赤霉病,銹病三類共1 200張,每類400張.圖片背景分單一、簡單、復雜3種,如圖3所示.實驗中將數(shù)據(jù)集按7∶2∶1的比例隨機劃分為2 100張訓練集、600張驗證集、300張測試集.
圖3 數(shù)據(jù)集中不同背景的例子Fig.3 Examples with different background in dataset
采用上述LBP,GLCM算法對農(nóng)作物病害圖像進行特征提取.本文用LBP單特征識別、GLCM單特征識別、多特征分數(shù)級融合等三種算法分別進行測試,測試結(jié)果如表1所示.可以看出,通過分數(shù)級融合的方法可以提高大多數(shù)場景下的分類精度.
表1 分類精度表Tab.1 Classification accuracy %
圖4為六分類病害識別的分類結(jié)果圖,可以看出對角線上的數(shù)值較高,即大部分病害都能被成功識別.少數(shù)識別錯誤集中在水稻紋枯病被識別為水稻葉瘟?。?6.7%的概率)、小麥銹病被識別為小麥白粉?。?0%的概率).事實上,這兩對病害的區(qū)分也是人眼判斷的難點.圖5列出了兩對病害較為類似的例子,肉眼幾乎無法分辨.
圖4 六分類病害識別的分類結(jié)果Fig.4 Recognition results of six kinds of diseases
圖5 不同病害較為相似的例子Fig.5 Examples of similar diseases
為進一步說明所提算法的優(yōu)勢,表2比較了本文方法和相關工作[19]的性能.其中AlexNet和VGGNet為常用的兩個深度學習框架,微調(diào)指使用PlantVillage數(shù)據(jù)集[20]訓練后使用大田作物病害微調(diào),PlantVillage數(shù)據(jù)集包含38類病蟲害的54 306張圖像.由表2可知,本文所提LBP+GLCM多特征融合的方法其準確率優(yōu)于AlexNet、VGGNet、VGGNet(微調(diào)),和AlexNet(微調(diào))的性能相當,但所提算法避免了對大量參數(shù)和訓練數(shù)據(jù)集的依賴.
表2 同相關工作的性能比較Tab.2 Performance comparison related to work %
農(nóng)作物病害的自動檢測有利于病害的及時防治,進一步提高農(nóng)作物產(chǎn)量和質(zhì)量.農(nóng)作物病害表現(xiàn)較為復雜,傳統(tǒng)單一特征無法全面描述其病害特點,而利用深度學習技術又受限于大規(guī)模訓練數(shù)據(jù)的采集.本文利用LBP、GLCM兩種特征從不同角度描述病害表現(xiàn),并進行分數(shù)級融合進而分類.以常見的6種水稻和小麥病斑圖像為實驗對象,結(jié)果表明,所提方法可以利用較小數(shù)據(jù)集取得比深度學習方法更為準確的性能.
本文研究了農(nóng)作物病害圖像的自動識別,揭示了特征融合對于識別準確率的影響機理,為田間智能診斷提供了技術基礎和支撐.