針對激光傳感器在室外環境中檢測動態障礙物所遇到的數據處理存在延時、檢測結果準確率不高等問題,提出了一種基于3維激光傳感器Velodyne和四線激光傳感器Ibeo信息融合的動態障礙物檢測及表示方法。該種方法應用在了自主研發的無人駕駛汽車平臺上,大量的實驗以及它們在“中國智能車未來挑戰賽”中的優異表現證明該方法具備可靠性和準確性。
本方法通過分析處理Velodyne激光數據對無人駕駛汽車四周的動態障礙物進行檢測跟蹤,對于無人駕駛汽車前方準確性要求較高的扇形區域,采用置信距離理論融合Velodyne激光數據處理信息和Ibeo輸出的運動狀態信息,較大地提高了對障礙物運動狀態的檢測準確率,然后根據融合得到的結果對運動障礙物的位置進行延時修正,最終在障礙物占用柵格圖上將動態障礙物所占據位置與靜態障礙物所占據位置區別標示。本方法不僅可以在室外環境中準確地檢測出障礙物運動信息,而且可以消除傳感器數據處理延時所帶來的動態障礙物位置偏差,更準確地將環境中的動靜態障礙物信息用障礙物占用柵格圖進行描述.該種方法應用在了自主研發的無人駕駛汽車平臺上,大量的實驗以及它們在“中國智能車未來挑戰賽”中的優異表現證明該方法具備可靠性和準確性。
1 引言
無人駕駛汽車是人工智能的一個非常重要的驗證平臺,近些年成為國內外研究熱點。無人駕駛汽車作為一種陸地輪式機器人,既與普通機器人有著很大的相似性,又存在著很大的不同。首先它作為汽車需保證乘員乘坐的舒適性和安全性,這就要求對其行駛方向和速度的控制更加嚴格;另外,它的體積較大,特別是在復雜擁擠的交通環境下,要想能夠順利行駛,對周圍障礙物的動態信息獲取就有著很高的要求。
國內外很多無人駕駛汽車研究團隊都是通過分析激光傳感器數據進行動態障礙物的檢測。斯坦福大學的自主車“Junior”利用激光傳感器對跟蹤目標的運動幾何特征建模,然后用貝葉斯濾波器分別更新每個目標的狀態;卡耐基·梅隆大學的“BOSS”從激光傳感器數據中提取障礙物特征,通過關聯不同時刻的激光傳感器數據對動態障礙物進行檢測跟蹤。
在實際應用中,3維激光傳感器因為數據處理工作量較大,存在一個比較小的延時,這在一定程度上降低了無人駕駛汽車對動態障礙物的反應能力,特別是無人駕駛汽車前方區域的運動障礙物,對其安全行駛構成了很大的威脅;而普通的四線激光傳感器雖然數據處理速度較快,但是探測范圍較小,一般在100?~120?之間;另外,單個的傳感器在室外復雜環境中也存在著檢測準確率不高的現象。針對這些問題,本文提出一種利用多激光傳感器進行動態障礙物檢測的方法,采用3維激光傳感器Velodyne對無人駕駛汽車周圍的障礙物進行檢測跟蹤,利用卡爾曼濾波器對障礙物的運動狀態進行跟蹤與預測,對于無人駕駛汽車前方準確性要求較高的扇形區域,采用置信距離理論融合Velodyne和四線激光傳感器Ibeo數據來確定障礙物的運動信息,提高了障礙物運動狀態的檢測準確率,最終在柵格圖上不僅對無人駕駛汽車周圍的動、靜態障礙物進行區別標示,而且還根據融合結果對動態障礙物的位置進行了延時修正,消除了傳感器處理數據延時所帶來的位置偏差。這種方法應用在了自主研發的無人駕駛汽車上,在城市和鄉村道路中進行了大量的實車實驗,并在國家自然科學基金委舉辦的“中國智能車未來挑戰賽”中取得了優異成績。
2 系統結構
四線激光傳感器Ibeo安裝于無人駕駛汽車的正前方保險杠位置,3維激光傳感器Velodyne安裝于車頂上方,它們的具體安裝位置如圖1所示。
圖1 傳感器Velodyne和Ibeo安裝位置
本文提出的無人駕駛汽車動態障礙物檢測及其表示方法流程如圖2所示。首先對Velodyne數據進行柵格化處理得到一張障礙物占用柵格圖,對不同時刻的柵格圖進行聚類跟蹤可以獲取障礙物的動態信息,將動態的障礙物從柵格圖中刪除并存儲在動態障礙物列表中,這個刪除了動態障礙物占用信息的柵格圖也就是一張靜態障礙物柵格圖,然后將動態障礙物列表中的動態障礙物信息和Ibeo獲取的無人駕駛汽車前方區域內的動態障礙物信息進行同步融合得到一個新的動態障礙物列表,最后將這個新的列表中的動態障礙物合并到靜態障礙物柵格圖中得到一張動靜態障礙物區別標示的柵格圖。
圖2 無人駕駛汽車動態障礙物檢測及其表示方法流程圖
本文創建的障礙物占用柵格圖大小為512×512,每個柵格的大小為20cm×20cm,無人駕駛汽車車頭朝向與y軸正方向同向且位于這個柵格地圖中的(256,100)位置。柵格圖和Velodyne、Ibeo的檢測范圍關系如圖3所示。
圖3 柵格圖和Velodyne、Ibeo的檢測范圍關系示意圖
3 Velodyne數據處理
3.1 Velodyne數據柵格化
將激光數據柵格化的方法有很多,無人駕駛汽車領域比較成熟的3維激光傳感器數據柵格表示方法有均值高度圖和最大最小值高度圖兩種。本文采用最大最小值高度圖法對Velodyne數據進行柵格化處理,最大最小值高度圖是由Thrun教授提出的一種高度圖的變種,該方法在2007年的DARPA(美國國防部先進研究項目局)城市挑戰賽中得到了廣泛的應用,并且取得了很好的使用效果。在最大最小值高度圖中地面被建模為一系列的柵格,這些柵格僅包含兩個值:所有投影到同一柵格中的激光傳感器返回值的最大值和最小值。然后將最大值和最小值之差大于預先設定的閾值D的柵格標記為障礙物狀態;將差小于D的柵格標記為非障礙物狀態。對于一個柵格X,如果其為障礙物狀態,則設置該柵格的占用值T(X)=1;如果為非障礙物狀態,則設置為T(X)=0.圖4是用最大最小值高度圖法對一個十字路口的Velodyne數據柵格化后所得到的障礙物占用柵格圖。
3.2 障礙物聚類
對障礙物進行跟蹤之前需要對柵格地圖中的占用柵格進行聚類,本文采用的是一種區域生長聚類算法,見Function1.Addopen(X)和Addclosed(X)分別表示將柵格X添加進open列表和closed列表;Deleteopen(X)和Deleteclosed(X)分別表示將柵格X從open列表和closed列表中刪除;Newlable(X)表示給柵格X賦一個新的標示值;Copylable(X,Y)表示將柵格X的標示值賦予給柵格Y;Selectopen(X)和Selectclosed(X)分別表示從open列表和closed列表中隨機選出一個柵格X;L(X)表示柵格X是否已經被賦予了標示值,值為1表示已經被賦予,值為0則表示沒有。
圖4 用最大最小值高度圖法柵格化得到的柵格圖
經過Function1,柵格地圖中設定聚類區域內的障礙物占用柵格就被聚類成一個個障礙物塊,圖5是對道路內的障礙物占用柵格聚類得到的結果。
3.3 障礙物跟蹤
首先創建一個動態障礙物列表來存儲上面聚類得到的障礙物塊信息,并且實時更新這些障礙物塊的跟蹤結果。存儲于這個動態障礙物列表中的每一個障礙物塊包含以下信息:編號,最新一次聚類得到時的時間、占據位置、速度大小方向和加速度大小方向,速度協方差,加速度協方差以及存在置信度和運動置信度。
圖5 障礙物占用柵格聚類結果
對障礙物塊進行跟蹤時,需要匹配當前時刻聚類得到的障礙物塊和動態障礙物列表中存儲的障礙物塊,本文采用一種最大關聯值法對其進行匹配。對于動態障礙物列表中的每一個障礙物塊和當前時刻聚類得到的每一個障礙物塊,存在一個關聯值。這個關聯值的大小與和的位置、大小、形狀有關。如圖6所示,對于每一個障礙物塊,用一個能覆蓋它的最小矩形對其進行參數化:長邊長L,短邊長R,中心位置O(x,y)和障礙物塊對這個矩形的占用率k。
顯然,和的中心位置不能直接拿來比較,因為對它們進行聚類的時間不同,所以需要對的中心位置進行修正,見式(1)、(2):
其中,和分別是7最新一次聚類得到時的時間和當前時刻,和是在動態障礙物列表中存儲的最新速度和加速度是對的中心位置進行修正后得到的中心位置。于是,可以根據式(3)得到:
其中,a、b和c是權值,通過實驗可以得到比較合適的經驗值。
然后就可以得到一個如下的決策矩陣并設置一個門限關聯值:
接著從這個決策矩陣中找到最大的關聯值,如果不小于門限值,則認為障礙物塊和成功匹配,然后將與和相關的所有關聯值從這個決策矩陣中刪除,得到一個新的決策矩陣如下:
再從這個新的決策矩陣中尋找最大的關聯值,依此類推,直到找到的最大關聯值小于門限值或者決策矩陣變空為止。
最終的匹配結果有如下3種情況,分別對其進行處理:
①存儲于動態障礙物列表中但是沒有當前聚類得到的障礙物塊與之匹配的障礙物塊,將其存在置信度減1,其它值不變。
②當前聚類得到的但是沒有存儲于動態障礙物列表中的障礙物塊與之匹配的障礙物塊,將其添加進動態障礙物列表中,并將速度大小、方向和加速度大小、方向都置初值為0,速度協方差和加速度協方差都置初值為10,存在置信度置初值為10,運動置信度置初值為0。
③存儲于動態障礙物列表中并且有當前聚類得到的障礙物塊與之匹配的障礙物塊,將其存在置信度加1,更新其所在位置,并根據經典卡爾曼濾波算法更新得到其速度、加速度以及速度協方差和加速度協方差.考慮到傳感器誤差,本文認為速度值小于一個較小值(比如0.5m/s)的障礙物塊是靜止或者接近于靜止的,所以如果更新得到的速度大于這個較小值,將其運動置信度加1,反之減1。
當然在實際操作中,動態障礙物列表中的障礙物塊運動置信度和存在置信度都設置了上下限值。最后將動態障礙物列表中那些存在置信度小于一個設定值的障礙物塊從列表中刪除,因為本文認為這些障礙物塊已經從無人駕駛汽車周圍環境中消失,這樣還能保證動態障礙物列表中的障礙物塊數目不會隨著時間累積而無限增大。
3.4 靜態障礙物柵格圖生成
更新完動態障礙物列表后,按照如下的Func-tion2對前面柵格化后得到的柵格圖進行處理,可以生成一張靜態障礙物柵格圖。
4 傳感器數據融合
4.1 傳感器數據同步匹配
因為四線激光傳感器Ibeo能直接輸出環境中的動態障礙物信息,而Velodyne數據經過上文中的一系列處理才能得到環境中動態障礙物信息,兩者的數據采集和處理耗時不同,所以首先需要同步匹配兩者的障礙物信息。
Ibeo輸出的動態障礙物信息是用一個個box的格式進行表示的,每個box的參數包括邊長a、b,中心位置和速度v的大小方向,如圖7所示。
圖7 Ibeo輸出動態障礙物信息示意圖
圖8Velodyne數據和Ibeo數據同步示意圖
本文將box的中心位置朝其速度方向的反方向平移距離S,如圖8所示,S的大小滿足式(4):
其中和分別是采集處理Velodyne數據和Ibeo數據的耗時,λ是參數。
同步完成后,就可以匹配兩個傳感器的障礙物塊信息,本文認定,與某個box有區域重疊的障礙物塊,即和該box成功匹配,這樣匹配的結果也有以下3種:
①沒有Velodyne檢測到的障礙物塊與之成功匹配的box,不作任何處理。
②沒有box與之成功匹配的Velodyne檢測到的障礙物塊,如圖9中的,也不作任何處理,仍然采用Velodyne的檢測結果作為最終結果。
③有box與之成功匹配的Velodyne檢測到的障礙物塊,如圖9中的和,它們都需要融合Velodyne和Ibeo數據得到最終運動狀態,具體的融合方法見下節。
圖9 Velodyne數據和Ibeo數據匹配示意圖
4.2 傳感器數據融合
同步匹配完成后,采用置信距離理論對匹配成功的兩個傳感器數據進行融合,假設和分別是Velodyne數據計算得到的運動狀態和Ibeo輸出的運動狀態,它們都服從高斯分布,某次測量它們得到的數據分別是和,則它們的概率密度函數見式(5)、(6):
最后對滿足輸出支持傳感器個數為2的傳感器數據按照式(12)進行融合,最終得到障礙物塊的運動狀態X,其中l是滿足輸出支持傳感器個數為2的傳感器個數。
融合完成后,考慮到Velodyne數據采集處理耗時,動態障礙物的占據位置在這段時間內實際發生了變化,需要對這些占據位置進行修正。修正方式為,將動態障礙物列表中那些運動置信度大于上面設定值的障礙物塊的所有占據位置朝其速度方向平移距離S′,如圖10所示,S′的大小滿足式(13),其中v′是經過融合后的障礙物塊運動速度.這些經過融合、修正后的障礙物塊信息都更新存儲在動態障礙物列表中。
圖10 動態障礙物位置修正示意圖
5 合并動靜態障礙物占用柵格圖
經過上面的步驟,得到了一個融合了Velodyne數據計算結果和Ibeo輸出結果的動態障礙物列表以及一張靜態障礙物占用柵格圖。在本文中,障礙物占用柵格圖作為無人駕駛汽車描述周圍環境的唯一方式,最后還要將動態障礙物的占用信息添加進來,參見Function3對靜態障礙物占用柵格圖進行處理即可得到最終的障礙物占用柵格圖。最終得到的這張障礙物占用柵格圖中不僅將動靜態障礙物進行了區別標示(靜態障礙物占用柵格標示為T=1,動態障礙物占用柵格標示為T=2),實現了動靜態障礙物的分割,而且消除了傳感器處理數據延時所帶來的動態障礙物位置偏差,更準確地對環境信息進行了描述。
6 實驗結果
6.1 實驗平臺及場景
本方法被應用到自主研發的無人駕駛汽車“智能先鋒”號上,在一個開放的城區環境中進行了大量的實車測試,如圖11所示。這個開放的城區環境南北長6800m,東西長2600m,其中存在著大量的機動車、非機動車以及行人,在這個真實駕駛環境的區域內測試了無人車對各種類型的動態障礙物的檢測性能。
圖11 無人駕駛汽車實車測試區域
另外,應用該方法的無人駕駛汽車參加了由國家自然科學基金委主辦的“中國智能車未來挑戰賽”,并取得了優異的成績,見圖12。
圖12“智能先鋒”號在2012年“中國智能車未來挑戰賽”上成功檢測到運動車輛并完成超車
6.2 結果
在實驗和比賽中,“智能先鋒”號的一些參數設置如表1所示。
“智能先鋒”號用Velodyne和Ibeo對環境中的動靜態障礙物進行檢測,然后將檢測到的結果表示在障礙物占用柵格地圖上,如圖13所示,黑色方框為根據本車行駛狀態與環境信息自適應設定的聚類區域,進入到這個黑色方框內的動態障礙物都被成功檢測到,并區別于其它的靜態障礙物標示在柵格圖上,這兩個運動目標的檢測結果和實際結果對比如表2所示。
圖13 檢測到動態障礙物并表示在柵格圖上
表2顯示編號為0#的運動目標無論是速度大小
還是速度方向,其誤差都小于編號為2#的運動目標,因為0#運動目標正好處于Ibeo的檢測范圍內,其運動狀態信息是融合了Velodyne和Ibeo的數據,而2#的狀態信息只來自Velodyne的數據處理結果。為了得到這兩種結果準確率之間具體差異,對一輛基本保持速度大小為30km/h、航向為180?(正南方向)的車輛分別用這兩種方式進行檢測,并且在實驗中,讓“智能先鋒”按照S形路線行駛,以測試無人駕駛汽車與目標障礙物運動方向在不同夾角下的檢測穩定性,結果見圖14和圖15。
圖14 兩種檢測方式得到的速度大小對比圖
圖15 兩種檢測方式得到的速度方向對比圖
結果顯示,采用融合Velodyne和Ibeo信息得到運動目標狀態的方式相比于只用Velodyne處理結果的方式,檢測結果的準確率和穩定性都得到了較大的提升.本方法對無人駕駛汽車前方關鍵區域采用前者方式進行動態障礙物檢測,對其它區域采用后者方式進行檢測,既合理地對傳感器進行了配置,又保證了無人駕駛汽車行駛的安全性。
7 結論
本文提出的應用于無人駕駛汽車的動態障礙物檢測及其表示方法,對傳感器進行了合理配置,采用3維激光傳感器Velodyne檢測大范圍環境中的動態障礙物信息,對于無人駕駛汽車前方關鍵區域,采用置信距離理論融合四線激光雷達Ibeo數據和Velodyne檢測結果來提高檢測準確率,并且根據障礙物的運動狀態消除傳感器數據處理延時所帶來的障礙物位置誤差,最終將動態障礙物和靜態障礙物區別標示于障礙物占用柵格圖上。大量的實驗以及自主研發的無人駕駛汽車在“中國智能車未來挑戰賽”中的優異表現證明了本方法的可靠性。但是由于傳感器自身的局限性,在極其復雜的城市環境中,現有的檢測準確率仍然難以滿足要求,怎樣對傳感器進行更合理的配置以及提升檢測算法的有效性來進一步提高動態障礙物檢測準確率是下一步研究的重點。
評論
查看更多