孫玉強(qiáng),陳嘉浩,李 博,范俊甫
(1.中交公路規(guī)劃設(shè)計(jì)院有限公司,北京 100088;2.山東理工大學(xué) 建筑工程學(xué)院,山東 淄博 255049)
我國(guó)國(guó)土資源相關(guān)部門的建設(shè)用地管理和監(jiān)測(cè)工作主要以人工實(shí)地巡查和影像判讀為主,導(dǎo)致公眾參加較少,國(guó)土資源勘察調(diào)研存在發(fā)現(xiàn)難、效率低、時(shí)效差等問(wèn)題。成都、沈陽(yáng)督察局雖基于WebGIS平臺(tái)建立了土地資源調(diào)查網(wǎng)頁(yè),但其操作復(fù)雜、定位精度差,群眾參與度不高,可推廣性不強(qiáng)。為了提高當(dāng)前國(guó)土資源相關(guān)部門的工作效率,需結(jié)合當(dāng)前技術(shù)發(fā)展現(xiàn)狀,緊跟移動(dòng)GIS的發(fā)展步伐,及時(shí)發(fā)現(xiàn)土地資源占用使用行為,實(shí)時(shí)上報(bào)和解決問(wèn)題。國(guó)內(nèi)已有相關(guān)部門結(jié)合移動(dòng)GIS技術(shù)制作了用地調(diào)查系統(tǒng),北京市建立了國(guó)土資源調(diào)查系統(tǒng),主要提供信息上報(bào)、信息管理、信息反饋等服務(wù);福建省國(guó)土資源部門結(jié)合3S技術(shù),構(gòu)建包含數(shù)據(jù)對(duì)接以及短信發(fā)送功能的移動(dòng)土地調(diào)查管理平臺(tái),從而實(shí)現(xiàn)快速調(diào)查、快速上報(bào)、快速管理等功能。
移動(dòng)GIS應(yīng)用技術(shù)的外在承載形式為便攜式移動(dòng)終端,結(jié)合移動(dòng)互聯(lián)網(wǎng)技術(shù),通過(guò)GPS或基站實(shí)現(xiàn)設(shè)備定位以及地圖的瀏覽、標(biāo)繪等基本功能。目前,土地資源調(diào)查客戶端的主要技術(shù)路線為:利用3S技術(shù)實(shí)現(xiàn)國(guó)土資源的調(diào)研一體化,從而構(gòu)建高效、便捷的立體跟蹤調(diào)研體系;利用數(shù)據(jù)庫(kù)技術(shù)和移動(dòng)GIS技術(shù)實(shí)現(xiàn)海量空間數(shù)據(jù)的管理和相應(yīng)空間數(shù)據(jù)庫(kù)的管理;利用矢量地圖和高分辨率遙感影像對(duì)不合理用地進(jìn)行圈定,上傳被占用土地資源的具體信息;利用GPS技術(shù)和基站進(jìn)行導(dǎo)航定位,實(shí)現(xiàn)現(xiàn)場(chǎng)的調(diào)查取證。
移動(dòng)GIS是提供移動(dòng)中的、分布式的、隨遇性的移動(dòng)地理信息服務(wù)的GIS,國(guó)際GIS界將GIS+GPS+無(wú)線互聯(lián)網(wǎng)一體化稱為移動(dòng)GIS。移動(dòng)GIS可實(shí)現(xiàn)數(shù)據(jù)的上傳和下載、地圖的瀏覽、點(diǎn)位標(biāo)記等基本功能。移動(dòng)GIS涉及了無(wú)線終端技術(shù)、無(wú)線網(wǎng)絡(luò)通信技術(shù)、分布式的空間數(shù)據(jù)管理技術(shù)、移動(dòng)數(shù)據(jù)庫(kù)技術(shù)和移動(dòng)GIS的二次開(kāi)發(fā)技術(shù)。分布式的空間數(shù)據(jù)管理技術(shù)是移動(dòng)GIS的關(guān)鍵技術(shù)之一,分布式空間數(shù)據(jù)庫(kù)系統(tǒng)主要指在物理分布邏輯上集中的分布式結(jié)構(gòu),移動(dòng)終端巨大的用戶量決定了用戶對(duì)信息的需求差別也很大,單一的數(shù)據(jù)源無(wú)法滿足用戶需求,這就要求必須具備地理上分布的多種多樣的數(shù)據(jù)源,借助現(xiàn)有的分布式處理技術(shù)來(lái)支持多用戶的并發(fā)訪問(wèn)。移動(dòng)GIS的二次開(kāi)發(fā)技術(shù)主要圍繞面向底層組件式開(kāi)發(fā)技術(shù)和面向應(yīng)用層開(kāi)發(fā)技術(shù)兩方面進(jìn)行。底層組件式開(kāi)發(fā)技術(shù)主要依托JNI機(jī)制實(shí)現(xiàn),通過(guò)JNI機(jī)制,利用谷歌公司推出的Android NDK二次開(kāi)發(fā)工具進(jìn)行技術(shù)上的具體實(shí)現(xiàn)。應(yīng)用層開(kāi)發(fā)主要借助谷歌公司提供的開(kāi)源Android Framework框架進(jìn)行。
本文基于天地圖移動(dòng)API和AndroidAPI進(jìn)行移動(dòng)GIS的二次開(kāi)發(fā),實(shí)現(xiàn)拍照、數(shù)據(jù)的存儲(chǔ)與上傳、地圖的縮放、標(biāo)繪等功能,將傳統(tǒng)GIS操作運(yùn)用到移動(dòng)設(shè)備當(dāng)中,實(shí)現(xiàn)操作便捷、可移植性強(qiáng)的土地資源調(diào)查系統(tǒng)。
使用Web Service技術(shù)進(jìn)行Android與Web服務(wù)器的操作,通常所說(shuō)的Web Service就是遠(yuǎn)程服務(wù)器對(duì)外公開(kāi)了方法或服務(wù),通過(guò)調(diào)用遠(yuǎn)程服務(wù)器上的方法進(jìn)行數(shù)據(jù)傳輸。開(kāi)發(fā)者下載Ksoap包,通過(guò)該包實(shí)現(xiàn)客戶端與服務(wù)器的Web Service通信。首先實(shí)例化SoapObject對(duì)象,指定Web Service的命名空間以及調(diào)用方法名稱。通過(guò)SoapObject類的addProperty方法設(shè)置調(diào)用參數(shù),其次生成調(diào)用Web Service程序的SOAP請(qǐng)求信息,定義傳輸對(duì)象,指明WSDL文檔URL,并且利用此對(duì)象調(diào)用Web Service端的操作方法進(jìn)行數(shù)據(jù)傳輸。
為保障國(guó)家數(shù)據(jù)安全,GPS接收的數(shù)據(jù)增加了非線性的偏移量,且各地區(qū)的偏移量不同,導(dǎo)致調(diào)用地圖的過(guò)程中地圖上位置與實(shí)際位置有偏差,用戶使用過(guò)程中產(chǎn)生定位不準(zhǔn)確的現(xiàn)象。因此,開(kāi)發(fā)者在系統(tǒng)開(kāi)發(fā)設(shè)計(jì)過(guò)程中需要對(duì)數(shù)據(jù)進(jìn)行糾偏處理,使定位點(diǎn)與坐標(biāo)經(jīng)緯度相匹配。
在客戶端中加載地圖,選擇戶外較為空曠、GPS信號(hào)較好的區(qū)域進(jìn)行定位,選定實(shí)際點(diǎn)位A點(diǎn),在地圖上查看對(duì)應(yīng)點(diǎn)位B點(diǎn),然后量測(cè)圖上B點(diǎn)對(duì)應(yīng)的實(shí)際點(diǎn)位C點(diǎn)與A點(diǎn)在X、Y方向上的距離差。換算出經(jīng)度偏移量和緯度偏移量。通過(guò)以下公式來(lái)計(jì)算真實(shí)經(jīng)緯度坐標(biāo),真實(shí)坐標(biāo)=GPS坐標(biāo)+偏移量。通過(guò)多次量測(cè)與實(shí)驗(yàn),可以得到真實(shí)的經(jīng)緯度坐標(biāo)。
Map.X=GpsCoordinate.X+(int)row[“經(jīng)度偏移”]
Map.Y=GpsCoordiante.Y+(int)row[“緯度偏移”]
Android手機(jī)系統(tǒng)是以Java語(yǔ)言為基礎(chǔ)并通過(guò)Java語(yǔ)言中的數(shù)據(jù)流實(shí)現(xiàn)數(shù)據(jù)的傳輸,開(kāi)發(fā)者可以通過(guò)Java中數(shù)據(jù)流的類操作使用戶實(shí)現(xiàn)磁盤(pán)文件的訪問(wèn)。應(yīng)用程序的數(shù)據(jù)文件默認(rèn)保存在/data/data/<包名稱>/files目錄下,Android手機(jī)中有外置SD卡和手機(jī)內(nèi)部存儲(chǔ)兩種方式,可通過(guò)android.os.Environment取得目錄的信息來(lái)判斷SD卡是否存在,文件可保存在指定的文件夾中。Android系統(tǒng)中的每個(gè)應(yīng)用程序數(shù)據(jù)都是采用私有形式進(jìn)行操作的,難以被外部應(yīng)用程序訪問(wèn)。為使其他應(yīng)用程序能操作本程序數(shù)據(jù),通過(guò)ContentProvider提供數(shù)據(jù)操作的接口,將底層數(shù)據(jù)封裝成ContentProvider,使程序保持良好的擴(kuò)展性和開(kāi)放性。
本系統(tǒng)在服務(wù)器端配置MySQL數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)的存儲(chǔ)。MySQL是開(kāi)源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),用戶可以對(duì)數(shù)據(jù)庫(kù)進(jìn)行各種操作,在C/S架構(gòu)中,可以通過(guò)調(diào)用Web Service的方法進(jìn)行數(shù)據(jù)庫(kù)中表信息的增、刪、改、查等操作。
本實(shí)驗(yàn)的開(kāi)發(fā)平臺(tái)為Windows 8操作系統(tǒng),開(kāi)發(fā)工具為 Android Studio 2.0和Visual Studio 2013,使用Java和C#兩種語(yǔ)言,數(shù)據(jù)庫(kù)為MySQL5.6,客戶端的測(cè)試和運(yùn)行環(huán)境為Android智能手機(jī)。
本實(shí)驗(yàn)實(shí)現(xiàn)了基于Android土地調(diào)查客戶端的設(shè)計(jì)與開(kāi)發(fā),提供了用戶管理、土地調(diào)查上報(bào)以及調(diào)查記錄管理三大功能。用戶管理系統(tǒng)中,為保證調(diào)查信息安全性和真實(shí)可靠性,用戶在注冊(cè)賬戶時(shí),需調(diào)用手機(jī)攝像頭拍攝個(gè)人面部作為頭像,準(zhǔn)確填寫(xiě)個(gè)人身份信息且通過(guò)身份核驗(yàn)后方可注冊(cè)成功,注冊(cè)成功后用戶信息除姓名和身份證號(hào)外均可修改。土地調(diào)查上報(bào)系統(tǒng)是客戶端最主要的功能,用戶登錄成功后進(jìn)入調(diào)查界面,填寫(xiě)土地調(diào)查信息,通過(guò)拍照或相冊(cè)兩種方式上傳地塊圖片,方便管理人員更好的確認(rèn)被占用地塊的用地類型,以采取相應(yīng)的解決措施。用戶可選擇“自動(dòng)標(biāo)繪”或“手動(dòng)標(biāo)繪”兩種方式來(lái)獲得地塊的位置信息。其中“自動(dòng)標(biāo)繪”通過(guò)GPS或基站定位,每隔一定時(shí)間或一定距離采集一次點(diǎn)位信息,“手動(dòng)標(biāo)繪”主要針對(duì)用戶無(wú)法直接到達(dá)的地塊,通過(guò)在地圖上標(biāo)記點(diǎn)位描繪出目標(biāo)地塊的范圍,用戶需選區(qū)足夠的點(diǎn)位以確保采集地標(biāo)的準(zhǔn)確性。調(diào)查信息全部填寫(xiě)完畢后點(diǎn)擊“上傳”按鈕,客戶端將信息打包存入服務(wù)器端的數(shù)據(jù)庫(kù)中。調(diào)查記錄管理系統(tǒng)記錄了所有用戶上傳的土地調(diào)查信息,管理者可通過(guò)此系統(tǒng)查看各種土地占用現(xiàn)象,可以獲得調(diào)查者的身份信息和目標(biāo)地塊區(qū)域的照片以及坐標(biāo)信息;信息上傳者可查看已上報(bào)信息的處理情況。其中,調(diào)查區(qū)域的手動(dòng)標(biāo)繪和自動(dòng)標(biāo)繪界面如圖1所示,用戶可實(shí)現(xiàn)更改地圖類型及地圖縮放等基本操作。
圖1 調(diào)查區(qū)域的手動(dòng)標(biāo)繪和自動(dòng)標(biāo)繪
本文針對(duì)國(guó)土資源調(diào)查領(lǐng)域遇到的數(shù)據(jù)快速采集等問(wèn)題,設(shè)計(jì)并實(shí)現(xiàn)了基于Android系統(tǒng)的土地實(shí)時(shí)調(diào)查客戶端,實(shí)現(xiàn)用戶登錄與注冊(cè)、被占用目標(biāo)地塊信息編輯與上報(bào)以及調(diào)查記錄查看與管理三大功能。客戶端調(diào)用天地圖API,通過(guò)GPS/基站實(shí)現(xiàn)設(shè)備定位,并結(jié)合地圖糾偏技術(shù)提高地塊信息采集精度,使用Android API實(shí)現(xiàn)地物拍照和信息存儲(chǔ)等功能。通過(guò)調(diào)用Web服務(wù),將客戶端與服務(wù)器聯(lián)系起來(lái),實(shí)現(xiàn)數(shù)據(jù)上傳和下載功能,將土地資源調(diào)查機(jī)制簡(jiǎn)潔化,使廣大群眾能夠參與到土地資源調(diào)查工作中去,減少土地管理相關(guān)部門工作量,提高工作效率。