關卓懷 陳科尹 丁幼春 吳崇友 廖慶喜
(1.華中農業大學工學院, 武漢 430070; 2.農業農村部南京農業機械化研究所, 南京 210014)
水稻是我國的主要糧食作物,收獲是水稻生產的重要環節。水稻收獲須在黃熟期到完熟初期的5~8 d內完成,否則會直接影響產量、品質和下茬作物種植時機。收獲時,機手需要根據作物長勢和收獲效果及時調整工作部件運行參數。自動導航技術的不斷成熟,極大地提高了機械的田間作業品質和效率,降低了駕駛員勞動強度。通過機器視覺識別水稻已收獲與未收獲區域之間的分界線,再根據當前車輛位置與航線之間的像素差,計算航向偏差與橫向偏差,是規劃收獲作業導航路徑的一種有效手段[1-3]。
針對農田作業機具的作物線提取和視覺導航技術,國內外學者已開展了研究。文獻[4]通過提取圖像中的G值,區分果園中樹冠與背景,擬合樹行中心線為導航線,試驗表明,自主導航系統在桃園中的行進誤差的均方根為2.13 cm。文獻[5]設計了ROI區域動態選擇方法,使用3B-R-G法對彩色圖像進行灰度化處理,基于過已知點的Hough變換法檢測棉花收獲導航線。文獻[6]運用2G-R-B灰度化算法和隨機Hough變換檢測作物中心線,通過像素信息與世界坐標的變換,提取了位置偏差信息。文獻[7-10]采用與光照無關的Cg分量對彩色圖像進行灰度化處理,分別利用基于線性相關系數約束法和改進的遺傳算法提取作物行中心線,兩種方法對橫向偏差的檢測平均誤差分別小于12 mm和33 mm,但基于線性相關系數約束法的圖像處理耗時較長。文獻[11]基于HSV色彩空間對大拱棚路徑圖像信息進行處理,以道路盡頭橫向中心點作為導航信息標定點,導航線橫向平均識別偏差為2.4 cm。文獻[12]基于圖像中I分量對番茄壟間道路圖像進行灰度化處理,采用最小二乘法擬合導航線離散點,結果表明,該算法對導航線擬合的平均正確率達91.67%,平均相對偏差率0.71%。文獻[13-14]提出了基于圖像旋轉投影的導航路徑檢測算法,并且在大曲率路徑時,采用雙切線法估計轉彎半徑,識別準確率達95%以上。綜上,由于機器視覺系統易受光照條件、陰影噪聲等環境因素的影響,故要求圖像處理算法具有良好的魯棒性和實時性,從而確保自動導航系統的作業精度。現有作物線提取方法大多將作物線視作直線進行擬合,但因作物生長和收獲時情況復雜,作物線往往為不規則形狀,采用直線法擬合作物線必然導致航線提取的偏差。
為解決上述問題,本文提出一種水稻收獲作業視覺導航路徑提取方法。通過相機標定獲取相機內部參數和畸變參數,矯正原始圖像,高斯濾波鈍化圖像,采用2R-G-B超紅特征模型的綜合閾值進行圖像二值化分割,基于形態學的開-閉運算抑制二值圖像中的噪聲干擾,根據圖像灰度垂直投影值動態設定ROI區域,水平掃描獲取作物線關鍵點,采用多段三次B樣條曲線擬合法提取水稻待收獲區域邊界線,最后通過室內試驗和田間試驗對視覺導航路徑提取方法進行驗證。
通過相機采集到的田間圖像是像素信息,需獲取相機的內部參數,把圖像間的像素關系轉換為具體物理單位。同時,由于鏡頭存在畸變,需要獲取相機的畸變參數,再進行圖像矯正。
本文基于張正友法[15],通過40幅不同角度的標定板圖像完成標定。標定軟件如圖1所示。標定結果如表1所示。平面靶標圖像特征點的平均像素誤差perr為0.1像素,絕對誤差ferr為0.25 mm。

圖1 相機標定軟件界面Fig.1 Camera calibration software interface
基于相機標定結果獲得已知像素與其世界坐標的映射關系,對畸變圖像進行變換縮放,生成消除透視畸變和鏡頭畸變的矯正圖像,矯正后的圖像如圖2所示。
圖像處理過程中易受到噪聲的干擾而產生誤判或丟失重要信息。圖像增強可以有目的地強調圖像的某些特性,抑制不感興趣區域,加強圖像判斷和機器決策效果。對于水稻收獲圖像,作物間的空白和作物線附近突出的水稻莖稈都會影響導航路徑的提取。本文基于高斯平滑濾波,通過降低圖像細節進行模糊化,降低噪聲的干擾。二維高斯濾波函數為

表1 相機標定結果Tab.1 Result of camera calibration
注:fx、fy為焦距f在x、y方向上的值,u0、v0為主點(圖像原點)坐標值,k1、k2、k3為徑向畸變系數,p1、p2為切向畸變系數。α為相機內部參數成像平面傾角。

圖2 圖像畸變矯正結果Fig.2 Image distortion correction
(1)
式中 (x,y)——像素點坐標
σ——正態分布的標準差
像素點坐標在圖像處理中是整數,正態分布的標準差決定高斯濾波模板的寬度。認為3σ距離之外的像素對中心點不起作用,設3σ取整后的值為k,則高斯濾波窗口為(2k+1)×(2k+1)矩陣。使用模板對窗口矩陣內的像素進行卷積,矩陣內每個像素都是周圍相鄰像素加權平均,令矩陣中心點的像素等于加權平均值。通過高斯函數離散化得到的高斯函數值作為濾波模板系數,窗口矩陣內各元素的值為
(2)
如果σ較小,則生成模板的中心系數較大,周圍的系數較小,對圖像的平滑效果不明顯;反之,若σ較大,則生成模板的各個系數相差不是很大,圖像的平滑效果比較明顯,通過試驗,根據圖像調節σ,抑制噪聲。本文取σ=0.7,濾波窗口為一個5×5的矩陣。濾波前圖像如圖2b所示,濾波后圖像如圖3所示。

圖3 高斯濾波后圖像Fig.3 Image after Gauss filter
為提取圖像中的作物邊界,需要將彩色圖像轉換成灰度圖像,以統計像素灰度信息。RGB、HSV和HSI是農業工程圖像處理領域常用的顏色模型[16-18]。基于多種顏色模型和常用的灰度化算法對收獲圖像進行灰度化后的結果如圖4所示,包括RGB的G分量(圖4a)、RGB的2G-R-B分量(圖4b)、HSV的H分量(圖4c)、HSI的I分量(圖4d)。

圖4 顏色空間分量圖Fig.4 Component graphs of each color space
由圖4a可知,水稻收獲區域灰度圖像中,已收獲區域與未收獲區域邊界并不明顯,圖4b~4d中在未收獲區內部,存在較多噪聲,不利于作物線的提取。水稻收獲圖像主要由已收獲的水稻區域、未收獲的水稻區域和兩個區域間的田地組成。從顏色看,已收獲區域主要覆蓋為聯合收獲機碎草機構打碎的秸稈,以綠色為主;未收獲區域中,水稻谷穗為黃色,葉片和莖稈為綠色;背景田地為紅黑色,顏色特征區分較為顯著。對圖像在RGB空間的分布特征進行定量分析,基于Python和Matlab提取了各顏色特征空間,如圖5所示。

圖5 顏色特征空間與圖像灰度化效果Fig.5 Color space and gray processing
由圖5a~5c可知,收獲圖像中R、G、B分量在各個區域交互存在,不易直接區分。由圖5d可知,圖像經2R-G-B運算后,可明顯區分已收獲區域與未收獲區域,且能夠突出作物線同田間背景的對比度,適合作為水稻收獲圖像的灰度化算法。根據這種顏色空間分布特征,本文提出了一種基于2R-G-B超紅特征模型的綜合閾值二值化算法,設X=2R-G-B代表超紅分量,Rl、Gl、Bl、Xl為各分量的閾值下限,Rh、Gh、Bh、Xh為各分量的閾值上限,算法表達式為

圖6 二值化與形態學處理結果Fig.6 Results of binary and morphology

(3)
式中g(x,y)——點(x,y)的灰度
設定各分量閾值,作為圖像灰度化、二值化的依據,區分已收獲區域與未收獲區域,二值化處理后的收獲圖像如圖6a所示。二值化圖像中,未收獲區域存在噪聲點,已收獲區域中也存在大量空洞。為了消除這些干擾,基于形態學處理方法,先對二值圖像進行開運算,消除未收獲區域的噪聲點(圖6b),再進行閉運算,填充已收獲區域中的孔洞(圖6c),得到可以進行邊界擬合的二值化圖像。
作物線識別過程中,圖像處理運算量過大會增加計算時間,影響系統工作的實時性。感興趣區域(Region of interest,ROI)是從圖像顯示窗口中選擇的一個關鍵部分,減少數據處理量,提高系統的處理速度。但是由于作物線在圖像中的位置是隨機的,無法確定ROI位置。若ROI區域無法涵蓋整個作物邊界,必然導致關鍵點的失擬,但ROI區域過大又會增加計算量。為解決此類問題,本文提出了基于垂直投影法的動態ROI區域設定算法。
在二值圖像中,未收獲區域在圖像左側為黑色(灰度為0),未收獲區域在圖像右側為白色(灰度為255)。將圖像進行垂直投影,若像素灰度為255則累加,統計各列灰度為255的像素點數M。設第i列像素點數Mi為最大值,這表明此列白色像素點最多,必然是未收獲區域。設定未收獲區域在圖像左側,若存在多列M值相同,則取最左側列;未收獲區在右側同理,在試驗前進行設定。以列像素位置為中線,左右取200像素寬,即為感興趣區域,垂直投影統計的像素如圖7所示。

圖7 像素垂直投影Fig.7 Pixel vertical projection
現有作物線擬合方法包括Hough變換及其改進算法[3]、最小二乘法[19]、垂直投影法[20]等。這些擬合方法針對直線型作物線的擬合效果較好,但對于曲線型和不規則形狀的作物邊界,作物線擬合誤差增大。受田間復雜環境和作物長勢影響,作物邊界一般不會為嚴格的直線。本文采用水平掃描法,提取作物線擬合關鍵點的橫坐標,并提出一種基于三次B樣條曲線的作物線擬合方法,以適用于各類邊界形狀的作物線。
設擬合關鍵點坐標為(xi,yi),圖像二值化后未收獲區灰度為0,已收獲區的灰度為255,兩者的分界點就是灰度由0變為255的點。所以在ROI內進行水平掃描,就可以確定分界點,即作物線擬合關鍵點xi。
關鍵點的數量影響作物線擬合質量。選取過多會增加計算量,過少則影響擬合精度。設每隔l行提取一個關鍵點,則關鍵點數量為
m=V/l
(4)
式中m——關鍵點數量
V——圖像像素總行數
根據關鍵點數量,將圖像沿縱向平均分割,區域也為m個,取每個區域內形心的縱坐標yi為擬合定位點的縱坐標
(5)
式中y——像素縱坐標
A——區域內像素點的集合
j——區域內的像素點數
在ROI內以從上到下的順序進行m次水平掃描,即可獲取所有的擬合關鍵點。在獲取關鍵點后進行曲線擬合。
設樣條曲線基于給定的n+1個控制點pi(i=0,1,2,…,n),n次B樣條曲線段的參數表達式為
(6)
式中Fi,n(t)——n次B樣條基函數
Fi,n(t)展開式為
(7)

(8)
本文基于三次B樣條曲線進行作物線擬合,取n=3,樣條曲線基函數為
(9)
矩陣形式為
(10)
將相鄰兩個定位點歸為一組,每組通過插值運算生成4個控制點,生成單條三次B樣條曲線,整幅圖像共擬合m-1條三次B樣條曲線。所以,作物線的表達式為m-1條所擬合的三次B樣條曲線組成的分段函數
(11)
三次B樣條曲線擬合的關鍵點越多,曲線越光滑,擬合的精度也越高,但關鍵點過多會導致曲線過擬合,同時增加計算量,影響圖像擬合的實時性。本文取l=60,圖像尺寸為1 292像素×964像素,則關鍵點數m=15,所擬合的作物線如圖8所示。

圖8 作物線擬合結果Fig.8 Fitting result of crop line
圖像使用大恒MER-125-30GC型工業相機拍攝,130萬像素,配置H2Z0414C-MP鏡頭。用于 圖像處理的計算機處理器為Inerl Core i7,主頻2.5 GHz,內存16 GB;圖像處理程序基于Microsoft Visual Studio 2015和OpenCV 3.3開發。
為了將圖像像素信息轉換為實際位置信息,需要將相機坐標系轉換至世界坐標系,進而將圖像中的像素點數關系轉換為實際的距離和角度關系。如圖9所示,設Oc為視覺坐標系OcXcYcZc的原點,相機的右方為Xc軸(圖9中為垂直于直面向內),O為相機坐標系原點在地面的投影,作為世界坐標系OXYZ的原點,X方向與Xc一致。

圖9 相機坐標系與世界坐標系的位置關系Fig.9 Positional relationship between camera coordinate system and world coordinate system
相機坐標系至世界坐標系的轉換矩陣為
(12)
式中θ——相機與水平面的夾角,(°)
h——相機中心距離地面高度,m
設作物線擬合點為C(xC,yC),前視距離L=yC,則橫向偏差d=xC。
通過室內試驗,檢驗相機標定的準確性和圖像處理算法的有效性。見圖10,室內試驗時,相機的安裝位置與地面的距離h=1.58 m,相機軸線與水平面的夾角θ=30°,攝像機視野范圍lP1P2=11.88 m,lOP1=1.32 m,lOP2=13.20 m。

圖10 相機安裝位置Fig.10 Installation location of camera
如圖11所示,通過本文的圖像處理方法,計算地面白色紙帶上紅色圓點的圓心距和白色紙帶間的夾角,并與實際值進行對比。紙帶上貼有10個紅色圓點,相鄰圓點的圓心間距為500 mm。

圖11 室內試驗Fig.11 Laboratory test
基于機器視覺計算相鄰圓心的間距,改變相機的擺放位置,重復試驗,檢驗距離識別精度。試驗共重復6組,每組試驗輸出9個距離檢測值,試驗結果如表2所示。
同理,在地面上貼兩條帶有紅色圓點的白色紙帶,通過本文所述方法計算兩紙帶的夾角,試驗共進行6組,試驗結果如表3所示。

表2 距離識別結果Tab.2 Distance calculation result

表3 角度識別結果Tab.3 Angle calculation result
試驗表明,圖像處理獲得的圓心距與實際值相比,平均誤差為9.9 mm,偏差率2.0%,方差為44.8 mm2,均方差為6.5 mm;角度檢測試驗平均誤差0.77°,誤差率2.7%,方差0.13(°)2。距離檢測平均誤差小于1 cm,角度檢測平均誤差小于0.8°,室內試驗表明,相機標定準確,圖像處理方法有效,可以較好地開展距離識別和角度計算。
試驗在泰州紅旗農場水稻田中進行,田間試驗過程中,相機安裝在星光4LZ-5型履帶式聯合收獲機操作臺右前方。相機高度h=2.35 m,相機軸線與水平面向下的夾角θ=30°,聯合收獲機工作速度約為1.1 m/s。通過檢測所擬合的作物線與圖像中心線的距離偏差,對比實際偏差,檢驗作物線擬合結果。驗證圖像處理算法在不同光照環境下、對各類形狀的作物邊界線進行檢測的結果。
在順光、逆光、強光、弱光環境下對兩種不同品種水稻(中粳798、臨稻20)收獲期的作物線進行識別,拍攝同時從連續視頻幀上截取處理用圖像,保存為JPG格式進行圖像處理。在順光、逆光、強光、弱光環境下,采集了中粳798、臨稻20兩個品種的收獲圖像并進行處理。記錄圖像處理時間,平均每幀圖像處理耗時分別為33、35、38、48 ms和35、33、37、45 ms,單幀圖像平均處理時間38 ms,可以實現作物線的實時擬合。
人工標識圖像作物邊界,并與機器視覺自動擬合的作物線作物邊界進行對比,獲取導航路徑提取的像素誤差ep,并通過式(12)轉換為世界坐標系下的距離誤差ew,相對誤差為
(13)
式中er——相對誤差,%
H——圖像橫向像素數
中粳798作物線識別結果如圖12所示,關鍵點的擬合誤差計算結果如表4所示,作物線識別相對誤差隨像素縱坐標的變化如圖13所示。

圖12 中粳798作物線擬合結果Fig.12 Zhongjing 798 crop line fitting result
由表4可知,對于擬合中粳798作物線的15個關鍵點,順光環境下像素誤差范圍為16~36像素,平均像素誤差26.9像素,標準差為6.8像素,實際距離誤差為12~46 mm,平均距離誤差30.7 mm,相對誤差1.2%~2.8%,平均相對誤差2.1%;逆光環境下像素誤差范圍為18~63像素,平均像素誤差35.2像素,標準差為11.9像素,實際距離誤差為13~53 mm,平均距離誤差38.1 mm,相對誤差1.4%~4.9%,平均相對誤差2.7%;強光環境下像素誤差范圍為9~47像素,平均像素誤差26.2像素,標準差為12.0像素,實際距離誤差為15~40 mm,平均距離誤差26.3 mm,相對誤差0.7%~3.6%,平均相對誤差2.0%;弱光環境下像素誤差范圍為0~58像素,平均像素誤差26.7像素,標準差為18.7像素,實際距離誤差為0~42 mm,平均距離誤差23.9 mm,相對誤差0~4.5%,平均相對誤差2.1%。

表4 中粳798作物線15個關鍵點的橫向偏差計算結果Tab.4 Calculation results of lateral deviation of 15 key points of Zhongjing 798 crop line

圖13 中粳798作物線識別相對誤差Fig.13 Relative error of Zhongjing 798 crop line recognition
對于中粳798的收獲圖像,強光環境下平均像素誤差最小,為26.2像素,弱光環境下平均距離誤差最小,為23.9 mm,強光環境下平均相對誤差最小,為2.0%,順光環境下穩定性最好,標準差為6.8像素。4種光線環境下,中粳798作物線關鍵點識別的平均像素誤差為28.7像素,平均距離誤差39.7 mm,平均相對誤差2.7%。
臨稻20作物線識別結果如圖14所示,關鍵點的識別誤差計算結果如表5所示,作物線識別相對誤差隨像素縱坐標的變化如圖15所示。

圖14 臨稻20作物線擬合結果Fig.14 Lindao 20 crop line fitting results
由表5可知,對于擬合臨稻20作物線的15個關鍵點,在順光環境下的像素誤差范圍為21~76像素,平均像素誤差40.2像素,標準差為14.1像素,實際距離誤差為16~98 mm,平均距離誤差47.8 mm,相對誤差1.6%~5.9%,平均相對誤差3.1%;逆光環境下像素誤差范圍為9~43像素,平均像素誤差29.5像素,標準差為10.8像素,實際距離誤差為7~77 mm,平均距離誤差36.9 mm,相對誤差0.7%~3.3%,平均相對誤差2.3%;強光環境下像素誤差范圍為18~76像素,平均像素誤差36.5像素,標準差為13.9像素,實際距離誤差為12~89 mm,平均距離誤差42.6 mm,相對誤差1.4%~5.9%,平均相對誤差2.8%;弱光環境下的像素誤差范圍為11~67像素,平均像素誤差39.8像素,標準差為16.2像素,實際距離誤差為8~132 mm,平均距離誤差52.8 mm,相對誤差0.9%~5.2%,平均相對誤差3.1%。
對于臨稻20的收獲圖像,在逆光環境下的平均像素誤差最小,為29.5像素,平均距離誤差最小,為36.9 mm,平均相對誤差最小,為2.3%,穩定性也最好,標準差為10.8像素。4種光線環境下,臨稻20作物線關鍵點識別的平均像素誤差為36.5像素,平均距離誤差45.0 mm,平均相對誤差2.8%。

表5 臨稻20作物線15個關鍵點的橫向偏差計算結果Tab.5 Calculation results of lateral deviation of 15 key points of Lindao 20 crop line

圖15 臨稻20作物線識別相對誤差Fig.15 Relative error of Lindao 20 crop line recognition
綜上所述,應用本文所提出的水稻收獲導航線提取方法,導航線的提取誤差不超過45 mm,相對誤差不超過2.8%。中粳798收獲圖像的導航路徑提取結果優于臨稻20的收獲圖像,這是因為除了光照因素外,圖像處理結果還受到作物紋理等多種因素干擾。本文導航路徑提取算法識別耗時短,結果較為可靠,能適應多種光照環境,可以作為聯合收獲機視覺導航的依據。
(1)針對水稻收獲圖像中各區域的顏色特征,提出了適合收獲作業導航的2R-G-B圖像灰度化算法,該方法適于提取水稻已收獲區域與未收獲區域分界線。
(2)針對作物長勢和田間環境復雜、作物線輪廓不規則的特點,提出了基于三次B樣條曲線的作物線擬合方法,提高了作物線擬合方法的適應性。
(3)試驗表明,在不同的光線條件下,中粳798收獲圖像的作物線識別平均像素誤差為28.7像素,平均距離誤差39.7 mm,平均相對誤差2.7%;臨稻20收獲圖像的作物線識別平均像素誤差為36.5像素,平均距離誤差45.0 mm,平均相對誤差2.8%;單幀圖像平均處理時間38 ms。所提出的圖像處理與作物線擬合方法,在強光、弱光、順光、逆光環境下都能較為準確地識別已收獲區域與未收獲區域,適用于田間環境下水稻收獲作業視覺導航路徑的提取。