李鴻宇,盧小平,王志軍,豆喜朋
(1. 河南理工大學(xué)礦山空間信息技術(shù)國家測繪地理信息局重點實驗室,河南 焦作 454003; 2. 河南省水利勘測有限公司,河南 鄭州 450003)
動態(tài)矢量數(shù)據(jù)與在線地圖的實時發(fā)布與實現(xiàn)
李鴻宇1,盧小平1,王志軍2,豆喜朋2
(1. 河南理工大學(xué)礦山空間信息技術(shù)國家測繪地理信息局重點實驗室,河南 焦作 454003; 2. 河南省水利勘測有限公司,河南 鄭州 450003)
針對城市勘測規(guī)劃中需要將AutoCAD矢量數(shù)據(jù)與WebGIS發(fā)布的地圖進(jìn)行疊加分析的應(yīng)用需求,本文提出了在兩種異構(gòu)數(shù)據(jù)中尋找同名節(jié)點相應(yīng)位置的方法,建立了一種基于節(jié)點向量同名節(jié)點(無幾何畸變)的快速轉(zhuǎn)換模型匹配方法,并通過AO(ArcObjects)/ArcGIS Server發(fā)布地圖服務(wù)使不同坐標(biāo)系下的矢量數(shù)據(jù)與在線地圖進(jìn)行同步匹配,實現(xiàn)了在WebGIS平臺下用戶對矢量文件的在線審查、分析等功能,并以實例應(yīng)用結(jié)果表明了該方法的有效性。
動態(tài)矢量數(shù)據(jù);快速匹配;同名節(jié)點;在線地圖;Uploadify
城市勘測設(shè)計是城市規(guī)劃、建設(shè)的基礎(chǔ)和前提,也是城鄉(xiāng)規(guī)劃管理過程中不可分割的工作環(huán)節(jié),可為城鄉(xiāng)規(guī)劃提供強有力的技術(shù)支撐和保障[1-2]。目前,城市規(guī)劃部門積累了龐大的數(shù)據(jù)和文檔資料,且呈現(xiàn)多元化(紙質(zhì)、圖片、AutoCAD、Shape文件)等特點,因此迫切需要運用現(xiàn)代信息化手段對這些數(shù)據(jù)進(jìn)行管理。AutoCAD擁有較強的數(shù)據(jù)交互能力,可以進(jìn)行多種數(shù)據(jù)轉(zhuǎn)換,是目前最主要的繪圖工具,在制圖表現(xiàn)形式方面具有GIS系統(tǒng)無法比擬的優(yōu)勢[3-4],但其在管理地理信息數(shù)據(jù)方面存在局限性,如拓?fù)潢P(guān)系和空間數(shù)據(jù)的分析方面難以實現(xiàn)等。隨著WebGIS在城鄉(xiāng)規(guī)劃、工程勘測、數(shù)據(jù)庫管理等領(lǐng)域的廣泛應(yīng)用,用戶需要將AutoCAD生成的數(shù)據(jù)文件與WebGIS發(fā)布的地圖服務(wù)進(jìn)行疊加分析,實現(xiàn)多源數(shù)據(jù)融合,便于對比地圖數(shù)據(jù)和地圖底圖兩者在地塊形狀、空間位置、坐標(biāo)等方面的差異,并及時進(jìn)行修改和完善,從而簡化操作流程,提高工作效率。在C/S架構(gòu)下,客戶端通常是將AutoCAD圖形數(shù)據(jù)直接導(dǎo)入ArcGIS平臺指定的空間,即可實現(xiàn)數(shù)據(jù)的疊加[5-6]。而B/S架構(gòu)模式下客戶端只有瀏覽器[7],無法直接導(dǎo)入AutoCAD矢量數(shù)據(jù),使得WebGIS系統(tǒng)難以實時提供AutoCAD矢量數(shù)據(jù)的在線疊加功能,即無法進(jìn)行實時疊加分析,從而制約了WebGIS系統(tǒng)的應(yīng)用。
文獻(xiàn)[8]提出R+樹對疊加算法進(jìn)行改進(jìn),但當(dāng)圖層中圖元數(shù)目較多、數(shù)據(jù)量較大時,該方法計算耗時較長。文獻(xiàn)[9]提出利用更新后的地圖要素對應(yīng)的坐標(biāo)范圍計算對應(yīng)的行列號,以此重新生成該范圍內(nèi)的瓦片,但當(dāng)在線編輯地理要素涉及的空間范圍較大時,該方法計算過程比較繁瑣。針對AutoCAD數(shù)據(jù)與GIS底圖圖斑外邊界較為規(guī)則、類型相對單一等特點,現(xiàn)有的點特征匹配方法難以滿足同名點匹配精度要求,本文提出一種顧及地圖空間關(guān)系的節(jié)點向量同名點匹配方法,可使AutoCAD數(shù)據(jù)文件與GIS底圖進(jìn)行精確配準(zhǔn)與疊加,利用WebGIS平臺實時發(fā)布的AutoCAD矢量數(shù)據(jù),實現(xiàn)矢量數(shù)據(jù)與在線地圖在線準(zhǔn)確匹配,并以實例驗證本文所提方法的有效性。
AutoCAD矢量數(shù)據(jù)與WebGIS系統(tǒng)發(fā)布的地圖服務(wù)進(jìn)行疊加,首先需要將AutoCAD矢量數(shù)據(jù)上傳至GIS服務(wù)器,然后轉(zhuǎn)換成Map Service進(jìn)行服務(wù)發(fā)布。不同坐標(biāo)系的矢量數(shù)據(jù)文件需要通過坐標(biāo)轉(zhuǎn)換成同一坐標(biāo)系下的坐標(biāo)。
1.1 基于節(jié)點向量的同名點匹配方法
本文提出利用兩節(jié)點間的距離L、梯度R及節(jié)點間的地圖空間關(guān)系作為判斷同名點的約束條件,不僅能提高計算效率(局部匹配,參與計算節(jié)點數(shù)少),同時也能保證匹配的精度。具體步驟如下:
(1)
(2)
式中,XP、YP和XPi、YPi為節(jié)點P和Pi在圖層M1的坐標(biāo)值。同理,可根據(jù)式(1)、式(2)計算圖層M2中Q節(jié)點與其相鄰節(jié)點的距離LQ和RQ。
(2) 對比M1、M2圖層各節(jié)點L和R是否相同,若兩者相同,則通過對應(yīng)的地圖空間關(guān)系建立相應(yīng)的同名點,否則重復(fù)上述步驟,繼續(xù)進(jìn)行對比。
1.2 七參數(shù)轉(zhuǎn)換模型
通過上述過程,可得到1980西安坐標(biāo)系與1954北京坐標(biāo)系同名點的對應(yīng)坐標(biāo),然后采用七參數(shù)法坐標(biāo)轉(zhuǎn)換模型(Bursary-Wolf模型的簡化形式[10-11])對坐標(biāo)系進(jìn)行統(tǒng)一,數(shù)學(xué)表達(dá)式如下
(3)
式中,Δx、Δy、Δz及εx、εy、εz分別為平移參數(shù)和旋轉(zhuǎn)參數(shù);k為尺度因子。
通過式(3)求出轉(zhuǎn)換參數(shù)后,可以再利用布爾沙模型進(jìn)行各種坐標(biāo)轉(zhuǎn)換。如果僅考慮平面坐標(biāo),Z值近似為0,則式(3)可簡化為
(4)
1.3 AutoCAD數(shù)據(jù)與GIS底圖疊加方法
1.3.1 參數(shù)優(yōu)化
根據(jù)式(4)得到的轉(zhuǎn)換參數(shù)計算坐標(biāo)值,精度難以滿足實際要求。因此,本文采用隨機抽樣一致性(random sample consensus,RANSAC)通過迭代方式對解算的參數(shù)進(jìn)行優(yōu)化。RANSAC是Fischler提出的一種魯棒模型估計方法[12],其基本思想是將一組觀測數(shù)據(jù)分為局內(nèi)點和局外點兩種,初始均設(shè)定為局內(nèi)點,隨機選取觀測數(shù)據(jù)參數(shù)化模型,重復(fù)迭代對觀測數(shù)據(jù)集取樣得到最多局內(nèi)點的參數(shù)估計為最佳模型矩陣。采用RANSAC算法求參數(shù)H的具體流程為:
(1) 在控制點對中隨機選取兩組控制點對,用式(4)解方程組,得到單應(yīng)矩陣參數(shù)H。
(2) 根據(jù)計算得到的參數(shù)H,測試其他控制點對,采用Sampson距離[13]計算誤差距離Dis。
(3) 將誤差距離大于閾值的控制點對設(shè)為局外點,反之則為局內(nèi)點。
(4) 重復(fù)上述步驟,直到遍歷所有點對。
根據(jù)RANSAC算法保留了局內(nèi)點最多的參數(shù)H估計值,該參數(shù)H為最優(yōu)參數(shù)。
1.3.2 疊加流程
AutoCAD數(shù)據(jù)與GIS底圖疊加的具體技術(shù)如下:
(1) 上傳圖形文件。客戶端選擇與WebGIS系統(tǒng)發(fā)布服務(wù)進(jìn)行疊加顯示的AutoCAD圖形文件,WebGIS通過Web Service將該文件上傳至ArcGIS Server,用于發(fā)布服務(wù)。
(2) 讀取圖形文件。ArcObjects不僅具備發(fā)布地圖服務(wù)的功能,還具有靈活的編輯功能和強大的空間分析能力[14]。在GIS服務(wù)器新建一個空白的MXD文檔,使用ArcObjects將AutoCAD圖形作為一個整體由Cadlayer讀取。
(3) AutoCAD數(shù)據(jù)轉(zhuǎn)換為MXD文檔。將WebGIS系統(tǒng)發(fā)布地圖服務(wù)所在的空間位置賦予讀取后的FeatureLayer,并將FeatureLayers添加到MXD圖層集中保存。
(4) 發(fā)布地圖服務(wù)。在服務(wù)器上使用擁有發(fā)布Map Service權(quán)限的用戶標(biāo)識連接到ArcGIS Server,然后新建一個Map Service并進(jìn)行基本配置,將MAD文檔賦予該Map Service,完成服務(wù)發(fā)布。在客戶端,用戶根據(jù)發(fā)布的Map Service及WebGIS發(fā)布的服務(wù)進(jìn)行疊加顯示和在線分析。
1.4 系統(tǒng)設(shè)計
1.4.1 文件上傳
由于WebGIS不能直接使用ArcObjects讀取AutoCAD矢量數(shù)據(jù)文件,因此需要利用Uploadify插件讀取文件并進(jìn)行上傳。Uploadify函數(shù)的參數(shù)為JSON格式,通過修改JSON對象的Key值可進(jìn)行自定義設(shè)置,如Key值中的Value可設(shè)為字符串類型、布爾類型或?qū)ο箢愋汀1疚膶ey值的Value設(shè)為對象類型,實現(xiàn)AutoCAD文件的上傳。
1.4.2 矢量數(shù)據(jù)讀取
ArcGIS Server不能直接將AutoCAD矢量數(shù)據(jù)發(fā)布為Map Service,需要利用ArcObjects將AutoCAD數(shù)據(jù)讀取到FeatureLayer,賦予特定的空間位置并添加至MXD文檔。本文以某宗地為例,在該宗地邊界四周按順時針方向從左上角開始,依次選取8個點的坐標(biāo)(1980西安坐標(biāo)系),然后根據(jù)以上方法,計算這8個點對應(yīng)的1954北京坐標(biāo)(見表1)。
表1 轉(zhuǎn)換后的1954北京坐標(biāo)與已知的1954北京坐標(biāo)
1.4.3 服務(wù)發(fā)布
通過ArcGIS Server發(fā)布保存在MXD中的AutoCAD矢量數(shù)據(jù),客戶端通過加載Map Service與WebGIS發(fā)布的地圖服務(wù),從而實現(xiàn)疊加分析。
1.5 系統(tǒng)功能實現(xiàn)
以Visual Studio2012作為開發(fā)環(huán)境,ArcGIS Server作為地圖服務(wù)平臺,采用JavaScript腳本語言編寫后臺代碼,同時結(jié)合HTML和CSS語言進(jìn)行前臺頁面的展示和布局,使用SQL Server 2008存儲數(shù)據(jù),用Ajax和JSON進(jìn)行前后臺數(shù)據(jù)的交互[15]。數(shù)據(jù)庫用于存儲空間數(shù)據(jù)和屬性數(shù)據(jù),并利用空間數(shù)據(jù)引擎,將AutoCAD數(shù)據(jù)加載到關(guān)系數(shù)據(jù)庫RDBMS。
(1) 數(shù)據(jù)層:建立基礎(chǔ)信息數(shù)據(jù)庫和勘測數(shù)據(jù)庫,通過ArcSDE和SQL Server2008分別實現(xiàn)對空間數(shù)據(jù)和屬性數(shù)據(jù)的存儲。
(2) 應(yīng)用層:以Microsoft.NET框架作為基礎(chǔ)技術(shù)平臺,以ArcGIS作為通用的業(yè)務(wù)GIS平臺。服務(wù)器端利用ArcGIS Server構(gòu)建勘測總規(guī)圖、遙感影像圖、路網(wǎng)和電子地圖底圖相關(guān)服務(wù)。
(3) 表現(xiàn)層:以ArcGIS API for JavaScript開發(fā)庫調(diào)用地圖的相關(guān)服務(wù),通過Ajax進(jìn)行前后臺數(shù)據(jù)的交互,并借助于瀏覽器通過HTML和CSS等語言實現(xiàn)數(shù)據(jù)的直觀展現(xiàn)。
本文基于ArcGIS Server開發(fā)的城市勘測規(guī)劃數(shù)據(jù)管理系統(tǒng),實現(xiàn)了AutoCAD矢量數(shù)據(jù)的實時發(fā)布及AutoCAD矢量數(shù)據(jù)與在線地圖的實時在線疊加功能,建立了AutoCAD矢量數(shù)據(jù)上傳、AutoCAD矢量數(shù)據(jù)AO讀取、空間參考賦值、發(fā)布地圖服務(wù)等一整套技術(shù)流程。
利用本文所提方法在試驗宗地塊上按順時針方向依次從左上角選取了8個點位的坐標(biāo),疊加效果如圖1所示。由圖1可以看出,用戶可更直觀地對AutoCAD圖形文件與GIS地圖進(jìn)行對比分析。
圖1 CAD矢量數(shù)據(jù)發(fā)布
轉(zhuǎn)換后的1954北京坐標(biāo)與已知的1954北京坐標(biāo)對比結(jié)果見表2。由表2可知,點位的MX(X坐標(biāo)中誤差)、MY(Y坐標(biāo)中誤差)分別為0.042 m和0.054 m,平面位置中誤差為MS=0.127 m;X坐標(biāo)、Y坐標(biāo)方向上的小于或等于3MS的控制點個數(shù)分別為7個和8個,分別占總數(shù)的87.5%和100%,說明本文所提方法能夠滿足用戶實時在線疊加和分析的精度要求。
表2 1980西安坐標(biāo)系與1954北京坐標(biāo)轉(zhuǎn)換精度統(tǒng)計 m
本文提出建立了一種基于節(jié)點向量同名節(jié)點(無幾何畸變)的快速轉(zhuǎn)換模型匹配方法,設(shè)計研發(fā)了城市勘測中心數(shù)據(jù)管理系統(tǒng),通過AO(ArcObjects)/ArcGIS Server發(fā)布地圖服務(wù)使不同坐標(biāo)系下的矢量數(shù)據(jù)與在線地圖進(jìn)行同步匹配,實現(xiàn)了用戶利用WebGIS平臺對矢量文件在線審查、分析等功能,實例應(yīng)用結(jié)果表明了該方法的有效性。
[1] 肖建華.城市勘測規(guī)劃信息化建設(shè)30年回顧與展望.[J].城市勘測,2008(4):8-13.
[2] 郭英起,唐彬,張秋江,等.基于空間直角坐標(biāo)系的高精度坐標(biāo)轉(zhuǎn)換方法研究[J].大地測量與地球動力學(xué),2012,32(3):125-128.
[3] 康玲,傅俊峰,王懷清,等.基于ArcGIS Server的WebGIS應(yīng)用系統(tǒng)開發(fā)[J].水電能源科學(xué),2007(1):26-29.
[4] 張新長,郭泰圣,唐鐵.一種自適應(yīng)的矢量數(shù)據(jù)增量更新方法研究[J].測繪學(xué)報,2012,41(4):613-619.
[5] 王閃,彭清山,程琦,等,一種基于WebGIS的AutoCAD矢量數(shù)據(jù)實時發(fā)布方法[J]. 測繪通報,2013(11):106-108.
[6] 崔鐵軍,郭黎.多源地理空間矢量數(shù)據(jù)集成與融合方法探討[J].測繪科學(xué)技術(shù)學(xué)報,2007,24(1):1-4.
[7] 吳風(fēng)華,張亞寧.應(yīng)用WebGIS設(shè)計與實現(xiàn)二三維一體化系統(tǒng)[J].測繪通報,2014(7):125-127.
[8] 董鵬,李金平,白予琦,等.基于改進(jìn)四叉樹索引的矢量地圖疊加分析算法[J].計算機輔助設(shè)計與圖形學(xué)學(xué)報,2004,16(4):530-534.
[9] 郭明武,彭清山,李黎.ArcGIS Server中地圖瓦片實時在線局部更新方法研究[J].測繪通報,2012(2):35-38.
[10] 劉基余,李佂航,王躍虎,等.全球定位系統(tǒng)原理及其應(yīng)用[M].北京:測繪出版社,1999.
[11] 王奇勝,朱長青,符浩軍.利用數(shù)據(jù)點定位的矢量地理數(shù)據(jù)數(shù)字水印算法[J].測繪學(xué)報,2013,42(2):310-316.
[12] BARRANCO M J, NOGUERA J M, CASTRO J, et al. A Context-aware Mobile Recommender System Based on Location and Trajectory[C]∥Management Intelligent Systems. [S.l.]: Springer, 2012: 153-162.
[13] FISCHLER M A. Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography[J]. Readings in Computer Vision, 1987, 24(6):726-740.
[14] 韓敏,戴步成,鄭丹晨,等.ArcGIS Server 電子地圖研究與應(yīng)用[J].測繪科學(xué),2011,36(3):204-206.
[15] 周紅波,趙建民,袁文翠.AutoCAD圖形數(shù)據(jù)向ArcInfo數(shù)據(jù)格式轉(zhuǎn)換問題的研究[J].石油工業(yè)計算機應(yīng)用,2010(2):41-44.
Real-time Publishing and Implementation of Dynamic Vector Data and Online Map
LI Hongyu1,LU Xiaoping1,WANG Zhijun2,DOU Xipeng2
(1. Key Laboratory of Mine Spatial Information Technologies,National Administration of Surverying,Mapping and Geoinformation,Henan Polytechnic University,Jiaozuo 454003, China; 2. Henan Hydraulic Engineering Investigation and Surveying Co.Ltd., Zhengzhou 450003, China)
In order to meet the needs of the application that the AutoCAD vector data and the maps published by WebGIS need to overlay analysis, this paper proposes a method to find the corresponding position of the same name point in two kinds of heterogeneous data, and establishes a method based on the same point of the node vector (no geometric distortions ), and the vector data of different coordinate systems are synchronized with the online map through AO (ArcObjects)/ArcGIS Server.This system can realize the online review and analysis of vector files under WebGIS platform. The application results show that the method is effective.
dynamic vector data; fast matching; correspondence nodes; online map; Uploadify
李鴻宇,盧小平,王志軍,等.動態(tài)矢量數(shù)據(jù)與在線地圖的實時發(fā)布與實現(xiàn)[J].測繪通報,2017(4):104-107.
10.13474/j.cnki.11-2246.2017.0131.
2016-08-18
2016年國家重點研發(fā)計劃(2016YFC0803103);河南省高校創(chuàng)新團隊支持計劃(14IRTSTHN026);河南省創(chuàng)新型科技創(chuàng)新團隊支持計劃
李鴻宇(1990—),男,碩士生,研究方向為地理信息系統(tǒng)。E-mail:lihongyu1022@126.com
盧小平
P208
A
0494-0911(2017)04-0104-04