劉德偉 周菊


摘要:為了提高第三次國土調查工作中舉證照片的核查效率,可以以提高三調成果質量為目標,基于ArcGIS Enegine組件庫,結合多媒體技術、數據庫訪問技術,進行GIS軟件研究與開發,研發出一個具有常用GIS顯示、查詢及矢量、柵格加載的三調外業舉證照片或視頻查詢以及顯示為一體的三調舉證照片核查輔助軟件,從而提高三調核查工作的效率和質量。
關鍵詞:第三次國土調查;ArcGIS Enegine;多媒體技術;數據庫訪問技術;GIS軟件開發
2017年10月國務院啟動第三次全國國土調查,全面細化和完善全國土地利用基礎數據。根據三調要求,采用遙感影像和“互聯網+”實地舉證照片,采用內、外業相結合的方式,全面檢查縣級報送成果的圖斑地類、邊界、屬性標注信息等與遙感影像、舉證照片和實地現狀的一致性。由于舉證照片目前只能在非涉密計算機連接互聯網,通過“第三次全國國土調查在線舉證管理軟件”進行查詢,與三調生產作業工作的涉密計算機之間頻繁的交替修改操作,導致舉證信息檢查繁瑣、效率低下,例如每查詢一個舉證圖斑,都要手動輸入舉證編號信息,非常不方便。因此結合三調生產作業與核查工作實踐經驗總結,利用ArcGIS二次開發技術,研發一款無需實時連接互聯網的舉證照片檢查軟件,并能在涉密計算機上運行,完成同一平臺舉證信息輸入和查詢的高效輔助GIS軟件,有利于提高三調舉證照片核查工作的效率。
1 現狀分析
為了保證調查成果的真實性和準確性,按照三調有關技術標準的要求,需要建立調查成果的縣市級自檢、省級檢查、國家級核查三級檢查機制。目前三調工作已完成內業生產作業和外業舉證工作,逐漸進入自檢查階段。為了加強第三次國土調查工作質量控制,可以利用遙感影像和“互聯網+”實地舉證照片,采用內、外業相結合的方式進行三調成果核查。三調外業舉證工作中,舉證圖斑較多、舉證數量大、舉證地類多種多樣、舉證作業人員對外業舉證技術領悟也有所差異,導致舉證照片拍攝不足和拍攝位置不佳等情況,因此必須對外業舉證照片進行逐一的核查,并記錄下問題舉證照片,反饋給外業舉證隊伍進行重新舉證,所以舉證照片審核工作任務重、時間緊。目前的作業方法是從“第三次全國國土調查在線舉證管理軟件”導出舉證圖斑,疊加作業計算機上的ArcGIS軟件中,逐一核查每個舉證圖斑,在通過非涉密計算機登錄“第三次全國國土調查在線舉證管理軟件”進行舉證信息查詢核對,存在效率低下的問題。
2 需求分析
由于舉證照片數據量大,在線舉證管理軟件上所使用的影像分辨率較低,常常遇到很難確定舉證點是否拍攝到位,是否在目標舉證圖斑內等問題,而核查效率非常低,影響了三調的工作進度。針對核查舉證照片在作業生產、核查工作中的重要性,就開發出一款GIS輔助軟件,其具有矢量地圖定位顯示、舉證照片和舉證視頻查詢功能,并將兩個功能有機的結合起來,形成具有互聯網+“舉證”平臺相似的軟件系統,可大大提高三調舉證照片核查工作的效率與質量。
3 程序開發
3.1 已有資料分析
3.1.1 矢量數據庫、柵格數據
根據已有資料分析,項目生產工作矢量數據庫為ArcGIS格式的GDB、MDB、SHP文件,其中FWD要素類,可以存儲有實地舉證的拍攝點位置XY、方位角、舉證圖斑編號TBYBH,可用于軟件的地理位置定位。柵格數據為ArcGIS格式的TIF、IMG文件,為第三次國土調查的影像數據,分辨率一般在0.5M或1M,可用于舉證的地類判別和位置分析。
3.1.2 舉證照片數據庫
舉證照片數據庫為DB數據庫,擴展為*.db,數據庫存儲有實地舉證的照片和舉證視頻,分別以JPG、MP4形式存儲在DB數據庫里面,數據庫主要存儲有舉證點唯一編號F_ID、舉證圖斑預編號、舉證照片或視頻等信息。
3.2 軟件研發資料準備
①Windows 7系統;②Microsoft Visual VB.net;③ArcGIS Engine 10.1;④System.Data.SQLite。其中ArcGIS Engine是ESRI公司一款功能強大的組件,底層是ArcGIS通用的ArcObject類庫,是用于構建定制應用的一個完整的嵌入式的GIS組件庫;而SQLite是一個類似于Access的單機版數據庫管理系統,它將所有數據庫的定義都保存在一個單一的文件中,其內嵌了一個完整的ADO.NET 2.0引擎,為開發提供了較為完整的支持。
3.3 設計流程圖
3.4 設計路線
(1)利用ArcEngine組件實現地圖控制。在ArcMAP平臺下,將矢量數據舉證信息點地理位置[FWD]、三調地類圖斑[DLTB]、三調柵格影像數據加載,并根據需要進行適當標注處理,并保存為MXD格式地圖,最后利用ArcEngine組件的圖層控件AxMapControl實現mxd文檔的顯示、漫游、查詢等功能;(2)利用VB.net控件實現舉證信息多媒體顯示。通過System.Data.SQLite.DLL動態庫,完成舉證照片的連接與查詢,由于SQLite內嵌了一個完整的 ADO.NET 2.0引擎,所以可實現DB數據庫快速、高效的舉證多媒體信息查詢。舉證數據庫有照片和視頻兩種多媒體格式,可通過PictureBox和AxWindowsMediaPlayer控件完成舉證多媒體照片和視頻的顯示。
3.5 功能實現
程序主界面如下圖:
3.5.1 地圖顯示功能
軟件內嵌ArcMap地圖加載、矢量數據加載、屬性查詢、量距、漫游、縮放全圖、上一視圖等功能,并進行了“選擇查看”舉證多媒體工具擴展。
3.5.2 照片和視頻顯示功能
軟件可以實現單張照片查詢模式和照片組查詢模式,模擬“第三次全國國土調查在線舉證管理軟件”的操作步驟,有利于軟件的使用人員快速入門應用,并且增加鍵盤前后控制照片瀏覽、放大等功能。
3.5.2.1 單張查詢
在程序界面文本框中輸入F_ID字段信息:
xxxxxx-xxx-xxxx-a004-73b9294aace0,即可查詢并顯示舉證照片信息。
m_par = New SQLiteParameter(“@f_id”, TextBox1.Text)
m_com.Parameters.Add(par)
Dim m_read As SQLite.SQLiteDataReader
m_read =m_com.ExecuteReader()
程序同時驅動AxMapControl控制,實現相應舉證點的地理位置顯示,并閃爍舉證點,實現地圖與舉證照片聯動同步。
3.5.2.2 照片組查詢模式
在照片組查詢模式下,根據國家舉證不一致圖斑預編號TBYBH進行查詢,并且聯動更新地圖控件,將同一編號的舉證媒體地理位置分布、拍攝方向完整顯示在地圖顯示控件AxMapControl中,用戶可根據水平滾動條控件或者鍵盤輸入D、F鍵進行前后查詢同組中每個舉證照片,每次查詢聯動閃爍地圖控件上的舉證點,以方便用戶識別當前舉證媒體信息對應哪個舉證點。定位、顯示照片組地理位置代碼:
Dim p_geobuf As IGeometry
p_geobuf=p_top.Buffer(10)
AxMapControl1.Extent=p_geobuf.Envelope
AxMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewGeoSelection,p_sel,p_geobuf.Envelope)
3.5.3 導出舉證信息
根據項目需求實現批量快速提取舉證多媒體文件,單張舉證信息文件導出等功能。
4 結語
通過在ArcGIS Engine組件式開發,改善了三調工作日常核查舉證信息繁重環節,較好的改進常規作業下兩臺計算機跨平臺交互查詢的技術瓶頸,只需在同一臺計算機完成舉證信息輸入、查詢,減少手功輸入步驟,提高了查詢的效率。軟件采用舉證信息數據庫DB包完成核查,無需連接互聯網進行舉證照片核查作業。在實際三調工作中,廣泛應用于作業舉證信息檢查、類型舉證點的篩選、外業出差數據庫修改,舉證信息的核對等。輔助軟件的開發和應用較大提高了三調工作的舉證照片核查效率,有利于三調成果質量的提高。由于軟件高效實用,使用快捷、方便,受到了用戶的一致好評。
參考文獻:
[1] 韓鵬,王泉,王鵬,漆煒,烏萌. 地理信息系統開發-ArcEngine方法[M]. 武漢大學出版社,2008,(9)
[2] 胡孔法. 數據庫原理及應用[M]. 機械工業出版社,2015.(1)
[3] 國務院第三次全國國土調查領導小組辦公室印發.第三次全國國土調查實施方案.2018,(11)