靳慧玲,趙婧文,吳杭彬
(1.上海市測繪院,上海 200063;2.自然資源部超大城市自然資源時空大數(shù)據(jù)分析應(yīng)用重點實驗室,上海 200063;3.同濟大學(xué) 測繪與地理信息學(xué)院,上海 200092)
城市道路信息作為國家基礎(chǔ)地理信息的重要組成部分[1],為交通感知[2]、車輛行為分析[3]、地圖數(shù)據(jù)更新[4]等方面提供可靠的依據(jù)。車道級道路包含精細(xì)化的道路要素,對高精度地圖構(gòu)建有著重要的意義[5]。傳統(tǒng)的道路信息獲取是基于高分辨率圖像數(shù)據(jù)[6]、高精度點云數(shù)據(jù)[7]和專業(yè)高精度的全球?qū)Ш叫l(wèi)星系統(tǒng)(global navigation satellite system,GNSS)數(shù)據(jù)[8]。這些方式可以確保所提取道路信息的質(zhì)量,但存在數(shù)據(jù)采集成本高、更新周期長等問題。而眾包軌跡數(shù)據(jù)具有數(shù)據(jù)量大、時效性強、覆蓋面廣、成本低等優(yōu)點,逐漸成為道路信息獲取的一種重要數(shù)據(jù)源。
目前,學(xué)者們基于GNSS軌跡數(shù)據(jù)進行了很多道路相關(guān)研究。傅琛等[9]利用與機動車軌跡同步采集的圖像對行駛場景進行分類,實現(xiàn)輔助城市復(fù)雜道路環(huán)境下的地圖匹配。王梓豪等[10]基于車載GNSS 軌跡數(shù)據(jù),通過分析車輛的掉頭行為提出了一種道路U-Turn結(jié)構(gòu)信息獲取方法。陸川偉等[11]基于柵格化后的軌跡數(shù)據(jù),采用生成式對抗網(wǎng)絡(luò)提取單向道路。還有一些研究嘗試基于軌跡數(shù)據(jù)提取更精細(xì)化的車道級道路信息,而車道級道路信息提取需要以道路中心線為基礎(chǔ)。Uduwaragoda等[12]從現(xiàn)有的只包含道路中心線的道路圖開始,基于GNSS軌跡采用核密度估計方法生成包含車道中心線的改進地圖。Fan等[13]利用已有地圖的道路中心線,基于加權(quán)約束高斯混合模型和隱馬爾可夫模型建立車道提取模型。然而,基于已有地圖的道路中心線提取車道信息會影響道路信息發(fā)生變化的區(qū)域的結(jié)果。因此,部分研究基于軌跡自身提取的道路中心線進行車道信息提取。唐爐亮等[14]采用軌跡聚類方法提取道路中心線,并基于高斯混合模型提取車道數(shù)量。Arman等[15]基于手機定位軌跡數(shù)據(jù),利用Frechet距離構(gòu)建道路中心線,并基于高斯混合模型提取了高速道路的車道信息,然而對于普通道路還需要解決手機定位數(shù)據(jù)中包含除機動車以外其他交通方式軌跡的問題。Shu等[16]首先對軌跡數(shù)據(jù)進行最小二乘擬合提取道路中心線,并基于約束高斯混合模型實現(xiàn)車道級道路信息提取。綜上所述,車道級道路信息提取需要以道路中心線作為基礎(chǔ),然而現(xiàn)有研究大都基于已有地圖的中心線,或通過聚類方法簡單擬合道路中心線,這會影響后續(xù)車道信息提取與更新的效率和精度。因此,本文基于手機導(dǎo)航軌跡數(shù)據(jù),提出了一種車道信息自動提取的方法。該方法通過分析機動車軌跡的位置分布,精細(xì)擬合道路中心線,并基于擬合的道路中心線和高斯混合模型準(zhǔn)確提取車道信息。
本文提出了一種利用導(dǎo)航軌跡數(shù)據(jù)自動提取車道信息的方法,如圖1所示。考慮到道路不同通行方向的車道信息是不同的,并且數(shù)據(jù)中存在噪聲,因此首先需根據(jù)機動車的車行方向?qū)壽E數(shù)據(jù)進行劃分,并實現(xiàn)數(shù)據(jù)清洗。然后,基于軌跡點在道路上的位置分布擬合每個車行方向的道路中心線。最后,基于高斯混合模型和擬合的道路中心線,模擬軌跡點在車道上的分布,提取不同方向道路的車道數(shù)量和車道中心線。
圖1 基于機動車軌跡的車道信息提取流程圖
本文基于自適應(yīng)K-means聚類的方法來區(qū)分不同方向的軌跡點。對每個軌跡點Pi的方位角θi進行K-means++聚類,得到不同方向的簇。該算法的主要流程如表1所示,圖2(a)和圖2 (b)展示了軌跡方向劃分結(jié)果,不同顏色代表不同的車行方向。
表1 基于自適應(yīng)K-means++聚類的軌跡方向劃分算法
圖2 軌跡方向劃分與清洗結(jié)果
實際數(shù)據(jù)處理中,每個方向上的軌跡點在該方向道路的兩側(cè)會存在一些低密度的漂移點,需對這些漂移點進行清洗。對方向劃分后的軌跡,計算每個方向各個軌跡點的密度。以軌跡點鄰域內(nèi)R1(半徑為r1)包含的點數(shù)作為該點的密度(D),并將密度低于某一閾值的軌跡點作為噪聲點進行過濾。數(shù)據(jù)清洗結(jié)果如圖2所示,經(jīng)過數(shù)據(jù)清洗,可以過濾掉低密度的漂移點。
本文基于軌跡點在道路上的位置分布提取車行方向道路中心線。通常,靠近中心線的軌跡點(定義為核心點)具有以下分布于特點:在核心點的鄰域R2范圍內(nèi)(鄰域半徑為r2,接近道路寬度的一半),核心點到其行駛方向左側(cè)最遠(yuǎn)點和右側(cè)最遠(yuǎn)點的距離近似相等。用F值表示核心點的分布特點,具體的計算方法如圖3所示。首先以目標(biāo)點Pi為坐標(biāo)原點,目標(biāo)點的方位角的方向作為y軸,建立直角坐標(biāo)系xPiy,并基于式(1)計算鄰域內(nèi)其他點在坐標(biāo)系xPiy中的相對坐標(biāo)(x′,y′)。
圖3 軌跡點的F值計算
(1)
式中:θ表示目標(biāo)點的方位角;(x0,y0)是坐標(biāo)原點的真實坐標(biāo);(x,y)是鄰域內(nèi)其他點的真實坐標(biāo)。
對于每個目標(biāo)點Pi,其鄰域內(nèi)其他軌跡點在xPiy的x坐標(biāo)值的集合為F_list,因此Pi到其行駛方向左側(cè)最遠(yuǎn)點的和右側(cè)最遠(yuǎn)點的距離差F值可表示為F_list的最大值和最小值的和,如式(2)所示。最小值和最大值是除異常值外的最小和最大值,其中異常值采用箱型圖分析方法來判斷。F值越靠近中心點越接近0,因此F值小于某一閾值的軌跡點即為核心點。
Fi=xmin+xmax
(2)
車行方向道路中心線提取的具體流程如圖4所示。首先,進行軌跡方向劃分;其次,對每個車行方向軌跡計算F值并提取核心點,在核心點中選取一個初始點,將初始點鄰域R內(nèi)點的中心位置作為第一個道路中心線節(jié)點,并將鄰域內(nèi)的點標(biāo)記為“已判斷”;得到了初始中心線節(jié)點后,選取鄰域外距C1最近的核心點作為下一個初始點,并將該初始點鄰域內(nèi)所有未判斷點的中心位置作為下一個中心線節(jié)點。重復(fù)此步驟,可以得到整個路段的中心線節(jié)點。
圖4 車行方向道路中心線提取
1)重疊區(qū)域軌跡點過濾。由于軌跡點的數(shù)據(jù)精度原因,即使進行了數(shù)據(jù)清洗,一條道路上兩個方向的軌跡仍可能存在重疊區(qū)域(圖5(a)),這會影響后續(xù)車道信息提取,因此首先需要去除掉這種重疊區(qū)域的軌跡點。本文采取基于核密度估計的方法,對重疊區(qū)域的軌跡進行過濾。
圖5 基于核密度分布的重疊區(qū)域軌跡點去除
對于雙向道路,以每個方向的道路中心線作為坐標(biāo)縱軸建立直角坐標(biāo)系,計算每個軌跡點在對應(yīng)的坐標(biāo)系中的橫坐標(biāo)值。根據(jù)每個方向橫坐標(biāo)值集合的分布計算核密度,可以得到兩個核密度圖;并基于兩個方向中心線之間的距離,合并核密度圖,如圖5(c)所示。如果存在重疊區(qū)域,兩個核密度值會相交于一點(圖中的紅點),計算交點到每個方向路段的中心線的距離,以此為標(biāo)準(zhǔn)丟棄距道路中心線兩側(cè)距離較大的軌跡點,得到如圖5(b)所示,去除了重疊區(qū)域的軌跡。
2)高斯混合模型原理。本文使用高斯混合模型進行車道信息提取,并根據(jù)軌跡點在道路上的分布特性,添加以下規(guī)則進行約束。
規(guī)則1:同一條道路上,車道寬度通常是相等的,即車道中心線之間的間隔相等。
規(guī)則2:同一條道不同車道上的軌跡行駛方式相似,即不同車道共享同一個方差。
添加以上約束后得到的約束高斯模型如式(3)所示,使用EM方法對模型參數(shù)進行求解。
(3)
式中:wj表示每個高斯成分對應(yīng)的權(quán)重;Δμ為車道寬度;μ0為最左邊車道中心線的位置;σ2為方差;k是車道數(shù)量。
M步:計算新的模型參數(shù)(式(4)~式(7))。
(4)
(5)
(6)
(7)
式中:
通過EM方法可以計算給定的k值對應(yīng)的模型參數(shù),接下來需計算不同車道數(shù)量對應(yīng)的代價函數(shù)值,最小代價函數(shù)值對應(yīng)的k值即為最優(yōu)車道數(shù)量。代價函數(shù)定義見文獻[17],其中R(θk)表示正則化項。根據(jù)我國《城市道路交叉口規(guī)劃規(guī)范(GB 50647)》標(biāo)準(zhǔn)[18],車道寬度值一般在2.8~3.75 m之間,將該寬度范圍放寬至2.6~4 m,并以3.5 m作為合理的車道寬度的中值,因此本文將R(θk)表示為式(8)。
(8)
式中:D為道路寬度;Δμ為該模型下車道寬度的估計值;k為車道數(shù)量;t1、t2、t3為正數(shù)。
3)車道信息提取??紤]到一段道路的車道數(shù)量并不是一直保持一致的,因此本文采用分段擬合的方法提取車道信息。該方法的思想將路段沿著道路中心線以一定間隔進行分段,對落入每個分段內(nèi)的軌跡進行分析。如圖6所示,以道路中心線節(jié)點為坐標(biāo)原點,道路中心線方向作為坐標(biāo)縱軸的方向建立直角坐標(biāo)系xOy,計算目標(biāo)點在以道路中心線為縱軸的直角坐標(biāo)系中的相對坐標(biāo)(x′,y′)。目標(biāo)點為子路段內(nèi)的所有軌跡點,將所有目標(biāo)點在xOy坐標(biāo)系下的橫坐標(biāo)值(x′)的集合作為高斯混合模型的輸入值,采用EM方法對模型參數(shù)進行求解,并基于代價函數(shù)選擇出最優(yōu)車道數(shù)量k。
圖6 分段車道信息提取
(9)
式中:α表示道路中心線的方位角;(dx,dy)是子路段內(nèi)車道中心線節(jié)點在直角坐標(biāo)系xOy中的相對坐標(biāo);dy為0,dx為高斯混合模型參數(shù)μj;(x1,y1)是原點坐標(biāo)即距離目標(biāo)點最近的道路中心線節(jié)點真實坐標(biāo)。
實驗區(qū)域選擇同濟大學(xué)四平路校區(qū)周邊,重點選擇了28條雙向道路(56個路段)使用某導(dǎo)航地圖軟件輸出的導(dǎo)航軌跡,時間范圍是2017年12月11日至2017年12月15日。為驗證本文方法的精度,采用上海市測繪院全要素地形數(shù)據(jù)、遙感影像、公開地圖(open street map,OSM)和百度街景地圖作為真實參考數(shù)據(jù)。
考慮到實驗采用的導(dǎo)航軌跡數(shù)據(jù)中混合著多種交通方式的軌跡,不適用于直接提取道路信息,因此本文首先基于文獻[19]的方法對導(dǎo)航軌跡數(shù)據(jù)進行交通方式分類,并將其中的機動車軌跡用于車道信息的提取。本文將軌跡方向劃分算法中的N值設(shè)置為8,minAzi設(shè)置為30°。數(shù)據(jù)清洗中鄰域大小r1設(shè)置為5 m,密度閾值設(shè)置為整個路段軌跡點的密度的第5百分位值。核心點提取的閾值設(shè)置為該方向軌跡點F值的第5百分位值。車道信息提取方法中車道數(shù)量的取值設(shè)在2至5,代價函數(shù)中的λ為1,t1、t2和t3分別為0.1、1和50。
基于分類得到的機動車軌跡數(shù)據(jù),在實驗區(qū)域內(nèi)選擇部分路段進行車行方向道路中心線提取實驗,結(jié)果如圖7所示。可以看出,本文方法提取的道路中心線與OSM路網(wǎng)的道路中心線較為匹配,可以準(zhǔn)確地反映出道路的不同車行方向,在道路彎曲的路段也能準(zhǔn)確地表達(dá)車行方向信息。
圖7 車行方向道路中心線提取結(jié)果
考慮到道路可能會發(fā)生車道數(shù)量的變化,因此對56個路段分為3個位置(入口、中間和出口位置)進行驗證,共有168個子路段的車道數(shù)量需要判定。車道數(shù)量提取結(jié)果如表2所示,其中車道數(shù)量真值來自遙感影像數(shù)據(jù)和百度街景地圖,預(yù)測值為本文方法提取的車道數(shù)量。
表2 實驗區(qū)域內(nèi)的車道數(shù)量提取結(jié)果
對168個位置的車道數(shù)量進行評估,利用本文方法識別出134處與真實數(shù)據(jù)相符,正確率為79.8%。本文的方法對車道數(shù)量未發(fā)生變化的路段以及車道數(shù)量較少的路段(雙向四車道)提取效果較好,部分車道數(shù)量變化的路段也可以準(zhǔn)確識別。綜上所述,本文方法可以準(zhǔn)確判斷大部分路段的車道數(shù)量。
1)車道中心線提取可視化效果。根據(jù)每個路段的最優(yōu)車道數(shù)量對應(yīng)的高斯混合模型參數(shù)和道路中心線節(jié)點反算出每個分段的各個車道中心線節(jié)點,連接車道中心線節(jié)點得到最終的車道中心線。在實驗區(qū)域內(nèi)隨機選取4條道路(8個路段)評估車道中心線的提取結(jié)果。將4條道路的車道中心線提取結(jié)果與真實的車道中心線進行對比,真實的車道中心線來自上海市測繪院的全要素地形數(shù)據(jù),結(jié)果如圖8所示。從圖8可以看出,本文方法提取的車道中心線基本上與實際的車道中心線位置一致,即使在車道數(shù)量發(fā)生變化的路段,也可以較為準(zhǔn)確地反映出實際的車道分布情況。
圖8 車道中心線提取結(jié)果
2)車道中心線精度評估。對提取的車道中心線結(jié)果進行精度評價,包括車道寬度精度以及車道中心線的位置精度。
車道寬度精度Wg的計算方法如式(10)所示。對路段的每個車道分別計算入口、中間和出口處的Wg,并將該路段的車道寬度精度均值作為最終的車道寬度提取精度(Wg_avg)。其中,Dg、Dr的定義如圖9所示,分別表示車道寬度預(yù)測值和車道寬度真值。
圖9 車道中心線評價方法
Wg=|Dg-Dr|
(10)
車道線位置精度首先需計算每個車道中心線的位置精度Tg[20],具體方法如式(11)所示,將該路段所有車道的中心線位置精度的均值作為最終該路段的車道中心線位置精度(Tg_avg)。
Tg=|Ag/Lr|
(11)
式中:Ag為圖9誤差區(qū)域的面積;Lr為真實車道中心線的長度。
8個路段車道寬度精度以及車道中心線位置精度評價結(jié)果如表3所示。結(jié)果表明,實驗路段中,大部分路段車道中心線的位置精度接近1 m,車道寬度精度優(yōu)于0.5 m。其中部分路段位置精度相對較低(如四平路(國順路→國權(quán)路)),可能是由于軌跡數(shù)據(jù)定位精度較差及某個車道車流較少等原因造成的。綜上所述,本文的方法可以提取較為準(zhǔn)確的車道信息,為車道級高精度地圖的構(gòu)建提供重要的補充。
表3 實驗區(qū)域內(nèi)部分道路的車道中心線提取結(jié)果 m
本文提出了一種利用導(dǎo)航軌跡數(shù)據(jù)的車道信息自動提取方法,以準(zhǔn)確獲取車道數(shù)量和車道中心線。該方法首先利用自適應(yīng)K-means聚類方法實現(xiàn)導(dǎo)航軌跡的方向劃分,并基于軌跡的密度分布實現(xiàn)數(shù)據(jù)清洗;其次基于機動車軌跡在道路上的位置分布擬合車行方向道路中心線;最后采用約束高斯混合模型對機動車軌跡分布進行建模,提取車道數(shù)量和車道中心線。基于上海市的導(dǎo)航軌跡數(shù)據(jù),本文選擇了56個路段驗證車道信息提取效果,結(jié)果表明,車道數(shù)量提取的正確率為79.8%。對其中8個路段驗證車道中心線的提取精度,結(jié)果顯示,車道中心線的位置精度接近1 m,車道寬度精度大都優(yōu)于0.5 m。綜上所述,采用本文方法提取的車道信息較為準(zhǔn)確,可以為車道級高精度地圖的構(gòu)建提供重要的補充。然而,由于軌跡數(shù)據(jù)中缺乏高程信息,該方法不適用于高架等存在縱向道路重疊的區(qū)域,后續(xù)將考慮使用包含高程的數(shù)據(jù)進行擴展研究。