楊強榮,王美玲,于華超
(北京理工大學(xué) 自動化學(xué)院,北京 100081)
無人地面車輛(以下簡稱無人車)是未來交通系統(tǒng)與未來作戰(zhàn)系統(tǒng)的重點研究對象之一,其成果對于人類社會的進步具有舉足輕重的意義.近年來,隨著無人車在智能交通系統(tǒng)、輔助駕駛、智能運輸?shù)阮I(lǐng)域的廣泛應(yīng)用,對車載電子導(dǎo)航地圖也提出了更高的要求.因此,基于車道級電子導(dǎo)航地圖的相關(guān)研究便提上了日程,例如高精度電子地圖的構(gòu)建[1-3]、道路建模[4]、基于先驗地圖信息進行定位[5-8]和基于先驗地圖的地圖匹配等[9].
針對上述需求,筆者通過對多傳感器信息的融合,提出了一種車道級電子地圖的構(gòu)建方法,并以該地圖為基礎(chǔ),結(jié)合無人車的運動規(guī)劃技術(shù)和跟蹤控制技術(shù)提出了一種適用于無人車的精確路徑引導(dǎo)方法,為車輛在結(jié)構(gòu)化道路環(huán)境下的自主行駛提供了保障.
圖1所示的IN2BOT無人地面平臺為文中數(shù)據(jù)采集平臺.該平臺是團隊對美國北極星全地形車改裝而成,具有檔位、油門、剎車的自動控制功能,并可以提供構(gòu)建車道級電子地圖所需要的傳感器數(shù)據(jù),其中包括定位數(shù)據(jù)、全景圖像數(shù)據(jù)、交通燈圖像數(shù)據(jù)、交通標(biāo)志圖像數(shù)據(jù)和激光雷達數(shù)據(jù).平臺配備的傳感器如表1所示.
表1 實驗平臺傳感器配置
圖2 數(shù)據(jù)采集與處理方案
高精度的地理數(shù)據(jù)是構(gòu)建高精度電子地圖的基礎(chǔ),根據(jù)對不同地理數(shù)據(jù)的采集需求和常用地圖數(shù)據(jù)采集傳感器配置的分析,文中提出了如圖2所示的數(shù)據(jù)采集方案.?dāng)?shù)據(jù)采集與處理主要包括以下4部分:
(1) 采集全景圖像.構(gòu)建高精度地圖需要采集全景圖像信息作為地圖底圖.在采集全景圖像之前首先需要通過標(biāo)定板對全景攝像頭進行標(biāo)定,并基于逆投影變換(Inverse Projection Mapping, IPM)獲得全景俯視圖;另外,后期處理時,為了對不同的全景圖像進行拼接,需要對圖像的采集位置進行標(biāo)識,文中以二維碼的形式在圖像右下角標(biāo)注其位置信息,全景圖像的采集和處理流程如圖3所示.
圖3 全景圖像的采集和處理流程
(2) 采集定位數(shù)據(jù).構(gòu)建車道級電子地圖要求定位數(shù)據(jù)能夠區(qū)分不同車道,因此定位數(shù)據(jù)的精度至少是分米級.而目前應(yīng)用最為廣泛的全球衛(wèi)星定位系統(tǒng)(Global Positioning System, GPS)單點定位精度一般在米級以上.為此,文中采用了差分定位技術(shù),即在一個已知位置的平臺上架設(shè)差分基站,基站通過移動通信模塊向數(shù)據(jù)采集平臺傳輸實時差分信息,由此可使定位精度達到厘米級.
(3) 估計交通燈和交通標(biāo)志位置.在通過單目相機得到交通燈和交通標(biāo)志的圖像之后,基于多目標(biāo)的定位和跟蹤算法獲取其位置信息[10].
(4) 確定道路邊界信息.通過激光雷達采集周圍環(huán)境點云數(shù)據(jù),并通過多重特征Hough變換便可確定道路邊界信息.
圖4 設(shè)計的圖像坐標(biāo)系
下面介紹如何利用帶有位置信息的全景圖像序列構(gòu)建車道級電子地圖.首先,由于采集到的電子地圖數(shù)據(jù)覆蓋范圍廣、數(shù)據(jù)量大,使用常規(guī)的圖像拼接方法無法直接將全景圖像拼接成一張圖像.因此,數(shù)據(jù)采集區(qū)域被劃分成如圖4所示的網(wǎng)格區(qū)域.其中一個網(wǎng)格的大小為 1 620 m× 360 m (27 000像素× 6 000像素),原點坐標(biāo)(x0,y0)根據(jù)數(shù)據(jù)采集區(qū)域的坐標(biāo)范圍選定.當(dāng)讀入一幀新的圖像時,根據(jù)該圖像記錄的位置信息(xi,yi)和車的航向信息φi將圖像旋轉(zhuǎn)平移到圖4所示坐標(biāo)系中.接著,計算該圖像所在的網(wǎng)格序號(i,j),并判斷該序號是否與上一幀圖像的序號相同.如若相同,則將兩幅圖像按照對應(yīng)的位置關(guān)系拼接在一起;否則,首先將上一幀圖像的拼接結(jié)果保存,并判斷當(dāng)前幀圖像所在的網(wǎng)格之前有沒有保存好的圖像.如果之前該網(wǎng)格有保存好的圖像,則將該圖像導(dǎo)入內(nèi)存,并將該圖像與當(dāng)前幀圖像按照位置關(guān)系拼接在一起.而如果之前該網(wǎng)格沒有保存好的圖像,則在內(nèi)存里新建一片區(qū)域表示當(dāng)前網(wǎng)格,并將當(dāng)前幀圖像貼到對應(yīng)位置.最后,重復(fù)上述過程直到處理完所有采集到的全景圖像.上述算法得到的是若干張對應(yīng)相應(yīng)網(wǎng)格的圖像,這些圖像還需要按照相應(yīng)的網(wǎng)格序號拼接成一張圖像作為車道級電子地圖的底圖.
在獲取到高精度底圖之后,便可根據(jù)交通規(guī)則和車道的轉(zhuǎn)向信息來構(gòu)建電子地圖.通常,對于雙向四車道或更多車道的道路來說,根據(jù)交通規(guī)則各車道的屬性不完全相同.在一般情況下,內(nèi)側(cè)車道不具有向右轉(zhuǎn)的屬性,外側(cè)車道不具有向左轉(zhuǎn)的屬性.因此,需要根據(jù)不同車道間的轉(zhuǎn)向?qū)傩越⒉煌范螌?yīng)車道間的連接關(guān)系.另外,為了保證車輛在通過路口時能夠按照交通規(guī)則行駛在正確的車道上,建立同一道路上不同車道間的連接關(guān)系也很有必要.因此,筆者通過對電子地圖添加換道點來建立同向行駛車道間的連接關(guān)系.
為了適應(yīng)無人車的應(yīng)用要求,電子地圖中的地理數(shù)據(jù)除了具有精確的位置信息之外,還需要包含準(zhǔn)確的屬性信息來反映每個地理對象的具體意義.因此,在生成精確的電子地圖和對應(yīng)的車道后,要為不同的地理對象建立屬性表.
表2 “道路”數(shù)據(jù)的屬性表
無人車典型的應(yīng)用場景是在給定任務(wù)點后,通過路徑規(guī)劃得到全局最優(yōu)路徑,并實時根據(jù)檢測到的環(huán)境信息修正軌跡,從而快速并且安全地從起點出發(fā)到達終點.因此,如何通過任務(wù)點規(guī)劃得到全局最優(yōu)路徑和根據(jù)實時檢測到的環(huán)境信息對全局最優(yōu)路徑進行修正是無人車進行應(yīng)用所必須解決的問題.
文中提出的車道級全局路徑規(guī)劃算法主要包括以下幾個步驟:
(1) 路網(wǎng)抽象.在路網(wǎng)抽象這個過程中,將原本帶有寬度的車道抽象為線段,將交叉口抽象為頂點.這樣具有真實物理屬性的城市交通網(wǎng)絡(luò)就被抽象為一個由點和線段組成的有向加權(quán)網(wǎng)絡(luò)G(V,L),其中V、L分別為頂點集合和車道集合,車道集合L對應(yīng)的路阻矩陣為W.
(2) 任務(wù)點匹配.由于給定任務(wù)點的精度不高,直接使用距離匹配可能會將其匹配到錯誤的頂點上,因此需要結(jié)合任務(wù)點的屬性和車道的屬性進行匹配.首先,以任務(wù)點所在的位置為圓心構(gòu)建一個圓形的緩沖區(qū)域,并將所有與該緩沖區(qū)域相交的車道作為候選車道.接著,結(jié)合前后任務(wù)點和每個候選車道的Direction屬性,刪除那些與當(dāng)前任務(wù)點方向差別較大的車道.然后,讀取當(dāng)前任務(wù)點的轉(zhuǎn)向信息,并將任務(wù)點匹配到對應(yīng)的車道上.最后,得到該車道對應(yīng)的節(jié)點并加入關(guān)鍵頂點集合VL.
(3) 路阻標(biāo)定.路阻標(biāo)定就是給路阻矩陣W賦初值的過程.依據(jù)所選用的最優(yōu)路徑計算方法不同,W標(biāo)定的對象也不同(如路段長度、路段行程時間).文中算法選定每條車道的長度對W賦值,即
wi,j=di,j,
(1)
其中,wi,j是頂點i和頂點j之間的路阻,而di,j是車道i,j的長度,如果i,j?L,則di,j= ∞.
(4) 求解最優(yōu)路徑.由于城市道路網(wǎng)絡(luò)的頂點數(shù)量巨大而且每一個任務(wù)點都必須按順序依次經(jīng)過,因此傳統(tǒng)的路徑規(guī)劃算法必須進行n-1 次的全局搜索(n為VL中頂點的數(shù)量,即需要對VL中的每兩個相鄰的點進行規(guī)劃),會耗費大量的時間.因此,文中算法對每一次搜索的范圍進行限制,即將所有與起點s和終點e的距離之和小于2ds,e(ds,e為起點到終點的距離)的頂點加入搜索集合Vs,而其他的頂點則不予考慮.并且每一次搜索的步驟如下: 初始化時,令 dist(s)= 0,dist(i)= ∞ (i≠s且i∈VS).接著每次從Vs(非空集)中選取這樣的一個頂點u,它的 dist(u) 最小.將選取出的u點作為搜索的起點,對于其他還在Vs集合內(nèi)的頂點v,若u,v∈L,且 dis(u)+wu,v< dis(v),則更新dis(v)為 dis(u)+w(u,v),同時從Vs中將u刪除,直到Vs為空集或者到達終點e時終止.
在得到上述全局最優(yōu)路徑后,無人車就可根據(jù)該路徑從起點行駛到終點.但是,當(dāng)前方最優(yōu)路徑上出現(xiàn)障礙物時,車輛必須通過局部路徑修正來避開障礙物.文中提出的局部路徑修正算法主要包括構(gòu)建代價地圖和綜合代價規(guī)劃.其中代價地圖中重點考慮了路網(wǎng)信息、障礙物信息和車道線信息.
代價地圖主要包括背景代價地圖、障礙物代價地圖和車道線代價地圖.其中背景代價地圖由上述全局最優(yōu)路徑得到,全局最優(yōu)路徑代價最低,逐漸向兩側(cè)提高.障礙物代價地圖由激光雷達點云數(shù)據(jù)得到.首先,基于激光雷達數(shù)據(jù)提取出可通行區(qū)域.接著,為了提高車輛行駛的安全性,對可通行區(qū)域進行膨脹和高斯模糊操作,并將兩種操作的結(jié)果進行疊加就得到了障礙物代價地圖.車道線代價地圖由識別的車道模型和最優(yōu)路徑所在的車道所決定,最優(yōu)路徑所在的車道代價最低,其他車道中心線的代價逐漸向兩側(cè)提高,而且車道線上的區(qū)域代價設(shè)為最高.再進行高斯模糊操作,使得車道線處于代價峰值,而車道中心線處于代價低谷.
在得到上述代價地圖之后,用301個相隔 0.4 m 的點來描述當(dāng)前道路的每一條車道,并根據(jù)式(2)計算第i條車道的總代價,選取代價最低的車道作為局部路徑的修正結(jié)果.
(2)
筆者以江蘇省常熟市智能車研發(fā)中心作為試驗場地對提出的車道級路徑引導(dǎo)方法進行試驗驗證.圖5給出了全局規(guī)劃的結(jié)果.由圖5(a)可以看出,得到的全局規(guī)劃路徑平滑地依次通過了各個任務(wù)點,為無人車地行駛提供了一個合理的參考.由圖5(b)和(c)對比可得,當(dāng)無人車在下一個路口需要右轉(zhuǎn)時,文中算法規(guī)劃的路徑會根據(jù)交通規(guī)則指導(dǎo)車輛向右并道進入右轉(zhuǎn)車道,為右轉(zhuǎn)做好準(zhǔn)備.而傳統(tǒng)的Dijkstra算法的規(guī)劃路徑并沒有進行換道,而是沿著直行道繼續(xù)行駛并完成右轉(zhuǎn),這明顯違反了城市的交通規(guī)則.由此可以看出,文中提出的車道級路徑引導(dǎo)方法很好地反映了城市的交通規(guī)則.
圖5 全局規(guī)劃路徑結(jié)果
最后,為了驗證文中局部路徑修正算法的性能,在無人車行駛軌跡上隨機布置了兩輛靜態(tài)障礙車輛,車輛的縱向間距為 15 m,橫向間距為 3 m.在此場景下,無人車需要通過左右各一次換道才能順利通過.圖6(a)
圖6 局部路徑修正結(jié)果
給出了無人車的實際行駛軌跡和全局參考軌跡.由圖6(a)可以看出,由于無人車前方障礙物的存在,穿過障礙車的備選路徑的代價遠(yuǎn)大于其他路徑,而在車道線代價的引導(dǎo)下,無人車選擇了首先向左并線,再向右并線的路徑,路徑規(guī)劃結(jié)果安全合理.圖6(b)給出了上述場景無人車行駛過程的視頻幀序列.
除在上述實驗場地進行跑車實驗以外,搭載了文中構(gòu)建的高精度地圖和高精度路徑引導(dǎo)算法的無人車還參加了2012~2016年的中國智能車未來挑戰(zhàn)賽.其中在2016年的比賽當(dāng)中,該平臺全程無干預(yù)地完成了比賽任務(wù),并獲得了優(yōu)異成績.
隨著無人車在智能交通系統(tǒng)、輔助駕駛等領(lǐng)域的應(yīng)用,高精度電子地圖的重要性日益凸顯.為此,筆者通過對多傳感器信息進行融合提出了一種車道級電子地圖的構(gòu)建方法,并基于該地圖提出了一種適合無人車在結(jié)構(gòu)化道路環(huán)境下行駛的車道級路徑引導(dǎo)方法.跑車實驗和中國智能車挑戰(zhàn)賽比賽結(jié)果表明,文中提出的高精度電子地圖和路徑引導(dǎo)方法能滿足無人車在結(jié)構(gòu)化道路環(huán)境下的需求,給無人車的安全快速駕駛提供了可靠的指導(dǎo)和保障.但是,該方法對于無人車在復(fù)雜環(huán)境下的路徑引導(dǎo)只是一個初步的研究,還有許多問題亟待解決,例如: 筆者提出的算法的道路還是由手工繪制生成,效率很低.如何使用采集到的多傳感器數(shù)據(jù)來自動生成道路是下一步有待解決的問題.