張中源
摘要:利用MobileGIS技術(shù)空間數(shù)據(jù)加載功能,采用Java語言,利用衛(wèi)星定位、GIS空間分析等技術(shù),設(shè)計(jì)并實(shí)現(xiàn)管線智能數(shù)據(jù)采集系統(tǒng),為測繪單位進(jìn)行管線測繪提供更加便捷、智能的野外數(shù)據(jù)采集工具,最大限度地提高野外工作效率與成果質(zhì)量。經(jīng)過某實(shí)地項(xiàng)目生產(chǎn)測試證明,基于MobileGIS的管線智能調(diào)查系統(tǒng)在實(shí)際項(xiàng)目生產(chǎn)中發(fā)揮著重要作用,相比傳統(tǒng)紙質(zhì)錄入方式,生產(chǎn)效率與成果質(zhì)量提高30%以上。
關(guān)鍵詞:Android? MobileGIS? ArcGIS? 管線測繪? 智能采集? 地圖瓦片
Design and Implementation of Pipeline Intelligent Data Acquisition System Based on MobileGIS
ZHANG Zhongyuan
(The Third Geodetic Team of the Ministry of Natural Resources of PRC, Chengdu, Sichuan Province, 610100 China)
Abstract: Using the spatial data loading function of MobileGIS technology, using Java language, satellite positioning, GIS spatial analysis and other technologies, the pipeline intelligent data acquisition system is designed and implemented to provide more convenient and intelligent field data acquisition tools for surveying and mapping units to conduct pipeline surveying and mapping, so as to maximize the efficiency of field work and the quality of results. The production test of a field project shows that the pipeline intelligent investigation system based on MobileGIS plays an important role in the actual project production. Compared with the traditional paper input method, the production efficiency and achievement quality are improved by more than 30%.
Key Words: Android; MobileGIS; ArcGIS; Pipeline mapping; Intelligent acquisition; Map tile
地下管線被稱作城市的“血管”,伴隨著我國城市化進(jìn)程的加快,城市地下管線的建設(shè)也越來越復(fù)雜,相關(guān)政府職能部門也高度重視地下空間的開發(fā)利用。同時(shí),隨著社會(huì)的發(fā)展,信息技術(shù)水平的進(jìn)步,對于外業(yè)測繪工作在數(shù)據(jù)獲取的現(xiàn)勢性和獲取能力上也提出了更高的要求[1]。
近年來,隨著智能手機(jī)在存儲(chǔ)和計(jì)算能力上的快速發(fā)展,為移動(dòng)GIS技術(shù)在智能終端設(shè)備上的應(yīng)用創(chuàng)造了便利的條件[2,3],基于位置服務(wù)的移動(dòng)GIS系統(tǒng)改變了傳統(tǒng)的信息采集方式,以智能手機(jī)為載體來實(shí)現(xiàn)傳統(tǒng)測繪行業(yè)野外數(shù)據(jù)采集的智能化、便捷化成為可能[4-8]。目前有一些野外測繪數(shù)據(jù)采集過程中已經(jīng)實(shí)現(xiàn)屬性信息的簡單錄入,但在野外實(shí)現(xiàn)管線及附屬物符號化詳細(xì)顯示、模板定制、空間分析以及結(jié)合語音識別等智能化功能實(shí)現(xiàn)較少。目前很多單位仍采用傳統(tǒng)的管線數(shù)據(jù)采集方式,即在野外使用紙質(zhì)繪制草圖并記錄主要屬性,內(nèi)業(yè)加班將紙質(zhì)數(shù)據(jù)錄入計(jì)算機(jī),此種方式工作效率低下且數(shù)據(jù)容易出錯(cuò),給后期內(nèi)業(yè)工作帶來諸多不便。
基于以上情況,本文結(jié)合筆者從事地下管線探測多年以來的野外作業(yè)經(jīng)驗(yàn)和實(shí)踐,建立基于MobileGIS技術(shù)的管線智能調(diào)查系統(tǒng),實(shí)現(xiàn)管線要素信息的智能化錄入、管線及附屬物的分類符號化顯示以及在線地圖本地化等功能,為專業(yè)管線測繪單位提供便捷化的野外數(shù)據(jù)采集工具,極大地提高野外工作效率與成果質(zhì)量。
1 關(guān)鍵技術(shù)
1.1 管線要素分類符號化技術(shù)
本文中管線要素空間圖形數(shù)據(jù)在移動(dòng)端以shp格式進(jìn)行存儲(chǔ),管線要素線型及附屬物的符號通過ArcGIS Pro創(chuàng)建的Mobile style樣式進(jìn)行實(shí)現(xiàn)。
首先通過ArcGIS Pro制作Mobile Style樣式文件,該文件包括點(diǎn)符號與線樣式。由于管線要素要實(shí)現(xiàn)不同管類不同符號化顯示,在加載時(shí)需要以管類為唯一值加載,加載結(jié)果如圖1所示。
DictionarySymbolStyle symbolStyle = new DictionarySymbolStyle(樣式文件路徑);
symbolStyle.loadAsync();
Symbol source_currentSymbol = symbolStyle.getSymbolAsync(關(guān)鍵字).get();
UniqueValueRenderer uniqueValueRenderer = new UniqueValueRenderer();
uniqueValueRenderer.getFieldNames().add(分類字段);
List
currentValue.add(樣式名);
uniqueValueRenderer.getUniqueValues().add(new UniqueValueRenderer.UniqueValue(樣式名, 樣式名, currentSymbol, currentValue));
1.2底圖離在線一體化技術(shù)
在野外繪制管線要素需要基于底圖來判斷實(shí)際位置,而日常使用的底圖均為在線底圖,由于野外網(wǎng)絡(luò)信號的不穩(wěn)定性,為方便野外使用在線底圖數(shù)據(jù),需要將在線底圖數(shù)據(jù)下載到本地以及實(shí)現(xiàn)無縫加載在線與離線底圖數(shù)據(jù)。
瓦片金字塔是采用倍率方法形成多分辨率層次,每層細(xì)分為大小相等的矩形瓦片,瓦片包含固定數(shù)據(jù)的采樣點(diǎn)[9]。移動(dòng)端使用的在線地圖其實(shí)是由一個(gè)個(gè)地圖瓦片按規(guī)律拼接而成的,不同層級的地圖也有不同的瓦片構(gòu)成,瓦片存儲(chǔ)在對應(yīng)發(fā)布商的服務(wù)器中,瓦片本身不帶坐標(biāo),是根據(jù)其URL中的行列號及層級來進(jìn)行顯示。以下以國家天地圖數(shù)據(jù)源為例。
(1)根據(jù)經(jīng)緯度坐標(biāo)計(jì)算瓦片行列號。按照ArcGIS地圖瓦片的生產(chǎn)規(guī)則,根據(jù)范圍換算出不同比例尺下的瓦片行列號范圍[10]。行列號根據(jù)數(shù)據(jù)源的原點(diǎn)、地圖比例尺、圖片分辨率以及瓦片圖片大小確定。
國家天地圖數(shù)據(jù)源根據(jù)坐標(biāo)計(jì)算行列號:
double n = Math.pow(2,zoom);
int column_tile = (int)Math.floor((lon + 180) / 360 * n);
int row_tile = (int)(Math.floor( (1 - Math.log(Math.tan(lat * Math.PI /180.0) + 1 / Math.cos(lat * Math.PI /180.0)) / Math.PI) / 2 * n));
此處zoom指層級,lon指經(jīng)度,lat指緯度。
(2)將瓦片下載到本地并按目錄組織。將層級與獲取到的行列號按照天地圖的url格式組織并進(jìn)行瓦片下載,下載后在本地按層級/行/列進(jìn)行存儲(chǔ)(見圖2)。
http://{subDomain}.tianditu.com/DataServer?T=vec_c&x={col}&y={row}&l={level}
(3)加載瓦片時(shí)首先根據(jù)坐標(biāo)計(jì)算行列號后查詢本地是否有瓦片,有對應(yīng)瓦片則加載本地?cái)?shù)據(jù),否則請求在線數(shù)據(jù),以此來實(shí)現(xiàn)離在線地圖的一體化無縫集成。
1.3模板定制與適配技術(shù)
由于管線樣式及信息采集屬性在各地均有差別,要實(shí)現(xiàn)在移動(dòng)端進(jìn)行屬性采集必須做到模板適配,用戶需在使用前制作對應(yīng)模板,包括管點(diǎn)與管線字段及類型、枚舉范圍(字段的取值范圍)、屬性邏輯顯示(如不同的附屬設(shè)施需要用戶采集不同的屬性信息)、管線類型及顏色等模板。移動(dòng)端在加載時(shí)需要根據(jù)不同的字段、管類、枚舉范圍等配置顯示不同的屬性信息與邏輯關(guān)系。
2 系統(tǒng)設(shè)計(jì)
2.1系統(tǒng)架構(gòu)
本系統(tǒng)主要適用于測繪人員在野外作業(yè)使用,運(yùn)行于Android系統(tǒng)手機(jī)或平板電腦終端上,結(jié)合衛(wèi)星定位、空間分析、語音識別等技術(shù)為管線測繪人員在野外實(shí)現(xiàn)草圖繪制與管線信息采集功能。系統(tǒng)主要由支持層、數(shù)據(jù)層、服務(wù)層以及表現(xiàn)層組成,如圖3所示。
(1)支持層。由于Android系統(tǒng)的開源性及普適性,本系統(tǒng)設(shè)計(jì)運(yùn)行于Android系統(tǒng)終端上。系統(tǒng)研發(fā)使用Android Studio進(jìn)行開發(fā),結(jié)合實(shí)際工作的需求,開發(fā)平臺(tái)采用ArcGIS Runtime for Android平臺(tái)。
(2)數(shù)據(jù)層。主要包括在野外使用的在線或離線的底圖數(shù)據(jù),以及信息采集產(chǎn)生的圖形數(shù)據(jù)、屬性數(shù)據(jù)與多媒體數(shù)據(jù)。
(3)服務(wù)層。主要為系統(tǒng)表現(xiàn)出提供接口服務(wù),主要包括空間分析、數(shù)據(jù)查詢、地理位置以及地圖加載顯示等服務(wù),在表現(xiàn)層上直接調(diào)用對應(yīng)接口實(shí)現(xiàn)業(yè)務(wù)功能。
(4)表現(xiàn)層。表現(xiàn)層直接展示給用戶,與用戶實(shí)現(xiàn)交互操作。主要包括工程管理、數(shù)據(jù)加載、要素編輯以及屬性查詢等輔助工具。
2.2系統(tǒng)功能設(shè)計(jì)
系統(tǒng)功能模塊主要由工程管理、數(shù)據(jù)加載、要素編輯以及輔助工具等4個(gè)功能模塊,如圖4所示。
(1)工程管理。主要用來根據(jù)模板新建工程或?qū)Ρ緳C(jī)中的所有工程進(jìn)行管理。系統(tǒng)會(huì)自動(dòng)顯示工程中的管線及附屬物數(shù)量、工程的創(chuàng)建信息等,也便于后期對工作量的進(jìn)一步統(tǒng)計(jì)。具體包括新建工程、切換工程、分享工程及刪除工程操作。
(2)數(shù)據(jù)加載。主要用于加載在線或離線柵格底圖以及加載本機(jī)中的矢量數(shù)據(jù)。系統(tǒng)支持天地圖、ArcGIS地圖等在線數(shù)據(jù),支持tpk、vtpk、mmpk、tif、img、shp、geodatabase等多種離線柵格或矢量數(shù)據(jù),系統(tǒng)支持對天地圖、ArcGIS底圖離線下載到本機(jī)以及無縫加載在線與離線底圖數(shù)據(jù)。在矢量數(shù)據(jù)加載中,系統(tǒng)支持對矢量數(shù)據(jù)按字段組合進(jìn)行自定義標(biāo)注,用戶可以對矢量數(shù)據(jù)進(jìn)行自定義符號化。
(3)要素編輯。該功能為系統(tǒng)的主要業(yè)務(wù)操作,使用最頻繁。用戶選擇地圖位置與對應(yīng)管類即可輸入管線主要屬性,系統(tǒng)實(shí)時(shí)對管線要素及附屬物進(jìn)行分類符號化表示,讓用戶感官更直接,同時(shí)降低了軟件的使用技術(shù)門檻。系統(tǒng)提供屬性繼承、AI語音識別等功能來輔助用戶實(shí)現(xiàn)更便捷的信息錄入操作。系統(tǒng)支持線上加點(diǎn)、接已有點(diǎn)等多種復(fù)雜GIS操作,提供照片、音頻、視頻等多媒體信息的錄入,擴(kuò)展了外業(yè)屬性的格式,極大地方便外業(yè)測繪人員操作。
(4)輔助工具。主要為測繪人員在野外提供空間量算、坐標(biāo)定位、軌跡記錄、地名搜索以及系統(tǒng)設(shè)置等輔助工具。系統(tǒng)為便于后期維護(hù),支持異常日志記錄功能,當(dāng)系統(tǒng)屬性異常時(shí),研發(fā)人員直接查看本地的異常日志即可查找異常原因。
3 典型應(yīng)用實(shí)例
本系統(tǒng)以成都市某地區(qū)地下管線探測項(xiàng)目為例進(jìn)行野外數(shù)據(jù)采集應(yīng)用。系統(tǒng)運(yùn)行在Android6.0以上的手機(jī)或平板電腦終端上,完全代替?zhèn)鹘y(tǒng)通過紙質(zhì)記錄的方式,具體工作界面如圖5所示。作業(yè)人員在現(xiàn)場實(shí)時(shí)繪制管線圖并錄入相關(guān)屬性,導(dǎo)出成果即為數(shù)據(jù)庫。作業(yè)人員在實(shí)際作業(yè)的過程中還進(jìn)行了硬件集成方面的小創(chuàng)新,將手機(jī)通過腕帶固定在手臂上,為野外作業(yè)帶來極大的方便。經(jīng)過實(shí)地管線數(shù)據(jù)采集驗(yàn)證了系統(tǒng)設(shè)計(jì)的合理性與工程化應(yīng)用的可操作性。
4 結(jié)語
本文所涉及的管線智能數(shù)據(jù)采集系統(tǒng)采用分層架構(gòu),提高了系統(tǒng)數(shù)據(jù)加載與處理的能力,同時(shí)結(jié)合實(shí)際應(yīng)用需求采用了語音識別、模板適配、底圖離在線、屬性繼承等多種技術(shù),更能符合一線作業(yè)人員的使用習(xí)慣,大大提高了軟件的通用性。經(jīng)過實(shí)際生產(chǎn)測試,相比較傳統(tǒng)的在野外紙質(zhì)記錄信息、內(nèi)業(yè)加班錄入信息而言,本系統(tǒng)可以一鍵成庫,日均減少作業(yè)人員內(nèi)業(yè)加班時(shí)間2h以上,其生產(chǎn)效率與成果質(zhì)量提升30%以上。
參考文獻(xiàn)
[1]劉先林.移動(dòng)互聯(lián)時(shí)代的GIS[J].遙感信息,2017,32(1):1-4.
[2]熊鵬波.淺談基于Android的移動(dòng)地理信息采集系統(tǒng)建設(shè)[J].測繪與空間地理信息,2016,39(7):179-181.
[3]聶上森.基于ArcGIS Runtime SDK的外業(yè)數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].成都:西南交通大學(xué),2015.
[4]王衛(wèi)紅,張鵬靈.基于移動(dòng)GIS的地塊采集系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2017,34(5):200-204.
[5]魏芬娟,陳崇成,葉曉燕,等.森林資源調(diào)查與督查的移動(dòng)GIS研發(fā)及應(yīng)用[J].計(jì)算機(jī)工程與應(yīng)用,2020,56(6):231-238.
[6]陳子輝.移動(dòng)GIS在土地調(diào)查中的應(yīng)用研究[J].2019智慧地球,2019(01):117-118.
[7]張朝陽,趙相偉,孫中昶.移動(dòng)GIS生態(tài)環(huán)境核查系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].北京測繪,2020,34(4):449-453.
[8]余正華,黃遞全,王鐵軍.移動(dòng)GIS技術(shù)在國土資源管理中的應(yīng)用[J].測繪與空間地理信息,2020,43(11):116-121.
[9]劉義,陳犖,景寧,等.利用MapReduce進(jìn)行批量遙感影像瓦片金字塔構(gòu)建[J].武漢大學(xué)學(xué)報(bào):信息科學(xué)版,2013(3):278-282.
[10]景西安,王凱,郭朝陽.AutoCAD自動(dòng)創(chuàng)建ArcGis地圖瓦片數(shù)據(jù)設(shè)計(jì)與實(shí)現(xiàn)[J].測繪技術(shù)裝備,2018(3):81-83.