王愛新 李春友 張喆
摘要:目前農(nóng)業(yè)害蟲檢測主要依靠人工作業(yè),造成效率低下、易受環(huán)境因素和主觀因素影響,故本研究提出了基于計算機視覺的農(nóng)業(yè)害蟲檢測識別算法。首先,融合灰度空間、HSV空間與YUV空間,以線性形式構(gòu)造害蟲區(qū)域粗定位模型;然后基于直方圖均衡化與投影直方圖,分析圖像特征;再基于均值漂移算法,定位害蟲區(qū)域,實現(xiàn)細定位;最后,再提出基于輪廓梯度差的Grabcut算法,精確檢測出害蟲。試驗測試數(shù)據(jù)表明:與當(dāng)前農(nóng)業(yè)害蟲定位檢查技術(shù)相比,本研究算法擁有更高的檢測精度,能精確定位識別害蟲目標。
關(guān)鍵詞:HSV空間;直方圖均衡化;Grabcut;均值漂移算法;計算機視覺;農(nóng)業(yè)圖像;害蟲定位
中圖分類號: TP391.4;S126 文獻標志碼: A 文章編號:1002-1302(2016)07-0361-04
農(nóng)業(yè)是一個國家的安國之本,也是與一個社會每天正常運作息息相關(guān)的。目前世界各國,尤其是發(fā)達國家,已經(jīng)越來越重視農(nóng)業(yè)的生產(chǎn)效率和自動化程度。近幾年來,計算機技術(shù)在不斷發(fā)展并應(yīng)用到農(nóng)業(yè)領(lǐng)域。在這樣的大背景下,將基于計算機視覺為核心技術(shù)的自動化設(shè)備引入農(nóng)業(yè)領(lǐng)域[1-2],是十分必要的。它不僅可以提高農(nóng)業(yè)生產(chǎn)效率,也可以提高農(nóng)業(yè)產(chǎn)品的質(zhì)量。而計算機視覺技術(shù)可以應(yīng)用于農(nóng)業(yè)的各個領(lǐng)域,比如無人飛機自動導(dǎo)航播種、耕地機器人視覺導(dǎo)航以及農(nóng)業(yè)產(chǎn)品外觀質(zhì)量的視覺檢測。其中的農(nóng)業(yè)產(chǎn)品外觀質(zhì)量的視覺檢測,是直接關(guān)乎農(nóng)業(yè)產(chǎn)品,進而影響人民生活質(zhì)量的。
農(nóng)業(yè)生產(chǎn)中的很多階段,需要對農(nóng)業(yè)產(chǎn)品進行質(zhì)量檢測,檢查是否存在害蟲,從而及時處理,以免影響更大的范圍,可見農(nóng)業(yè)產(chǎn)品外觀質(zhì)量的視覺檢測的重要性[3]。在農(nóng)業(yè)害蟲的檢測中,主要干擾來源有2個:外界光源對圖像質(zhì)量的影響、害蟲圖像背景復(fù)雜??偠灾?,就是害蟲在圖像中很難與背景分離[4],即圖像分割有很大的困難。而傳統(tǒng)的檢測技術(shù)主要依賴于人眼,是農(nóng)民自己對農(nóng)產(chǎn)品的每個細節(jié)進行檢查。但是檢查環(huán)境往往很惡劣,同時受天氣干擾,檢查工作很難展開。但是如果采用帶視覺的機器人對其進行檢查并做相應(yīng)處理[5-6],則可以大大克服環(huán)境與天氣的不利影響,同時具有很高的查出率,檢測精度客觀。
對此,學(xué)者們也做了大量研究,提出了諸如多尺度集合變換去噪算法[7]以及基于濾波值[8]、中值濾波[9-10]的優(yōu)化算法等。本研究提出了基于計算機視覺的農(nóng)業(yè)害蟲檢測識別算法。首先,分別對灰度空間、HSV空間、YUV空間下的圖像特性進行研究,推導(dǎo)每個顏色空間的公式,實現(xiàn)對害蟲圖像目標的粗定位。然后進行直方圖均衡化,以投影直方圖為特性,基于均值漂移算法定位害蟲區(qū)域。最后利用基于輪廓梯度差的Grabcut算法將害蟲摳出圖像,從而完成整個害蟲檢查算法;并測試了本研究算法的檢測精度。
1 檢測架構(gòu)與算法原理
本系統(tǒng)對農(nóng)業(yè)圖像中是否存在害蟲進行檢查,算法結(jié)構(gòu)如圖1所示。其原理是:由于農(nóng)業(yè)產(chǎn)品圖像背景復(fù)雜,顏色繁多,因此考慮把原始RGB圖像分別轉(zhuǎn)換到多個顏色空間,如灰度、HSV、YUV,同時提取出各個分量,經(jīng)過分析后,進行線性運算,即把各個顏色空間的各個分量進行組合,同時引入加權(quán)值,目的是對圖像害蟲目標進行粗定位。然后引入直方圖技術(shù),圖像均衡歸一化,利于分析,提取反投影直方圖,用于均值漂移定位害蟲區(qū)域,這是細定位。最后粗定位與細定位相結(jié)合,再用GrabCut這個算法函數(shù)將害蟲目標精確勾勒出來。
以圖2為例,該圖像包含許多小蟲,特性淹沒于整個圖像中。同時背景復(fù)雜,有較大的干擾。
1.1 基于顏色空間的害蟲目標粗定位
相機采集圖像原始為RGB顏色空間,分為3個通道R、G、B,每個通道有8位二進制位,總共24位的圖像。然而RGB顏色空間并不適應(yīng)人眼視覺習(xí)慣,也不適用于一些特殊背景的項目開發(fā),如本系統(tǒng)這種綠色居多的背景;因此需要引入其他顏色空間:HSV、CIEL×a×b、灰度空間。
灰度空間的圖像是單通道的,可以減少數(shù)據(jù)處理量,從而提高系統(tǒng)效率。有3種灰度處理,最大值法處理的圖像亮度整體偏大,見式(1)。平均值法處理的圖像較為柔和,見式(2)。而利用加權(quán)平均值法對RGB的特性進行分析,人眼對綠敏感度最高,紅色次之,藍色最低,據(jù)此分別加上不同的權(quán)值,見式(3)。
綜合分析,只有加權(quán)平均值法是根據(jù)圖像RGB特性分別進行有機組合;而最大值法、平均值法會對圖像特性產(chǎn)生不同程度的失真。故本研究將權(quán)值引入平均值法中,建立加權(quán)平均值法模型;并利用加權(quán)平均值法完成圖像灰度處理。根據(jù)經(jīng)驗,設(shè)置G、R、B的權(quán)值分別為59%、30%、11%。灰度處理后的圖像如圖3所示。
而HSV顏色空間最符合人眼視覺習(xí)慣,見圖4。
1.2 基于均值漂移算法的害蟲目標細定位
在將目標從背景分離后,需精確定位目標,并且確認疑似目標是否確實為系統(tǒng)搜尋目標。不同圖像或者同一圖像的不同區(qū)域的每個灰度值的像素數(shù)是不一樣,故本研究算法引入直方圖來完成。為了便于分析,將直方圖歸一化,即所有項之和等于1,此時各個區(qū)域的直方圖可以看做一個概率函數(shù),即反投影直方圖。通過嵌入均值漂移算法,計算圖像中每個區(qū)域的反投影直方圖,得出最大概率的位置,即檢測圖像中特定內(nèi)容,如害蟲目標。
算法流程:
(1)統(tǒng)計圖像或區(qū)域像素總個數(shù),對0~255這256個灰度級的像素數(shù)進行計算。
(2)每個灰度級的像素數(shù)除以總像素數(shù),即得到經(jīng)過歸一化的直方圖。
(3)對目標區(qū)域的歸一化直方圖,轉(zhuǎn)換為反投影直方圖,即一特征矩陣,記錄各個灰度級在總像素中的比例。
(4)從圖像初始位置開始,迭代移動,計算各個區(qū)域的反投影直方圖,鎖定圖像中該概率函數(shù)的最大值,完成圖像目標定位。整個算法流程如圖7所示。
以單個害蟲為例,見圖8;依照上面的算法流程,得到害蟲區(qū)域細定位即圖9所示。
1.3 基于Grabcut算法的害蟲精確檢測
GrabCut是微軟研究院的一個課題,主要功能是分割和摳圖。其優(yōu)點在于:只需要在目標外面畫一個框,把目標框住,它就可以完成良好的分割。由于本研究之前基于粗定位與細定位已經(jīng)將目標的區(qū)域鎖定,因此此時非常適合采用OpenCV函數(shù)GrabCut來分割出害蟲目標,分割結(jié)果如圖10所示。
該算法利用了圖像中的紋理(顏色)信息和邊界(反差)信息,只要少量的用戶交互操作即可得到比較好的分割結(jié)果。本研究的用戶交互操作就是之前粗定位與細定位提供的害蟲區(qū)域,基于該區(qū)域,再利用GrabCut進行處理。
本研究基于OpenCV函數(shù)實現(xiàn),下面對該函數(shù)進行介紹。GrabCut函數(shù)的第一個參數(shù)為我們要處理的圖像,本程序中就是image,圖像的類型必須為:CV_8UC3。第二個參數(shù)是mask圖像,它的大小和image一樣,但是它的格式為CV_8UC1,只能是單通道的,Grabcut算法的結(jié)果就保存在該圖像中。OpenCV中GrabCut函數(shù):
cv::grabCut(image,result,rectangle,bgModel,fgModel,1,cv::GC_INIT_WITH_RECT)。
2 試驗與討論
借助VS2010工具完成算法性能測試。為了體現(xiàn)本研究算法的優(yōu)異性,將文獻[11]的方法視為對照組。以圖11為目標,利用本研究算法與對照組技術(shù),對害蟲完成檢測。部分試驗參數(shù)設(shè)置如下:灰度空間轉(zhuǎn)換,根據(jù)經(jīng)驗,設(shè)置G、R、B的權(quán)值分別為59%、30%、11%。線性運算公式如式(12)所示。
本研究先利用各個顏色空間圖像分量,并整合后線性運算,完成粗定位,后利用均值漂移算法,以各個像素級在區(qū)域圖像所占比例完成細定位,最后又采用GrabCut算法函數(shù)勾勒出分割檢測效果,如圖12所示。對照組單純使用圖像灰度閾值來做檢測,有一定的檢測效果,但是也存在明顯的誤檢和漏檢,如圖13所示。
3 結(jié)論
為了實現(xiàn)基于計算機視覺的農(nóng)業(yè)害蟲排查,本研究對農(nóng)業(yè)害蟲的圖像特性展開深入分析。首先對各個顏色空間的數(shù)學(xué)公式原理進行分析,并將圖像轉(zhuǎn)換到各個空間。然后進行各分量線性運算,得包含害蟲的二值圖像。對直方圖、反投影直方圖、均值漂移算法進行研究,對害蟲進行粗定位。最后采用OpenCV的函數(shù)GrabCut將害蟲目標分割顯示,從而展示了本算法的有效性。試驗結(jié)果表明:本機制具有很好的害蟲識別精度和效率,可以用于大批量農(nóng)業(yè)害蟲檢測。
參考文獻:
[1]楊 青. 基于農(nóng)業(yè)視覺圖像的高效濾波處理方法[J]. 江蘇農(nóng)業(yè)科學(xué),2014,42(4):361-363.
[2]張樹行,沈希忠,李宗杰,等. 基于手機彩信通信和圖像處理技術(shù)的農(nóng)業(yè)專家系統(tǒng)研究[J]. 安徽農(nóng)業(yè)科學(xué),2013,41(33):13054-13055,13084.
[3]李 輝,滕桂法,張 燕. 數(shù)字圖像處理技術(shù)及其在農(nóng)業(yè)中的應(yīng)用研究[J]. 安徽農(nóng)業(yè)科學(xué),2013,41(13):6060-6061,6072.
[4]劉華鋒,蘇艷剛. 結(jié)合邊緣檢測的農(nóng)業(yè)圖像非局部均值濾波算法[J]. 江蘇農(nóng)業(yè)科學(xué),2015,43(6):402-403,447.
[5]肖德琴,黃順彬,殷建軍,等.基于嵌入式應(yīng)用的高分辨率農(nóng)業(yè)圖像采集節(jié)點設(shè)計[J]. 農(nóng)業(yè)機械學(xué)報,2014,45(2):276-281.
[6]宋革聯(lián),韓瑞珍,張永華,等. 基于無線傳輸技術(shù)的農(nóng)田害蟲檢測與識別系統(tǒng)的開發(fā)[J]. 浙江大學(xué)學(xué)報:農(nóng)業(yè)與生命科學(xué)版,2014,40(5):585~590.
[7]Starck J L ,Candès E J,Donoho D L.The curvelet transform for image denoising[J]. IEEE Transactions on Image Processing,2002,11(6):670-684.
[8]Shreyamsha Kumar B K. Image denoising based on non-local means filter and its method noise thresholding[J]. Signal,Image and Video Processing,2013,7(6):1211-1227.
[9]張麗果. 快速非局部均值濾波圖像去噪[J]. 信號處理,2013,29(8):1043-1049.
[10]陳云波,於雪琴. 一種結(jié)合數(shù)學(xué)形態(tài)學(xué)和LOG算子的遙感圖像邊緣檢測方法[J]. 河南科學(xué),2013,31(12):2182-2185.
[11]宋革聯(lián),韓瑞珍,張永華. 基于無線傳輸技術(shù)的農(nóng)田害蟲檢測與識別系統(tǒng)的開發(fā)[J]. 浙江大學(xué)學(xué)報:農(nóng)業(yè)與生命科學(xué)版,2014,40(5):585-590.