王云帆
(國家基礎地理信息中心,北京 100830)
我國是遭受自然災害影響十分嚴重的國家,加強救災應急體系建設是關系國家經濟社會發展全局和人民群眾切身利益的大事[1]。其中數據資源保障是整個應急救災體系的重要基礎,更是應急救災指揮調度的前提。根據以往在應急制圖方面的經驗,單一的數據源往往不能滿足應急制圖過程中的需求,因此在實際應急制圖過程中,通常會將國家基礎地理信息數據、地理國情監測數據、天地圖數據、志愿者制圖數據等多尺度多源異構的地理信息數據進行快速匹配融合。但現有對數據源要素進行匹配的地理要素編碼和匹配方式存在以下幾個問題:①編碼沒有任何規律,且是一個局部的唯一[2],因此造成不同單位提供的矢量要素數據中,對于同一實體要素的編碼完全不同,導致在信息交換和共享時幾乎難以應用;②每一個實體都必須人工賦予編碼,無法用程序批量完成,工作量巨大,更新與維護不便,且容易造成人為錯誤[3];③編碼的唯一性存在歧義,即不同行業對同一種基礎地理要素編碼不唯一;④編碼的內容中包含諸如行政區劃等人文要素,一旦行政區劃進行調整,則整套要素編碼必須作調整甚至重新編碼[4];⑤編碼過程通常受人工干預和人為誤差的影響[5]。
針對以上問題,亟需研究出一種能夠對地理實體空間特征進行分析,并通過要素編碼方法來唯一標識地理實體的技術,將地理實體的匹配轉化為要素編碼的匹配,最終實現在實際應急制圖過程中要素的快速匹配融合。本文基于開放位置編碼技術(open location code,OLC),提出一種基于矢量要素位置和幾何特征的OLC唯一編碼匹配技術,能夠解決不同數據源的地理要素統一編碼問題,且能夠減小地名、地址不清晰不完備對編碼的影響,編碼過程自動完成,減少人為誤差對編碼的影響。應用這項技術可以建立一個應急專題數據庫,解決多源空間數據融合后數據難以更新的問題,并為今后應急制圖提供數據保障。
OLC是對WGS-84坐標系統中經緯度坐標進行的編碼,首先計算0~9和A~Z中所有可能的20字符組合,然后對其用超過30種語言拼寫10 000個單詞的表現進行打分,最終選出盡可能避免生成可辨識單詞的20字符組,如“23456789CFGHJMPQRV WX”[6]。OLC編碼對以度為單位的WGS-84坐標系進行編碼,解碼后得到一片區域而不是一個點。編碼區域取決于編碼長度,編碼越長,返回的區域越小,越精確。兩位編碼包含20°的高和寬,每在編碼中增加兩位,高和寬就分別除以20。
用18×9的格網覆蓋整個地球,每個網格是20°×20°的區域。OLC的初始兩位數定義了其中的一個網格區域,第一位為行坐標,表示緯度,第二位為列坐標,表示經度。后續步驟繼續將每個小區域劃分為20°×20°的網格,并用一位定義所在行,另一位定義所在列。
通常,10位編碼(1/8000°的分辨率)對大多數位置來說精確度已經足夠,但是在樓房密集的區域,10位編碼所表達的區域可能覆蓋了多個建筑。而12位編碼的區域邊長已經小于1 m,因此11位編碼在長度和精度上最為適中。在11位編碼的算法中,第10位所表達的區域被劃分為4°×5°的網格,其中每一格都由單獨的一位數字表示。11位編碼表達了一個1/32 000°×1/40 000°的區域,約為3.4 m×2.7 m。
傳統的OLC編碼方法只考慮了目標定位問題,而沒有考慮地理要素匹配問題,因而沒有顧及矢量要素位置和幾何特征,難以直接用于不同數據源矢量要素的匹配。本文提出的基于矢量要素位置和幾何特征的OLC唯一編碼技術是對OLC編碼技術的擴展。
矢量數據的類型有點、線、面3種表現形式[7],為了使3種形式具有統一的表達方式,本文選取了一些能反映數據幾何特性的關鍵點,將這些點的OLC碼串聯作為該地理要素的編碼。
點要素直接使用OLC的11位開放位置編碼進行標識。
線要素取起點、終點、折線中點和包絡的兩對角點,作為描述其幾何特性的關鍵點,如圖1所示。

圖1 線要素特征描述關鍵點
圖1中,A1、A3分別為起點和終點,A2為折線中點,A4、A6和A5、A7為最小矩形包絡的兩對角點。
面要素選取重心和包絡的兩對角點作為關鍵點。
面要素幾何特征點選取如圖2所示,其中A5為面要素幾何形狀的重心位置,A1、A3和A2、A4為最小矩形包絡的兩對角點。
為了使編碼更具有區分性,可以在編碼中加入要素類型和比例尺信息,并用“#”符號與幾何編碼區分開來。

圖2 面要素特征描述關鍵點
矢量數據的匹配技術是GIS空間數據更新研究領域關注的重點問題之一,是實現多尺度多源地圖協同更新的關鍵技術[8]。地理實體匹配的一個主要方面是合理地選擇空間實體的相似性測度與相似度指標,而這依賴于地理要素所具備的特征,其特征和算法構成了地理要素的匹配指標[9]。相似度指標作為同名地理空間實體匹配的依據,指標的測度與合理選擇直接影響匹配算法的效果。地理空間目標的相似性包括圖形相似性和語義相似性,圖形相似性又可分為幾何相似性(距離、形狀、角度和方向等)和上下文環境相似性[10]。
研究目標相似度的綜合計算模型,可以快速準確地識別不同來源數據集的同名實體,為地圖更新打下堅實的基礎。本文考慮了點-點、點-面、線-線、線-面和面-面共計5種匹配關系。其中,點-點匹配只需比較其OLC編碼,計算它們開放地址編碼字符串的相同長度比例即可,線-面匹配可轉化為線-面中心線的匹配。因此不同矢量數據之間的比較最終成為點-面、線-線和面-面3種類型的比較。對于點-面相似度計算,可通過比較點要素和面要素的重心來實現,其計算如下
(1)
式中,A和B分別表示點要素和面要素兩個地理空間目標;S(B,A)表示目標B和目標A的相似度;(x,y)是對應點要素的點坐標或面要素的重心坐標;U為面要素最小矩形包絡對角線的長度。點要素和面要素重心越趨于同一點,所得到的相似度越接近于1,即兩者的相似度越高。
對于線-線匹配的情況,線的長度、方向,以及兩條線關鍵點的距離,都是影響判斷的重要因素。對于表示同一地理實體的兩條線,其長度、方向和關鍵點的位置應該十分接近,因此可用以下公式計算線-線相似度

(2)
式中,A和B分別表示兩個線要素地理空間目標;(x,y)是對應線要素的折線中點坐標;L為長度計算操作;θ為方向角計算操作,計算線要素起點和終點的方向;U為線要素最小矩形包絡對角線的長度;α、β、γ為權重參數,且α+β+γ=1。當兩個線要素的長度越接近、方向越一致、折線中點的距離越小時,兩者相似度計算結果就越接近于1,即兩個線要素的相似度越高。
對于面-面匹配的情況,面的重心位置、重合區域,以及兩個面的主方向,都是影響判斷的重要因素。對于表示同一地理實體的兩個面,其重心、覆蓋區域與主方向應該十分接近,因此可用以下公式計算面-面相似度

(3)
式中,A和B分別表示兩個面要素地理空間目標;(x,y)是對應面要素的重心;L為長度計算操作;θ為方向角計算操作,計算面要素最小面積包絡的主對角線方向;U為最小矩形包絡對角線的長度;α、β、γ為權重參數,且α+β+γ=1。當兩個面要素的重心位置越接近、表達區域重合度越高、主方向越一致時,兩者相似度就越高,計算結果越接近于1。
為了提高匹配效率,在進行匹配前應對待匹配數據進行預處理,統一坐標系并去除粗差,然后通過對應數據的OLC編碼進行粗匹配。對于要比對的兩點,首先使用其OLC編碼進行初匹配,如果不同,則認為兩組數據并不匹配。對于OLC編碼相似度較高的數據,再通過式(1)—式(3)計算得到其相似度的值,當相似度大于設定的閾值時,則認為兩者匹配,將其寫入匹配表中。
為驗證本文研究方法的有效性及理論的合理性,應用C++編程語言開發地理實體匹配工具,用于理論驗證。
以不同尺度下的地理信息數據進行統一編碼和要素相似度匹配試驗,針對地理實體的3種要素類型點、線、面進行統一編碼,再根據本文方法進行相似度匹配。為驗證方法的可行性,設計點與點、線與線兩類匹配試驗,獲得如下結果。
試驗1:點要素與點要素進行要素匹配,使用1∶25萬公開版國家基礎地理信息數據和1∶100萬國家基礎地理信息數據,分別提取天津市區域的數據,使用1∶25萬和1∶100萬點要素AANP層進行試驗,根據OLC編碼規則,對點要素進行統一編碼,編碼結果如圖3、圖4所示。
由圖3、圖4可知,OLC屬性項分別為1∶25萬和1∶100萬基礎地理信息數據的OLC編碼。根據編碼結果,使用本文方法對要素進行相似度計算,部分結果如圖5所示。

圖3 1∶25萬基礎地理信息數據點要素AANP層要素OLC編碼結果

圖4 1∶100萬國家基礎地理信息數據點要素AANP層要素OLC編碼結果

圖5 點要素層相似度計算部分結果
其中OID為序號,ID_A和ID_B分別為1∶100萬和1∶25萬點要素AANP層的要素OLC編碼,SCORE為根據本文方法計算出的相似度概率,在匹配過程中可以通過閾值設定根據相似度進行要素匹配融合。
試驗2:線要素與線要素進行要素匹配,使用1∶25萬公開版國家基礎地理信息數據和1∶100萬國家基礎地理信息數據,分別提取天津市區域的數據,使用1∶25萬和1∶100萬線要素LFCL層進行試驗,根據OLC編碼規則,對線要素進行統一編碼,編碼結果如圖6、圖7所示。

圖6 1∶25萬基礎地理信息數據點要素LFCL層要素OLC編碼結果

圖7 1∶100萬基礎地理信息數據點要素LFCL層要素OLC編碼結果
由圖6、圖7可知,OLC屬性項分別為1∶25萬和1∶100萬基礎地理信息數據LFCL層要素的OLC編碼。根據編碼結果,使用本文方法對要素進行相似度計算,結果如圖8所示。ID_A和ID_B分別為1∶100萬和1∶25萬點要素LFCL層的要素OLC編碼,SCORE為根據本文方法計算出的相似度概率,在匹配過程中可以通過閾值設定根據相似度進行要素匹配融合。

圖8 線要素層相似度計算結果
根據本文提出的算法對不同數據源進行統一編碼,并依據空間幾何特征對地理實體統一編碼,通過空間相似度計算和編碼相似度計算進行匹配。試驗表明,該方法為解決多尺度多源異構數據的地理實體匹配提供了一種新的思路,通過對地理實體進行統一編碼,將空間要素匹配轉化為文本格式的編碼匹配,可以提高多源異構空間數據匹配效率,為滿足應急制圖過程中多源異構數據匹配融合的需求提供了一種方法,簡化了現有地理空間數據庫更新的難度。本文算法可擴展應用于GIS多元數據匹配融合、數據更新等領域,并應用于應急專題數據融合處理,為今后應急制圖提供數據保障。