戴 寧
(倫敦大學國王學院,倫敦 WC2R 2LS)
據相關資料顯示,全世界每年通過使用農藥可以挽回農產品20%-25%的產量損失。[1]但大量的農藥噴灑容易造成嚴重的生態(tài)環(huán)境污染,農產品的產量也受到很大影響,因此精準施藥勢在必行。精準施藥即利用圖像識別技術對農作物病蟲草害的圖像進行處理,通過提取特征參數,有針對性地對病蟲的種類和位置合理噴藥。[2]
基于圖像的病蟲識別技術結合了模式識別技術和圖像處理技術,雖然研究時間并不長,但卻得到快速的發(fā)展。[3]國外方面,Keagy最早利用圖像對甲蟲進行病蟲識別研究。C.Karunakaran 通過提取面粉甲蟲的特征對其進行識別分析。美國科學家利用人臉識別的原理對幾個屬于姬蜂科種類的昆蟲進行識別,以及通過人工神經網絡系統(tǒng)對某幾種病蟲進行識別,都獲得了不錯的效果。[4]國內方面,徐昉等[5]通過提取玉米象的周長、面積、復雜度三個特征,對這兩種昆蟲進行分類識別。趙汗青等[6]通過分析昆蟲的形態(tài)特征,將面積、形狀參數、偏心率等幾個特征按照其重要性進行排序,作為分類的依據。張洪濤等[7]對病蟲原始圖像進行預處理,得到閾值分割的圖像后再提取出球形性等幾個特征進行分類。
基于以上學者研究,本文以玉米作物蟲害玉米象為研究對象,利用基于K-means硬聚類算法的圖像分割技術,通過提取玉米象的周長、面積、復雜度三個特征,對玉米象進行識別,對蟲害圖像預處理,提取蟲害的形狀特征,使用模糊識別來區(qū)分蟲害,為智能化噴霧與精準施藥的研究奠定基礎。
正常條件下,在北京市郊區(qū)玉米田進行了圖像采集,相機固定在距離地面1.5m處的三腳架上,要求相機鏡頭距離葉面1m,平行拍攝玉米葉面圖像,將得到的圖像以24位 BMP格式寫入計算機中,以獲得實驗的原始圖像。首先我們將獲得的原始圖像進行了灰度化處理,通過采用三原色R、G、B來對圖像的灰度值進行描述,其中R為像素的紅色分量值,B為像素的藍色分量值,G為像素的綠色分量值。由于均值G在背景中所占比重較大,便于進行玉米象與背景的分割。在實驗中,通過比較G、G-R、G-B、2G-R-B和 2G-R-B的 轉 換 效 果 圖,我們發(fā)現采用超G絕對值法時,可以得到效果最好的以綠色背景為主的進行灰度化處理的圖像。
由于采集的圖像僅包括玉米象與玉米,可采用灰度直方圖的方法。害蟲的顏色相對于農作物顏色較深,即害蟲的灰度比作物深,因此其直方圖是雙峰。為了將目標與背景更好地區(qū)分開來,我們選取兩個峰之間的灰度值T作為閾值,這個閾值采用灰度直方圖統(tǒng)計的方法計算出來。由于玉米象目標較小,采用簡單統(tǒng)計法求閾值。
圖像進行分割以后, 得到簡單統(tǒng)計
進行分割以后, 得到簡單統(tǒng)計法的閾值t 的計算公式如式(1)所示。
得到二值化圖像之后,通過采用5×5的單位矩陣,對二值圖像進行開、閉運算的方式,把圖像中的雜點去除,修復圖像中的斷點,實現對目標的識別。
我們所得到的圖像是由農作物和空塊區(qū)域組成的,因此為了進行有效特征的提取,我們需要將空塊區(qū)域從所得圖像中提取出來。
傳統(tǒng)的邊緣檢測算法有Roberts、Sobel、Prewitt和Laplacian算子等。其中,Roberts邊緣檢測算子是使用局部差分算法來實現的,它通過對模板的利用來計算Roberts梯度幅度G,進而獲得合適的閾值T,當G〉T時,該點即為階躍邊緣點,從而可獲取邊緣圖像。Sobel算子和Prewitt算子具有類似的特點,都是通過考察各個像素的鄰域加權差,加權差值最大的點就是邊緣點。對于Laplacian邊緣檢測算子則是通過在邊緣處產生陡峭的零交叉來達到邊緣檢測的目的。
但是,傳統(tǒng)的邊緣檢測算子提取的邊緣很粗,無法得到精確的邊緣像素。因此,我們通過分層K-means硬聚類算法來實現對所得圖像的分割。經典的K-means 算法基本思想是,以空間中k個點為中心進行聚類,對最靠近他們的對象歸類,并通過迭代的方法,逐次更新各聚類中心的值,直至得到最好的聚類結果。其實現步驟為:
(1)確定像素大小為n 的樣本空間數據集,使迭代次數為R,依據指定的聚類數k, 隨機選取k個像素作為初始聚類中心Cj(r),其中:j=1,2,3,…,k;r=1,2,3,…,R;
(2)計算樣本空間中每個數據對象與初始聚類中心的相似度距離 D(Xi, Cj(r));其中,i=1,2,3,…,n,形成簇Wj,如果滿足式(2)。
式(2)中,Xi∈Wj,Xi 記為w,ε為任意給定的正數;
(3)計算k個新的聚類中心,其表達式如式(3)所示:
依據式(4)可計算聚類準則函數值,其表達式如下所示:
依據式(5)判斷聚類是否合理,其表達式如下所示:
若合理則迭代終止;若不合理則返回(2)(3)步繼續(xù)迭代。
我們從得到的圖像中選取一幅圖進行分割。從分割結果來看,K-means聚類算法可以較為準確的將空塊區(qū)域從圖像當中分離出來,且效果比較理想,分割的精度也較高,因而得到的分割圖像可以更加方便的用于后續(xù)圖像的特征提取。
在圖像分析的過程中,由于區(qū)域描述子特征具有很強的實用效果,于是作為糧蟲識別模型的輸入特征,我們采用糧蟲圖像的八種區(qū)域描述子特征,分別如下所示:
(1)面積A:圖像中需識別對象面積的像素點個數總和,其表達式如(6)所示:
(2)周長P:除識別對象的周長如式(7)所示:
公式中SUM(in)是4鄰域內像素均為需識別對象的像素個數總和。
(3)相對面積RA:待識別對象面積占圖像總體比例,其表達式如(8)所示:
(4)延伸率S:待識別害蟲玉米象圖像的最小外接矩形的寬度與長度值之比,其表達式如(9)所示:
(5)復雜度C:待識別對象緊湊性,其表達式如(10)所示:
(6)占空比B:反應待識別對象的復雜程度,其表達式如(11)所示:
(7)等效面積圓半徑R,如式(12)所示:
(8)偏心率E:待識別對象的長軸與短軸長度之比,表明了待識別對象的緊湊性,利用Tenebaum近似計算公式求解偏心率E:
平均向量求解:
j+k階中心矩求解:
方向角求解:
偏心率E近似求解:
我們選取了常見的糧蟲—玉米象作為研究對象,并通過 K-means的方法對其進行了邊緣檢測,同時提取其圖像的面積 A、周長P、相對面積RA、延伸率 S、復雜度 C、占空比B、等效面積圓半徑 R和偏心率 E這八個特征用于對玉米害蟲的識別, 具體特征值如下表。
表1 面積周長等特征對玉米蟲害的識別
我們選取了十幅圖像,并分別用含有2個、3個、4個、5個聚類中心時可K-means算法識別這十幅圖像,得到的識別率和誤判率如下表。
表2 識別率和誤判率表
由上述表格可以看出,含2個聚類中心的K-means聚類法對有的圖像的目標識別率較低,對有的圖像誤判率較高,對10幅圖像中糧蟲的平均識別率為40.0%;平均誤判率為485%,識別率一般且誤判率較高。含3個聚類中心的K-means聚類法能夠正確識別大部分圖中的目標,但分類數量較少導致算法難以徹底消除背景雜點的影響,對少數幾幅圖像誤判率仍較高。含4個聚類中心的K-means聚類法對其中五幅圖片的識別率可達到100%,對所有圖像誤判率均為0%。含5個聚類中心的K-means聚類法對其中七幅圖片的識別率均可達到100%,并且誤判率為0%。由上述數據我們可以看出,K-means聚類算法對于圖像的識別能力較高,且所包含的聚類中心越多,識別率越高,且誤判率也越低。
本文將計算機圖像識別處理技術應用于農業(yè)生產研究,試驗一種基于圖像識別處理的玉米害蟲檢測方法,選取常見的玉米象作為研究對象,對其進行圖像識別。
(1)采用基于 K-means硬聚類算法的圖像分割技術,成功地對所獲得圖像進行空塊區(qū)域分割,獲得了空塊區(qū)域的二值分割圖像和彩色分割圖像,比較準確的將空塊區(qū)域從圖像中分割了出來,分割精度較高,效果達到了預期目的。
(2)提取了所得圖像的周長、面積、相對面積、復雜度、延伸率、占空比、偏心率和等效面積圓半徑這八個特征用于對玉米害蟲的識別。
(3)通過使用K-means的算法并改變聚類中心的個數,我們發(fā)現聚類中心較多時識別率高且誤判率低,在含有5個聚類中心時,識別率可達到95.7%,且誤判率為0%。
(4)將來我們擬在此方法的基礎上,進一步開發(fā)利用該圖像識別技術系統(tǒng),使這種技術不僅能夠檢測到糧蟲,還能檢測出糧蟲的密度信息和種類歸屬;隨著進一步的深入研究, 我們還可以利用該系統(tǒng)拓展檢測范圍和對象,比如該系統(tǒng)將具有測量溫度、測量濕度、測量水分等綜合功能,把該系統(tǒng)建設成為一個具有智能綜合控制的專家系統(tǒng)。