陳艷 李春貴 胡波
摘 要:針對以田間圖像每行背景像素的坐標中點作為導航特征點,擬合出的導航線精度不高的問題,提出了一種改進的特征點提取算法:首先,采用歸一化2G-R-B超綠特征對圖像進行灰度化,再用最大類間方差(OSTU)法和形態(tài)學閉運算分別對灰度圖像進行分割和濾波;然后,提取每行背景像素坐標中點作為初始特征點,再根據初始特征點與圖像中心線間表示農作物的像素數對特征點進行修正;最后,利用修正后的特征點擬合得到導航線.仿真結果表明:該改進算法受環(huán)境噪聲影響較小、實時性好,擬合出的導航線在精度上具有明顯優(yōu)勢.
關鍵詞:特征點;導航線提??;農機導航
中圖分類號:S126;TP391.41 DOI:10.16375/j.cnki.cn45-1395/t.2018.03.011
0 引言
隨著計算機技術和信息處理技術的不斷發(fā)展,智能化農業(yè)機器人越來越多地代替手工完成各種農作業(yè),引領著第二次農業(yè)革命深入發(fā)展.智能農機的一個重要組成部分是視覺導航技術[1-3].視覺導航系統(tǒng)在獲取田間圖像后,首先對圖像進行預處理,然后從中提取導航特征點并擬合導航線,最后根據導航線計算導航參數來控制農機的走向.其中,導航特征點的提取是農機視覺導航的關鍵,關系到導航精度.
目前,導航特征點提取算法主要有:對灰度圖像或二值圖像進行垂直投影提取特征點[4-8];提取圖像每行背景像素的坐標中點作為特征點[9-12];利用邊緣檢測算子提取農作物和土壤的邊界來提取特征點[13];利用角點檢測算子提取農作物的角點作為特征點[14-15];利用細化法等提取作物行骨架來獲取特征點[16- 17]等.其中,垂直投影法和背景像素坐標中點法算法相對簡單、實時性好,但是受缺株、農作物間的空隙以及雜草等噪聲影響較大,導航精度受限;邊緣檢測算法提取的特征點精度高,但由于需要做微分運算,算法相對復雜,實時性不高;角點檢測算法和骨架提取算法較適合水稻秧苗、玉米等單株作物行的情況,適用性有限.
針對以上問題,為了在保證算法實時性的同時提高導航精度,本文以圖像每行背景像素坐標中點作為初始特征點.為了消除圖像背景噪聲的影響,對偏離導航路徑的特征點進行修正,并利用修正后的特征點擬合導航線.
1 特征點提取算法基本原理及改進
1.1 基本原理
在農業(yè)大規(guī)模種植中,農作物行通常具有近似呈直線、行與行之間的距離基本相等并相互平行的特點.而智能農機的攝像頭一般安裝在中間位置且正對著導航路徑(通常是攝像頭正對著的壟溝),因此所拍攝的田間圖像除農田邊界附近外基本相對導航路徑左右對稱.根據田間圖像的這個特點,圖像每行表示農作物或背景的像素坐標中點應正好在導航路徑內.若以該坐標中點作為導航特征點提取導航線,理論上是可以正確導航的.然而,實際由于農作物行缺株、葉片之間的空隙以及壟溝內雜草的存在,部分圖像行的特征點會偏離當前的壟溝,落在作物行上或其他壟溝內,從而導致擬合出的導航線偏離導航路徑.因此,有必要對以農作物或背景的像素坐標中點為特征點的算法進行改進,對偏離導航路徑的特征點進行修正以提高導航精度.
1.2 算法改進
由于攝像頭通常正對著導航路徑,從人的視覺角度來看,理想的特征點應分布在距離圖像中心線最近的壟溝內.即便攝像頭有一定的偏移或作物行有些彎曲,導航路徑對應的壟溝也不會偏離圖像中心線太多.基于此,可對算法進行改進,其基本思想是:首先提取圖像每行背景像素的坐標中點作為初始特征點,此時大多特征點會落在中間壟溝內.若初始特征點偏離中間壟溝落在作物行上或其他壟溝內,則特征點與中間壟溝之間必然存在一些表示農作物的像素點.由于中間壟溝位置不定,但是距離圖像中心線比較近,因此可以通過統(tǒng)計初始特征點與圖像中心線之間表示農作物的像素點數,來對特征點進行修正.修正的方法是:初始特征點與圖像中心線之間表示農作物的像素數有多少,就將初始特征點向圖像中心線方向移動多少.這樣就能使初始特征點向中間壟溝方向移動,一定程度上修正了特征點.設農田圖像的大小為M×N,M和N分別對應田間圖像的行數和列數,算法具體步驟如下:
Step 1 對預處理后的二值圖像(白色代表農作物像素值為0,黑色代表背景像素值為1)進行逐行掃描,行數i由上至下增大,列數j由左至右增大.
Step 2 統(tǒng)計第i行像素值為1(即背景像素)的像素點個數m,以及當前行表示背景像素的像素點縱坐標之和k;
Step 3 計算當前行的初始特征點縱坐標:z=k/m (z為圖像背景像素坐標的中值);
Step 4 計算初始特征點z與圖像中心線的距離:d=z-z0,其中z0=N/2,為圖像中心線縱坐標值;
Step 5 若d<0(即初始特征點在圖像中心線左側),則掃描第z~z0列,統(tǒng)計t的值(t表示農作物像素數即像素值為0的個數),修正z=z+t;反之,若d>0(即初始特征點在圖像中心線右側),則掃描第z0~z列,統(tǒng)計t的值,修正z=z-t.
Step 6 掃描至M行后停止,否則繼續(xù)執(zhí)行Step 2.改進的導航特征點提取算法流程如圖1所示.
2 實驗系統(tǒng)及測量結果
2.1 總體結構
目前農機視覺導航系統(tǒng)進行導航線提取基本包括以下幾個步驟:圖像預處理、特征點提取和導航線擬合.導航線提取的基本流程如圖2所示.
2.2 圖像預處理
由于攝像頭拍攝的圖像通常是彩色圖像,顏色信息比較豐富,冗余的信息會增加后續(xù)圖像處理的難度,因此,需要先對圖像進行預處理.圖像預處理主要包括圖像灰度化、圖像分割和圖像去噪等步驟.
圖像灰度化處理時,需要選擇合適的顏色空間模型進行.目前,田間圖像灰度化時常用的顏色空間模型有:RGB[18]、HIS[19-20]、HSV[9]、YUV[21-22]等.其他顏色空間模型需由RGB轉換得到,增大了計算量,本文使用RGB顏色空間對田間圖像進行灰度化處理.基于RGB模型的灰度化算法有:G-R、EXR、2G-R-B(也稱EXG)以及EXG-EXR等[15].本文采用較常用的2G-R-B超綠特征灰度化方法,灰度值計算公式為:
對圖3(a)作灰度化處理,灰度轉換結果如圖3(b)所示.一般地,為避免灰度圖像中農作物和土壤背景對比度不足給后續(xù)處理帶來干擾,還需要對灰度圖像進行歸一化.本文采用的歸一化公式為:
其中,Y、y分別為歸一化前、后的灰度值,[Vmax]、[Vmin]分別為圖像灰度的最大值和最小值.歸一化灰度圖如圖3(c)所示.可見,歸一化后的灰度圖相比歸一化前在保留了灰度差異的同時,還減小了圖像中灰度的不一致,便于后續(xù)分割處理.
OSTU自動閾值分割算法簡單、高效且性能穩(wěn)定,是最常用的一種圖像分割算法[23],分割結果如圖3(d)所示.分割后的二值圖像中,綠色農作物區(qū)域中的黑色空洞和壟溝區(qū)域綠色雜草產生的白點,會給后續(xù)處理帶來不利影響.因此,需要進一步對分割圖像進行去噪.形態(tài)學濾波是較常用的一種圖像降噪方法.其中形態(tài)學閉運算由于具有平滑輪廓、融合狹窄間斷和細長的溝壑并消除小的空洞的特點,較符合田間圖像的降噪要求.本文采用5×5的圓盤型結構元素對分割圖像進行形態(tài)學閉運算去除噪聲,結果如圖3(e)所示.可見,大部分圖像噪聲被濾除.
2.3 特征點提取
若直接提取圖3(e)預處理圖像每行背景像素坐標的中點作為導航特征點,結果如圖4(a)所示.由圖4(a)可見,圖像下方距離農機較近的地方由于受到噪聲干擾較小,絕大部分特征點都落在中間的壟溝內.然而,圖像上方遠離農機的地方由于受到噪聲干擾相對較大,特征點偏離了中間的壟溝,落在農作物區(qū)域甚至其他壟溝內.采用本文提出的改進算法,提取出的導航特征點如圖4(b)所示.很明顯,采用改進的特征點提取算法,可以使偏離中間壟溝的特征點向中間壟溝方向偏移,并且基本都落在中間壟溝內.
3 導航線擬合
由于田間導航路徑即壟溝大多呈直線或相對農機前進方向局部范圍內近似直線,因此大多采用線性直線擬合的方式來擬合導航線.常用的線性擬合算法有最小二乘法[7]和hough變換法[24-26]等.本文采用相對簡單的最小二乘法進行擬合,擬合出的導航線方程為:
其中a、b為擬合系數,擬合出的導航線如圖5所示.由圖5(a)可見,直接利用改進前的特征點擬合的導航線偏離了中間壟溝,和人眼視覺提取的導航線相差較大,導航精度不夠.而采用改進后的特征點擬合的導航線,如圖5(b)所示,導航精度明顯提高,和人眼視覺提取的導航線幾乎一致,符合實際導航需要.
4 討論
在Windows10操作系統(tǒng)下利用matlab2016a軟件進行導航線提取實驗.為了驗證所提算法的適用性,隨機選取了不同田間圖像提取導航線,結果如圖6所示.可見,所提算法均能較準確地提取出導航線,算法的適用性較好.此外,對有強光照射、存在非綠色支架、農作物稀疏缺株以及陰影干擾情況下的田間圖像進行了導航線提取,結果如圖7所示.由圖可見,在各種不同噪聲環(huán)境下算法仍然有效.
本文對水稻不同生長階段的田間圖像也作了導航線提取實驗,結果如圖8所示.由圖可見,盡管有水、浮萍或葉片間的相互覆蓋等,所提算法仍能正確提取導航線.
為了進行參數對比,對圖3(a)利用改進前和改進后的算法提取導航線,并對導航線的擬合系數和算法耗時進行了統(tǒng)計,結果如表1所示.由表可以看出,處理同一幅圖像,改進后的算法平均耗時僅增加了4 ms,但擬合系數相差較大,導航線精度顯著提高.
5 結論
針對以田間圖像背景像素的坐標中點作為導航特征點時,部分特征點由于圖像噪聲的影響偏離導航路徑較大,從而導致擬合的導航線精度不高的情況,提出了一種特征點提取改進算法.首先,在對RGB田間圖像進行2G-R-B灰度化、OSTU分割及形態(tài)學閉操作降噪的預處理之后,提取預處理后二值圖像每行背景像素坐標的中點作為初始導航特征點;然后,根據初始特征點與圖像中心線之間表示農作物的像素數對初始特征點進行修正,像素數有多少就將初始特征點向圖像中心線方向偏移多少;最后,對修正后的特征點利用最小二乘法擬合導航線.
本文提出的改進算法相比較改進前的算法,計算量增加很小,但提取的導航線精度卻有很大提高.并且該算法具有較好的適用性,絕大多數田間圖像提取的導航線都能達到農機導航對實時性和精度的要求.此外,該算法受光線強度、非綠色支架、農作物稀疏缺株以及陰影干擾等環(huán)境噪聲影響較小,魯棒性較好.
參考文獻
[1]BALL D,UPCROFT B,WYETH G,et al. Vision-based obstacle detection and navigation for an agricultural robot[J]. Journal of Field Robotics,2016,33(8):1107-1130.
[2]ZHANG T,XIA J F,WU G,et al. Automatic navigation path detection method based on machine vision for tillage machines working on high crop stubble fields[J]. International Journal of Agricultural and Biological Engineering,2014,7(4):29-37.
[3]MOUSAZADEH H. A technical review on navigation systems of agricultural autonomous off-road vehicles[J]. Journal of Terramechanics,2013,50(3):211-232.
[4]伍淵遠,尚欣,張呈彬,等. 自然光照下智能葉菜收獲機作業(yè)參數的獲取[J]. 浙江農業(yè)學報,2017,29(11):1930-1937.
[5]閆保中,王強軍. 農田圖像導航線檢測技術研究[J]. 應用科技,2017,44(2):65-69.
[6]李勇. 基于單目視覺的道路信息提取與智能預警[D]. 秦皇島:燕山大學,2016.
[7]李勇,丁偉利. 基于暗原色的農機具視覺導航線提取算法[J]. 光學學報,2015,35(2):221-228.
[8]馬紅霞. 基于機器視覺的農業(yè)車輛導航基準線提取方法的研究[D]. 淄博:山東理工大學,2012.
[9]郭翰林,洪瑛杰,張翔,等. 再生稻收割機的視覺導航路徑檢測方法[J]. 福建農林大學學報(自然科學版),2017,46(3):356-360.
[10]馬志艷,湯有勝,楊光友. 基于視覺的茶作物行間行走路徑規(guī)劃研究[J]. 農機化研究,2017,39(1):202-206.
[11]湯有勝. 基于嵌入式視覺的自動導航系統(tǒng)研究[D]. 武漢:湖北工業(yè)大學,2016.
[12]袁挺,任永新,李偉,等. 基于光照色彩穩(wěn)定性分析的溫室機器人導航信息獲取[J]. 農業(yè)機械學報,2012,43(10):161-166.
[13]鄭冰,趙陽,葛東林. 農機快速導航系統(tǒng)設計——基于圖像邊緣檢測和3D深度視頻幀內編碼[J]. 農機化研究,2018(5):181-184.
[14]翟志強. 基于虛擬現(xiàn)實的拖拉機雙目視覺導航試驗方法研究[D]. 北京:中國農業(yè)大學,2017.
[15]陳少杰. 基于圖像理解的水田除草機器人視覺導航系統(tǒng)研究[D]. 廣州:華南理工大學,2016.
[16]刁智華,吳貝貝,魏玉泉,等. 利用最大圓盤提取作物行骨架的改進算法[J]. 中國農機化學報,2016,37(7):141-144.
[17]刁智華,吳貝貝,毋媛媛,等. 基于最大正方形的玉米作物行骨架提取算法[J]. 農業(yè)工程學報,2015,31(23):168-172.
[18]李茗萱,張漫,孟慶寬,等. 基于掃描濾波的農機具視覺導航基準線快速檢測方法[J]. 農業(yè)工程學報,2013,29(1):41-47.
[19]韓永華,汪亞明,鄭俊褒,等. 一種基于小波變換及最大類間方差的農田圖像分割方法:CN201410153193.4[P]. 2014-07-09.
[20]黃小剛. 水田除草機器人視覺導航路徑與參數獲取方法研究[D]. 廣州:華南理工大學,2013.
[21]王偉羊. 基于計算機視覺的采茶機導航技術研究[D]. 杭州:浙江工業(yè)大學,2016.
[22]陳益杉,盧偉,王玲,等. 基于GIF-Shearlet算法的新舊土邊界線視覺導航技術研究[J]. 農業(yè)現(xiàn)代化研究,2017,38(2):343-351.
[23]張延麗,李春貴. 視頻車輛檢測中改進的閾值分割算法研究[J]. 廣西科技大學學報,2017,28(2):61-66.
[24]趙騰,野口伸,楊亮亮,等. 基于視覺識別的小麥收獲作業(yè)線快速獲取方法[J]. 農業(yè)機械學報,2016,47(11):32-37.
[25]梁習卉子,陳兵旗,姜秋慧,等. 基于圖像處理的玉米收割機導航路線檢測方法[J]. 農業(yè)工程學報,2016,32(22):43-49.
[26]李飛,賓洋,羅文廣,等. 基于TMSDM6437的車道線檢測[J]. 廣西科技大學學報,2018,29(1):43-48.