何光明,韓士元,2,陳月輝,2,周 勁,2,楊 君
(1. 濟南大學(xué)山東省網(wǎng)絡(luò)環(huán)境智能計算重點實驗室,山東 濟南 250022; 2. 濟南大學(xué)人工智能研究院,山東 濟南 250022; 3. 山東交通學(xué)院汽車工程學(xué)院,山東 濟南 250023)
隨著科技的不斷發(fā)展,車載LiDAR已經(jīng)開始被廣泛應(yīng)用于智能駕駛、三維物體檢測等領(lǐng)域。車載LiDAR包含了精準的三維空間信息,物體的空間信息對行駛中的車輛至關(guān)重要,這是光學(xué)影像不具備的特征。通過車載LiDAR研究提取車前道路,相比光學(xué)影像具有更高的可信度。
目前國內(nèi)外學(xué)者針對基于車載LiDAR的點云提取道路進行了大量的研究。文獻[1]使用基于最大熵的模糊聚類方法對點進行聚類,并使用加權(quán)線性擬合算法生成路面。文獻[2]使用高斯濾波算法的導(dǎo)數(shù)從MLS數(shù)據(jù)中檢測路緣。文獻[3]首先使用點的GPS時間將點云劃分為連續(xù)的道路橫斷面;然后使用移動窗口操作符根據(jù)高程差、點密度及坡度變化檢測每個路段中的路緣點。文獻[4]使用軌跡數(shù)據(jù)將點云劃分為多個塊。坡度和高程測試用于檢測每個街區(qū)的路緣點。文獻[5]在點云上構(gòu)建了顯著特征圖,以檢測路緣點。文獻[6]使用道路邊界的局部線性特征,通過圖形切割檢測路緣點。文獻[7]提出一種針對海量點云數(shù)據(jù)局部強度的柵格分割方法,用于提取道路點云。文獻[8]提出了一種基于掃描線的移動窗口濾波道路提取方法。文獻[9]提出一種集成注意力機制和擴張卷積的道路提取模型。文獻[10]采用隨機森林分類模型提取道路點云。文獻[11]結(jié)合RANSAC閾值的形態(tài)學(xué)濾波提取地面點云,然后通過聚類提取道路點云。文獻[12]提出一種基于Otsu算法和區(qū)域生長分割的道路提取方法。文獻[13]提出了一種基于點云法向量分布特征及掃描車軌跡信息的道路邊界提取方法。文獻[14]提出了一種基于坡度濾波算法與改進歐氏距離的區(qū)域生長算法相結(jié)合的道路點云提取算法。雖然研究人員在車載LiDAR的道路提取中做了許多研究,但當(dāng)前大多數(shù)研究的過程均是先采集數(shù)據(jù),然后對整條道路數(shù)據(jù)進行建模提取。研究重點針對整條道路的提取完整度,但在行駛過程中對汽車而言,更為重要的是車前實況道路邊界感知,以及對于道路臨時占用、道路塌陷等突發(fā)狀況,即對道路的完整性提取失去了實用意義。本文針對此問題,提出一種車前短距道路自動提取的算法,實現(xiàn)數(shù)據(jù)采集與道路提取同時進行,以獲取更為精細的車前臨時道路邊界。
數(shù)學(xué)形態(tài)學(xué)(Morphology)是圖像處理的基本理論之一,基本的運算有腐蝕和膨脹、開運算和閉運算,基于這些基本運算還可推導(dǎo)和組合成各種數(shù)學(xué)形態(tài)學(xué)實用算法,進行圖像形狀和結(jié)構(gòu)的分析及處理。這在圖像分割、特征抽取、邊緣檢測、圖像濾波、圖像增強和恢復(fù)等方面有廣泛應(yīng)用。腐蝕和膨脹操作已經(jīng)擴展到點云領(lǐng)域,對于激光雷達測量點云P(x,y,z),高程z在地面(x,y)處的膨脹操作定義為
(1)
腐蝕操作定位為
(2)
將原始點云的剖面圖通過抽樣形成多個點云元,如果點云元內(nèi)沒有測量值,則使用最近鄰域插值導(dǎo)出高程。通過對點云元進行侵蝕和膨脹的組合應(yīng)用,產(chǎn)生打開和關(guān)閉操作,用于雷達數(shù)據(jù)非地面點云數(shù)據(jù)和地面點云數(shù)據(jù)的分割,文獻[15]提出了基于形態(tài)學(xué)的地面點云提取算法,該算法流程描述如圖1所示。
圖1 形態(tài)學(xué)地面濾波算法流程
在激光雷達獲取原始點云后,經(jīng)過形態(tài)學(xué)地面濾波處理,原始點云中道路周圍建筑物、行人、汽車、樹木等非地面點云會被全部濾除,剩余部分保存為地面點云。
在經(jīng)過地面濾波后,由于受到周圍環(huán)境如樹木、建筑物和車輛的遮擋,地面點云的數(shù)據(jù)量主要集中在前方道路上,如圖2-圖3所示。通過統(tǒng)計各橫向區(qū)間所蘊含的數(shù)據(jù)量,設(shè)置自適應(yīng)運算域,該運算域的設(shè)置符合向“密集點靠攏”的原則,將前方點云劃分為若干個單位統(tǒng)計區(qū)間。通過點云數(shù)據(jù)量分布直方圖,確定運算域?qū)挾?不僅可濾除不必要的噪聲點,減少了差分運算量,還在不影響準確性的前提下節(jié)省了運算空間,提高了運行速度。
圖2 車前橫向點云數(shù)據(jù)量分布
圖3 車前50 m縱向點云數(shù)據(jù)量分布
差分元大小的選擇對于獲得良好結(jié)果至關(guān)重要。激光雷達通過發(fā)射出的接觸物體表面并反射回的激光回波信號強度記錄數(shù)據(jù)。一般而言,與激光雷達正對著的位置上激光回波點的數(shù)量會多一些,而相較激光雷達位置較偏的物體或出現(xiàn)不規(guī)則的表面的物體,導(dǎo)致被掃描物體所處環(huán)境難以返回回波信號,即激光回波的收點數(shù)量相對較少。還有些對激光信號有吸收性的物體,會造成點云數(shù)據(jù)中的大面積空白區(qū)域。不同的掃描方式也會引起點云分布不均。同時激光雷達的光線收發(fā)模組的每個發(fā)射頭之間會有定量的偏移角,其激光線數(shù)越多,偏移角越小,所獲得的激光點越多,成像級別越高。前方道路距離車越近,獲得激光點數(shù)越多且密集,但隨著車距的增加,激光點逐漸稀疏。使用固定差分元會出現(xiàn)大量的空白數(shù)據(jù),增加不必要的運算量。因此,需要設(shè)置合適尺寸的差分元。
2.1.1 差分元的縱向劃分
差分元縱向劃分的最佳狀況是確保每個縱向條帶中都包含數(shù)據(jù)點,通過驗證分析,(l1,l2,…,ln)屬于正向遞增序列,窗口長度的選擇可以通過線性增加長度,計算公式為
ln=tn+b
(3)
式中,t為增益系數(shù),其數(shù)值t∝Htanα,其中H為激光雷達的安裝高度,α為激光雷達發(fā)射模組中相鄰激光發(fā)射頭的夾角,為固定值;b用于調(diào)節(jié)每個差分元起始位置。
圖4(a)中,b的值小于ln-1,差分元之間形成交叉重疊;圖4(b)中,b的值等于ln-1,差分元之間交界;圖4(c)中,b的值大于ln-1,差分元之間存在間隙會形成數(shù)據(jù)遺漏,故b∈(0,ln-1),n≥2。
圖4 相鄰差分元縱向起點
2.1.2 差分元的橫向劃分
大量的試驗結(jié)果證明,差分橫向劃分寬度與點云的密度和差分元長度有關(guān),密度越大,差分云寬度越短,效果越好。本文中同一縱深選取等距窗口長度,差分元的起點計算公式為
(4)
s決定每個差分元的起點,如圖5所示。s小于wm-1時,差分元之間形成交叉重疊;s等于wm-1時,差分元之間交界;s大于wm-1時,差分元之間存在間隙會形成數(shù)據(jù)遺漏,故b∈(0,wm-1),m≥2。
圖5 相鄰差分元橫向起點
參考文獻[16]點云中每個點根據(jù)豪斯多夫距離映射到特征空間中,對每個差分元的多個激光點的多維度特征進行融合映射,設(shè)S為一個差分元的點集合:S={p0,p1,p2,…},取數(shù)量特征N、高度特征H、反射強度特征為R,設(shè)α、β、λ為權(quán)重系數(shù),規(guī)定α+β+λ=1,則每個差分元內(nèi)有
(5)
式中,F為每個差分元的特征融合參數(shù)。
在每個差分元界限選取后,統(tǒng)計每個差分元內(nèi)特征D,記為D(m,n)=[wmlnF],獲得特征矩陣為
(6)
式中,Γ為非零陣,設(shè)單位變換矩陣E,求取變換矩陣?!?Γ·E,則求解差分矩陣Res=Γ-?!?。
在獲取差分矩陣后,道路的不平整、積水、落葉等因素會在提取邊界時對結(jié)果形成噪聲干擾,需將微小的噪聲濾除,否則對不平整路面的提取精度將大幅降低。
差分閾值初值T可根據(jù)運算域內(nèi)點云密度的均值K確定,計算公式為
(7)
假設(shè)均值恒定,差分閾值初值設(shè)定與點云密度均值存在關(guān)系為T=K,在獲取T后若無法找到道路邊界,需要再對T值進行重置,依據(jù)同縱深的每個差分元內(nèi)的密度均值重置T,計算公式為
(8)
差分矩陣進行濾波,獲取參照矩陣Ψ=Res·T,運行結(jié)果Ψ內(nèi)會出現(xiàn)大量空值,在空值邊緣截取標(biāo)定矩陣為
(9)
通過標(biāo)定矩陣Φ查詢原始點云,獲取道路邊界。綜上所述,本文算法描述如下。
Input: 原始點云
Output: 道路點云
1 形態(tài)學(xué)濾波獲取地面點Gp
2 計算Gp數(shù)據(jù)分布,確定運算域的長度L、寬度W,提取出運算域點云Gp(W,L,k)={P0,P1,P2,…,Pk}
3 設(shè)定差分元D參數(shù)(Δw,Δl),相鄰差分元之間的偏移量(b,s)
4 設(shè)定閾值濾波器初始值T
7 ifΦ==0&T!=0:
8Φ←Res·T
9 if is find(Dleft,Dright):
10 end
11 if on find(Dleft,Dright)&T!=0:
12T-1=1,返回5
13 ifT==0
14 Δw+=b,Δl+=s,返回4
采用一臺雷克薩斯RX450 h搭載4個Sekonix SF3325-100相機、兩個VLP-16線激光雷達、一個Ouster OS2-128 long range LiDAR[17-19]的信息收集平臺進行試驗數(shù)據(jù)采集。其點云數(shù)據(jù)樣本包含了(x,y,z,reflection)四維度特征。采集到原始的激光點云數(shù)據(jù),數(shù)據(jù)量巨大且冗余,需要經(jīng)過數(shù)據(jù)配準、數(shù)據(jù)減縮(地面濾波)、空洞修補及點云分塊等一系列操作處理。原始點云包含131 072個激光點,先經(jīng)濾波后地面數(shù)據(jù)包含80 935個激光點,再經(jīng)過確定運算域后有效數(shù)據(jù)包含57 350個激光點,如圖6所示。為了更好地對試驗結(jié)果進行定量分析,采用Cloud Compare軟件人工提取路面點云,作為分割正確率的參考。
圖6 示例點云道路提取可視化過程
根據(jù)文獻[20-21]選用準確性p、完整性r、檢測質(zhì)量q這 3個度量指標(biāo)對本文算法進行評價,定義評價指標(biāo)計算公式為
(10)
式中,TP為實際為道路點,且判斷為道路點;FN為實際為道路點,但判斷為非道路點;FP為實際為非道路點,但判斷為道路點。
本文算法主要應(yīng)用于車輛行駛中的一幀點云數(shù)據(jù)提取的道路數(shù)據(jù),圖6的示例點云數(shù)據(jù)提取車前0~50 m的道路,人工提取道路點云如圖6(d)所示,共9092個點。算法提取道路點如圖6(e)所示,共9162個點,其中正樣本為8842個點,假陽樣本為320個點。道路提取準確率為96.51%,完整性為97.25%,提取質(zhì)量為93.94%。與相關(guān)的道路提取算法相比,效果見表1??梢缘贸?本文算法能精準界定行駛中車前道路邊界,更能實時監(jiān)測行駛中道路情況的變化。同時為了避免數(shù)據(jù)出現(xiàn)偶然性,對所采數(shù)據(jù)集不同道路抽選4組數(shù)據(jù),做不同縱深道路提取對比,效果見表2。
表1 本文算法與相關(guān)算法的道路提取對比
表2 本文算法對不同縱深的道路提取效果 (%)
與當(dāng)前研究注重提取道路的完整性不同,本文主要研究了行駛中車載LiDAR車前道路邊界自動提取方法。首先通過形態(tài)學(xué)濾波將當(dāng)前幀點云提取出地面點云,根據(jù)所獲得數(shù)據(jù)量分布細化運算區(qū)域,劃分差分元大小,統(tǒng)計每個差分元的特征參數(shù)形成特征矩陣,通過矩陣變換獲取差分矩陣后,采用不同的閾值濾波器掃描差分矩陣提取道路邊界。通過大量的試驗結(jié)果表明,本文在城市道路中適用性良好,在道路條件惡劣時,本文算法會通過損失檢測距離保證良好的準確性,更具有實用性。