賴 超
(1、北京建筑大學(xué) 測繪與城市空間信息學(xué)院,北京100044 2、北京北建大科技有限公司,北京100044)
道路標(biāo)線是重要的交通標(biāo)志,具有表現(xiàn)道路交通規(guī)則、提示道路信息為行人保駕護航等作用。隨著駕駛技術(shù)的進步,尤其是自動駕駛領(lǐng)域中對路面信息的需求也逐漸加大,道路標(biāo)線信息作為高精度地圖的核心要素之一,自動提取道路標(biāo)線成為了國內(nèi)外研究的熱點。
獲取道路標(biāo)線信息的主要采集方式是車載激光點云設(shè)備。目前,國內(nèi)外很多的研究學(xué)者已經(jīng)展開了基于移動LiDAR 點云數(shù)據(jù)道路標(biāo)線研究,方法大多基于道路標(biāo)線的某類或者某幾類特征進行提取的,但是也有基于深度學(xué)習(xí)的方法進行提取的。閆利等[1]基于移動激光點云掃描系統(tǒng)數(shù)據(jù),在強度圖像數(shù)據(jù)中使用中值濾波來降低噪聲,利用邊緣檢測來提取道路標(biāo)線點云;方莉娜等[2]利用標(biāo)線多尺度分割方法,將標(biāo)線點從點云數(shù)據(jù)中進行分離,并結(jié)合強度圖像,實現(xiàn)道路標(biāo)線的提??;Soilan 等[3]基于道路標(biāo)線的反射特性進行點云濾波并制作柵格圖像,通過特征提取和神經(jīng)網(wǎng)絡(luò)方法進行道路標(biāo)線的提取與分類;Wen 等[4]基于三維移動激光點云數(shù)據(jù),使用深度學(xué)習(xí)的方法對點云數(shù)據(jù)進行分割,實現(xiàn)道路標(biāo)線點云數(shù)據(jù)的提取。
本方法提出的提取流程如圖1。
圖1 算法流程圖
因為輸入的點云數(shù)據(jù)代表了一段數(shù)公里的點云數(shù)據(jù),如圖2 所示。直接投影到二維平面使得圖像的長寬比例過大,首先根據(jù)掃描軌跡線數(shù)據(jù)按照500 米的步長對道路點云進行長度向分段。同時,實際經(jīng)驗表面:道路點云數(shù)據(jù)往往因為車輛碾壓后會產(chǎn)生相應(yīng)的磨損,尤其體現(xiàn)在路面中間部分,但是兩側(cè)點云保存較為完好,這就導(dǎo)致了道路標(biāo)線點云的反射強度平均值呈中間低兩側(cè)高的情況。直接投影后的圖像采用自適應(yīng)閾值分割效果不佳,于是垂直于道路方向再將道路點云切成三塊,單獨的一塊點云數(shù)據(jù)進行投影生成對應(yīng)的二維圖像。
生成反射強度圖像時,設(shè)定強度圖像像素單元的尺寸大小N,根據(jù)公式:
將點云投影到M×C 的網(wǎng)格中,其中Xmax,Xmin,Ymax,Ymin分別為點云再X 和Y 方向的最大最小值。
OTSU 算法,又名大津法[5]。是一種確定圖像二值化分割閾值的算法,由日本學(xué)者大津于1979 年提出。被認為是圖像分割中閾值選取的最佳算法,計算簡單且不受圖像亮度值影響。將圖像分成了背景和前景兩部分,適用于求圖像的全局閾值,其核心思想在于類間方差最大化。
令{0,1,2,…,L-1}表示一幅大小為M×N 像素的數(shù)字圖像中L 個不同的灰度級。ni表示灰度級為i 的像素數(shù)。假設(shè)存在一個閾值:
T(k)=k,0 可以把輸入圖像閾值化處理為C1,C2兩類,則像素被分到C1的概率為: 通過OTSU 計算可以直觀的反應(yīng)前景和背景的差值,且閾值適用性于差值呈正相關(guān)。得到的閾值并根據(jù)閾值判斷是否為普通路面像素和道路標(biāo)線像素。 通過影像算法已經(jīng)得到了相應(yīng)的道路標(biāo)線像素,通過像素到點云的反投影計算,也就是生成強度圖像的逆過程,將像素恢復(fù)成三維點云。 通過上述過程已經(jīng)得到部分道路標(biāo)線點云數(shù)據(jù),但是這部分標(biāo)線點云數(shù)據(jù)是不完整的,因為OTSU 得到的閾值容易受到噪聲異常值的影響,實際使用的閾值并不能完美得將標(biāo)線點云標(biāo)線分割開。 對散亂點云進行點云區(qū)域生長分割之前,需要先對三維點云數(shù)據(jù)建立拓撲關(guān)系,使用KD-Tree 建立三維空間關(guān)系,置好生長準(zhǔn)則,分別為距離和反射強度兩個條件,判斷種子節(jié)點的鄰域點是否與鄰域點屬于同一特征條件。如果滿足該條件,將該點作為新的種子點繼續(xù)生長,否則不加入,以此類推,將所有滿足特征條件的鄰域點劃入到同一區(qū)域內(nèi),知道生長結(jié)束。 圖2 KD-Tree 結(jié)構(gòu)圖 通過使用點云區(qū)域生長算法,將之前提取出的道路標(biāo)線點云數(shù)據(jù)作為生長的種子點加入到隊列中,并設(shè)置距離和亮度值差異兩個條件進行點云區(qū)域生長,過程中將已經(jīng)遍歷過的點云移除,直至不能生長。 車載激光點云數(shù)據(jù)中,往往再采集過程中受到光線異常影響,使得出現(xiàn)很多強度異常的噪聲點[7],根據(jù)反射強度特征提取標(biāo)線的方法往往會將這部分點云作為標(biāo)線點云提取出來,所以需要進行去噪聲處理。 結(jié)合點云數(shù)據(jù)密度情況,設(shè)置鄰域大小為N,搜索半徑大小為R,其中R 被用來判斷當(dāng)前中心點距離于其領(lǐng)域N 內(nèi)所有點到該點距離的差值,另外一般還將設(shè)置分配閾值參數(shù)T,用于判斷離群特性,確定閾值與實際的場景相關(guān),即點云密度愈高,半徑大小R 越小。 (1)獲取當(dāng)前中心點的周圍鄰域N 范圍內(nèi)所有的三維點云數(shù)據(jù),需要先計算該范圍內(nèi)任一點到點云中心的距離: (2)計算Di與當(dāng)前點到點云中心的距離差值d。 (3)比較d 與半徑閾值R 的大小。如果小于半徑閾值,則視為有效點的個數(shù),反之,遍歷下一個鄰域點。 (4)當(dāng)遍歷完所有的鄰域點之后,可以得到此中心點對應(yīng)的鄰域有效點個數(shù)m。 (5)計算分配參數(shù)t: (6)比較t 與分配閾值T 的大小,如果t>T,則當(dāng)前中心點被判為有效點云,否則將視為離群噪聲點云,被刪除。 圖3 離群濾波原理 實驗中,這部分噪聲點云往往散亂分布,數(shù)量稀疏,可以使用離群值法將之篩除。通過KD-Tree 半徑搜索,若某點的領(lǐng)域點個數(shù)少于設(shè)定的閾值,則判定該點為離群點,也就是噪聲點,將其移除。如圖3 所示,a 和c 點周圍點云數(shù)量少于閾值,被判定為離群點,將被移除。 本文以某段高速路面車載激光掃描點云作為輸入數(shù)據(jù)進行實驗,得到的提取結(jié)果如圖4。 圖4 輸入點云與提取結(jié)果 實驗數(shù)據(jù)表明:對于實際采集到的高速路面激光點云數(shù)據(jù),使用本文方法進行路面標(biāo)線提取,可以得到比較滿意的結(jié)果。2.4 反投影
2.5 點云生長算法
2.6 離群值去噪
3 實驗結(jié)果