王衛紅,張鵬靈
(浙江工業大學 計算機科學與技術學院,浙江 杭州 310023)
移動數據采集系統中拓撲規則的研究與實現
王衛紅,張鵬靈
(浙江工業大學 計算機科學與技術學院,浙江 杭州 310023)
針對現有的移動終端數據采集系統在面狀數據采集過程中存在的拓撲問題,提出了一種移動數據采集系統中拓撲問題的解決方法,主要針對多邊形共享邊界不一致及帶孔洞面目標這2種情況下的拓撲關系進行分析和解決,實現了基于拓撲規則的移動數據采集,保證采集的多邊形數據符合拓撲規范,且無需再通過專業軟件對采集的面塊數據進行拓撲分析處理,能夠有效的提高效率.該研究成果已成功應用于江蘇省通州市地稅局的土地面積核查及稅收監控中,有效解決了空間信息和屬性信息的采集,提高了土地核查的效率和技術水平.
移動GIS;野外采集;土地核查;拓撲規則;共享邊界;帶孔洞
地理信息系統在最近的30多年內取得了驚人的發展,廣泛應用于資源調查、環境評估[1]、災害預測[2-3]、國土管理、城市規劃、郵電通訊、交通運輸、軍事公安、水利電力、公共設施管理[4]、農林牧業、統計和商業金融等幾乎所有領域.其中,移動GIS[5]也得到了快速的發展,它可理解為一種GIS、衛星導航系統[6]、移動通信、互聯網服務和多媒體技術等的集成系統.目前,出現了各種以移動互聯網為支撐、以智能手機或平板電腦為終端、結合衛星定位系統或基站為定位手段[7]的移動GIS系統[8-9].張海瑞等[10]提出了綜合利用移動智能終端、無線網絡的野外數據采集方案,由于野外采集的過程中,不僅僅需要點位數據,有時還需要記錄土地面塊信息數據,比如企業的廠區范圍,林地的面積等數據.而繆鹍等[11]實現了空間圖像要素以及屬性要素的采集,并且增加了圖像要素的編輯功能.面的采集在實際應用中具有非常重要的作用,而在野外采集面塊目標的過程中,勢必可能存在拓撲錯誤,從而導致數據不準確.現有的采集系統并沒有對采集面塊過程中存在的拓撲問題進行研討和解決.
本研究提出一種解決采集系統中拓撲問題的實現方案,分析了面塊數據之間的相接、交疊、覆蓋于和覆蓋這4種拓撲關系,通過解決多邊形共享邊界不一致的情況以及帶孔洞面目標的情況,有效的避免了面塊數據之間的四種拓撲錯誤,保證采集的多邊形面塊符合拓撲規范,并且簡化了工作,這些符合拓撲規范的面塊數據無需再通過專業的軟件進行拓撲處理,能夠有效的提高效率.
1.1 多邊形共享邊界不一致的情況
該情況對應面與面之間空間拓撲關系的相接,相交情況,對于這種情況,需要保證采集的兩個多邊形面塊首尾采集點嚴格重合,并且共享兩相鄰區域之間的共享邊界.在現實場景中,以道路邊界作為植被類型分界的多邊形地圖,當比例尺縮小后,道路化簡為單線,兩植被多邊形也要作共享邊界一致化處理,其間不能有裂縫.多邊形共享邊界的一致化在土地利用、森林和植被等全區域覆蓋多邊形地圖的綜合中是一個關鍵環節[12].
相鄰多邊形可能存在的3種共享邊界不一致情況(圖1):
1) 相交型:兩多邊形的邊界相交且只有兩個交點,如圖1(a)所示.
2) 相離型:兩多邊形的邊界不相交,邊界之間的距離小于視覺鄰近閾值λ,如圖1(b)所示.
3) 交織型:兩多邊形的邊界相交且交點數目多于兩個,如圖1(c)所示.

圖1 多邊形共享邊界不一致的3種情況Fig.1 Three cases of polygon shared boundary
1.2 帶孔洞面目標的情況
該情況對應面與面之間空間拓撲關系的覆蓋、被覆蓋情況,對于這種情況,需要保證采集的兩個面塊不存在重疊,即需要在外多邊形面塊的內部挖去一塊區域.這種情況在現實世界中可理解為大湖面中包含有一些小島,這些小島即為所謂的孔洞,所以可以將大的湖面稱為一個包含許多孔洞的面目標,還有圣馬力諾被意大利包圍,從而可以將意大利表示為一個包含多個孔洞的面目標[13].從平面來看,可以將整個空間分為兩部分,分別是目標內部分和目標外部分,目標外部分包含孔洞和邊界外部集,如圖2~4所示,其中面目標A包含一個孔洞,內部的邊界用(A1)表示,外部的邊界用(A2)表示,而孔洞則用(S1)表示,邊界外部集則用(S2)表示[14].

圖2 帶孔洞的面目標Fig.2 Polygon with holes
實現采集符合拓撲規范的多邊形面塊是采集系統所要解決的重點,由于移動設備的硬件限制,在移動設備操作系統中實現復雜的圖形計算并不現實,為了實現多邊形面塊的采集以及保證采集的多邊形面塊符合拓撲規范,重點解決如何在采集過程中避免多邊形拓撲沖突,保證采集的多邊形面塊符合拓撲規范.
2.1 解決多邊形共享邊界不一致的情況
2.1.1 解決多邊形共享邊界不一致情況的技術流程
解決多邊形共享邊界不一致的問題實質是保證兩多邊形的局部邊界一致,提出一種解決方案,其核心思想是采集過程中,捕捉共享邊界的已采集的多邊形面塊頂點或者弧段上的點,當共享頂點個數大于等于2的時候,用戶可以選擇是否自動將與已采集多邊形面塊共享的邊界自動補全(即根據共享的坐標頂點結合新采集的坐標點自動勾畫出地塊多邊形),最后保存新采集的多邊形面塊,其實現流程如圖3所示.
算法的核心步驟描述如下:
Step 1 開始采集,確定共享邊界的多邊形,并顯示其頂點.
Step 2 采集多邊形頂點,選擇是否捕捉,一旦開啟捕捉,將捕捉到已采集多邊形的頂點或者弧段上的點(如何得到弧段的上的點在2.1.2小節中介紹),并且標記捕捉的次數.

圖3 解決多邊形共享邊界不一致情況的流程Fig.3 Process for solving the inconsistency of polygon shared boundary
Step 3 判斷捕捉的次數是否大于等于2,大于等于2則跳到Step 4;否則跳到Step 2.
Step 4 判斷這幾個頂點是否屬于同一個多邊形,如果不屬于同一個多邊形,遍歷之前確定的共享邊界的多邊形,獲得共享邊界.
Step 5 選擇是否補全共享邊界.
Step 6 最后完成采集,保存結果.
通過已采集多邊形面塊頂點的捕捉,以及相鄰區域間共享邊界的自動補全,有效地避免了面與面之間空間拓撲關系的相交、相離的拓撲問題.有效的避免了多邊形共享邊界的不一致情況,結果如圖4所示.

圖4 相鄰區域共享邊界結果圖Fig.4 The result of polygon shared boundary
2.1.2 觸及點在共享弧段上的坐標的獲取
解決多邊形共享邊界不一致情況的關鍵在于獲得共享邊界的交點,主要分為兩種情況:1) 相交于已采集多邊形面塊的頂點上;2) 相交于已采集多邊形面塊的弧段上,如圖5所示.對應第一種情況,只需要判斷手指觸及點跟已采集多邊形面塊的頂點是否重合即可,而對于第二種情況,需要數學知識來解決.核心思想是確定哪段共享邊界就能確定該直線,利用y=ax+b得到該直線方程,根據直線方程Ax+By+C=0(A≠0,B≠0)和垂線方程Bx-Ay+m=0求出垂線方程的m值,然后根據這兩個直線方程求出共享弧段上的交點坐標.核心偽代碼可分別表示為
A=(y1-y2)/(x1-x2)
B=y1-A·y1
m=x3+A·y3
x=(m-A·B)/(A·A+1)
y=A·x+B
returnp(x,y)
其中:p1(x1,y1)和p2(x2,y2)分別為已知的兩個在直線上的點;p3(x3,y3)為手指屏幕觸及點;p(x,y)為垂線與弧段p2p3的交點.

圖5 觸及點落在多邊形弧段上Fig.5 The touch point falls on the polygon arc
2.2 帶孔洞面目標的實現
2.2.1 實現帶孔洞面目標的技術流程
在地籍測量中常常存在帶孔洞的復雜地塊,帶孔洞面目標在GIS空間數據庫中存貯表達時已被視為一種復雜的空間數據類型,為了實現帶孔洞面目標的采集,提出一種解決方案,其核心思想是采集過程中臨時保存采集的外圍多邊形面塊頂點坐標,再臨時保存內圍的多邊形面塊頂點坐標,最后以一定的順序保存這些頂點信息,實現流程如圖6所示.

圖6 實現帶孔洞面目標的流程圖Fig.6 The flow chart of implementing polygon target collection with holes
算法的核心描述如下:
Step 1 采集多邊形數據,直到外多邊形采集完成,臨時保存其頂點坐標.
Step 2 采集內多邊形數據,直到所有內多邊形面塊都采集完成.
Step 3 判斷內多邊形合并還是擦除(擦除在2.2.2中介紹).
Step 4 最后完成采集,保存結果.
通過內多邊形面塊的擦除和內多邊形面塊的合并,有效地避免了面與面之間空間拓撲關系的覆蓋、被覆蓋的情況.在現實場景中,該情況可理解為林地中間存在一個小坑塘,林地即是帶孔洞的多邊形面塊,而小坑塘即是獨立的多邊形面塊.結果如圖7所示.

圖7 帶孔洞面目標的結果圖Fig.7 The result of implementing polygon target collection with holes
2.2.2 內多邊形的擦除
帶孔洞面目標主要分為兩種情況,即多邊形面目標內部區域不是要素和多邊形面目標內部區域包含其他要素兩種情況,擦除保存將實現前者,合并保存將實現后者,保證保存的數據符合拓撲規范.擦除保存的偽代碼表示如下:
輸入:外圍多邊形的Geometry對象與內圍多邊形Geometry對象數組polygonLsit.
輸出:是否成功保存到數據庫.
/*保存采集的帶孔洞的多邊形面塊空間信息*/
Boolean savePolygonWithHole(Geometry geometryOut,ArrayList polygonLsit)
/*構造WKT格式的字符串*/
geoString←"POLYGON("+"";
outWKT解析geometryOut得到得到外圍多邊形的頂點坐標;
geoString←geoString+outWKT;
/*遍歷采集的內圍多邊形圖斑,并添加到WKT格式的字符串*/
for i←0 to polygonList.size do
Geometry geometryInner←polygonList.get(i);
innerWKT解析geometryInner得到得到內圍多邊形的頂點坐標;
geoString←geoString+innerWKT;
end for
insert into T_Polygon_Info (…Geometry…) values(…GeomFromText(polygonwkt)…);
Return true;
合并保存需要保存兩個圖斑要素,即先根據上述擦除保存方法保存不含內多邊形區域的圖斑,然后再對內多邊形面塊單獨保存.
3.1 實驗結果與分析
為了驗證基于拓撲規則的采集技術的可行性,在江蘇省通州區對該系統進行了實地采集實驗,通過高分影像數據對企業進行實地采集,采集得到的地塊數據通過ArcMap軟件進行拓撲分析處理,以得到包含拓撲問題的圖斑.經過實地采集驗證,不帶拓撲功能的采集系統不能保證采集的數據符合拓撲規范,具有一定的拓撲差錯率,并且它是隨機的,一旦遇到采集目標密集的情況,差錯率會更高,如圖8所示,這是典型的不帶拓撲功能的采集系統采集包含拓撲錯誤的數據,圖8(a)顯示了兩個圖斑相交,圖8(b)顯示了一個圖斑覆蓋在了另一個圖斑之上;而帶拓撲功能的采集系統能夠有效的避免拓撲錯誤,如圖9所示,保證采集數據正確、規范,其中個別錯誤的原因主要來自多人同時離線采集,對于離線采集無法避免多人采集同一地塊的情況,但是這種情況可以通過在線采集解決,一旦采集完成實時更新服務器,在采集過程中,每采集一個多邊形頂點都實時更新采集面的地圖服務,保證數據的同步.
同樣從表1可以得到:不帶拓撲功能的采集系統無法實現邊界的共享,所以存在如圖8(c)所示的情況,圖斑上顯示2個圖斑相離,但在實地場景下,這兩個企業的地塊的確屬于共享邊界的情況,這樣就導致數據不夠準確;而帶拓撲功能的采集系統能夠有效解決此問題,保證了數據的準確性并真實表達了實物的特性,如圖9所示,其中部分存在問題的數據本身實物不好判斷是否共享邊界,有部分原因來自采集人員的人為因素.

表1 共享邊界差錯率比較

圖8 包含拓撲錯誤結果Fig.8 The local graph of the error of intersection topology

圖9 符合拓撲規范結果Fig.9 The local graph of the topological specification results
3.2 系統展示
移動數據采集系統的運行情況如圖10所示,圖10(a)展示的是面塊的采集功能;圖10(b)展示的是通過該系統采集得到的共享邊界的面塊結果效果圖,避免了多邊形共享邊界不一致的情況,解決了采集多邊形數據過程中可能存在的相交、相離等拓撲錯誤的問題;圖10(c)展示的是通過該系統采集得到的帶有孔洞的面塊數據結構效果圖,實現了帶孔洞面目標的采集,解決了采集多邊形數據過程中可能存在的覆蓋、包含等拓撲錯誤的問題.

圖10 系統展示圖Fig.10 The results of the collection system
通過分析現有移動采集系統的現狀以及存在的不足,并針對移動采集系統中面與面之間的空間拓撲問題,提出一種實現方案,分別對移動采集系統中采集的面多邊形共享邊界不一致的情況與帶孔洞面目標對象進行分析和解決,并將該方案應用于采集系統中,該系統目前已經成功應用于通州地稅局的土地核查工作中.結果表明:本系統不僅可以進行數據的采集、瀏覽、查詢以及導入導出,而且可保證采集的面塊符合拓撲規范,這些符合拓撲規范的面塊能夠有效保證數據的精確性,并且無需再通過專業軟件進行拓撲分析處理,能夠有效的提高效率.
[1] 劉俊萍,邵佳偉,董飛龍,等.基于GIS和熵權法的水廠原水水質評價[J].浙江工業大學學報,2014,42(5):539-543.
[2] 楊偉,丁伯陽,潘曉東,等.基于GIS的邊坡三維穩定性計算[J].浙江工業大學學報,2012,40(1):92-95.
[3] 劉俊萍.基于AHP和GIS的海塘工程安全評價研究[J].浙江工業大學學報,2014,42(4):383-387.
[4] 鄒勝勇,謝波,華毓江,等.疏港公路海底拋石施工工藝及三維可視化系統研究[J].浙江工業大學學報,2013,41(5):524-528.
[5] JAJAC N, STOJANOVIC D, PREDIC B, et al. Efficient replication of geospatial data for mobile GIS in field work[C]// International Conference on Telecommunication in Modern Satellite, Cable and Broadcasting Services. Serbia: IEEE Press,2013:393-396.
[6] SHU X, DU Z, CHEN R. Research on mobile location service design based on Android [C]// International Conference on Wireless Communications, NETWORKING and Mobile Computing. Beijing: IEEE Press,2009:1-4.
[7] GENG J. Rapid integer ambiguity resolution in GPS precise point positioning [D]. England: University of Nottingham,2010.
[8] 趙慶展,靳光才,周文杰,等.基于移動GIS的棉田病蟲害信息采集系統[J].農業工程學報,2015,31(4):183-190.
[9] 姚紀明,劉亞靜,王森.地質調查手機移動GIS設計與實現[J].測繪科學,2015,40(9):134-137.
[10] 張海瑞,吳學饒,蘭小機.基于ArcGIS for Android野外實習數據采導集與航系統的實現[J].測繪工程,2015,24(3):36-39.
[11] 繆鹍,田家凱,唐軍軍,等.公(鐵)路線調數據采集的移動GIS系統設計與實現[J].測繪工程,2014,23(7):68-71.
[12] 艾廷華,毋河海.相鄰多邊形共享邊界的一致化改正[J].武漢測繪科技大學學報,2000,25(5):426-431.
[13] 劉波,李大軍,鄒時林,等.帶孔洞面域間的拓撲關系的組合推理[J].測繪學報,2011,40(2):262-267.
[14] 鄧敏,李志林,李光強.簡單面目標與帶孔洞面目標間拓撲關系的層次表達方法[J].測繪學報,2008,37(3):330-337.
Research and implementation of topology rules in mobile field data collection system
WANG Weihong, ZHANG Pengling
(College of Computer Science and Technology, Zhejiang University of Technology, Hangzhou 310023, China)
Aiming at the problem of the existing topology errors in mobile field data collection system in the collecting planar data procedure, this paper presents a method to solve the topology errors in mobile field data collection system. Two kinds of topological relations are analyzed and solved: the polygon sharing boundary inconsistency and polygon with holes. This method realizes the acquisition of polygons based on topology rules, ensures that the polygons conform to the standard topology specification and no longer need to carry on the topological analysis and processing through professional software. It can effectively improve the efficiency. This mehtod has been successfully applied in the process of land verification and tax monitoring in Tongzhou Local Taxation Bureau, Jiangsu Province. It effectively solves the collection of spatial information and attribute information and improves the efficiency and technical level in land verification.
mobile GIS; field data collection; land verification; topological rules; shared boundary; with holes
(責任編輯:劉 巖)
2016-03-14
國家自然科學專項基金項目(61340058);浙江省自然科學基金重點項目(LZ14F020001)
王衛紅(1969—),男,浙江臨海人,教授,主要從事遙感信息提取和空間信息服務研究,E-mail:wwh@zjut.edu.cn.
TP311.5
A
1006-4303(2017)01-0001-05