王祥祥,宮金良,張彥斐
(1. 山東理工大學(xué) 機(jī)械工程學(xué)院, 山東 淄博 255049;2. 山東理工大學(xué) 農(nóng)業(yè)工程與食品科學(xué)學(xué)院,山東 淄博 255049)
農(nóng)業(yè)機(jī)械自主導(dǎo)航技術(shù)是精準(zhǔn)農(nóng)業(yè)的一個(gè)重要組成部分,能夠有效提高大田作業(yè)的精準(zhǔn)度,同時(shí)減少人工的使用數(shù)量、降低作業(yè)成本。農(nóng)業(yè)機(jī)械自主導(dǎo)航技術(shù)最早在20世紀(jì)20年代被提出,從最早的預(yù)埋電纜導(dǎo)航發(fā)展到現(xiàn)在的機(jī)器視覺(jué)導(dǎo)航、GPS導(dǎo)航、慣性導(dǎo)航和激光雷達(dá)導(dǎo)航等[1]。其中,機(jī)器視覺(jué)導(dǎo)航主要利用作物行呈直線或曲線規(guī)律性分布的特性,結(jié)合機(jī)器視覺(jué)技術(shù)檢測(cè)出局部分段直線,最終擬合成導(dǎo)航基準(zhǔn)線。機(jī)器視覺(jué)導(dǎo)航相比于其他幾種導(dǎo)航方式具有實(shí)時(shí)性好、成本低、適用范圍廣的優(yōu)點(diǎn),已經(jīng)成為精準(zhǔn)農(nóng)業(yè)的一項(xiàng)重要技術(shù)[2]。
目前,條播作物檢測(cè)提取導(dǎo)航線的方法主要有垂直投影法[3]、逆透視映射法[4](inverse perspective mapping, IPM)和Hough變換法[5]。其中,垂直投影法是將圖像按行分割為多個(gè)掃描區(qū)域,對(duì)每個(gè)掃描區(qū)域按列累加獲得累加曲線,根據(jù)作物行分布規(guī)律,從累加曲線提取目標(biāo)點(diǎn)。垂直投影法將從圖像中提取目標(biāo)點(diǎn)轉(zhuǎn)為從累加曲線中提取目標(biāo)點(diǎn),具有計(jì)算量小和實(shí)時(shí)性好的優(yōu)點(diǎn);但是,目標(biāo)點(diǎn)提取和分類(lèi)需要設(shè)置固定距離閾值,根據(jù)‘小孔成像’原理,設(shè)定固定距離閾值不能同時(shí)滿足距離相機(jī)遠(yuǎn)和距離相機(jī)近的作物,難以提取準(zhǔn)確的目標(biāo)點(diǎn)。IPM法是在已知俯仰角、偏航角和相機(jī)高度等參數(shù)的前提下,將具有透視形變的圖像映射為無(wú)透視形變的鳥(niǎo)瞰視圖[6]。IPM法能夠去除圖像的透視效果影響,消除圖像幾何失真;但是,農(nóng)業(yè)機(jī)械在凹凸不平的地面上行駛時(shí)會(huì)產(chǎn)生振動(dòng),俯仰角和偏航角會(huì)隨之產(chǎn)生擺動(dòng),相機(jī)高度也發(fā)生變化,這會(huì)導(dǎo)致映射后的作物行與真實(shí)作物行不匹配,并且在映射過(guò)程中,某些數(shù)值需要利用插值算法估計(jì)給出,因此會(huì)影響目標(biāo)點(diǎn)檢測(cè)的準(zhǔn)確率[7]。Hough變換法是將平面坐標(biāo)系映射到參數(shù)坐標(biāo)系,在參數(shù)坐標(biāo)系中根據(jù)累加計(jì)數(shù)器的值來(lái)提取直線;但由于圖像的數(shù)據(jù)量龐大,坐標(biāo)系映射過(guò)程中計(jì)算量大,導(dǎo)致Hough變換耗時(shí)較長(zhǎng),實(shí)時(shí)性較差。
針對(duì)以上問(wèn)題,為了解決垂直投影法提取和分類(lèi)目標(biāo)點(diǎn)需要設(shè)置距離閾值的不足,提出一種自動(dòng)提取導(dǎo)航線的方法,用來(lái)提高導(dǎo)航線提取的魯棒性和準(zhǔn)確性。
圖1 原始圖像Fig.1 Original image
以四輪獨(dú)立驅(qū)動(dòng)的移動(dòng)機(jī)器人作為采集平臺(tái),相機(jī)安裝在移動(dòng)機(jī)器人正前方,地面高度1 100 mm,俯仰角30°~50°,采集的圖像分辨率為640×480,原始圖像如圖1所示,通過(guò)圖像分割可以將綠色植物與土壤、干草、石塊等背景分離開(kāi)。孟慶寬等[8]提出的YCgCr顏色空間適合處理存在光照變化的圖像,其中Y表示明亮度,Cr表示R分量與光照強(qiáng)度的差異,Cg表示G分量與光照強(qiáng)度的差異。綠色植物含有的G分量比重較高,利用Cg分量可以排除光照強(qiáng)度的干擾進(jìn)而灰度化圖像,圖2為對(duì)應(yīng)的Cg灰度圖像。RGB顏色空間轉(zhuǎn)為YCgCr顏色空間的轉(zhuǎn)換公式[9]為
(1)
圖2 Cg灰度圖像Fig.2 Cg grayscale image
利用Otsu法自動(dòng)計(jì)算圖像閾值,將綠色植物劃分為一類(lèi),背景劃分為一類(lèi),使得綠色植物與背景兩類(lèi)之間的灰度方差最大化。將Cg灰度圖像中灰度值高于閾值的像素點(diǎn)置為0,灰度值低于閾值的灰度置為255,得到二值化圖像如圖3所示。
圖3 二值化處理圖像Fig.3 Binarization of the image
二值化圖像中含有噪聲以及小面積像素區(qū)域,對(duì)二值化圖像進(jìn)行形態(tài)學(xué)處理,能夠消除圖像的椒鹽噪聲和一些小面積像素,同時(shí)可以平滑較大物體的邊界。利用半徑為5像素的圓形結(jié)構(gòu)元素先對(duì)圖像進(jìn)行膨脹處理,然后對(duì)圖像進(jìn)行腐蝕處理。圖4為形態(tài)學(xué)處理圖像,圖像中的部分小面積像素被消除,玉米莖的邊緣變得更加平滑。
圖4 形態(tài)學(xué)處理后的圖像Fig.4 Morphologically processed image
形態(tài)學(xué)處理后的圖像中還存在一些小面積不規(guī)則區(qū)域,利用八鄰域算子跟蹤圖像中各個(gè)區(qū)域的邊緣,記錄每個(gè)區(qū)域的像素面積,將面積小于150的區(qū)域刪除。圖5是利用該方法處理后的圖像,圖像中的不規(guī)則噪聲區(qū)域明顯被剔除。
圖5 八鄰域去噪圖像Fig.5 Eight neighborhood denoised image
垂直投影法是提取導(dǎo)航線常用的圖像處理方法,具有計(jì)算量小、運(yùn)行速度快的優(yōu)點(diǎn)。本文首先利用垂直投影法提取目標(biāo)點(diǎn),然后將目標(biāo)點(diǎn)歸類(lèi),最后擬合同一類(lèi)的目標(biāo)點(diǎn)得到導(dǎo)航線。
以圖像左上角點(diǎn)為原點(diǎn),數(shù)組An[]用來(lái)保存第n個(gè)掃描區(qū)域中目標(biāo)點(diǎn)的橫坐標(biāo)值和縱坐標(biāo)值,記為An[xk,yk],數(shù)組中的坐標(biāo)值按照橫坐標(biāo)從小到大的順序排列。圖像尺寸為M(寬)×N(高),單位為像素。具體步驟如下:
1)對(duì)八鄰域去噪圖像從下到上用高度為40、寬度為M的條形框框選得到目標(biāo)區(qū)域,對(duì)目標(biāo)區(qū)域進(jìn)行垂直投影,垂直投影曲線為Sn(i),其中i∈[1,M]。
2)構(gòu)造邊長(zhǎng)為20像素的方形高斯濾波模板對(duì)垂直投影曲線Sn(i)進(jìn)行平滑處理,得到平滑曲線Kn(i),其中i∈[1,M]。
3)從左到右搜索每個(gè)掃描區(qū)域的曲線Kn(i),如果Kn(i)=0,且Kn(i+1)>0,繼續(xù)向右搜索,尋找第一個(gè)滿足Kn(k)>0且Kn(k+1)=0的點(diǎn),其中k∈[i,M];如果同時(shí)存在i點(diǎn)和k點(diǎn),則i點(diǎn)為左邊緣點(diǎn),k點(diǎn)為右邊緣點(diǎn),將點(diǎn)i和點(diǎn)k對(duì)應(yīng)的橫縱坐標(biāo)存入數(shù)組An[]中。
4)如果是第一個(gè)目標(biāo)區(qū)域,那么獲得的左右邊緣點(diǎn)歸屬為不同的類(lèi);如果不是第一個(gè)目標(biāo)區(qū)域,判斷目標(biāo)區(qū)域的每一組左右目標(biāo)點(diǎn)與前一個(gè)掃描區(qū)域中的左右目標(biāo)點(diǎn)。設(shè)點(diǎn)P(xj,yj)和點(diǎn)P′(xj+1,yj+1)是當(dāng)前目標(biāo)區(qū)域上相鄰的一組目標(biāo)點(diǎn),點(diǎn)Q(xl,yl)和點(diǎn)Q′(xl+1,yl+1)是前一掃描區(qū)域相鄰的左右目標(biāo)點(diǎn),如果max{xj,xl}≤min{xj+1,xl+1},則兩組目標(biāo)點(diǎn)歸為同一類(lèi);否則,表示出現(xiàn)了新的一類(lèi),將目標(biāo)點(diǎn)放入新的一類(lèi)中。
5)將所有目標(biāo)點(diǎn)類(lèi)按目標(biāo)點(diǎn)數(shù)量排序,以數(shù)量最多的前兩位目標(biāo)點(diǎn)類(lèi)作為最佳作物行,將同一類(lèi)目標(biāo)點(diǎn)中的左、右邊緣點(diǎn)取中點(diǎn)作為特征點(diǎn),利用穩(wěn)健回歸法線性擬合特征點(diǎn),得到導(dǎo)航線。
圖6為檢測(cè)目標(biāo)點(diǎn)的過(guò)程。其中,圖6(a)是第一個(gè)目標(biāo)區(qū)域,圖6(b)和圖6(c) 分別是對(duì)應(yīng)于圖6(a)的垂直投影曲線Sn(i)和平滑曲線Kn(i)。圖7是特征點(diǎn)和導(dǎo)航線檢測(cè)結(jié)果,圖中的點(diǎn)表示提取到的特征點(diǎn),紅色點(diǎn)和藍(lán)色點(diǎn)是數(shù)量最多的前兩位的目標(biāo)點(diǎn)類(lèi), 蘭色線是線性擬合得到的導(dǎo)航線。
圖6 目標(biāo)點(diǎn)檢測(cè)過(guò)程Fig.6 Target point detection process
圖7 特征點(diǎn)和導(dǎo)航線檢測(cè)結(jié)果Fig.7 Detection results of feature points and navigation lines
試驗(yàn)圖像采集于山東省淄博市臨淄區(qū)試驗(yàn)田,采集時(shí)間為2018年7月,采集到不同雜草密度的150張圖像。圖像處理軟件為MathWorks公司的Matlab2018b,運(yùn)行在英特爾Xeon E5-2643 @ 3.30 GHz(×2)、32 GB內(nèi)存,Windows7(64位)操作系統(tǒng)的計(jì)算機(jī)上。
為了分析算法提取導(dǎo)航線的準(zhǔn)確性,采用人工標(biāo)記的方法給定最佳導(dǎo)航線,獲取最佳導(dǎo)航線在圖像上的角度,以此為基準(zhǔn),分析算法提取到的導(dǎo)航線與最佳導(dǎo)航線的角度差,角度差在±5°時(shí)認(rèn)為結(jié)果準(zhǔn)確。為了驗(yàn)證算法的可行性和實(shí)時(shí)性,對(duì)采集到的150幅樣本圖像利用本文算法提取導(dǎo)航線。統(tǒng)計(jì)結(jié)果表明,本文算法處理一副640×480像素的圖像耗時(shí)約108 ms,導(dǎo)航線提取準(zhǔn)確率為92%,可以滿足農(nóng)業(yè)機(jī)械實(shí)時(shí)性導(dǎo)航的要求。
為了分析算法提取導(dǎo)航線的穩(wěn)定性,分別對(duì)雜草較多和雜草較少的圖像進(jìn)行處理,試驗(yàn)結(jié)果見(jiàn)表1。由表1可知,本算法針對(duì)雜草較多的情況具有較強(qiáng)的適應(yīng)能力,圖像處理平均耗時(shí)為103 ms,準(zhǔn)確率為90%。
部分試驗(yàn)結(jié)果如圖8所示。圖8中,圖8(a)和圖8(b)表示少量雜草的環(huán)境,圖8(c)和圖8(d)表示雜草較多的環(huán)境??梢钥闯?,本文算法提取到的特征點(diǎn)能準(zhǔn)確反映玉米植株位置,且能準(zhǔn)確劃分為不同的類(lèi)。試驗(yàn)表明,在雜草較多和雜草較少的田間環(huán)境下,本文算法都能夠準(zhǔn)確地提取導(dǎo)航線,具有良好的適應(yīng)能力和較強(qiáng)的魯棒性。
表1 不同環(huán)境的處理結(jié)果Tab.1 Results in different environments
(a)少量雜草,地表干燥 (b)少量雜草,地表濕潤(rùn)
(c)雜草較多,地表濕潤(rùn) (d)雜草較多,地表干燥圖8 不同環(huán)境條件的導(dǎo)航線提取結(jié)果Fig.8 Navigation line extraction results for different environmental conditions
提出一種基于機(jī)器視覺(jué)的導(dǎo)航線提取方法,針對(duì)垂直投影法提取和分類(lèi)目標(biāo)點(diǎn)需要設(shè)置距離閾值的不足,提出對(duì)垂直投影曲線進(jìn)行高斯平滑處理,并自動(dòng)提取和分類(lèi)目標(biāo)。試驗(yàn)結(jié)果表明,本算法處理一幅640×480像素的圖像耗時(shí)約108 ms,特征點(diǎn)擬合準(zhǔn)確率為92%。與傳統(tǒng)方法相比,該算法具有精度高、實(shí)時(shí)性好的特點(diǎn),算法在雜草較多的情況仍具有較強(qiáng)的魯棒性,可滿足農(nóng)業(yè)機(jī)械實(shí)時(shí)性導(dǎo)航的需求。