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