高 婷,黃 穎,郭明強(qiáng)
(1.中國(guó)地質(zhì)調(diào)查局西安地質(zhì)調(diào)查中心,陜西 西安 710054;2.武漢中地?cái)?shù)碼科技有限公司,湖北 武漢 430074;3.中國(guó)地質(zhì)大學(xué)(武漢) 地理與信息工程學(xué)院,湖北 武漢 430074)
近年來(lái),隨著移動(dòng)智能設(shè)備和GIS技術(shù)的發(fā)展,關(guān)于GPS道路提取的相關(guān)研究也受到了學(xué)者們的關(guān)注[1]。通過(guò)GPS軌跡數(shù)據(jù)提取路網(wǎng)數(shù)據(jù)是一個(gè)非常復(fù)雜的問(wèn)題,需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,但是也不能完全除去數(shù)據(jù)的誤差,目前還沒(méi)有很實(shí)用的一套基于單向步行數(shù)據(jù)的路網(wǎng)提取方法,但是很多研究者還是取得了一定的研究進(jìn)展和成果。
文獻(xiàn)[2-11]提出多種道路提取方法,無(wú)論通過(guò)聚類算法提取道路還是改進(jìn)B樣條曲線算法提取或者圖像處理等方法,大多都是基于大量的密集GPS點(diǎn)來(lái)提取道路的,并不能適用于野外地質(zhì)工作者的GPS道路軌跡數(shù)據(jù),因?yàn)槠滠壽E數(shù)據(jù)的特點(diǎn)僅僅走過(guò)一趟小路獲取的軌跡數(shù)據(jù)(本文中稱此類數(shù)據(jù)為單向GPS軌跡數(shù)據(jù))。本研究提出用野外地質(zhì)工作者的步行GPS軌跡數(shù)據(jù)作為數(shù)據(jù)源,從中提取有用信息,加以處理和利用,識(shí)別出電子地圖中沒(méi)有的野外小路。但是,現(xiàn)有方法大多都是基于一條道路多次行走產(chǎn)生大量密集的GPS點(diǎn)來(lái)提取道路的,并不能適用于野外地質(zhì)工作者的GPS道路軌跡數(shù)據(jù),因?yàn)槠滠壽E數(shù)據(jù)的特點(diǎn)往往是單向數(shù)據(jù),本文將會(huì)針對(duì)數(shù)據(jù)集的這個(gè)特點(diǎn),提出一種新的道路提取方法。
本文提出的方法分為2步,第1步是將軌跡點(diǎn)數(shù)據(jù)分段分割,第2步是將分割的軌跡點(diǎn)數(shù)據(jù)通過(guò)BP神經(jīng)網(wǎng)絡(luò)算法進(jìn)行擬合。
神經(jīng)網(wǎng)絡(luò)算法直接擬合直線道路效果比較理想,但是對(duì)于螺旋式的軌跡,神經(jīng)網(wǎng)絡(luò)很難擬合出最佳效果,為了解決這個(gè)問(wèn)題,本文提出將軌跡數(shù)據(jù)進(jìn)行分割分段的方法,軌跡點(diǎn)分割結(jié)果作為螺旋式軌跡被分割為多個(gè)軌跡數(shù)據(jù)集,每一個(gè)軌跡數(shù)據(jù)集都用一個(gè)神經(jīng)網(wǎng)絡(luò)去訓(xùn)練和預(yù)測(cè),從而得出相應(yīng)的軌跡線路。Jae-gil Lee等通過(guò)最小描述長(zhǎng)度來(lái)分割軌跡數(shù)據(jù)的[12],這種方法不能很好地找出方向特征變化比較大的點(diǎn)數(shù)據(jù),袁冠等通過(guò)軌跡的轉(zhuǎn)角大小進(jìn)行軌跡分割[13],其中軌跡的轉(zhuǎn)角指的是相鄰的分段軌跡間的轉(zhuǎn)向角。步行軌跡相鄰坐標(biāo)點(diǎn)之間的方向特征變化較大,與車輛采集的數(shù)據(jù)有很大不同,所以軌跡分割分段方法可以通過(guò)軌跡間的距離大小和轉(zhuǎn)角大小來(lái)確定分割的依據(jù)。
圖1 軌跡轉(zhuǎn)角示意圖
軌跡轉(zhuǎn)角如圖1所示:假設(shè)軌跡方向是沿著A-B-C,A,B,C構(gòu)成三角形,AB的邊長(zhǎng)為a,BC的邊長(zhǎng)為b,AC的邊長(zhǎng)為c,α和β角是互補(bǔ)的兩個(gè)角,∠CBD就是軌跡的方向轉(zhuǎn)角,
(1)
由于相鄰軌跡點(diǎn)之間轉(zhuǎn)角變化并不明顯,本文采用的是每個(gè)軌跡點(diǎn)的轉(zhuǎn)角計(jì)算是與其前后相鄰的第10個(gè)點(diǎn)進(jìn)行的。道路分段分割的好壞對(duì)于道路線的擬合是一個(gè)非常重要的因素,為了避免方向變化太快而導(dǎo)致軌跡分段過(guò)多的情況和分段分不出來(lái)的情況,本文軌跡分段是采用轉(zhuǎn)角閾值和距離閾值二者一起決定,轉(zhuǎn)角閾值和距離閾值都是通過(guò)實(shí)驗(yàn)來(lái)確定。軌跡數(shù)據(jù)分割的過(guò)程如下:
1)遍歷由軌跡位置數(shù)據(jù)組成的點(diǎn)集合;
2)獲取每一個(gè)軌跡點(diǎn)的轉(zhuǎn)角大小β,以及每?jī)蓚€(gè)相鄰軌跡點(diǎn)之間的距離大小d;
3)根據(jù)實(shí)驗(yàn)確定的距離閾值φ和轉(zhuǎn)角閾值δ與實(shí)際距離閾值和轉(zhuǎn)角閾值大小進(jìn)行判斷,若d>φ且β>δ,說(shuō)明該點(diǎn)為軌跡分割點(diǎn),將軌跡數(shù)據(jù)分為不同的數(shù)據(jù)集合。
使用該算法進(jìn)行軌跡分割前后的效果對(duì)比如圖2和圖3所示。
圖2 軌跡數(shù)據(jù)分割前
圖3 軌跡數(shù)據(jù)分割后
道路軌跡形狀具有復(fù)雜性的,如螺旋形、直線形、拱形等,通過(guò)軌跡分割來(lái)將軌跡分段,得到的軌跡中大多都是呈現(xiàn)出直線形狀,軌跡點(diǎn)數(shù)據(jù)雜亂不均勻地分布在道路上。為了將軌跡數(shù)據(jù)擬合成規(guī)則的直線道路網(wǎng),本文將BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型應(yīng)用到GPS軌跡數(shù)據(jù)坐標(biāo)值的預(yù)測(cè),來(lái)解決軌跡道路線的擬合問(wèn)題。
BP神經(jīng)網(wǎng)絡(luò)(Back Propagationg Neural Network, BPNN)是和生物神經(jīng)網(wǎng)絡(luò)具有類似功能的數(shù)學(xué)模型[14],圖4為BP神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)。
圖4 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
圖4中,X1,X2,…,Xn代表BP神經(jīng)網(wǎng)絡(luò)的輸入值,Y1,Y2,…,Ym代表預(yù)測(cè)值,wij和vjk為網(wǎng)絡(luò)的權(quán)值。
BP網(wǎng)絡(luò)擬合軌跡道路的算法過(guò)程包括樣本預(yù)處理、訓(xùn)練和預(yù)測(cè)結(jié)果的處理[15]。本文將數(shù)據(jù)歸一化到[-1,1]范圍內(nèi),
(2)
圖5 BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練流程
BP模型的訓(xùn)練包括由網(wǎng)絡(luò)信號(hào)的前向傳播與誤差的反向傳播兩個(gè)過(guò)程[16],工作流程如圖5所示。本文的BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練過(guò)程如下:
1)對(duì)網(wǎng)絡(luò)模型參數(shù)和數(shù)據(jù)進(jìn)行初始化。參數(shù)初始化指的是初始權(quán)值和閾值,初始化類型是高斯分布,歸一化-1~1之間。初始化數(shù)據(jù)指的是對(duì)軌跡坐標(biāo)數(shù)據(jù)集進(jìn)行歸一化并將其作為訓(xùn)練數(shù)據(jù)。
2)計(jì)算隱含層
(3)
本文所選的激活函數(shù)
(4)
3)計(jì)算輸出層
(5)
4)進(jìn)行誤差計(jì)算
(6)
5)進(jìn)行權(quán)值更新
(7)
vjk=vjk+ηHjek.
(8)
式中:η為學(xué)習(xí)速率。
6)對(duì)閾值a和b進(jìn)行更新
(9)
bk=bk+ek.
(10)
7)逐次迭代,完成模型的訓(xùn)練。
本文開(kāi)發(fā)了GPS數(shù)據(jù)采集APP軟件,并對(duì)GPS數(shù)據(jù)進(jìn)行預(yù)處理操作,然后利用本文提出的方法從GPS軌跡中提取有用的道路網(wǎng),選擇中國(guó)地質(zhì)大學(xué)西區(qū)作為實(shí)驗(yàn)地點(diǎn)進(jìn)行GPS軌跡的道路提取實(shí)驗(yàn),驗(yàn)證該算法的準(zhǔn)確性和有效性。
本實(shí)驗(yàn)的硬件環(huán)境為:64位Windows 10操作系統(tǒng),Intel Core I7 CPU,8.00GB內(nèi)存,紅米5安卓手機(jī)。方法使用Eclipse、Python、ArcGIS Desktop 10.2進(jìn)行實(shí)現(xiàn)。
本文GPS道路提取實(shí)驗(yàn)數(shù)據(jù)選取在中國(guó)地質(zhì)大學(xué)西區(qū)步行采集的GPS數(shù)據(jù)集,采集樣本的頻率是每秒一次,數(shù)據(jù)量為5 000個(gè)坐標(biāo)點(diǎn),屬性信息包括經(jīng)度、緯度、速度、方向、時(shí)間等。利用本文提出的BP神經(jīng)網(wǎng)絡(luò)擬合GPS道路的方法,對(duì)GPS軌跡道路進(jìn)行擬合處理,根據(jù)提取的道路的編號(hào)合并每一段軌跡道路,并在ArcGIS Desktop和百度地圖中分別進(jìn)行可視化顯示。
本文以中國(guó)地質(zhì)大學(xué)西區(qū)為實(shí)驗(yàn)區(qū)域,從步行GPS軌跡數(shù)據(jù)中提取出道路,并將路網(wǎng)信息導(dǎo)入ArcGIS Desktop,用矢量化工具將其轉(zhuǎn)化為線狀矢量文件,在ArcGIS中可視化,如圖6所示。
圖6 基于Arcgis Desktop的軌跡數(shù)據(jù)可視化
為了驗(yàn)證實(shí)驗(yàn)結(jié)果,本文通過(guò)百度地圖API開(kāi)發(fā)一個(gè)Web地圖可視化工具,將提取出的路網(wǎng)信息顯示在百度地圖上,與百度地圖的路網(wǎng)進(jìn)行比較,疊加效果如圖7所示。
圖7 基于百度地圖的軌跡數(shù)據(jù)可視化
觀察百度地圖和本實(shí)驗(yàn)提取的路網(wǎng)對(duì)比圖可以發(fā)現(xiàn),本實(shí)驗(yàn)提取的路網(wǎng)與百度地圖現(xiàn)有的路網(wǎng)基本上一致,提取的道路基本上能與百度地圖的路網(wǎng)重合,如果在野外的話,還可以補(bǔ)充百度地圖缺少的小路,這部分小路的缺失可能是因?yàn)榘俣鹊貓D更新不及時(shí),或者因突出整體特征原因而忽略部分小路所致。野外地質(zhì)工作者在野外步行的軌跡一般都是百度地圖上所缺少的鄉(xiāng)野小路或者山區(qū)小路,本實(shí)驗(yàn)方法提取的小路路網(wǎng)信息可以彌補(bǔ)百度地圖無(wú)法獲取到野外工作區(qū)域路網(wǎng)信息的問(wèn)題。
為了彌補(bǔ)傳統(tǒng)的依靠管理組織、法律、經(jīng)濟(jì)、教育等進(jìn)行對(duì)野外地質(zhì)工作安全管理工作的不足,特別是針對(duì)野外地質(zhì)工作者發(fā)生墜落事故及營(yíng)救路線制定問(wèn)題,開(kāi)展了面向野外地質(zhì)工作者的行走軌跡提取方法研究,以解決電子地圖中不能完整顯示野外道路的問(wèn)題。針對(duì)本文提出的方法進(jìn)行了實(shí)驗(yàn)測(cè)試,結(jié)果表明可以將該方法用于野外地質(zhì)工作者的墜落事故應(yīng)急救援或者工作路線查閱的場(chǎng)景中,為野外地質(zhì)調(diào)查工作安全保障系統(tǒng)開(kāi)發(fā)提供了方法和技術(shù)支撐。