梁 臻,房體育,李金屏*
(1.濟(jì)南大學(xué)信息科學(xué)與工程學(xué)院,濟(jì)南 250022;2.山東省網(wǎng)絡(luò)環(huán)境智能計(jì)算技術(shù)重點(diǎn)實(shí)驗(yàn)室(濟(jì)南大學(xué)),濟(jì)南 250022;3.山東省“十三五”信息處理與認(rèn)知計(jì)算高校重點(diǎn)實(shí)驗(yàn)室(濟(jì)南大學(xué)),濟(jì)南 250022)
隨著經(jīng)濟(jì)的發(fā)展,機(jī)器人應(yīng)用到各行各業(yè),農(nóng)業(yè)是應(yīng)用機(jī)器人的一大領(lǐng)域,利用機(jī)器人加強(qiáng)農(nóng)業(yè)生產(chǎn)的自動化是現(xiàn)代農(nóng)業(yè)發(fā)展越來越關(guān)注的問題。在沒有人工標(biāo)記的農(nóng)田環(huán)境中,農(nóng)業(yè)機(jī)器人需要解決在無人操作情況下的自主導(dǎo)航。農(nóng)田中常用的定位方法是航位推算法、全球定位系統(tǒng)(Global Positioning System,GPS)和實(shí)時動態(tài)定位(Real-Time Kinematic,RTK)載波相位差分技術(shù)。其中:航位推算法是通過測量移動的距離和方位來推算位置,由于地面粗糙,車輪轉(zhuǎn)速不準(zhǔn)確,測量結(jié)果容易出現(xiàn)誤差[1];GPS 是一種以人造地球衛(wèi)星為基礎(chǔ)的無線電導(dǎo)航的定位系統(tǒng),民用端的GPS 定位精度無法滿足精準(zhǔn)農(nóng)業(yè)的要求,精準(zhǔn)農(nóng)業(yè)對于自動化駕駛、播種等工作需要厘米級定位精度[2];RTK 定位精度可達(dá)厘米級,近幾年來農(nóng)機(jī)導(dǎo)航多用這種基于載波相位觀測的實(shí)時動態(tài)高精度定位技術(shù),但是成本較高[3]。因此,相關(guān)學(xué)者提出使用其他傳感器輔助機(jī)器人進(jìn)行精確定位的方法,常見的進(jìn)行輔助導(dǎo)航的傳感器有激光雷達(dá)、慣性加速度測量儀、紅外測距傳感器、超聲波測距傳感器和視覺傳感器等。
激光雷達(dá)、紅外測距等導(dǎo)航方式普遍成本較高且對環(huán)境有一定的要求,例如,文獻(xiàn)[4]提出的方法要求農(nóng)作物分布稀疏,且普遍比激光雷達(dá)傳感器高5~10 cm,而視覺傳感器具有成本低、設(shè)備簡單和獲取環(huán)境信息全面等優(yōu)點(diǎn),所以被廣泛應(yīng)用在很多場景。在農(nóng)田等無標(biāo)記的室外環(huán)境中,控制機(jī)器人進(jìn)行基于視覺導(dǎo)航的方法主要有兩類:一是結(jié)合其他傳感器建立導(dǎo)航地圖或檢測作物行、道路等;二是利用單一視覺傳感器根據(jù)顏色特征或紋理特征進(jìn)行道路、作物行的識別。
對于第一類方法,一些工作利用無人機(jī)等設(shè)備把圖像傳送給機(jī)器人進(jìn)而構(gòu)建地圖[5-8]:文獻(xiàn)[9]結(jié)合激光與攝像機(jī),實(shí)現(xiàn)了三維地圖的快速構(gòu)建,能夠直觀地顯示環(huán)境特征;文獻(xiàn)[4]利用激光測距儀測量機(jī)器人到作物的距離,結(jié)合視覺傳感器開發(fā)了基于粒子過濾器的概率導(dǎo)航方法,在半結(jié)構(gòu)化的農(nóng)場中具有較好的魯棒性。雖然多傳感器融合技術(shù)能克服單一導(dǎo)航技術(shù)的缺陷,提高定位精度,但其成本較高,還需要考慮對傳感器的資源分配問題,不適合民用導(dǎo)航。
對于第二類方法,一些學(xué)者通過提取特征來檢測道路[10-11],其中:文獻(xiàn)[10]利用顏色特征提取作物和雜草信息,將作物與背景分離,提取了作物中心線和導(dǎo)航路徑;文獻(xiàn)[11]通過提取圖像中的紋理和顏色信息,獲取了作物行的紋理信息,用穩(wěn)定的圖像生成了一個模板來估計(jì)運(yùn)動中機(jī)器人的橫向偏移情況。一些學(xué)者通過檢測直線來尋找道路[12-13],其中:文獻(xiàn)[12]提取了水田圖像的灰度和角點(diǎn)特征,通過聚類算法和霍夫變換進(jìn)行了直線檢測,進(jìn)而尋找路徑信息;文獻(xiàn)[13]借助垂直投影方法估計(jì)作物行的位置,然后使用霍夫變換檢測作物行和道路信息。還有學(xué)者利用圖像分割進(jìn)行路徑的提?。?4-15],其中:文獻(xiàn)[14]利用超像素對道路圖像進(jìn)行分割,利用近鄰傳播聚類算法進(jìn)行二次分類,檢測出道路區(qū)域;文獻(xiàn)[15]用RGB(Red-Green-Blue)和HSV(Hue-Saturation-Value)模型對圖像進(jìn)行分割,提出了一種利用水平樣條分割的棉花田地導(dǎo)航路徑提取方法。此外,還有研究者利用立體視覺提出了一種基于概率占位柵格圖和障礙物標(biāo)記的導(dǎo)航方法,但這種方法只適用于作物稀疏的農(nóng)田[16]。上述文獻(xiàn)[10-16]中的機(jī)器人導(dǎo)航方法在一定程度上取得了實(shí)際的應(yīng)用效果,但都只適用于特定的農(nóng)場環(huán)境,且要求作物行、道路的紋理信息明顯或者農(nóng)作物容易和背景區(qū)分,一旦環(huán)境發(fā)生變化,不具備結(jié)構(gòu)化特點(diǎn),圖像的紋理信息不清晰或作物稠密無道路信息時,如圖1,這些方法將不再適用。為了解決這個問題,本文同樣利用單一視覺傳感器,提出了一種基于虛擬導(dǎo)航線的精確導(dǎo)航方法。
圖1 紋理不清晰的農(nóng)作物展示Fig.1 Crop displays with unclear textures
該方法利用核相關(guān)濾波(Kernel Correlation Filter,KCF)方法跟蹤目標(biāo),根據(jù)目標(biāo)與機(jī)器人的位置確定參照目標(biāo)的位置,利用兩個目標(biāo)構(gòu)建虛擬導(dǎo)航線,然后結(jié)合虛擬定標(biāo)線和虛擬導(dǎo)航線確定偏移角度和偏移距離,最后使用模糊控制法修正路線,從而實(shí)現(xiàn)機(jī)器人的精確自主導(dǎo)航。
本文的創(chuàng)新點(diǎn)有兩個:一是該方法對環(huán)境的結(jié)構(gòu)化要求不高,利用少量信息構(gòu)建了虛擬導(dǎo)航線,在湖泊、蘆葦?shù)氐榷伎梢允褂?,適用于多種作物類型,無須鋪設(shè)地標(biāo)和真實(shí)導(dǎo)航線;二是由于使用了目標(biāo)跟蹤算法,該方法可以根據(jù)需求選擇視野中的任意一個物體作為目標(biāo),實(shí)現(xiàn)機(jī)器人自主朝此方向的直線行走,能夠滿足民用農(nóng)業(yè)機(jī)器人的應(yīng)用需求。
在實(shí)時的動態(tài)環(huán)境中無法建立明確的地圖,因此田野等動態(tài)環(huán)境中不適宜構(gòu)建地圖,常用的無環(huán)境地圖的視覺導(dǎo)航方法有基于光流、外觀信息和目標(biāo)跟蹤的導(dǎo)航方式。利用目標(biāo)跟蹤算法,能有效提高機(jī)器人的導(dǎo)航能力,實(shí)現(xiàn)機(jī)器人在未知環(huán)境下的導(dǎo)航[17-18]。因此,針對無明顯結(jié)構(gòu)特點(diǎn)的野外環(huán)境中機(jī)器人直線行走的問題,本文基于目標(biāo)跟蹤算法,提出了一種無須鋪設(shè)導(dǎo)航線、無須設(shè)立人工路標(biāo)的自主導(dǎo)航方法。
該方法依據(jù)場景中跟蹤目標(biāo)與機(jī)器人之間的空間位置關(guān)系確定參照目標(biāo)并構(gòu)建虛擬導(dǎo)航線,并采用對導(dǎo)航線上的參照目標(biāo)進(jìn)行跟蹤和動態(tài)更新的方法維持其在場景中的穩(wěn)定狀態(tài),然后利用虛擬導(dǎo)航線與虛擬定標(biāo)線在圖像中形成的角度和距離關(guān)系,實(shí)時獲取機(jī)器人的偏角和姿態(tài)信息,進(jìn)而使用模糊控制的方法實(shí)現(xiàn)對機(jī)器人行走速度和旋轉(zhuǎn)角度的動態(tài)調(diào)整,最終達(dá)到輔助機(jī)器人直線行走的目的。本章將從跟蹤目標(biāo)的確定、基于KCF 的虛擬導(dǎo)航線的構(gòu)建、結(jié)合虛擬定標(biāo)線的偏移參數(shù)計(jì)算和基于模糊控制的校正行走4 個步驟詳細(xì)解釋此方法,該方法流程如圖2所示。
圖2 本文方法流程Fig.2 Flowchart of the proposed method
本文方法的關(guān)鍵之處是利用虛擬導(dǎo)航線引導(dǎo)機(jī)器人直線行走,而虛擬導(dǎo)航線需要通過目標(biāo)跟蹤和更新的策略實(shí)現(xiàn),因此初始跟蹤目標(biāo)的確定至關(guān)重要。此方法可以根據(jù)需求將視野中的任意一個物體作為初始跟蹤目標(biāo),控制機(jī)器人朝此方向進(jìn)行直線行走。為了保證機(jī)器人朝著目標(biāo)方向走直線,跟蹤目標(biāo)應(yīng)該位于視野正前方位置,因此需要調(diào)整機(jī)器人的方向,使此目標(biāo)的位置由A移動到A′,即使目標(biāo)框中心點(diǎn)位于視野中線l上,調(diào)整角度為α。具體如圖3 所示,其中(a)是確定初始目標(biāo)時的視野,(b)是調(diào)整后的視野,(c)為機(jī)器人調(diào)整的角度展示。
機(jī)器人向前行走時,若只保證跟蹤目標(biāo)位于視野中央,仍不能確定路線為直線,如圖4 所示,機(jī)器人由F移至F′,雖然目標(biāo)一直位于正前方視野,但行走路線為曲線。因此需要確定一個參照目標(biāo)來記錄此刻機(jī)器人與目標(biāo)之間的空間位置關(guān)系,兩個目標(biāo)的相對位置反映了機(jī)器人行走路線的變化。
本文假設(shè)機(jī)器人視野下邊界的中點(diǎn)M(圖5)代表機(jī)器人的起始位置,將已移至中央?yún)^(qū)域的初始目標(biāo)的中心點(diǎn)A與視野下邊界中點(diǎn)M進(jìn)行連線,在連線上確定參照目標(biāo),設(shè)置此目標(biāo)的大小與上方目標(biāo)一致,目標(biāo)框中心點(diǎn)位于連線中點(diǎn)B,如圖5 所示。由于此目標(biāo)的位置處于初始目標(biāo)下方,下文將稱此目標(biāo)為下方目標(biāo),將初始目標(biāo)稱為上方目標(biāo)。若上方目標(biāo)的中心、下方目標(biāo)的中心和機(jī)器人的動態(tài)位置,即視野下邊界的中點(diǎn)位于一條直線上,則說明三點(diǎn)共線,若機(jī)器人行走過程中仍保持三點(diǎn)共線,則說明行走路徑為直線。
圖3 初始跟蹤目標(biāo)的確定Fig.3 Determination of initial tracking target
圖4 單目標(biāo)情況下機(jī)器人姿態(tài)變化Fig.4 Change of robot’s posture in case of single target
圖5 確定下方參照跟蹤目標(biāo)Fig.5 Determination of reference tracking target below the field of vision
田野中不適宜鋪設(shè)導(dǎo)航線和路標(biāo),但導(dǎo)航線和路標(biāo)能夠很好地引導(dǎo)機(jī)器人進(jìn)行自主導(dǎo)航,所以本文設(shè)計(jì)了虛擬導(dǎo)航線來引導(dǎo)機(jī)器人行走。虛擬導(dǎo)航線是在視野中利用上下方目標(biāo)形成的導(dǎo)航線,能輔助機(jī)器人確定前進(jìn)方向,實(shí)際并不存在。本文的虛擬導(dǎo)航線是基于目標(biāo)跟蹤算法構(gòu)建的,因此需要選擇一個適用于田野環(huán)境的目標(biāo)跟蹤算法,經(jīng)對比實(shí)驗(yàn),本文選取了KCF算法作為目標(biāo)跟蹤算法。
機(jī)器人行走過程中,若能保證上方目標(biāo)中心、下方目標(biāo)中心和視野下邊界的中點(diǎn)在一條直線上,就能保證機(jī)器人朝著上方目標(biāo)進(jìn)行直線行走。當(dāng)機(jī)器人的方向出現(xiàn)偏差時,這三點(diǎn)將不再共線,如圖6(a)所示,A、B、M三點(diǎn)不共線,當(dāng)機(jī)器人的位置由M移動至M′時,三點(diǎn)又可共線,所以本文將上方目標(biāo)中心A和下方目標(biāo)中心B的連線AB的延長線AM′作為虛擬導(dǎo)航線,出現(xiàn)偏差時引導(dǎo)機(jī)器人向能使得三點(diǎn)共線的方向移動,就可實(shí)現(xiàn)機(jī)器人朝著初始目標(biāo)直線行走。這是因?yàn)閷?dǎo)航線保存了初始目標(biāo)移至視野中央?yún)^(qū)域時的視野信息和設(shè)計(jì)的路線信息,當(dāng)機(jī)器人的行走偏離了預(yù)設(shè)的路線,導(dǎo)航線可以給予糾正,使初始目標(biāo)、參照目標(biāo)和機(jī)器人的動態(tài)位置再次位于一條直線。需要注意的是,機(jī)器人行走過程中,上方目標(biāo)和下方目標(biāo)的位置會發(fā)生改變,虛擬導(dǎo)航線隨之變化。當(dāng)出現(xiàn)如圖6(b)、(c)所示的情況時,下一時刻的下方目標(biāo)垂直方向或左右方向移出視野,將不具備參照意義,需要更新下方參照目標(biāo),從而更新導(dǎo)航線。
圖6 虛擬導(dǎo)航線的構(gòu)建Fig.6 Construction of virtual navigation line
更新導(dǎo)航線的具體方法是,當(dāng)下方目標(biāo)即將消失時,記錄這一時刻的下方目標(biāo)的位置,如圖7 所示,將此目標(biāo)的中心點(diǎn)B與上方目標(biāo)中心點(diǎn)A進(jìn)行連線,連線的中點(diǎn)B′作為新的下方目標(biāo)的中心點(diǎn),設(shè)置更新的下方目標(biāo)與上方目標(biāo)大小相同,這種更新方式使得下方目標(biāo)的更換不影響導(dǎo)航線的變化,保證了導(dǎo)航線的穩(wěn)定性和導(dǎo)航的連續(xù)性。
圖7 更新下方目標(biāo)Fig.7 Update of the lower target
本文結(jié)合虛擬導(dǎo)航線和虛擬定標(biāo)線,計(jì)算出機(jī)器人的偏移角度和偏移距離,利用這些偏移參數(shù)來進(jìn)行下一步的控制決策,從而保證機(jī)器人行走直線。地面上的平行線由于透視原理會在攝像頭中產(chǎn)生匯聚現(xiàn)象,虛擬定標(biāo)線是基于此原理呈現(xiàn)在攝像頭畫面的具有匯聚現(xiàn)象的一組線,實(shí)際上并不存在[19]。虛擬定標(biāo)線在視野中的匯聚程度受攝像頭俯仰角的影響,以30°俯角為例,呈現(xiàn)的虛擬定標(biāo)線如圖8 所示,(a)是地面上的一組平行線,(b)是在攝像頭視野中相對應(yīng)形成的虛擬定標(biāo)線。當(dāng)機(jī)器人行走路線與任意一條虛擬定標(biāo)線重合時,即說明機(jī)器人行走路線與地面上的平行線重合,就可以認(rèn)為機(jī)器人沿著地面上的平行直線行走。
圖8 平行線和對應(yīng)的虛擬定標(biāo)線展示圖Fig.8 Parallel lines and corresponding virtual calibration lines
如圖9 所示,MN是圖像中心的基準(zhǔn)線,DQ是由兩個跟蹤目標(biāo)確定的導(dǎo)航線,即預(yù)設(shè)的行走路線,PQ是該場景下根據(jù)30°俯角情況確定的虛擬定標(biāo)線。當(dāng)DQ和PQ重合時,說明機(jī)器人是沿導(dǎo)航線行走的,DQ和PQ形成的夾角α為機(jī)器人行進(jìn)方向偏離導(dǎo)航線的角度,即偏移角度。d為圖像下邊界的中點(diǎn)M到導(dǎo)航線的距離,代表機(jī)器人動態(tài)位置到導(dǎo)航線的距離,即偏移距離。利用虛擬導(dǎo)航線和虛擬定標(biāo)線的位置關(guān)系,確定了偏移角度和偏移距離。
圖9 偏移參數(shù)的確定Fig.9 Determination of offset parameters
由于室外環(huán)境的不穩(wěn)定性,機(jī)器人獲取到的圖像受光照、陰影等影響較大,且機(jī)器人在不平坦的地面上行走,難以使用精確的控制算法,所以本文采用模糊控制的方法修正機(jī)器人的行走路線。建立模糊控制表之前需要確定偏移角度模糊集和偏移距離模糊集,基于本文實(shí)驗(yàn)機(jī)器人的攝像頭視野范圍和調(diào)整敏感度,本文將偏移角度α的取值范圍定義為(-25°,25°),并根據(jù)此范圍劃分了模糊集。當(dāng)虛擬定標(biāo)線位于導(dǎo)航線左邊時,即需要進(jìn)行逆時針旋轉(zhuǎn)時,設(shè)置偏移角度為負(fù),反之為正。以30°俯角視野為例,將偏移角度平均分成5 個語言值,如表1 所示;根據(jù)偏移距離在含有虛擬定標(biāo)線的導(dǎo)航圖像中的位置將其定義為7個語言值,如圖10所示。
在獲得偏移角度和偏移距離后,利用模糊控制來抑制偏差的變大,控制的力度由一對比例因子(k1,k2)確定,k1為控制機(jī)器人行走速度的比例因子,k2為控制機(jī)器人旋轉(zhuǎn)角度的比例因子。當(dāng)需要控制機(jī)器人逆時針旋轉(zhuǎn),向左校正機(jī)器人行走路線時,k2設(shè)置為負(fù)值,反之,為正值。表2 給出了上述論域劃分情況下的模糊控制表[20],利用該表可以實(shí)現(xiàn)對機(jī)器人行走速度和旋轉(zhuǎn)角度的模糊控制,從而實(shí)現(xiàn)對機(jī)器人行走路徑的校正。
表1 偏移角度的模糊語言變量描述Tab.1 Fuzzy linguistic variables of offset angles
圖10 偏移距離的模糊語言變量描述Fig.10 Fuzzy linguistic variables of offset distances
表2 模糊控制表Tab.2 Fuzzy control table
本文所用的機(jī)器人是美國MobilerRobots公司設(shè)計(jì)的智能移動機(jī)器人Pioneer3-DX,采用的控制器為日立公司的H8S 系列,操作系統(tǒng)為 ActivMedia Robotics Operating System(AROS),機(jī)身組成部分包括頂板緊急停車按鈕、用戶控制面板、車身、機(jī)鼻、附件面板、聲納環(huán)、電機(jī)、車輪及編碼器、電源和電池等。結(jié)合串口網(wǎng)絡(luò)攝像頭安訊士AXIS 214 PTZ Network Camera 和視頻采集口等,組成了實(shí)驗(yàn)所用的多功能先鋒機(jī)器人,攝像頭可在云臺上實(shí)現(xiàn)360°旋轉(zhuǎn)和上下180°俯仰,如圖11所示。
圖11 Pioneer3-DX機(jī)器人Fig.11 Pioneer3-DX robot
本文中的虛擬導(dǎo)航線是實(shí)現(xiàn)機(jī)器人自主導(dǎo)航的關(guān)鍵,由于虛擬導(dǎo)航線是根據(jù)動態(tài)跟蹤的兩個目標(biāo)確定的,所以目標(biāo)跟蹤的效果好壞決定了導(dǎo)航線的準(zhǔn)確性和穩(wěn)定性。因此本文設(shè)計(jì)了實(shí)驗(yàn)來驗(yàn)證目標(biāo)跟蹤算法的性能,從定性和定量的角度進(jìn)行分析算法是否可以滿足構(gòu)建穩(wěn)定導(dǎo)航線的需求。
2.2.1 定性分析
在農(nóng)田場景中隨意選擇視野中的一個區(qū)域作為目標(biāo)并進(jìn)行跟蹤,比如草地或遠(yuǎn)方的樹,每隔2 min 記錄一次目標(biāo)區(qū)域的圖像,在30 次實(shí)驗(yàn)中隨機(jī)選取6 次實(shí)驗(yàn)的目標(biāo)區(qū)域的跟蹤結(jié)果進(jìn)行效果展示。圖12 展示了農(nóng)田環(huán)境中隨機(jī)選取的目標(biāo)區(qū)域和跟蹤過程中的變化,①~⑥展示了本文選取的不同目標(biāo)圖像隨時間的變化,列代表同一時刻對應(yīng)的不同目標(biāo)區(qū)域的圖像,行代表同一目標(biāo)區(qū)域在不同時刻的圖像。隨著機(jī)器人向前行走,可以看出目標(biāo)區(qū)域的圖像在視野中的尺寸變大,受光照影響圖像的亮度有變化,但目標(biāo)跟蹤效果相對準(zhǔn)確,沒有跟錯、跟丟現(xiàn)象,跟蹤性能較好。
圖12 目標(biāo)跟蹤效果展示Fig.12 Effect of target tracking
2.2.2 定量分析
1)目標(biāo)區(qū)域圖像的相似度測算。
跟蹤過程中,不同時刻的目標(biāo)區(qū)域的圖像的相似度如果維持在較高水平,可以說明目標(biāo)跟蹤效果相對準(zhǔn)確。本文用皮爾遜相關(guān)系數(shù)作為衡量圖像相似度的一個標(biāo)準(zhǔn)。在不同場景下進(jìn)行30 次實(shí)驗(yàn),每隔2 min 記錄一次跟蹤目標(biāo)的圖像,每次實(shí)驗(yàn)記錄10 次,然后將得到的目標(biāo)區(qū)域的圖像與第一幀目標(biāo)區(qū)域的圖像進(jìn)行皮爾遜相關(guān)系數(shù)計(jì)算,計(jì)算圖像之間的相似度。皮爾遜相關(guān)系數(shù)是由卡爾·皮爾遜在19世紀(jì)80年代提出的用于度量兩個變量之間的相關(guān)程度的方法,其定義為兩個變量之間的協(xié)方差和標(biāo)準(zhǔn)差的商,如式(1)。本文用RGB信息組成向量信息,具體的計(jì)算方法是將R、G、B 三個原色取值都平均劃分為4 個區(qū)間,分別是0~63、64~127、128~191、192~255,一個像素值有R、G、B 三個分量,則有43=64 種組合方式,可以看作64 個不同的區(qū)間,每個像素點(diǎn)都唯一地屬于64 個區(qū)間中的一個,統(tǒng)計(jì)圖片中每個區(qū)間的像素點(diǎn)個數(shù),因此每個圖片都能用一個64 維的向量表示,X代表初始目標(biāo)區(qū)域圖像的像素點(diǎn)的RGB 信息組成的64 維向量,Y代表運(yùn)動過程中目標(biāo)區(qū)域圖像的像素點(diǎn)的RGB 信息組成的64 維向量,N代表圖片向量的維數(shù)。運(yùn)動過程中,當(dāng)目標(biāo)區(qū)域圖像與初始目標(biāo)區(qū)域圖像的大小不一致,無法進(jìn)行相似度測算時,需要對該圖像進(jìn)行縮放操作使其與初始目標(biāo)區(qū)域圖像大小一致。
將所得的皮爾遜相關(guān)系數(shù)結(jié)果的均值、方差和最小值進(jìn)行計(jì)算,結(jié)果如圖13 所示。從圖中數(shù)據(jù)可得,皮爾遜相關(guān)系數(shù)的數(shù)值波動在0.5~1,集中在0.8~0.9,方差幾乎為0,屬于較強(qiáng)的相似性,能夠說明不同幀的目標(biāo)區(qū)域的圖像內(nèi)容變化不大,跟蹤效果比較準(zhǔn)確。
2)不同跟蹤算法的精度與成功率測算。
本文利用平均精度均值(mean Average Precision,mAP)計(jì)算跟蹤精度,用交并比(Intersect over Union,IoU)計(jì)算成功率。mAP是指跟蹤算法得到的目標(biāo)位置的中心點(diǎn)與人工標(biāo)注的目標(biāo)的中心點(diǎn)之間的平均距離,本文用歐氏距離進(jìn)行計(jì)算。其中,t時刻的中心點(diǎn)距離的定義如式(2)所示,(x1,y1)表示人工標(biāo)注目標(biāo)區(qū)域的中心坐標(biāo),(x2,y2)表示對應(yīng)時刻跟蹤算法預(yù)測的目標(biāo)區(qū)域的中心點(diǎn)的坐標(biāo)。IoU 是指跟蹤算法得到的目標(biāo)區(qū)域與人工標(biāo)注的目標(biāo)區(qū)域的平均重合率,其中,t時刻的重合率的定義如式(3)所示代表t時刻人工標(biāo)注的目標(biāo)區(qū)域表示t時刻跟蹤算法預(yù)測的目標(biāo)區(qū)域。
圖13 目標(biāo)圖像的皮爾遜相關(guān)系數(shù)計(jì)算結(jié)果Fig.13 Pearson correlation coefficient calculation results of target images
保存30次實(shí)驗(yàn)過程中的視頻,用每段視頻所有幀的mAP和IoU 計(jì)算結(jié)果進(jìn)行精度和成功率的計(jì)算。精度指在設(shè)定的不同的距離閾值情況下,mAP 結(jié)果小于閾值的幀數(shù)占視頻總幀數(shù)的百分比;成功率指在不同重疊率閾值情況下,IoU 大于閾值的幀數(shù)占視頻總幀數(shù)的百分比。以閾值為標(biāo)準(zhǔn),計(jì)算30段視頻的平均精度和平均成功率,具體計(jì)算方法是計(jì)算出每段視頻在設(shè)定閾值下的精度和成功率,累加后再除以視頻個數(shù)。
由于室外場景種類繁多,而且目標(biāo)選取具有隨機(jī)性,本文不適宜使用基于深度學(xué)習(xí)的跟蹤算法,因此本文選取了幾種傳統(tǒng)的目標(biāo)跟蹤算法與KCF 目標(biāo)跟蹤算法進(jìn)行了比較,實(shí)驗(yàn)結(jié)果如圖14所示。通過對比得知,在農(nóng)田環(huán)境中KCF 相比其他跟蹤算法有一定的精度優(yōu)勢,跟蹤效果比較準(zhǔn)確,是一種跟蹤性能較好的跟蹤算法。這主要是因?yàn)镵CF 使用了樣本的方向梯度直方圖(Histogram of Oriented Gradient,HOG),在顏色信息和紋理信息有限的農(nóng)田環(huán)境中,HOG 特征相比灰度特征、顏色特征具有明顯的優(yōu)勢,受光照等影響小,能獲得較好的跟蹤效果。
圖14 跟蹤算法的精度和成功率比較Fig.14 Comparison of accuracy and success rate of tracking algorithms
虛擬導(dǎo)航線決定了機(jī)器人的行走方向,在機(jī)器人自主導(dǎo)航過程中起著至關(guān)重要的作用。若兩個目標(biāo)的連線相對比較穩(wěn)定,連線就可作為機(jī)器人行走的虛擬導(dǎo)航線,偏移角度和偏移距離就可以作為調(diào)整的參數(shù),利用模糊推理法得到左右輪速等,然后生成控制指令發(fā)送給機(jī)器人,就可以實(shí)現(xiàn)機(jī)器人沿著虛擬導(dǎo)航線行走,因此本文設(shè)計(jì)了實(shí)驗(yàn)來證明虛擬導(dǎo)航線的穩(wěn)定性。
此實(shí)驗(yàn)的環(huán)境為較平坦的地面,使機(jī)器人能在無人工干預(yù)的情況下順利地行走直線。鋪設(shè)從起始點(diǎn)到遠(yuǎn)處目標(biāo)的直線型標(biāo)定線,使其與機(jī)器人視野中的豎直標(biāo)定線重合,當(dāng)機(jī)器人從起始點(diǎn)出發(fā)向前行走時,記錄偏移角度α的變化。當(dāng)角度α接近0°時,表明當(dāng)機(jī)器人行走路線為直線時,該方法對機(jī)器人偏移方向的判斷是正確的,同時證明了該方法中的虛擬導(dǎo)航線是穩(wěn)定的。本文在不同場景下進(jìn)行了30 次實(shí)驗(yàn),實(shí)驗(yàn)過程中,每隔2 min 記錄一次角度α的數(shù)值,每次實(shí)驗(yàn)記錄10次,計(jì)算角度α的均值、方差和最大值,統(tǒng)計(jì)結(jié)果如圖15所示。從圖中可以看出,角度α的變化范圍在0°~1.6°,均值波動在0.4°~1°,方差較小,角度變化波動不大,可以說明機(jī)器人行走路線接近直線,與實(shí)際情況相符,虛擬導(dǎo)航線具有較強(qiáng)的穩(wěn)定性。
圖15 偏移角度統(tǒng)計(jì)圖Fig.15 Statistical graph of offset angle
此部分實(shí)驗(yàn)在結(jié)構(gòu)化不明顯的農(nóng)田中進(jìn)行,在距離起始點(diǎn)一定位置處計(jì)算偏移角度誤差和偏移距離誤差的數(shù)值,即算法計(jì)算的角度和距離與真實(shí)角度和距離的差值,并與其他導(dǎo)航方法進(jìn)行對比,分別是有人工標(biāo)記的導(dǎo)航方法和無人工標(biāo)記的導(dǎo)航方法。
在之前的研究工作中,利用虛擬定標(biāo)線的直線型導(dǎo)航需要借助在地面上鋪設(shè)的導(dǎo)航線[20],本文將此方法與提出的方法進(jìn)行對比來驗(yàn)證無人工標(biāo)記情況下使用虛擬導(dǎo)航線的導(dǎo)航效果。在相同的較為平坦的農(nóng)田場景下進(jìn)行30 次實(shí)驗(yàn),在距離起始點(diǎn)10 m 至40 m 處記錄30 次偏移角度誤差和偏移距離誤差,并記錄每個地點(diǎn)的誤差均值,如圖16~17所示。隨著行走距離的增長,誤差有增大的趨勢,且本文方法整體導(dǎo)航精度比鋪設(shè)導(dǎo)航線的方法略低,但兩種方法的平均距離誤差均在10 cm 以內(nèi),平均角度誤差均在2°以內(nèi),可以說明本文方法有一定的實(shí)用性,其效果與鋪設(shè)真實(shí)導(dǎo)航線的導(dǎo)航效果相似。
圖16 平均偏移角度誤差統(tǒng)計(jì)圖Fig.16 Statistical graph of mean offset angle error
圖17 平均偏移距離誤差統(tǒng)計(jì)圖Fig.17 Statistical graph of mean offset distance error
除此之外,本文還與其他無人工標(biāo)記情況下的導(dǎo)航方法進(jìn)行對比:文獻(xiàn)[10]利用顏色特征把綠色農(nóng)作物從背景中分離出來,利用霍夫變換提取了導(dǎo)航路徑;文獻(xiàn)[11]通過檢測圖像中主要的水平紋理方向,生成一個標(biāo)準(zhǔn)模板,然后與運(yùn)動中的圖像相對比來估計(jì)機(jī)器人的前進(jìn)方向;文獻(xiàn)[12]提取了水田圖像的灰度和角點(diǎn)特征,通過聚類算法和霍夫變換進(jìn)行了直線檢測。每種方法進(jìn)行10 次實(shí)驗(yàn),實(shí)驗(yàn)環(huán)境為相同的沒有明顯結(jié)構(gòu)的農(nóng)田環(huán)境,在距離出發(fā)點(diǎn)10 m 處記錄每個方法的偏移角度和偏移距離,并取平均值進(jìn)行比較。比較結(jié)果如表3 所示,文獻(xiàn)[10]、文獻(xiàn)[11]的導(dǎo)航效果相對較差,這是因?yàn)樵谵r(nóng)作物稠密的非結(jié)構(gòu)化農(nóng)田中,農(nóng)作物與背景難以分離而且紋理信息難以提取。對比結(jié)果顯示,本文方法的偏移參數(shù)都比較小,有一定的先進(jìn)性。
表3 不同方法的實(shí)驗(yàn)結(jié)果比較Tab.3 Experimental result comparison of different methods
為了證明此方法適用于多種場景,本文在農(nóng)田、道路、公園等室外環(huán)境進(jìn)行了實(shí)驗(yàn)。如圖18 所示,(a)展示了確定初始目標(biāo)區(qū)域的畫面,并給出了場景下的虛擬定標(biāo)線;(b)展示了對應(yīng)場景機(jī)器人行走過程中出現(xiàn)偏移情況時的畫面,MN是圖像中心的基準(zhǔn)線,PQ為此刻機(jī)器人運(yùn)動所需的虛擬定標(biāo)線,DQ為此刻由上下方目標(biāo)確定的虛擬導(dǎo)航線,此時的調(diào)整偏移角度為α,偏移距離為d。通過實(shí)驗(yàn),可以驗(yàn)證本文方法在不同的室外環(huán)境下都有效,該方法生成的虛擬導(dǎo)航線比較穩(wěn)定,能結(jié)合虛擬定標(biāo)線準(zhǔn)確判斷機(jī)器人的方向偏移情況,利用圖像中的少量信息引導(dǎo)機(jī)器人行走直線。
圖18 3種場景中的實(shí)驗(yàn)效果Fig.18 Experimental results in three scenes
為了解決在田野等非結(jié)構(gòu)化環(huán)境中的機(jī)器人精確自主導(dǎo)航問題,本文提出了一種利用視覺傳感器的實(shí)現(xiàn)農(nóng)業(yè)機(jī)器人精確導(dǎo)航的方法。該方法利用目標(biāo)跟蹤獲取了虛擬導(dǎo)航線,根據(jù)虛擬導(dǎo)航線和虛擬定標(biāo)線獲得了偏移參數(shù),通過模糊控制策略實(shí)現(xiàn)了對路徑的修正。實(shí)驗(yàn)表明,該方法能在圖像的紋理和顏色信息有限的田野中,在沒有人工標(biāo)記條件下,僅使用視覺傳感器實(shí)現(xiàn)機(jī)器人朝著規(guī)定目標(biāo)精準(zhǔn)地行走直線,且定位精度在10 cm 以內(nèi),成本低廉,可達(dá)到民用精準(zhǔn)農(nóng)業(yè)的要求。該方法也存在一定的局限性,由于使用了視覺傳感器,受光照條件等影響較大,需要進(jìn)一步改進(jìn)導(dǎo)航方法。