本發(fā)明屬于智能駕駛技術(shù)領(lǐng)域,尤其涉及一種基于三維激光雷達目標(biāo)識別的點云密度增強的方法。
背景技術(shù):
智能駕駛技術(shù)在交通安全、環(huán)境保護及緩解交通壓力等方面都有巨大的應(yīng)用潛力,目前已受到許多國家的科研機構(gòu)及公司的高度重視。智能駕駛技術(shù)研究具有跨學(xué)科、多交叉等特點,其涉及機械電子、模式識別、人工智能、控制科學(xué)及軟件工程等諸多學(xué)科知識,其中基于三維激光雷達的目標(biāo)識別是其重要研究內(nèi)容之一。
三維激光雷達是智能車輛獲取外部信息的重要傳感器之一,具有可靠性和實時性強、精確性高等優(yōu)點,因此被廣泛地應(yīng)用在智能車環(huán)境感知研究中。三維激光雷達具有多個激光傳感器,點數(shù)據(jù)則是大規(guī)模的離散測量點數(shù)據(jù)的集合,它們?yōu)檫€原測量對象的基本形狀特征和結(jié)構(gòu)細節(jié)提供了充足的信息。
但是,由三維激光雷達原理可知,目標(biāo)離雷達距離越近,其點云越稠密,反之將稀疏。圖1為一行人目標(biāo)點云同距離變化關(guān)系示意圖,如圖1所示,在10米處目標(biāo)點云中的點的數(shù)量約350個;隨著距離增加,該目標(biāo)點云中點的數(shù)量迅速下降,當(dāng)距離達至50米時,只剩約20個點。從圖1還可以發(fā)現(xiàn),隨距離增加目標(biāo)點云的層數(shù)及每層上點數(shù)均同時減少。三維激光雷達這種點云密度同距離緊密相關(guān)的特性使得特征一致性較差,難以建立起目標(biāo)有效直方圖或幾何形狀特征,將極大地影響后期識別算法精度。為此,需要提供降低目標(biāo)點云密度同距離的緊密關(guān)系的方法,以便提高目標(biāo)識別的精度。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種基于三維激光雷達目標(biāo)識別的點云密度增強的方法來克服或至少減輕現(xiàn)有技術(shù)中的至少一個上述缺陷。
為實現(xiàn)上述目的,本發(fā)明提供一種基于三維激光雷達目標(biāo)識別的點云密度增強的方法,包括:通過三維激光雷達測量目標(biāo)的初始點云數(shù)據(jù),確定所述初始點云數(shù)據(jù)中的目標(biāo)包圍體;以所述目標(biāo)包圍體的中心為原點構(gòu)建局部坐標(biāo)系,將所述初始點云數(shù)據(jù)從初始的雷達坐標(biāo)系下轉(zhuǎn)換到所述局部坐標(biāo)系下得到轉(zhuǎn)換后點云數(shù)據(jù);基于徑向插值函數(shù)RBF和所述轉(zhuǎn)換后點云數(shù)據(jù)構(gòu)建三維曲面;基于所述三維曲面進行點云重采樣以生成新的點云。
進一步地,其中以所述目標(biāo)包圍體的中心為原點構(gòu)建局部坐標(biāo)系包括:以所述目標(biāo)包圍體的中心為所述局部坐標(biāo)系的原點;確定所述局部坐標(biāo)系的第一主平面,第二主平面與所述第一主平面正交。
進一步地,其中確定所述局部坐標(biāo)系的第一主平面包括:確定目標(biāo)包圍體內(nèi)點云的三個方向的特征向量e1,e2,e3及對應(yīng)的特征值λ1,λ2,λ3,其中特征值大小關(guān)系為λ1>λ2>λ3;利用特征向量e1,e2來計算第一主平面
進一步地,其中特征向量e1平行于所述雷達坐標(biāo)系的豎直軸,基于隨機抽樣一致性算法RANSAC及σhd計算特征向量e2,特征向量e3與特征向量e1和e2分別垂直,其中:
其中,Nt為點云中的點數(shù),di為點i同其同層最近點的距離,HADP見下式:
其中,Ml為總層數(shù),dij為點i同其最近點j的投影距離,Nl為第j層上點云總數(shù)量。
進一步地,其中將所述初始點云數(shù)據(jù)從初始的雷達坐標(biāo)系下轉(zhuǎn)換到所述局部坐標(biāo)系下得到轉(zhuǎn)換后點云數(shù)據(jù)包括:
設(shè)雷達坐標(biāo)系Oxyz下的點pi(x,y,z),其在局部坐標(biāo)系O′x′y′z′下的坐標(biāo)為pi′(x′,y′,z′),設(shè)坐標(biāo)系Ox′y′z′為平行于O′x′y′z′,且原點與Oxyz相同,則pi在坐標(biāo)系Ox′y′z′下的坐標(biāo)值pi″(x″,y″,z″)計算式為:
其中為對應(yīng)坐標(biāo)軸間夾角,則點pi′(x′,y′,z′)由下式計算:
其中max(x″),min(x″)分別為點的x″坐標(biāo)值的最大及最小值,max(y″),min(y″)及max(z″),min(z″)分別為y″和z″的最大、最小值。
進一步地,其中基于徑向插值函數(shù)RBF和所述轉(zhuǎn)換后點云數(shù)據(jù)構(gòu)建三維曲面包括:
基于RBF的函數(shù)S的表達式如下:
其中wi為常量系數(shù),Φ(r),r≥0為固定實值函數(shù),||·||表示歐式距離,p為k維空間中點云,點pi,i=1,…,N為RBF函數(shù)逼近的中心;
其中,Φ(r)包括如下至少一個:和exp(r/ε)*(3r/ε+(r/ε)2)。
進一步地,其中,當(dāng)Φ(r)包括兩個以上表達式時,基于交叉檢驗及均方根誤差RMSE法選擇最優(yōu)Φ(r):
其中pi為測試點,Np為測試點的數(shù)量,S為所述基于RBF的函數(shù),F(xiàn)為已知測試函數(shù),F(xiàn)的值為測試點的y′軸坐標(biāo)值,RMSE的值越小則Φ(r)更優(yōu)。
進一步地,基于所述三維曲面進行點云重采樣以生成新的點云包括:
將所述目標(biāo)投影至所述第一主平面上,按照橫、縱向網(wǎng)格寬度rm,rn生成二值網(wǎng)格坐標(biāo)系Omn,坐標(biāo)原點位于左上角,Om軸正向指向右方,On軸正向指向下方,各網(wǎng)格單元中存儲0/1值,其中值1表示網(wǎng)格對應(yīng)的主平面上存在點云投影,值0表示網(wǎng)格對應(yīng)的主平面上不存在點云投影;
利用下式對所述三維曲面上的點云中的所有點進行遍歷,確定其屬于的網(wǎng)格單元,如果網(wǎng)格單元中存在一個或多個點,則該網(wǎng)格單元值為1,否則為0,最終生成二值網(wǎng)絡(luò):
其中m,n表示網(wǎng)格坐標(biāo)值,xi′,zi′為點i的坐標(biāo)值,min(x′),min(z′)為所有點云的最小x′及y′值;
在所述二值網(wǎng)格坐標(biāo)系中掃描線對應(yīng)每一層橫向網(wǎng)格,采用跳躍聚類JDC算法將各層上的掃描線進行分割,以表示其中一個分割,其中Ns為第Lj層上網(wǎng)格的分割數(shù)量,Nl為網(wǎng)格縱向?qū)訑?shù),即掃描線個數(shù);
在掃描線分割完成后對橫向單元值為0的網(wǎng)格進行重新調(diào)整,包括:
如果一個包括不止一個單元值為1的網(wǎng)格,則設(shè)置所處的所有網(wǎng)格為單元值為1的網(wǎng)格;
如果一個僅有一個單元值為1的網(wǎng)格,則設(shè)置該單元值為1的網(wǎng)格的左右兩側(cè)na個網(wǎng)格為單元值為1的網(wǎng)格,參數(shù)na取決于網(wǎng)格橫向?qū)挾萺m;
對于縱向單元值為1的網(wǎng)格,計算網(wǎng)格相鄰層的近鄰分割,將處于這兩個分割的連接處的所有網(wǎng)格置為單元值為1的網(wǎng)格;
對網(wǎng)格坐標(biāo)系中的每一個單元值為1的網(wǎng)格,在目標(biāo)局部坐標(biāo)系O′x′y′z′都對應(yīng)一個點,該點的坐標(biāo)值為:
其中S為所述基于RBF的函數(shù)S,所有點(x′,y′,z′)的和構(gòu)成新的點云。
本發(fā)明由于采取以上技術(shù)方案,其具有以下優(yōu)點:1、可使得目標(biāo)點云密度同其距離無關(guān),有利于點云特征提??;2、可直接利用現(xiàn)有點云特征研究成果,如直方圖等;3、密度增加算法是在點云分割基礎(chǔ)上進行,因此適用于任意分割目標(biāo)。
附圖說明
圖1是現(xiàn)有技術(shù)中行人目標(biāo)在距離雷達10m-50m時的點云圖;
圖2是本發(fā)明提供的基于三維激光雷達目標(biāo)識別的點云密度增強的方法的流程圖;
圖3是目標(biāo)局部坐標(biāo)系的示意圖;
圖4(a)~(d)是在本發(fā)明提供的點云密度增強的方法中執(zhí)行點云重采樣的示意圖;
圖5是在圖2所示的流程中對縱向“hit cell”的線性計算示意圖。
具體實施方式
在附圖中,使用相同或類似的標(biāo)號表示相同或類似的元件或具有相同或類似功能的元件。下面結(jié)合附圖對本發(fā)明的實施例進行詳細說明。
在本發(fā)明的描述中,術(shù)語“中心”、“縱向”、“橫向”、“前”、“后”、“左”、“右”、“豎直”、“水平”、“頂”、“底”“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對本發(fā)明保護范圍的限制。
本發(fā)明提供一種基于三維激光雷達目標(biāo)識別的點云密度增強的方法,該方法可以應(yīng)用于智能車輛等應(yīng)用了三維激光雷達進行目標(biāo)識別的系統(tǒng)。
本發(fā)明提供一種基于三維激光雷達目標(biāo)識別的點云密度增強的方法,如圖2所示,將按照下述順序?qū)Ρ景l(fā)明進行說明。
步驟201,通過三維激光雷達測量目標(biāo)的初始點云數(shù)據(jù),并確定初始點云數(shù)據(jù)中的目標(biāo)包圍體。
三維激光雷達通常具有多個激光傳感器,通過這些激光傳感器進行測量得到目標(biāo)的大量數(shù)據(jù),即初始點云數(shù)據(jù)。在采集目標(biāo)的數(shù)據(jù)時可能會將周圍環(huán)境數(shù)據(jù)一并采集,目標(biāo)包圍體指的是反應(yīng)目標(biāo)的位置的點云。
步驟202,以目標(biāo)包圍體的中心為原點構(gòu)建局部坐標(biāo)系,將初始點云數(shù)據(jù)從初始的雷達坐標(biāo)系下轉(zhuǎn)換到局部坐標(biāo)系下得到轉(zhuǎn)換后點云數(shù)據(jù)。
在三維激光雷達系統(tǒng)中具有雷達坐標(biāo)系,初始點云數(shù)據(jù)反應(yīng)在該雷達坐標(biāo)系下。
本發(fā)明中需要建立局部坐標(biāo)系,坐標(biāo)系的兩個坐標(biāo)軸變量可視為下文構(gòu)建的三維曲面函數(shù)的兩個自變量,第三軸變量則為曲面函數(shù)的因變量。
如圖3所示,O’x’y’z’為目標(biāo)局部坐標(biāo)系,其原點位于目標(biāo)包圍體中心。設(shè)O’x’z’為目標(biāo)第一主平面O’y’z’為第二主平面由于坐標(biāo)系原點已知,且O’x’z’與O’y’z’正交,因此局部坐標(biāo)系的構(gòu)建相當(dāng)于計算主平面的過程。
本發(fā)明提供一種橫向距離標(biāo)準(zhǔn)差σhd作為主平面質(zhì)量的評價指標(biāo):
在上式中,將包圍體內(nèi)點云投影至主平面上,而后視其為由多條獨立激光束生成的分層排列的二維點云。其中,Nt為點云數(shù),di為點i同其同層最近點的距離,HADP的計算式為:
其中,Ml為總層數(shù),dij為點i同其最近點j的投影距離,Nl為第j層上點云總數(shù)量。由σhd計算式可知,當(dāng)σhd越小時,則意味著質(zhì)量越高。
本發(fā)明中,采用主成分分析方法(Principal Component Analysis,PCA)計算主平面,其步驟為:首先,計算目標(biāo)包圍體內(nèi)點云的三個方向特征向量e1,e2,e3及對應(yīng)的特征值λ1,λ2,λ3,其中特征值大小關(guān)系為λ1>λ2>λ3;其次,利用特征向量e1,e2來計算主平面PCA對于目標(biāo)形狀(點云分布)十分敏感。本發(fā)明中假設(shè)研究目標(biāo)均處于豎直狀態(tài),則可以設(shè)目標(biāo)的主特征向量e1平行于雷達坐標(biāo)系的Oz軸,因此主平面的計算可簡化為第二特征向量e2的求解。本發(fā)明中基于RANSAC算法結(jié)合σhd計算e2。
例如,下述算法1即為基于RANSAC及σhd的e2計算方法的例子。
算法1基于RANSAC及σhd的e2計算方法
局部坐標(biāo)建立以后,還需將初始點云數(shù)據(jù)從初始的雷達坐標(biāo)系下轉(zhuǎn)換到局部坐標(biāo)系下得到轉(zhuǎn)換后點云數(shù)據(jù)。以雷達坐標(biāo)系Oxyz下任意點pi(x,y,z)為例,其在局部坐標(biāo)系O′x′y′z′下轉(zhuǎn)換為pi′(x′,y′,z′)。設(shè)坐標(biāo)系Ox′y′z′為平行于O′x′y′z′,且原點與Oxyz相同,則可知pi在坐標(biāo)系Ox′y′z′下的坐標(biāo)值pi″(x″,y″,z″)計算式為:
其中為對應(yīng)坐標(biāo)軸間夾角,則點pi′(x′,y′,z′)可由下式計算:
其中max(x″),min(x″)分別為點的x″坐標(biāo)值的最大及最小值,同樣max(y″),min(y″)及max(z″),min(z″)也分別為y″和z″坐標(biāo)值的最大、最小值。
步驟203,基于RBF和轉(zhuǎn)換后點云數(shù)據(jù)構(gòu)建三維曲面。
點云密度增強實際上可視為多維散點插值問題,但由于點云分布的非均勻性及不確定性,因此無法直接使用經(jīng)典的樣條曲線或多項式插值方法,本發(fā)明采用RBF(徑向插值函數(shù))插值法進行點云密度增強。
RBF插值法基本原理為假定F=F(p),p為k維空間中點云,F(xiàn)為代表真實三維曲面的實值函數(shù)。則當(dāng)前任務(wù)為尋找一個函數(shù)S來逼近F,則基于RBF的函數(shù)S可寫為以下形式:
其中wi為常量系數(shù),Φ(r),r≥0為固定實值函數(shù)且||·||表示歐式距離,則點pi,i=1,…,N被稱為RBF函數(shù)逼近的中心。
RBF插值法的關(guān)鍵是核函數(shù)同形狀參數(shù)ε的選擇,對于形狀參數(shù)ε通常采用ε=0.815d,其中di為點i在同層點云中與其最近點的距離,Nt為點云數(shù)量。
核函數(shù)Φ(r)可以根據(jù)實際需要靈活設(shè)置。下表1為Φ(r)的常用函數(shù),對于形狀參數(shù)ε通常采用ε=0.815d,其中di為點i在同層點云中與其最近點的距離,Nt為點云數(shù)量。
表1 RBF核函數(shù)
本發(fā)明中,為了選擇最優(yōu)的核函數(shù)和形狀參數(shù),還提供一種基于交叉檢驗及均方根誤差(RMS error,RMSE)的方法來確定最優(yōu)核函數(shù)和形狀參數(shù)。
RMSE用于量化插值精度,其計算式如下:
其中pi為測試點,Np為其數(shù)量,S為利用訓(xùn)練集構(gòu)建的插值函數(shù),F(xiàn)為已知測試函數(shù),其值即為測試點的y′軸坐標(biāo)值。顯然RMSE的值越小則意味著函數(shù)S越逼近真實函數(shù)F,即插值效果越好,換句話說,最小RMSE即對應(yīng)最優(yōu)的核函數(shù)及形狀函數(shù)ε。
另外,由于近處與遠處目標(biāo)點云密度的不同,因此稠密點云與稀疏點云應(yīng)采用不同的交叉檢驗方法。對于稠密點云目標(biāo),leave-one-out(棄一)法將耗費大量計算資源,因此更適合于K-fold(K折)法;而對于稀疏點云目標(biāo),leave-one-out法則更為適合。目標(biāo)點云稠密或稀疏可采用HADP來進行判斷,根據(jù)經(jīng)驗,如其HADP大于0.07則該目標(biāo)點云視為稀疏,否則視為稠密。下面舉例說明。
(1)基于leave-one-out法的稀疏點云的參數(shù)確定
leave-one-out交叉驗證法的思路是:設(shè)Nt為點云總數(shù),則單次隨機選取Nt-1個點作為訓(xùn)練集,剩下一個點作為測試集來計算RMSE,而后不斷重復(fù)上述過程,直至每一個點都被作為多次訓(xùn)練和一次測試數(shù)據(jù)。
下面舉例說明基于leave-one-out交叉檢驗法計算RMSE的過程。如下所示,可以采用算法2,其中采用了不同的形狀參數(shù)及核函數(shù)。
(2)基于K-fold法的稠密點云的參數(shù)確定
針對于稠密目標(biāo)點云,采用5-fold交叉檢驗方法來估計RMSE。在檢驗中,首先將訓(xùn)練及隨即、平均分為5份,而后利用其中4份作為訓(xùn)練集,另外1份作為測試集,隨后重復(fù)上述步驟直至每一份均做過多次訓(xùn)練和一次測試集。
步驟204,基于三維曲面進行點云重采樣以生成新的點云。
在上一步驟中已經(jīng)建立三維曲面。本步驟中,基于該三維曲面進行點云采樣以生成新的均勻點云,即執(zhí)行點云重采樣過程。
如圖4所示,以虛擬行人目標(biāo)為例進行說明。圖4(a)為一虛擬行人目標(biāo)的主平面,將該目標(biāo)生成的點云視為不同激光束生成的多層點云,其中的曲線表示各層上的虛擬掃描線為掃描線層數(shù),Nl為各掃描線上點云數(shù)量。圖4(b)(c)(d)表示采樣的三個步驟,分別為建立二值網(wǎng)格坐標(biāo)系Omn、基于網(wǎng)格坐標(biāo)系的重采樣及三維點云生成。
(1)建立二值網(wǎng)格坐標(biāo)系Omn
如圖4(b)所示,二值網(wǎng)格坐標(biāo)系是首先將目標(biāo)投影至主平面上,而后在此基礎(chǔ)上按照橫、縱向網(wǎng)格寬度rm,rn生成的網(wǎng)格,網(wǎng)格原點位于左上角,Om軸正向指向右方,On軸正向指向下方,各網(wǎng)格單元中存儲0或1值,其中值1表示該網(wǎng)格對應(yīng)的主平面上存在點云投影,值0則表示不存在點云投影。
目標(biāo)點云同網(wǎng)格單元值的映射公式如下式:
其中m,n表示網(wǎng)格坐標(biāo)值,xi′,zi′為點i的坐標(biāo)值,min(x′),min(z′)為所有點云的最小x′及y′值。
利用上式對所有點云進行遍歷分析,計算出其屬于的網(wǎng)格單元。如果網(wǎng)格中存在一個或多個點,則設(shè)該網(wǎng)格單元值為1,否則為0,最終可生成如圖4(b)的二值網(wǎng)格,為了描述簡便,下文中將單元值為1的網(wǎng)格稱為“hit cell”,將單元值為0的網(wǎng)格稱為“missing cell”。利用二值網(wǎng)格進行重采樣有兩點好處:一是將無結(jié)構(gòu)點云轉(zhuǎn)化為有結(jié)構(gòu)網(wǎng)格單元,便于理性點間關(guān)系,有利于后續(xù)采樣算法;二是網(wǎng)格分辨率可以通過調(diào)節(jié)rm,rn來實現(xiàn),從而能夠方便地生成不同密度的新點云。
(2)基于網(wǎng)格坐標(biāo)系進行重采樣
如圖4(b)至(c)所示,網(wǎng)格坐標(biāo)系下的重采樣是在保持目標(biāo)形狀不變的基礎(chǔ)上對網(wǎng)格中的“hit cell”進行橫、縱向調(diào)整的過程。在網(wǎng)格坐標(biāo)系中掃描線即對應(yīng)每一層橫向網(wǎng)格,因此可采用JDC(Jump Distance Clustering,跳躍聚類)算法將各層上掃描線進行分割,即當(dāng)相鄰網(wǎng)格間的歐式距離小于某預(yù)設(shè)閾值時,則可視為這兩者源于同一分割。根據(jù)JDC算法,可將點云結(jié)構(gòu)進一步簡化為掃描線分割結(jié)構(gòu),以表示其中一個分割,其中Ns為第Lj層上網(wǎng)格的分割數(shù)量,Nl為網(wǎng)格縱向?qū)訑?shù),即掃描線個數(shù)。
在掃描線分割完成的基礎(chǔ)上對橫向“hit cell”進行重新調(diào)整,包括:
●如果一個包括不止一個“hit cell”,則設(shè)置該分割所處的所有網(wǎng)格為“hit cell”;
●如果一個僅有一個“hit cell”,則設(shè)置該“hit cell”的左右兩側(cè)na個網(wǎng)格為“hit cell”,參數(shù)na取決于網(wǎng)格橫向?qū)挾萺m。
對于縱向“hit cell”,可采用如圖5所示的簡單的線性算法來計算。首先計算網(wǎng)格相鄰層的近鄰分割,而后將處于這兩個分割的連接處的所有網(wǎng)格置為“hit cell”。
圖4(c)為按照以上方法生成的新的采樣點云??梢钥闯觯景l(fā)明不僅能夠生成稠密、均勻的點云,同時能夠保持目標(biāo)原有的形狀特征。例如行人目標(biāo)的手臂及腿部特征都能夠很好的保留下來,證明了所提方法的有效性。
(3)生成新的點云
對網(wǎng)格坐標(biāo)系中的每一個“hit cell”,在目標(biāo)局部坐標(biāo)系O′x′y′z′都對應(yīng)一個點,該點的坐標(biāo)值為:
其中S為插值曲面函數(shù),圖4(d)即為從網(wǎng)格中還原的新的點云。對比圖4(a)可以看出,新生成的目標(biāo)點云無論是橫向還是縱向均比原始點云稠密,且能夠較好地保持目標(biāo)原有形狀。
最后需要指出的是:以上實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分技術(shù)特征進行等同替換;這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的精神和范圍。