鄭帥鋒,王山東,張陳意,王倫煒
(河海大學(xué) 地球科學(xué)與工程學(xué)院,南京 211100,中國)
在自動駕駛所使用的3維高精度地圖中,道路標(biāo)識線是極其重要的核心要素。在城市道路環(huán)境中,通常根據(jù)指導(dǎo)車輛交通的不同功能,在道路路面上采用高反射率的涂料繪制相應(yīng)的文字、符號、圖形、線條等[1]。而3維坐標(biāo)和強度信息是車載激光雷達(light detection and ranging,LiDAR)點云數(shù)據(jù)的主要屬性信息,地物的表面附帶不同的材質(zhì),而這些材質(zhì)的回波反射強度信息也表現(xiàn)得不同,因此可以參考這一特性提取點云標(biāo)識線[2]。
近些年來,國內(nèi)外學(xué)者以反射強度差異這一特性從車載LiDAR點云中提取標(biāo)識線的方法有兩類:一類是將3維信息壓縮成2維信息,即將3維點云信息轉(zhuǎn)換為2維影像,再分割提取道路標(biāo)識線信息[3-7];另一類是直接利用點云反射強度進行提取[8-14]。
基于點云圖像維度轉(zhuǎn)換的方式,對3維點云掃描數(shù)據(jù)進行降維處理,保留其某一特性生成2維特征圖像,并結(jié)合圖像處理算法提取點云道路標(biāo)識線。YAO等人[3]根據(jù)道路邊界處的幾何突變從掃描線中提取路面,并將路面點云反距離加權(quán)插值生成柵格圖像進行道路標(biāo)識線的精確提取,但此方法未考慮城市道路環(huán)境的影響。GUAN[5]與KUMAR[6]等人結(jié)合道路走向?qū)μ卣鲌D像進行分塊、自適應(yīng)閾值處理,實現(xiàn)標(biāo)識線的提取,但此方法存在標(biāo)識線圖像3維信息缺失的問題。
基于點云反射強度提取道路標(biāo)識線,ZEYBEK[8]利用Alpha shape算法提取3維和2維道路特征,結(jié)合點云反射強度獲得標(biāo)識線結(jié)果,并與手動數(shù)字化參考標(biāo)記進行比較,但未考慮到標(biāo)識線的磨損狀態(tài)。YAN等人[9]對每一條掃描線點云進行基于移動窗口的強度中值濾波,利用標(biāo)識線點云與路面點的反射強度差異,進行標(biāo)識線點的提取。YU[10]與MA[13]等人同樣對道路點云進行分塊處理,對每一塊點云進行強度閾值判斷,但該類方法的場景受限于彎曲道路中。
綜上所述,點云道路標(biāo)識線的提取精度問題,與車道標(biāo)識線磨損或斷裂等狀況相關(guān),與復(fù)雜環(huán)境中其它要素的影響程度相關(guān)。針對上述問題,本文作者提出了一種改進的基于點云多元特征的城市道路標(biāo)識線提取方法,通過結(jié)合點云的強度信息、點密度信息以及高程信息進行道路標(biāo)識線的提取,更好地緩解了由車道標(biāo)識線磨損斷裂等情況對精度造成的影響;在不同場景條件下,利用標(biāo)識線的幾何信息和語義信息,結(jié)合臨近點迭代(iterative closest point,ICP)模板匹配,提高算法的泛化性。
車載LiDAR數(shù)據(jù)以3維坐標(biāo)及反射強度反映道路環(huán)境及部件材質(zhì)。城市道路標(biāo)識線采用特殊的材料制作,相比于周邊要素,反射強度更強,而且沒有突出的空間立體特征城市道路標(biāo)準(zhǔn)線附著于道路表面[12,15]。本文作者基于點云多元特征的地理參考圖像,實現(xiàn)點云道路標(biāo)識線自動化提取,技術(shù)路線如圖1所示。由于原始點云數(shù)據(jù)存在著一些不規(guī)則分布的離群噪聲點,首先基于半徑濾波去除噪聲點,并用布料模擬濾波算法濾除非地面點;其次將地面點數(shù)據(jù)進行格網(wǎng)化處理,去除非路面點的高強度點云和稀疏分布的高強度點云[16];然后通過投影生成點云的高程、強度、點密度特征地理參考圖像,并基于多元特征圖像提取道路標(biāo)識線邊緣范圍;接著利用Ostu算法實現(xiàn)路面點云標(biāo)識線精提取;最后根據(jù)標(biāo)識線的邊界框信息和ICP模型匹配方案實現(xiàn)標(biāo)識線的細分類。
圖1 技術(shù)路線Fig.1 Technical flow chart
分析道路標(biāo)識線的強度特征[17]可知,道路表面的標(biāo)識線通常使用特殊的高反射率的白色或黃色涂料,而路面普遍使用低反射率的混凝土或帶卵石的瀝青鋪就而成,因此兩者強度差異明顯。考慮到實際城市道路因部分標(biāo)識線磨損或斷裂導(dǎo)致其反射率下降等情況,采用局部區(qū)域的強度閾值作為判斷依據(jù),結(jié)合點云的高程特征和點密度特征,生成2維地理參考圖像,并進行圖像增強[18],凸顯道路標(biāo)識線特征。
道路標(biāo)識線位于道路表面,在局部鄰域內(nèi)高程變化很小,但在實際的復(fù)雜道路環(huán)境中,不可避免地存在一些與標(biāo)識線強度相似的其它路面噪聲點[19]。通過對地面點云格網(wǎng)化,根據(jù)格網(wǎng)高差大小將點云分離為路面點gcloud與非路面點ngcloud,去除非路面點的高強度點云和稀疏分布的高強度點云,并都投影到水平面XOY上進行柵格化處理,生成3個灰度地理參考圖像(高程特征圖像、強度特征圖像和點密度圖像)。
對于點密度特征圖像,其特征值為去噪后的點密度值。對于高程特征圖像,其特征值為ngcloud的平均Z值。在生成點云強度特征圖像時,其格網(wǎng)特征值主要由落入格網(wǎng)內(nèi)部點云的強度信息、與格網(wǎng)中心點的水平距離、點的個數(shù)決定,并根據(jù)每一個點的強度信息與離散分布情況來計算該點的內(nèi)插權(quán)重。
位于(i,j)的格網(wǎng)強度特征值Fij的權(quán)值Wij,n受兩個影響因素限制:第1個影響因素是Iij,n,即格網(wǎng)中最低強度值與格網(wǎng)內(nèi)所有點之間的強度差異;第2個影響因素是Dij,n(n代表點號,0≤n≤Nij,Nij為格網(wǎng)(i,j)內(nèi)的總點數(shù)),即格網(wǎng)中心點到格網(wǎng)內(nèi)每一個點的水平距離。因此落入第(i,j)個格網(wǎng)中的點的權(quán)值定義為[19]:
(1)
式中:Wij,n,XY、Wij,n,I分別為格網(wǎng)中第n個點與第(i,j)個格網(wǎng)中心點在XOY上的水平距離及其強度的權(quán)重;α和β為這兩部分的權(quán)重,且α+β=1;Imin(ij)、Imax(ij)分別為第(i,j)個格網(wǎng)中所有點的強度最小、最大值;G為網(wǎng)格的長度大小;Ip,max與Ip,min分別為整個點云集p的強度最大值和最小值。根據(jù)式(1)計算格網(wǎng)(i,j)的強度特征值[19]:
(2)
式中:Iij,n′為格網(wǎng)(i,j)中第n個點的強度值。
在0~255的灰度空間更能體現(xiàn)圖像的對比度,然后將所有格網(wǎng)的強度特征值Fij進行歸一化處理,得到點云強度地理參考圖像。
在強度特征圖像中,低反射強度的路面像素點較為灰暗,高反射強度的標(biāo)識線像素點較為明亮,兩者的灰度值差異明顯[20]。Sobel算子可以更好地識別和提取標(biāo)識線邊緣像素以及非路面點中高程突變的像素,以此生成強度梯度圖像和坡度梯度圖像,并利用最大熵閾值分割法[20]對坡度梯度圖像和點密度特征圖像進行二值化,坡度二值化圖像中像素值為0的像素點以及坡度二值化圖像中像素值為1的像素點將被保留,并綜合到點云強度梯度圖像中去,最后對道路強度梯度圖像進行二值化,得到道路標(biāo)記邊界像素,處理流程如圖2所示。
圖2 地理參考圖像處理流程圖Fig.2 Georeferenced image processing flow chart
通過計算圖像中每一個灰度級m(0~255)出現(xiàn)的概率Pm以及相應(yīng)的熵Hm=-PmlgPm,確定圖像的最佳閾值。依次遍歷每一級灰度值T,分別計算目標(biāo)區(qū)域A的熵HA和背景區(qū)域B的熵HB以及圖像的總熵H(T)[21]:
(3)
式中:PA和PB分別表示目標(biāo)區(qū)域A和背景區(qū)域B中各灰度級出現(xiàn)的概率。最后總熵H(T)取最大值時所對應(yīng)的灰度值作為最佳閾值,并基于該閾值進行圖像二值化。
道路標(biāo)識線擁有規(guī)則的形狀和大小,其二值圖像應(yīng)完整獨立,而現(xiàn)有二值圖像的像素點各自獨立,因此,采用種子填充法對二值圖像進行連通區(qū)域分析[22],并濾除面積過小的噪聲區(qū)域;同時,對標(biāo)識線內(nèi)部的黑色空洞進行填充,得到互相獨立且分割完成的標(biāo)識線連通區(qū)域。
由于道路標(biāo)識線與路面噪聲點兩者的連通區(qū)域面積相差較大,需統(tǒng)計所有連通區(qū)域中小于面積閾值的連通區(qū)域并剔除。為盡可能保留標(biāo)識線區(qū)域,防止一個標(biāo)識線區(qū)域被當(dāng)成多個小區(qū)域而誤刪,在進行幾何區(qū)域分析時采用8鄰接搜索方式。為去除道路標(biāo)識線內(nèi)部的黑色孔洞,對上述處理后的標(biāo)識線二值圖像取反,進行幾何連通區(qū)域分析,除去小于面積閾值的連通區(qū)域。最后基于道路標(biāo)識線邊緣范圍及其面積閾值實現(xiàn)小區(qū)域的去除和孔洞填充。
從第1.2節(jié)中點云特征圖像的生成可知,圖像中的所有像素點均與地面點云所處的相應(yīng)格網(wǎng)相對應(yīng)。投影反變換可快速提取點云道路標(biāo)識線,而點云特征圖像受到像素大小的影響,其分辨率相對較低,且當(dāng)點云投影坐標(biāo)系方向與道路標(biāo)識線指向不一致時,得到的點云道路標(biāo)識線其邊緣呈鋸齒狀,含有大量的地面噪聲點[23]。對此,利用Otsu算法[24]對每一個標(biāo)識線點云進行強度濾波,保留強度較高的點,以此來消除道路標(biāo)識線點云的鋸齒效應(yīng),從而實現(xiàn)點云道路標(biāo)識線的精提取。
首先,將投影得到的點云的強度歸一化為0~255的灰度范圍,然后利用Ostu算法最大化類間方差與類內(nèi)方差之比,類間方差定義為[24]:
g=ω0ω1(μ0-μ1)2
(4)
式中:ω0和ω1分別為道路標(biāo)識和路面出現(xiàn)的概率;μ0和μ1是相應(yīng)的平均水平。
最后,通過遍歷每塊標(biāo)識線點云計算出使類間方差g最大時的閾值T,此時T為最優(yōu)閾值。
從道路標(biāo)識線的幾何特征和語義特征[15]來看,城市道路上單黃線、單白線、虛線、停止線、箭頭方向線、文字等道路標(biāo)識線在幾何形狀上均有相應(yīng)的標(biāo)準(zhǔn)與規(guī)范,這一約束是道路標(biāo)識線模板匹配的參考依據(jù)之一。
考慮到因標(biāo)識線點云的磨損導(dǎo)致標(biāo)識線的錯誤識別,需對標(biāo)識線點云重新聚類。在不受邊界點輪廓形狀影響的情況下,利用Alpha shape算法[25]提取每一個標(biāo)識線的邊界點,提升提取邊界點的效率,并依次統(tǒng)計其邊界框的邊長和對邊比等信息,以此作為粗分類的準(zhǔn)則,快速提取出道路邊界、車道分界線等規(guī)則道路標(biāo)記,并對剩余不規(guī)則標(biāo)識線與模板中的每一個模型點云通過平移、旋轉(zhuǎn)后進行ICP配準(zhǔn),估計目標(biāo)與每一個模型的最佳重疊率,然后獲取整體最佳重疊率。若整體最佳重疊率小于重疊閾值,則標(biāo)記為未分類道路標(biāo)記;否則,該道路標(biāo)記的類別為獲取整體最佳重疊率時的模型點云的類別。
將實驗數(shù)據(jù)中幾個典型的清晰完整的道路標(biāo)識線邊界點云保存為模型以進行配準(zhǔn),如圖3所示。通過ICP配準(zhǔn)算法對所有標(biāo)識線邊界點云與模板進行從粗到精的配準(zhǔn),并估計標(biāo)識線點云與模型的重疊率,如果最高重疊率不超過60%,則目標(biāo)被視為未識別標(biāo)識線,反之則為重疊率最高的模型類別。
圖3 模板點云圖Fig.3 Template point cloud diagram
點云道路標(biāo)識線自動提取及分類實驗是基于Visual Studio 2017 C++集成開發(fā)。實驗平臺配置為2.20 GHz的Intel(R) Core(TM) i7-10870H處理器,32 GB的隨機存取存儲器(random access memory,RAM)。
實驗數(shù)據(jù)主要采用澳大利亞某城市的復(fù)雜街區(qū)路段,如圖4所示。該點云數(shù)據(jù)主要包含點的3維坐標(biāo)信息與強度信息,全長約379 m,寬度約18 m,點云個數(shù)為79942109個。
圖4 實驗點云數(shù)據(jù)Fig.4 Experimental point cloud data
局部點云按照強度分層顯示的效果如圖5a所示。實驗數(shù)據(jù)中道路表面起伏不大,整體較為平坦,道路寬度基本一致,中間為彎曲路段,并有十字路口、交叉路口等復(fù)雜地形,路面點與道路標(biāo)識線有著明顯的強度差異,完全滿足實驗提取的需要。如圖5b所示,局部點云按照高程顯示可以看出,道路兩邊的路坎近似垂直于路面,并與路面有一定的高度差異。
圖5 點云局部渲染圖Fig.5 Point cloud local rendering map
2.2.1 實驗結(jié)果 提取的地面點云仍包含有一些欄桿或者車輛等與地面相交的部分非地面點,將地面點云格網(wǎng)化,根據(jù)格網(wǎng)內(nèi)高差大小將點云分離為路面點和非路面點云,并將路面點和非路面點分別投影到格網(wǎng)中。經(jīng)過多次實驗,當(dāng)格網(wǎng)間距為0.065 m時,提取效果最佳。
利用點云投影及柵格化處理得到點云多元特征圖像,圖6a和圖6b分別是車載LiDAR點云和強度特征圖像。由圖6a和圖6b可知,強度特征圖像很好地保留了地面的強度信息,但對離散點云進行2維投影時,不可避免地會造成一定的精度損失。利用中值濾波對強度特征圖像進行處理,極大地減少了椒鹽噪聲對于標(biāo)識線提取的影響,濾波后的效果圖如圖6c所示。
圖6 原始點云與強度特征圖像對比圖Fig.6 Comparison between original point cloud and intensity feature image
利用第1.3節(jié)中的算法對圖像上的特征線邊緣進行提取與強化,提取結(jié)果如圖7所示。
圖7 強度二值化Fig.7 Strength binarization
由圖8可知,雖然基于強度特征圖像利用邊緣檢測可以初步確定標(biāo)識線的邊緣位置,但仍有一些高強度稀疏路面噪聲點需要剔除,邊緣二值化可以較好地解決這一問題。
圖8 道路標(biāo)識線邊緣檢測局部圖Fig.8 Local image of road marking line edge detection
在二值圖像的像素點的離散性問題上,通過連通區(qū)域分析濾除面積過小的噪聲區(qū)域,同時對標(biāo)識線內(nèi)部的黑色空洞進行填充,得到互相獨立且分割完成的標(biāo)識線連通區(qū)域,結(jié)果如圖9所示。其中,圖9a為符合要求的標(biāo)識線連通區(qū)域,圖9b為所有標(biāo)識線連通區(qū)域隨機賦色后的效果。
圖9 連通區(qū)域分析與標(biāo)記局部結(jié)果圖Fig.9 Connected region analysis and marking local result graph
在強度二值化圖像中進行連通域分析后,道路標(biāo)識線基本被識別。此時將2維標(biāo)識線投影反變換,得到標(biāo)識線點云,并結(jié)合Ostu算法實現(xiàn)點云的精細化處理,最終道路標(biāo)識線分割結(jié)果如圖10所示。
圖10 標(biāo)識線點云提取效果圖Fig.10 Rendering of marking line point cloud extraction
由于提取的標(biāo)識線存在部分單一標(biāo)識線被分割為多個標(biāo)識線的現(xiàn)象,所以對標(biāo)識線點云進行歐式聚類,經(jīng)過多次實驗,聚類半徑為0.1 m更符合實際場景,利用Alpha shape對每一個聚類的標(biāo)識線進行邊界點的提取,并計算包圍盒邊長和對邊比信息,以此作為粗分類的準(zhǔn)則,快速提取出道路邊界、車道分界線等規(guī)則道路標(biāo)記,剩下不規(guī)則標(biāo)識線通過模板匹配進一步分類,局部分類效果圖如圖11所示。
圖11 標(biāo)識線局部效果圖Fig.11 Partial effect picture of marking line
實驗數(shù)據(jù)中的標(biāo)識線基本都被正確提取和分類,沒有出現(xiàn)大面積的噪聲點和部分標(biāo)識線漏提的現(xiàn)象。但從圖11來看,仍有一些標(biāo)識線類別被誤判,圖11a和圖11c中的標(biāo)識線由于間隔距離太近,多個標(biāo)識線被識別為同一個標(biāo)識線點云,導(dǎo)致標(biāo)識線類別的誤判;圖11b中的標(biāo)識線一方面因為標(biāo)識線局部被磨損,導(dǎo)致部分標(biāo)識線點云的強度值較低,被視為地面點或者噪聲點進行了剔除,使得被提取的剩余的標(biāo)識線被識別為其它類別的標(biāo)識線;另一方面則是由于采樣點的稀疏,使得標(biāo)識線在進行幾何連通時,同一標(biāo)識線被識別為多個標(biāo)識線。
2.2.2 精度分析 為了進一步對道路標(biāo)識線提取的結(jié)果進行評價,本文中采用人工判讀的方式從標(biāo)識線提取效率中計數(shù)每一類標(biāo)識線的真正數(shù)(true positive,TP)、假負數(shù)(false negative,FN)、假正數(shù)(false positive,FP)。采用準(zhǔn)確率指標(biāo)(precision)、召回率指標(biāo)(recall)以及綜合評價指標(biāo)F對道路標(biāo)識線提取結(jié)果進行精度評價,結(jié)果如表1所示。
表1 標(biāo)識線提取精度Table 1 Marking line extraction precision
由表1可知,基于多元點云特征的道路標(biāo)識線提取算法所提出的每一類標(biāo)識線的準(zhǔn)確率均超過96%,召回率超過91%,綜合評價指標(biāo)超過94%,表明該算法對于城市道路上絕大部分的道路標(biāo)識線進行提取時,能夠取得較好的結(jié)果和精度。
為進一步分析本文中標(biāo)識線分類結(jié)果,與YU等人[10]提及的道路標(biāo)識線提取算法進行對比,結(jié)果如表2所示。由表2可知,基于多元點云特征的道路標(biāo)識線提取算法對虛線和斑馬線標(biāo)識線的分類精度與YU等人[10]所提出的算法相近,但算法對單向轉(zhuǎn)向箭頭的分類效果相比于參考文獻[10]中的方法取得了較大的提升,這是因為參考文獻[10]中的方法在進行標(biāo)識線細分類時所構(gòu)建的空間語義結(jié)構(gòu)較為單一,且只適用于線狀標(biāo)識線,但基于ICP配準(zhǔn)進行模板匹配的方法不僅有一定的容錯度,而且對存在結(jié)構(gòu)差異的目標(biāo)識別效果也更好。
表2 不同方法標(biāo)識線分類對比精度Table 2 Classification and comparison accuracy of marking lines of different methods
針對如何從車載LiDAR點云中提取標(biāo)識線的問題,綜合利用道路標(biāo)識線的強度、幾何和語義等特征,設(shè)計了圖像與點云相結(jié)合的處理算法,整體提升了道路各類標(biāo)識線的提取精度,對城市數(shù)字化建設(shè)具有一定的參考意義。對于道路標(biāo)識線的提取,結(jié)合點云的多元特征信息,能夠更好地輔助標(biāo)識線的提取,這對后續(xù)無人駕駛的研究有著推動作用;對于道路標(biāo)識線的分類問題,基于ICP配準(zhǔn)進行模板匹配的方法不僅有一定的容錯度,對存在結(jié)構(gòu)差異的目標(biāo)識別效果也更好。結(jié)果表明,提取的短虛線、斑馬線、箭頭以及長虛線的準(zhǔn)確率均高于96%,召回率均高于91%,精度準(zhǔn)均高于89%,綜合評價指標(biāo)均高于94%。盡管通過實驗和綜合評估證明了所提出方法的可行性和優(yōu)越性,但在道路標(biāo)識線的自動提取方面仍有很大的改進空間。未來,將進一步研究深度學(xué)習(xí)在道路標(biāo)識線提取上的應(yīng)用。