胡健, 車剛,2*, 萬霖,2, 周慧茹, 李光
(1.黑龍江八一農墾大學工程學院,黑龍江 大慶 163319; 2.黑龍江省農機智能裝備重點實驗室,黑龍江 大慶 163319)
在農業生產中,自動導航技術是實現農機自主作業的基礎。通過對作物行線的提取,把其作為農業機械作業的導航線,從而實現農業機器人的自主作業。在大豆生產中,自動導航技術可應用于大豆田間的整地、施肥、噴藥、除草等作業環節。機器視覺算法具有成本低、精度高等優點,目前以機器視覺為主的自動導航技術已成為該領域的研究熱點,在田間、果園、林間廣泛應用[1-8]。
陳嬌等[9]利用改進的Hough變換方法,對農田實現多壟線的識別與定位。刁智華等[10]通過中值濾波和過綠特征法,提取出玉米、小麥作物行信息的中間作物行,提高了檢測時間,減少了背景對提取效果的影響。宋宇等[11]采用垂直投影的峰值點檢測算法,通過二次判別定位點,擬合作物導航線,導航基準線準確率達到90%以上。王祥祥等[12]利用穩健回歸法線性擬合特征點得到導航線,平均處理1幅640×480像素的玉米圖片準確率為92%。關卓懷等[13]采用多段3次B樣條曲線擬合法提取水稻待收獲區域邊界線,提取的圖像中距離信息平均誤差為9.9 mm、偏差率為2.0%。García-Santillán等[14]通過從玉米地圖像中提取出感興趣區域(region of interest,ROI),積累綠色像素來進行苗帶的彎曲和直作物行檢測。 Nadeem等[15]利用無人機的圖像點云(drone-based image point clouds, DIPC )的自動特征,測試不同噪聲下的種植行線。Basso等[16]提出了基于圖像處理技術的無人機導航系統,首先對航線進行識別,然后通過線濾波器生成發送到飛行控制器的驅動參數,通過實時和自我調節的應用,減少人工的浪費。
我國豆類種植面積逐年上升,2020年達11593千 hm2,其中大豆種植面積占85%以上[17]。針對大豆苗期除草、追肥等田間作業環節中的自主導航行走需求,可提高導航作業的精準性,達到節本增收的目的。中國南方大豆田間環境復雜,草害嚴重,且田中常鋪設噴灌管道,光照強度高,光照變化對圖像分割效果的影響較大,大豆行線提取的準確率降低。。SUSAN角點檢測算法由牛津大學的Smith等[18]提出,可以較好地提取圖像中的邊界角點、消除圖像噪聲。本文通過超綠特征(2G-R-B)灰度化方法,獲取作物的綠色特征,根據SUSAN角點檢測算法提取大豆植株特征點,通過隨機抽樣最大似然估計(maximum likelihood estimation by sample and consensus,MLESAC)算法對離散點進行擬合,得到以早期大豆行中心線作為農業機器的導航基準線。
本試驗在海南省樂東黎族自治縣九所鎮黑龍江省南繁中心大豆育種田進行圖像采集,采集時間為2021年12月8日。在大豆植株第1片復葉張開時,采用手機對試驗基地內大豆苗帶圖像進行采集,拍攝高度120 cm,拍攝俯視角60°,圖像的分辨率1280×720像素,共采集200張圖像。
在農業機械田間作業時,原始圖像包含綠色大豆植株、黃色土壤背景和鋪設的黑色管道背景,農作物與背景在綠色(green,G)上有很大區別,采用Woebbeche等[19]的超綠特征(2R-G-B)灰度化方法與孟慶寬等[20]提出的YCrCg顏色空間處理方法,對彩色圖像進行灰度化。
通過圖像二值化提取大豆植株圖像,采用最大類間方差法(maximal variance between clusters,OTSU)計算灰度圖像的閾值,對圖像進行分割,將大豆植株從土壤等背景中提取出來。通過對二值圖像開運算處理,利用形態學膨脹及小面積消除法,得到清晰的二值化圖像。
采用1個半徑為3像素的圓形模板在圖像上移動,當 USAN 區域的面積達到最小值,且此最小值小于預設的閾值t=2時,則認為核心點的像素為角點。將圓形模板在被檢測的圖像上移動,用于判斷像素點是否屬于USAN區域的公式如下。
對圓形模板內像素點進行求和,即得到USAN區域面積,公式如下。
最后得到初始角點響應函數,公式如下。
通過SUSAN角點算法對二值圖像進行特征點檢測,得到候選特征點。將圖像分割為尺寸相同的左、中、右3幅圖像,利用特征點的位置特征自動歸類特征點,僅對左、右2幅圖像進行特征點檢測。將作物位置點分為2類,即左苗帶特征點和右苗帶特征點。創建矩陣A1、A2分別來存儲左、右苗帶特征點個數及位置信息。
使用Matlab中FitPolynomialRANSAC函數,該函數使用MLESAC算法[21],通過隨機抽樣極大似然估計方法來擬合數據,設置最大距離(maxDistance), 距離較遠特征點都被視為異常值,獲得次數為n的多項式p(x)的系數。
在大豆行線提取過程中,選擇最小二乘法擬合作物中心線,公式如下。
式中,k、b為多項式系數。
因此,通過FitPolynomialRANSAC函數,獲得次數為1的多項式p(x)的系數,得到多項式系數k和b,獲得左右兩側大豆植株的苗帶線,作為導航的基準線。基于SUSAN角點檢測的農田航線提取方法的流程圖如圖1所示。
圖1 提取流程Fig. 1 Extraction process
在黑龍江省南繁中心對大豆田圖像進行采集,并進行臺架試驗驗證。計算機配置顯卡為NVIDIA Geforce GTX 960,處理器為11 th Gen Intel(R) Core(TM) i7-11700K,主頻3.6 GHz,操作系統為 Windows 10。采用雙目攝像頭(小覓)與便攜式電腦通過 USB 接口直接連接,使用Matlab框架,通過調用 USB Webcam 硬件支持包,讀取攝像頭傳輸的視頻,實時顯示,讀取視頻幀。
為了驗證算法的可行性與準確性,以手工繪制作物行中心線為參考線,計算參考線與算法檢測出苗帶線的夾角,將算法提取到的苗帶線與人工標記的最佳作物行中心線進行比較,當算法提取到的苗帶線與人工標記的參考線角度差在±5°時,認定檢測結果準確。
本試驗采用的超綠特征(2G-R-B)灰度化方法變換得到灰度圖像,與YCrCg顏色模型下的灰度圖像對比,可以有效提高綠色大豆苗帶和鋪設的管道背景的對比度,剔除管道背景,將大豆苗從背景中區分出來(圖2)。
圖2 灰度化圖像Fig. 2 Grayscale images
對灰度圖像進行二值化處理過程中,原二值圖像中存在孔洞(圖3A),對比中值濾波和形態學腐蝕膨脹后的二值化圖像(圖3B)及形態學膨脹及小面積消除法后的二值化圖像(圖3C)可以看出,形態學膨脹與小面積消除法后的二值化圖像能較好地去除噪聲,有效地去除圖像中孔洞和噪聲對特征點提取產生的干擾。
圖3 圖像二值化Fig. 3 Binary image
通過SUSAN角點算法對圖像進行特征點檢測,檢測出大豆的特征點如圖4所示,從二值圖像中可以看出,SUSAN角點算法提取出大豆苗帶上的特征點基本集中在大豆苗的生長區域。
圖4 角點檢測Fig. 4 Corner point detection
本試驗針對壟上3行的苗帶圖像進行處理,為了提取圖像導航線,減少運算的時間,僅提取圖像中左右兩側苗帶邊緣點即可求出機械導航的中心導航線。將提取特征點映射到原始圖像上(圖5),顯示可以較好地提取出左右兩側苗帶特征點。
圖5 大豆苗帶特征點檢測效果Fig. 5 Detection effect of soybean seedlings with characteristic points
為了驗證算法的可行性與準確性,進行田間臺架試驗驗證。對大豆苗帶進行檢測,部分檢測結果如圖6所示,圖中綠色的線表示檢測到的大豆苗帶,說明該算法可以準確地提取出兩側苗帶行線。
圖6 大豆苗帶檢測效果Fig. 6 Soybean seedling belt detection effect
隨機選取50幅大豆田間樣本圖像進行左右兩側苗帶行線提取, 對大豆田進行檢測。由圖7可知,本算法對苗帶的檢測具有較強的魯棒性,處理640×480像素圖像的平均檢測時間為0.531幅·s-1,平均導航線提取準確率為93%,是一種可靠性較高的田間航線檢測方法。
隨著智慧農業的發展,智能化的農機裝備在農業生產中得到了廣泛應用,作物苗帶行線檢測技術是實現農業機械進行田間智能化作業的重要手段。目前,針對大豆田間苗帶行線檢測算法的研究較少,為解決南方大豆田間光照強度高、常用的作物特征提取算法適應性差、大豆行線難以提取等問題,本研究將圖像分割為尺寸相同的左、中、右3幅圖像,利用特征點的位置特征自動歸類特征點,僅對左、右2幅圖像進行特征點檢測。采用SUSAN角點檢測算法,提取出左右兩側苗帶特征點,通過MLESAC算法對離散點進行擬合,提取出大豆邊界苗帶行線。現有的檢測方法多數是對作物圖像中所有苗帶進行檢測,本研究僅對圖像中邊緣苗帶行進行檢測,提取圖像中左右兩側邊緣苗帶特征點,避免傳統檢測算法中數據處理復雜的問題,大大提高檢測精度與檢測速度,為智能化的農機裝備提供視覺導航技術,對精準識別農田導航線和提高農機智能化發展具有重要意義。本研究檢測的農田環境較為單一,沒有對其他作物苗帶進行檢測,今后可以基于深度學習對圖像進行識別,找出更合適的苗帶行線提取方法,提高田間航線檢測速度和準確度。