張壽選
(福建省基礎(chǔ)地理信息中心,福建 福州 350003)
國家測繪地理信息局2013年啟動(dòng)國家、省、市節(jié)點(diǎn)同構(gòu)試點(diǎn),旨在通過節(jié)點(diǎn)間的基礎(chǔ)設(shè)施與服務(wù)平臺(tái)軟件同構(gòu)與數(shù)據(jù)融合,實(shí)現(xiàn)更深層次分布式信息資源集成與協(xié)同服務(wù),為未來基于云架構(gòu)的分布式服務(wù)資源動(dòng)態(tài)調(diào)度奠定基礎(chǔ)。數(shù)據(jù)融合的目標(biāo)是按照現(xiàn)勢性優(yōu)、精度高、數(shù)據(jù)全的原則,形成通用性強(qiáng)、精度優(yōu)、覆蓋廣的“天地圖·福建”的數(shù)據(jù)源,解決國家、省、市、縣的數(shù)據(jù)模型、現(xiàn)勢性、精度等不一致的問題,保證數(shù)據(jù)的權(quán)威性。矢量數(shù)據(jù)融合對(duì)象包括水系、交通、居民地、境界、綠地以及地名、地址與興趣點(diǎn)等。
福建省2013年參加國家主節(jié)點(diǎn)數(shù)據(jù)與省級(jí)節(jié)點(diǎn)數(shù)據(jù)融合試點(diǎn),之后每年均開展1次數(shù)據(jù)融合工作,融合成果除提交國家局外,還作為“天地圖·福建”的主要數(shù)據(jù)源。境界、水系、綠地、居民地等數(shù)據(jù)主要采用省級(jí)中比例尺和市縣大比例尺的數(shù)據(jù),融合的主要工作是數(shù)據(jù)替換和協(xié)調(diào),處理工作量相對(duì)較小。道路數(shù)據(jù)融合時(shí),需要對(duì)國家、省、市、縣的數(shù)據(jù)進(jìn)行融合,同時(shí)參考專業(yè)部門提供的專題數(shù)據(jù),多源數(shù)據(jù)的數(shù)據(jù)模型不同,除幾何類型和圖形差異外,還存在屬性不一致問題,人工處理耗時(shí)費(fèi)力。為提高數(shù)據(jù)融合的效率,急需能夠快速、準(zhǔn)確的對(duì)多源、多尺度的道路數(shù)據(jù)進(jìn)行變化發(fā)現(xiàn)的工具。
在引入空間目標(biāo)匹配之前,多源道路數(shù)據(jù)變化要素提取主要使用緩沖區(qū)和擦除等空間分析工具完成。主要技術(shù)流程如圖1所示。
圖1 道路數(shù)據(jù)融合流程Fig.1 Flow chart of road data fusion
省市節(jié)點(diǎn)道路數(shù)據(jù)的現(xiàn)勢性優(yōu)于國家主節(jié)點(diǎn)道路數(shù)據(jù)的現(xiàn)勢性。國家主節(jié)點(diǎn)導(dǎo)航道路數(shù)據(jù)、省市節(jié)點(diǎn)道路數(shù)據(jù)分別生成緩沖區(qū),然后使用主節(jié)點(diǎn)緩沖區(qū)擦除省市節(jié)點(diǎn)道路數(shù)據(jù),剩余道路為省市節(jié)點(diǎn)相較于主節(jié)點(diǎn)的增量道路,將增量道路數(shù)據(jù)與國家主節(jié)點(diǎn)數(shù)據(jù)進(jìn)行合并。與此類似,利用省市節(jié)點(diǎn)道路緩沖區(qū)擦除國家主節(jié)點(diǎn)道路數(shù)據(jù),剩余的道路為刪除道路,將主節(jié)點(diǎn)道路的屬性字段STACOD標(biāo)識(shí)為3(刪除)。最終進(jìn)行屬性處理、要素間關(guān)系協(xié)調(diào)、拓?fù)錂z查等,形成道路數(shù)據(jù)融合成果。
這種融合方法存在一個(gè)難以解決的問題是:幾何圖形沒有變化但屬性變化的要素需要人工判斷,而屬性變化發(fā)現(xiàn)比較困難,需要逐要素、逐字段的人工判斷,耗時(shí)費(fèi)力。
目標(biāo)匹配已廣泛應(yīng)用于生活中,如醫(yī)學(xué)影像分析、遙感影像識(shí)別、指紋識(shí)別、人臉識(shí)別等。近年來,隨著天地圖、數(shù)字城市、各級(jí)基礎(chǔ)地理信息數(shù)據(jù)庫等項(xiàng)目的開展和建成,空間數(shù)據(jù)如何快速更新、多尺度聯(lián)動(dòng)更新成為地理信息行業(yè)面臨的重要問題[1-2]。有較多學(xué)者對(duì)空間目標(biāo)匹配進(jìn)行了研究,針對(duì)不同幾何類型的地物提出了提高匹配精度和效率的算法[3]。空間目標(biāo)匹配技術(shù)已廣泛應(yīng)用于地圖融合及合并、地圖數(shù)據(jù)庫更新、空間數(shù)據(jù)庫集成與共享、不同地圖數(shù)據(jù)庫質(zhì)量評(píng)價(jià)等[4]。
線狀地物的匹配最常用的算法有Hausdorff距離和Fréchet距離等,但這些方法都有一定局限性,如Hausdorff距離容易受空間目標(biāo)局部幾何形狀的影響[5]。由于道路數(shù)據(jù)融合時(shí)數(shù)據(jù)量較大,如國家主節(jié)點(diǎn)的道路數(shù)據(jù)約有120萬條,福建省1:10 000DLG數(shù)據(jù)中道路約127萬條,空間目標(biāo)匹配涉及較多的緩沖區(qū)計(jì)算、空間查詢、距離計(jì)算等,必須考慮匹配效率和準(zhǔn)確率。
來源于不同數(shù)據(jù)的兩條道路是否表示的是同一條道路,只需要確定兩條道路的距離是否足夠接近即可[6]。道路匹配的基本思路:兩條道路L1和L2,矢量道路數(shù)據(jù)其實(shí)是坐標(biāo)點(diǎn)序列,因此可以將道路匹配簡化為離散的點(diǎn)集與折線的距離問題,即道路L1的節(jié)點(diǎn)離散成序列點(diǎn)集S(p1,p2,…,pn),計(jì)算點(diǎn)集S中每個(gè)點(diǎn)到折線L2的最短距離dmin,得到最短距離集合D(d1,d2,…,dn),如果max(d1,d2,…,dn)小于最大距離閾值tmax,且最短距離的平均值∑1ndi/n小于設(shè)定的平均最小距離閾值tavg,就認(rèn)為L1與L2匹配,如圖2所示,圖中L1有p1-p44個(gè)結(jié)點(diǎn),到L2的最短距離對(duì)應(yīng)點(diǎn)分別為t1-t4,最短距離分別為d1-d4。利用這種思路,可以將道路匹配問題簡化為距離計(jì)算,提高計(jì)算的效率。
圖2 最短距離匹配Fig.2 Minimum distance matching
道路折線之間的匹配關(guān)系有多種(如圖3所示):①1:0,一條線對(duì)0條線,包括0條線對(duì)一條線;②1:1,一條線對(duì)一條線;③1:n,一條線對(duì)多條線,包括多條線對(duì)一條線;④m:n,多條線對(duì)多條線。其中,1:0和0:1為新增和刪除要素。1:1和1:n的匹配相對(duì)比較簡單,匹配的精度很高。m:n的情況最為復(fù)雜,也是匹配計(jì)算最為耗時(shí)的一種。在匹配時(shí),可以將m:n的情況根據(jù)最短距離計(jì)算結(jié)果打斷成m′段,再取m′中的一段與n進(jìn)行匹配,從而將m:n轉(zhuǎn)換成1:n的情況,再遍歷m′實(shí)現(xiàn)m:n的匹配。
圖3 折線間匹配關(guān)系Fig.3 Diあerent matching situations of polygonal lines
在進(jìn)行道路匹配時(shí),需要計(jì)算每條道路的緩沖區(qū),使用緩沖區(qū)進(jìn)行空間相交查詢,查詢結(jié)果一般有多條,特別是路網(wǎng)密集的城區(qū),為提高匹配的效率,可以生成道路折線凸包,并利用凸包計(jì)算出道路折線的角度,當(dāng)兩條道路的角度差小于某個(gè)閾值時(shí)才進(jìn)行后續(xù)的匹配計(jì)算,這樣能夠排除大部分空間查詢結(jié)果,減少匹配的計(jì)算量。
道路空間匹配的流程如圖4所示。更新道路為可作為更新參考資料的外部道路數(shù)據(jù),原始道路為“天地圖·福建”的現(xiàn)勢數(shù)據(jù),更新道路的現(xiàn)勢性優(yōu)于原始道路的現(xiàn)勢性,空間目標(biāo)匹配的過程就是為了從更新道路中提取幾何圖形和屬性變化的道路。
更新道路和原始道路作為數(shù)據(jù)輸入,首先使用更新道路中的道路折線Li生成緩沖區(qū),利用緩沖區(qū)對(duì)原始道路進(jìn)行空間相交查詢,查詢結(jié)果為F(f1,f2,…,fn),如果空間查詢結(jié)果F為空,則Li為新增道路,如果是原始道路對(duì)更新道路的空間查詢結(jié)果為空,則為刪除道路。
如果空間查詢結(jié)果F不為空,則進(jìn)行后面距離匹配的計(jì)算,Li如果能夠與F中的道路匹配,則進(jìn)行屬性變化的判斷,如果F中沒有道路與Li匹配,則道路Li為變化道路。通過對(duì)更新道路和原始道路的正向和反向匹配,可以得到新增、刪除、幾何變化、屬性變化的道路。
圖4 空間匹配流程圖Fig.4 Flow chart of spatial matching
“天地圖·福建”數(shù)據(jù)融合采用ArcGIS平臺(tái),包括數(shù)據(jù)更新和融合、數(shù)據(jù)建庫管理等作業(yè)過程,因此,空間目標(biāo)匹配算法基于ArcObjects10.1和Visual Studio2010進(jìn)行開發(fā)。
ArcObjects提供了實(shí)現(xiàn)匹配算法需要的主要接口,包括緩沖區(qū)生成、空間查詢、點(diǎn)到折線的最短距離計(jì)算等,都可以直接使用ArcObjects接口,這些接口的計(jì)算效率較高。為了提高空間查詢的效率,數(shù)據(jù)在匹配前一定要建立空間索引,同時(shí),數(shù)據(jù)格式采用File Geodatabase,能夠保證在數(shù)據(jù)量較大時(shí)仍有較高的I/O效率。
空間匹配時(shí)遍歷每條道路,首先要按照指定的距離生成道路的緩沖區(qū),可以使用ITopologicalOperator.Buffer(),然后將緩沖區(qū)定義為ISpatialFilter的幾何圖形,使用IFeatureClass.Search()進(jìn)行空間相交查詢,查詢結(jié)果返回游標(biāo)IFeatureCursor,使用IPointCollection用來將道路折線轉(zhuǎn)換為離散節(jié)點(diǎn),目標(biāo)道路轉(zhuǎn)換為IPolyline,此時(shí)就可以使用IPolyline.QueryPointAndDistance()查詢IPointCollection中每個(gè)點(diǎn)到IPolyline的最短距離,同時(shí)還能返回最短距離時(shí)在IPolyline上的點(diǎn)位坐標(biāo),對(duì)最短距離進(jìn)行統(tǒng)計(jì),然后通過最短距離的最大值和平均值與設(shè)定閾值的大小關(guān)系判斷兩條道路是否匹配。程序的界面如圖5所示。
圖5 空間匹配程序Fig.5 Interface of spatial matching program
為了驗(yàn)證匹配算法的有效性和匹配精度,用漳州城區(qū)的1:10000(如圖6a所示)和1:500(如圖6b所示)道路進(jìn)行空間匹配試驗(yàn),通過人工判斷的方法對(duì)變化要素進(jìn)行匹配精度檢驗(yàn),1:10000道路199條,1:500道路1185條,人工提取變化和新增道路935條,刪除道路42條,匹配程序的提取結(jié)果如圖6c和6d所示,變化和新增要素中錯(cuò)漏62條,刪除要素中錯(cuò)漏3條,按照統(tǒng)計(jì)匹配精度公式accuracy=sr/scr,其中,scr為人工提取的所有變化要素個(gè)數(shù),sr表示程序計(jì)算的匹配結(jié)果中匹配正確的要素個(gè)數(shù),根據(jù)上述統(tǒng)計(jì),匹配精度accuracy=912/977=93.3%.
圖6 1:10000、1:500道路數(shù)據(jù)及匹配結(jié)果Fig.6 Matching results of road data on 1:10 000 and 1:500 maps
此外,還使用主節(jié)點(diǎn)道路導(dǎo)航數(shù)據(jù)(如圖7a所示)與福建省核心要素道路數(shù)據(jù)(如圖7b所示)進(jìn)行匹配試驗(yàn),其中,核心要素?cái)?shù)據(jù)是對(duì)1:10000DLG數(shù)據(jù)進(jìn)行整合處理,去除涉密和專業(yè)性較強(qiáng)的要素,形成能滿足大多數(shù)應(yīng)用需求的主要要素,包括水系、居民地、道路、鐵路、境界、城市綠地等。以福州市城區(qū)約25km2的樣區(qū)進(jìn)行試驗(yàn),主節(jié)點(diǎn)道路4696條,福建省核心要素道路994條,主節(jié)點(diǎn)道路數(shù)據(jù)采用導(dǎo)航模型,數(shù)據(jù)比較“破碎”,城區(qū)道路比核心要素道路更為詳細(xì)。人工提取出變化要素178條,刪除要素1896條,匹配程序提取結(jié)果如圖7c和圖7d所示,變化和新增要素中錯(cuò)漏3條,刪除要素中錯(cuò)漏10條,匹配精度為accuracy=2061/2074=99.4%.
圖7 導(dǎo)航主節(jié)點(diǎn)道路和核心道路及匹配結(jié)果Fig.7 Matching results of navigation and core roads
表1 目標(biāo)匹配結(jié)果統(tǒng)計(jì)Tab.1 Statistic of spatial object matching results
兩組試驗(yàn)的統(tǒng)計(jì)結(jié)果見表1,跨比例尺道路數(shù)據(jù)的匹配精度與同類算法相當(dāng),相似比例尺道路數(shù)據(jù)的匹配精度高于同類算法[7-8]。本文采用的算法在跨比例尺道路數(shù)據(jù)匹配時(shí)的匹配精度達(dá)93.3%,比例尺相似的道路數(shù)據(jù)的匹配精度達(dá)99.3%。試驗(yàn)1中1:10000與1:500道路存在較多的m:n的對(duì)應(yīng)關(guān)系,數(shù)據(jù)現(xiàn)勢性相差兩年,對(duì)匹配精度有較大影響。試驗(yàn)2中主節(jié)點(diǎn)道路與省級(jí)核心要素雖然數(shù)據(jù)模型不同,如主節(jié)點(diǎn)主干街道以雙線表示,主節(jié)點(diǎn)道路沒有明確的比例尺,但主節(jié)點(diǎn)道路與省級(jí)核心要素道路詳細(xì)程度接近。主節(jié)點(diǎn)道路要素個(gè)數(shù)是省級(jí)核心要素道路要素個(gè)數(shù)的4.7倍,但對(duì)應(yīng)關(guān)系主要是1:n的情況,因此,空間目標(biāo)匹配精度較高。
綜上所述,空間目標(biāo)匹配能夠?qū)Χ嘣础⒍喑叨鹊缆窋?shù)據(jù)進(jìn)行目標(biāo)匹配,并提取變化要素,線狀地物空間目標(biāo)匹配精度主要受匹配數(shù)據(jù)源的比例尺差異的影響,比例尺相差增大時(shí),匹配精度隨之降低。
屬性的變化在幾何匹配之后進(jìn)行,屬性匹配只需要通過字符串或數(shù)字比較,只要能夠保證幾何匹配準(zhǔn)確,屬性變化的提取就不會(huì)出錯(cuò),因此,上述兩次試驗(yàn)不對(duì)屬性的匹配精度進(jìn)行評(píng)價(jià)。通過空間目標(biāo)匹配,可以快速發(fā)現(xiàn)多源數(shù)據(jù)中相同道路的屬性變化和不一致。
空間目標(biāo)匹配能夠有效解決多源、多尺度道路數(shù)據(jù)在融合過程中變化要素提取的問題,也能夠解決人工判斷比較困難的屬性的變化和不一致。匹配算法不僅可應(yīng)用于道路的匹配,對(duì)水系線等線狀地物同樣有效。在“天地圖·福建”、數(shù)字城市等項(xiàng)目建成后,對(duì)空間數(shù)據(jù)的現(xiàn)勢性要求越來越高,為實(shí)現(xiàn)快速更新,除進(jìn)行重要地物的變化監(jiān)測,還必須有技術(shù)手段能夠?qū)⒍嘣?、多尺度?shù)據(jù)進(jìn)行快速融合。
按照天地圖的建設(shè)需要,福建省將開展天地圖數(shù)據(jù)母庫建設(shè),母庫將是“天地圖·福建”的主要數(shù)據(jù)源,也是即將開展的國家應(yīng)急測繪保障能力建設(shè)的基礎(chǔ)。從原始庫到精準(zhǔn)版母庫數(shù)據(jù)、精準(zhǔn)版母庫轉(zhuǎn)換成公開版數(shù)據(jù)的過程中,都涉及多源、多尺度數(shù)據(jù)協(xié)調(diào)處理的問題,因此,空間目標(biāo)匹配將在這些項(xiàng)目建設(shè)中發(fā)揮重要作用。