基于三維激光點云的目標識別與跟蹤研究
來源:《汽車工程》,作者徐國艷等
[摘要]針對無人車環境感知中的障礙物檢測問題,設計了一套基于車載激光雷達的目標識別與跟蹤方法。為降低計算量,提高處理速度,引入了點云過濾與分割算法對原始激光點云數據進行縮減,有效提高了檢測的實時性。使用多特征復合判據,基于SVM分類器改進了Adaboost算法,對三維激光點云進行直接處理,最大限度保留了感知信息,提高了識別準確度。提出基于最大熵模糊聚類的數據關聯方法和相應的粒子濾波器,有效提高了復雜交通流中目標跟蹤的穩定性和準確性。經百度Apollo平臺數據集仿真、自主研發的無人駕駛平臺實驗驗證和針對小目標交疊和遮擋情況的實車驗證表明,該套方法具有良好的實時性和魯棒性。
關鍵詞:無人車;環境感知;激光雷達;識別;跟蹤
前言
在無人駕駛汽車中,環境感知系統是其行駛決策的信息來源,對交通流中的車輛、非機動車、行人等目標進行識別并保持跟蹤,及時向決策系統輸入環境障礙物信息,是環境感知系統的重要任務,也是無人車安全行駛的關鍵所在。
國內外在這一問題的研究上,先后提出了將三維數據壓縮到二維平面并進行聚類的柵格地圖法[1]、將點云按幀截圖并用視覺方法進行檢測的特征圖像法[2]等,這些方法僅能獲得某一二維平面上的目標信息。隨著機器學習的興起,使用神經網絡、隨機森林、Adaboost等機器學習算法[3]對三維點云特征直接進行提取和分類逐漸發展起來。在目標跟蹤上,使用MHT和JPDA等數據關聯算法[4],結合卡爾曼濾波器進行跟蹤是較為常見的方法[5]。但這種方法在實際的復雜交通流中面臨維度災難和對交叉、遮擋目標無效的問題,因此,一系列基于非線性假設的跟蹤方法被提出[6-8]。
本文中使用經過濾和分割的三維激光點云數據,通過可變閾值篩選進行聚類。復合10個不同特征得出53維特征向量作為判據,用SVM分類器改進的Adaboost機器學習算法對三維激光點云數據進行直接處理,得到目標識別結果。提出基于最大熵模糊聚類的數據關聯方法并設計相應的粒子濾波器,解決了由復雜交通流造成的目標遮擋與錯跟問題。仿真與實驗結果表明,該方法具有可靠性和魯棒性。
1 激光點云數據獲取與預處理
使用速騰聚創出品的RS-16線激光雷達作為點云數據的獲取來源,安裝方式為車頂對心安裝。安裝示意圖如圖1所示。
圖1 雷達安裝示意圖
1.1 激光點云數據過濾與分割
為減少計算量,選取激光點云的z坐標值作為過濾與分割的依據,對地面、建筑物等的點云進行濾除。將激光掃描的區域在x-y平面上劃分為0.1 m×0.1 m的網格,由于網格小于可能的目標所占有的面積,因此每個網格都可以視為僅隸屬于一類分類。可能的分類包括地面、建筑物、樹木和目標。地面的特點是z坐標值小,且為一近似平面,網格內z坐標值相差不大。建筑物和樹木的特點是z坐標值相差巨大,且最大值遠遠超出目標。網格內點云數目過少則可判定為噪聲。按表1進行激光點云數據的過濾與分割。該方法效果如圖2和圖3所示。
1.2 激光點云數據聚類
表1 點云過濾與分割算法
圖2 點云數據過濾前圖
圖3 點云數據過濾后圖
聚類是依據某種事先確定的標準(例如密度、距離、層次)等所產生的差異來將散亂的數據點聚合為相互獨立的分類。聚類算法的關鍵在于標準及其閾值的選取。為充分利用激光雷達含有深度信息的三維點云數據,以及減少由于目標遠近不同造成的離散程度不同等的影響。本文中使用深度信息,即距離值來對聚類閾值進行調整。提出一種基于距離值的可變閾值確定方法[9-10],如圖4所示。設rn-1為相鄰前點離激光雷達的直線距離,Δφ為激光雷達的角分辨率,σ為激光雷達零偏誤差,λ為可變閾值參數,則聚類的可變閾值為
圖4 閾值計算示意圖
通過實驗選取適宜的可變閾值參數(本文取10°),則由式(1)可以看出,越遠離激光雷達,閾值不斷增加,良好地適應了遠處激光點分布更為分散的趨勢,從而提高了遠處離散點云的聚類效果。
2 目標識別
目標識別過程是從空間或時間分布數據信息中將屬于目標的部分篩選出來并進行特征判斷。機器學習是解決這類問題的有利工具。在機器學習過程中,兩個重點分別是設計適宜的算法與分類器以及選取合適的先驗特征。
2.1 基于SVM分類器改進的Adaboost算法
Adaboost是一種基于統計的機器學習算法。其基本原理是不斷對學習的樣本進行迭代,每一次迭代的結果都視為一個弱分類器。由于在每一次迭代時都對樣本的權值進行更新,因此這一過程最終會得到若干個弱分類器,將這些弱分類器根據權值進行加權線性組合,就能得到一個具有較高精度的強分類器。
Adaboost算法的關鍵在于弱分類器的訓練,這一過程直接影響最終分類器的精確程度。由于Adaboost為框架式的算法,其中的弱分類器可以使用Adaboost分類器,也可以使用其他的分類器。傳統的Adaboost算法在高維數據中精度會有明顯下降,且受噪聲影響極大,容易在復雜交通流環境中出現錯誤率激增。因此使用SVM分類器作為弱分類器對傳統Adaboost算法進行改進,以提升在非線性和高維應用環境下的分類器性能。本文所設計的Adaboost算法的框架如表2所示。
表2 基于SVM的Adaboost算法流程
構建SVM分類器的基本原理是利用非線性映射,把一個向量從二維函數向高維函數映射,從而把非線性問題線性化。實現這一過程主要依賴于在低維空間中尋找一個核函數,使該函數值等于兩輸入向量非線性變換到高維空間后的內積。設要構建的分類器輸入量為{xi}n,輸出量為{yi}n,映射函數為φ(xi),選取性能優良的徑向基函數作為核函數,即
式中σ為基參量因子。此后在高維空間內可以看作一個線性的回歸過程。高維空間的線性回歸方程為
式中w為權重向量。引入參數松弛因子
和ξi,精度因子ε以及懲罰因子c,則所要求的目標函數為
其約束條件為
用拉格朗日定理求解這一問題,可得
結合極值點處的KKT條件定理:
2.2 目標特征設定
激光點云具有豐富的特征信息,由于目標與無人車的相對位置不同,以及目標有可能因遮擋、交叉等呈現出不完整的形態,因此本文中綜合激光點云的統計信息、空間位置信息以及反射強度信息3個方面,給出一個復合特征向量作為上述SVM分類器的學習輸入,選取的復合特征如表3所示。
表3 本文中選取的復合特征
(1)統計信息 主要統計指標有聚類內所含點云數目、聚類內點云離散距離、聚類內點云的三維協方差及其特征值、慣性張量矩陣及其特征值。其中,點云離散距離如式(10)所示,該特征主要表征邊緣點云偏離程度。
三維協方差如式(11)所示,該特征主要表征點云在各方向上的相關性,而特征值表征該方向的權重。
慣性張量矩陣如式(12)所示,該特征主要表征點云整體分布的穩定性,可用于消除噪聲影響。
(2)空間位置信息 根據目標的幾何特性,尋找目標在某一方向上的幾何特性代表特征。使用旋轉卡殼法做出聚類在各個平面上的最小包圍矩形,形成一個長方體,長方體的長、寬、高即可代表目標在不同方向的尺寸及形狀特征。
(3)反射強度信息 由于不同物質反射特性不同,因此打中同一目標上的激光點云應該具有接近的反射強度。對反射強度計算其平均值、方差,并得到所有激光反射點的歸一化直方圖。歸一化直方圖是將所有聚類中的激光點云以反射強度值的大小為標準投影劃分到20個強度差值相同的小區域內,用類似于繪制馬賽克的方法得到目標擬合輪廓。
通過對三維點云信息選取復合特征聚類后可以對目標特征進行識別及分類,并給出對三維點云信息識別分類后的確信度,最終的識別效果如圖5所示。
3 目標跟蹤
目標跟蹤過程是通過跟蹤器對識別出的目標在不同時刻激光點云中的連續位置進行確定。由于交通流中存在的干擾因素以及激光束的隨機缺漏等,該時刻t的觀測量集合可能與狀態量集合是雙射的,也可能是單射非滿射的,甚至是非滿射非單射的。在算法設計上首先使用數據關聯算法得出多目標的關聯概率分布,然后不斷更新目標狀態的估計值與觀測值,從而完成對多目標跟蹤的實現,如圖6所示。
圖5 識別效果圖
圖6 目標跟蹤算法流程圖
3.1 最大熵模糊聚類數據關聯
要獲得關聯問題的最優解,通常采用的方法是聯合概率數據關聯(JPDA)算法或多假設跟蹤算法(MHT)。這兩種方法可以求取最優,但是在復雜城市道路中計算量過大。因此,在關聯過程中變尋求最優為尋求次優是一種較為可行的方案。通過對觀測值模糊聚類,將觀測值歸入以目標估計量為中心的類中,然后結合信息熵極大時概率分布最接近真實的原理,將數據關聯問題轉化為求解條件極值的聚類問題,可以有效降低計算負荷。
假設t時刻所獲得的激光點云幀中存在c個目標,所有通過激光雷達得到的觀測量總集合為zj。可以將尋優過程做如下描述:此時由濾波器輸出的目標的估計量作為聚類中心ci,真值和估計值之間的差異代價函數為
其中
,其可以表征觀測量對于聚類中心ci的隸屬程度。D是觀測量對于聚類中心的歐式距離。根據信息熵理論,熵值最大的分布即不確定性最大值的概率分布,也即占優勢的概率分布。引入熵值,即
為求得熵值在上兩式約束條件下的最大點,采用拉格朗日函數法,設 ηj和 λj是式(13)和式(14)拉格朗日乘數。當取到最大值時,觀測量zj和估計量ci之間的隸屬程度為
此時,某一觀測量j來自目標i的概率pji可以用隸屬程度uji來表示。至此,只需給出觀測量對多個目標隸屬程度相同或相近的解決標準,就可以得出目標關聯概率矩陣β,即可完成關聯。具體的操作方法如表4所示。
3.2 粒子濾波多目標跟蹤
傳統的多目標跟蹤系統通常采用卡爾曼濾波器進行濾波更新,這一濾波器雖然簡單成熟,但目標在復雜交通流中的運動并非一個滿足線性和高斯假設的場景。當目標被遮擋時,預測位置的不確定噪聲變為具有多個峰值的非高斯模型。為解決這一問題,引入粒子濾波器對目標進行估計和更新。
粒子濾波是一種用一群粒子的密集程度來表示概率密度的時間序列蒙特卡洛方法。這種方法利用無參數的點來近似,代替高斯模型。當點按概率密度分布后,從中隨機抽取采樣點,進行加權求和,從而得到后驗概率密度函數。
表4 相同隸屬度修正算法
設該后驗概率密度函數為 p(x0→t|z1→t),其一組有關聯的隨機觀測樣本為
{xn|n=0,1,…,k}表示從初始時刻到 t時刻的全部
示狀態集合對應的點集,兩者由關聯確認權值所支持聯系。由此可寫出t時刻的近似后驗概率密度為
式中
為關聯確認權值,即
q
為重要性采樣密度函數,取先驗概率分布函數
為重要性采樣密度函數,則關聯確認權值的更新過程可以寫作:
由于各個時刻的觀測值是相互獨立且符合馬爾可夫過程的,因此概率密度函數就是觀測量的似然函數。當不斷迭代更新到下一時刻,采樣點不斷增加,近似式就會不斷逼近真實的值。
值得注意的是,在這一迭代更新的過程中,粒子的多樣性也在不斷丟失。本文采用重新采樣的方法構建的車載激光雷達濾波器,如表5所示。
表5 粒子濾波跟蹤器
4 實驗驗證
為驗證上述方法在城市復雜交通流環境下的工作性能,選取百度Apollo平臺開放數據進行了驗證,同時在自主研發的“北航猛獅號”無人駕駛平臺進行了真實城市道路實驗。
驗證評價指標采取ROC(receive operating characteristic)曲線法。ROC曲線是將目標和非目標分開,分別衡量所有目標中被正確檢測為目標的比率(TPR)和所有非目標中被錯誤檢測為目標的比率(FPR)。這種方法可以避免傳統正確率評價標準中,目標和非目標樣本數不相等造成的問題。ROC曲線橫縱坐標定義為
式中:TP為被正確檢測的正樣本;FN為漏檢的正樣本;FP為誤檢的正樣本;TN為被正確判斷的負樣本。ROC曲線與橫軸圍成的面積越大,則檢測效果越好。
首先,使用百度Apollo平臺對200種虛擬場景進行了目標識別與跟蹤的驗證,場景包括目標在本車正前方、正后方、側前方、側后方,執行動作包括直行、轉彎、掉頭、超車、跟車、換道、會車,目標數目包括單目標、雙目標、多目標。然后,使用百度Apollo平臺在北京市海淀區采集的真實道路數據進行驗證,場景包含丁字路口、十字路口、快速路、高速路、擁堵等,目標為各種實際交通參與者,檢測效果如圖7所示。
圖7 Apollo平臺虛擬與真實場景檢測效果圖
具體評價結果如圖8和圖9所示。從圖中可以看出,在真實道路上檢測效果有明顯下降,主要原因是實際道路上尤其是擁堵時,車輛連接緊密,點云分割難度增加。該ROC曲線與平臺開源的標準Adaboost分類器檢測算法和文獻[11]所使用的柵格地圖模型匹配法相比表現均更優異,同時所有目標算法識別處理時間均小于10 ms,因此該方法能夠滿足無人車魯棒性與實時性要求。
此外,使用真實無人駕駛車輛在實際道路上進行目標識別與跟蹤實驗。圖10為目標跟蹤效果圖。圖中右側兩輛目標車為跟蹤研究對象,速度為相對速度。前方標注為car的車輛為搭載有OBD數據記錄裝置的預設車輛,后方標注為truck的車輛為測試數據關聯穩定性的車輛。實驗環境除真值車與干擾車外,還存在大量隨機的社會車輛。
圖8 ROC指標評價曲線圖
圖9 識別算法耗時圖
可以看出,在近400幀的跟蹤過程中,目標ID號(157、158號)始終保持不變,說明跟蹤保持不斷,數據關聯一直正確。證明本文方法在存在多個目標的復雜交通場景下,能保持對目標的持續跟蹤并正確關聯。
圖11為速度跟蹤誤差圖。從圖中可以發現,當被測車輛處于超車過程中時,測量誤差較大;當被測車輛完成超車過程,回正直行時誤差顯著降低。主要原因是在超車過程中,被測車輛航向變化較大,激光點云形狀處于較大變化,最近追蹤點不斷變化(第1幀、第101幀),而從第224幀完成超越開始,激光點云穩定為L型,測量誤差開始減小。到目標遠離且有遮擋后,誤差又進一步增大。但最大誤差不超過實際車速的10%,平均誤差在3.435 km/h,能夠滿足無人車跟蹤精度要求。
最后,為檢驗算法對小目標交疊和遮擋時的識別跟蹤情況,選取行人遠離車輛、行人靠近車輛、行人被車輛大面積遮擋、行人再次遠離車輛這4個基本狀態作為一個實驗周期。圖12為行人與車輛交疊、遮擋情況實景圖,分別對應實驗周期內4個基本狀態。圖13為整個實驗過程識別結果圖。可以發現,雖然當行人與車輛發生交疊和遮擋情況會導致行人的3D點云形狀和密度發生了很大改變,且當行人被車輛大面積遮擋時(行人僅有頭部露出車頂且高度不超過0.3 m),置信概率明顯下降,但是通過對多特征的復合使用,依然能夠通過點云密度和反射率的突變捕捉到行人被車輛遮擋后的剩余信息,且可以根據概率密度觀測模型對行人輪廓進行補全,繪制出最小包絡矩形[12],且在整個實驗過程中行人的跟蹤ID號保持不變,這說明在當行人與車輛目標發生交疊和遮擋時可以通過幀間運動信息進行預測估計,整個過程中的識別算法和跟蹤算法具有良好的可靠性。
圖10 目標跟蹤效果圖
圖11 跟蹤速度誤差圖
5 結論
設計了一套基于三維激光點云數據的目標識別與跟蹤方法。直接對三維激光點云數據進行處理,為減小計算量,先對點云過濾與分割。然后使用可變閾值進行聚類,輸入用SVM分類器改進的Adaboost算法進行識別,得到三維擬合輪廓及分類。在目標跟蹤階段,應用最大熵模糊聚類進行數據關聯,而后用粒子濾波器進行跟蹤。設計的方法通過百度Apollo平臺和自主開發的無人駕駛平臺進行了驗證,同時對小目標交疊和遮擋情況的識別跟蹤效果進行實車驗證。結果表明,該套方法實時性和魯棒性均良好。
圖12 行人與車輛交疊、遮擋情況實景圖
圖13 行人與車輛交疊、遮擋識別結果圖
審核編輯:符乾江-
目標識別
+關注
關注
0文章
41瀏覽量
10433 -
機器學習
+關注
關注
66文章
8378瀏覽量
132424 -
大數據
+關注
關注
64文章
8864瀏覽量
137304 -
深度學習
+關注
關注
73文章
5493瀏覽量
120983
發布評論請先 登錄
相關推薦
評論