鄭 磊,楊德紅,孫德亮
(1.重慶市勘測院,重慶400020;2.重慶師范大學 地理科學學院,重慶400047)
隨著遙感技術的不斷進步,遙感技術在國民經(jīng)濟的各相關行業(yè)發(fā)揮著越來越重要的作用,特別是在農(nóng)業(yè)估產(chǎn)、林業(yè)調(diào)查、土壤、水文、地質(zhì)分析、海洋環(huán)境監(jiān)測、城市土地利用、國土資源調(diào)查、多種自然災害監(jiān)測與評估等方面,更是發(fā)揮著不可替代的作用[1-4],其中作為遙感技術應用基礎的遙感衛(wèi)星數(shù)據(jù)的質(zhì)量的好壞將很大程度上影響遙感技術應用的效果,因此,在遙感技術應用的過程中,選取合適、高質(zhì)量的遙感衛(wèi)星數(shù)據(jù)就顯得十分重要?;谝陨闲枨?,設計開發(fā)了遙感衛(wèi)星數(shù)據(jù)管理查詢系統(tǒng)V2008,探討了以arcengine[5-6]與arcgis server[7]為基礎的遙感衛(wèi)星數(shù)據(jù)管理,以期為地理信息數(shù)據(jù)的檔案信息管理提供技術支持。
衛(wèi)星數(shù)據(jù)接收站長期以來接收大量的衛(wèi)星數(shù)據(jù),但這些數(shù)據(jù)在接收以后,僅僅存儲于計算機硬盤中,這給用戶使用這些衛(wèi)星數(shù)據(jù)帶來了不便。在實際應用過程中,對遙感衛(wèi)星數(shù)據(jù)的查找很繁瑣。要利用獲取數(shù)據(jù)的時間給相應的文件夾命名,數(shù)據(jù)分布在數(shù)據(jù)服務器不同的硬盤分區(qū)上。用戶在查找數(shù)據(jù)時,僅根據(jù)時間(文件夾的名稱)打開相應文件,然后再判斷是否是需要的數(shù)據(jù),這就要求數(shù)據(jù)使用者對計算機硬盤的命名規(guī)則有一定的了解。如果使用計算機操作系統(tǒng)自帶的搜索功能,則面臨2方面的問題:一是搜索的針對性不強(不能針對遙感數(shù)據(jù)的相關信息進行搜索,只能通過文件夾或文件的名字來進行搜索);二是搜索速度極慢,這是由于操作系統(tǒng)自帶的搜索是采用遍歷計算機硬盤所有文件,然后再逐一判斷的方式搜索,大大降低了搜索的速度。另外,如果數(shù)據(jù)僅僅是存儲在數(shù)據(jù)服務器上,除服務器管理員之外的其它普通數(shù)據(jù)用戶要使用這些數(shù)據(jù)就非常不方便。加之地面接收站每天都有大量的數(shù)據(jù)接收,使得這一弊端顯得越來越突出。
根據(jù)項目的實際需求,項目所處理的對象是遙感衛(wèi)星數(shù)據(jù),所有的功能都是圍繞遙感衛(wèi)星數(shù)據(jù)進行。在數(shù)據(jù)服務器上,所有遙感衛(wèi)星數(shù)據(jù)的信息都是以文本文件的形式存放在服務的硬盤分區(qū)之上,如圖1所示。在同一文件夾下,有3個名字相同(擴展名不同)的文件,分別是記錄數(shù)據(jù)信息的文本文件(如圖2所示)、數(shù)據(jù)的預覽圖片和衛(wèi)星數(shù)據(jù)。
遙感衛(wèi)星數(shù)據(jù)文件(.down)和相關信息均是由接收系統(tǒng)自動生成,并且每個“.down”文件小則幾百兆,大至上千兆,因此,在開發(fā)本系統(tǒng)中,客觀要求不能移動這些數(shù)據(jù),要保證數(shù)據(jù)在硬盤上的物理位置不發(fā)生任何改變。
系統(tǒng)設計不能改變遙感衛(wèi)星數(shù)據(jù)在數(shù)據(jù)服務器上的物理存儲位置。在這種情況下,就只能建立一個數(shù)據(jù)的索引,記錄相應數(shù)據(jù)的物理存儲位置。建立索引的依據(jù)就是描述每幅衛(wèi)星數(shù)據(jù)的文本文件。每個文本文件中的內(nèi)容格式都相同,這為采用批處理方式讀取文本信息提供了可能。在文本文件中包括原文件名、新文件名、生成時間、文件大小等20余項信息,對于這些信息的具體含義在此不做解釋。文本信息中還包括了描述該幅衛(wèi)星數(shù)據(jù)空間范圍的坐標信息——4個點的坐標(數(shù)據(jù)經(jīng)過剪切后,均是四邊形的圖幅范圍)。數(shù)據(jù)的空間范圍也是數(shù)據(jù)查詢的重要依據(jù),因此系統(tǒng)對遙感衛(wèi)星數(shù)據(jù)信息采用以下方式存儲:
1)所有數(shù)據(jù)信息建立一個“索引文件”,因其具有空間信息,所以采用能記錄空間信息的文件格式,系統(tǒng)中采用的是Shapefile[8]文件。
2)一幅衛(wèi)星數(shù)據(jù)的信息對應Shapefile文件中的一條記錄。
3)Shapefile文件的屬性表記錄的是衛(wèi)星數(shù)據(jù)的各項信息,其字段包括原文件名、新文件名、生成時間、文件大小等(不包括4個點的坐標信息)。
4)根據(jù)每幅衛(wèi)星數(shù)據(jù)的空間范圍(4個點的坐標)生成一多邊形,記錄在Shapefile文件中(Shapefile文件的“Shape”字段設計為“Polygon”)。
5)每條記錄的“新文件名”是其唯一標識,不允許同一幅衛(wèi)星數(shù)據(jù)的信息記錄多次。
系統(tǒng)之所以采用Shapefile文件存儲這些信息,而不采用數(shù)據(jù)庫如Sql Server來存儲,主要有以下一些原因:
1)Shpefile文件可以記錄信息的空間信息,而一般數(shù)據(jù)庫不能很好的存儲,空間數(shù)據(jù)庫如ArcSDE等雖然能存儲海量空間信息,但空間數(shù)據(jù)庫需要支付費用,而且本系統(tǒng)中所涉及到的空間數(shù)據(jù)也不大,采用空間數(shù)據(jù)庫就顯得浪費。
2)系統(tǒng)采用ArcEngine和Arcgis Server分別進行C/S和B/S程序的開發(fā)。要把兩者很好地結合起來,除了空間數(shù)據(jù)庫ArcSDE外,Shapefile文件是最好的選擇。采用ArcEngine開發(fā)的桌面程序可以直接對Shapefile文件進行操作,而采用Arcgis Server開發(fā)的Web服務器可以直接訪問Shapefile文件發(fā)布的服務
3)本系統(tǒng)查詢部分涉及到大量的空間分析功能,如直接使用一般數(shù)據(jù)庫存儲,則需要開發(fā)者自己編寫大量的算法,這將大大擴大系統(tǒng)開發(fā)的成本和時間,編寫出來算法也不一定理想。而采用Shapefile文件進行存儲后,可以大量使用ArcEngine和Arcgis Server提供的空間分析[9]算法,這將大大節(jié)約開發(fā)成本和時間。
遙感衛(wèi)星數(shù)據(jù)管理查詢系統(tǒng)的建立是為了解決衛(wèi)星數(shù)據(jù)雜亂無章的存儲和數(shù)據(jù)用戶對精確數(shù)據(jù)需求之間的矛盾。從系統(tǒng)的框架圖(圖3)中可以清晰地看到,系統(tǒng)包含的2個子系統(tǒng)各自包含了若干功能。2個子系統(tǒng)是通過Shpefile文件聯(lián)系在一起的[10]。下面對關鍵的功能進行詳細的說明。
圖3 系統(tǒng)功能
數(shù)據(jù)采集為系統(tǒng)提供數(shù)據(jù)基礎。通過該功能模塊,管理員可以方便地把服務器上的文本文檔(記錄遙感衛(wèi)星數(shù)據(jù)的相關信息)讀取并添至Shpefile文件中。該模塊提供2種方式的采集:詳細采集、批量采集。數(shù)據(jù)采集功能都是在服務器端桌面程序上實現(xiàn)。
1)詳細采集。該功能是通過打開記錄遙感衛(wèi)星數(shù)據(jù)信息的文本文件,并將這些信息讀取到系統(tǒng)中,管理員可以詳細地查看該條數(shù)據(jù)記錄的信息,也可以修改某項信息。選擇保存后,系統(tǒng)依據(jù)數(shù)據(jù)的空間信息(4個點經(jīng)緯度從標)生成對應的多邊形,并記錄在shpaefile中。
2)批量采集。詳細采集雖可以將衛(wèi)星數(shù)據(jù)信息添加至Shpefile文件,但這種方式只適合少量的信息逐記錄的添加。當在數(shù)據(jù)服務器上有大量的數(shù)據(jù)時,如果只采用這種方法,顯然不能滿足需求,因此需要批量采集這種方式將大量的數(shù)據(jù)記錄添加到Shpefile文件。該方式是由用戶指定一個路徑,然后系統(tǒng)把該路徑下的所有遙感衛(wèi)星數(shù)據(jù)信息逐一掃描出來,并將其添加。該方法模擬殺毒軟件的方式,采用遞歸掃描的方法,逐一掃描指定路徑下的每一個文件,這是系統(tǒng)在添加數(shù)據(jù),尤其是首次添加數(shù)據(jù)時主要采用的方法。應用此方法,操作員只需要選擇幾個簡單的選項,系統(tǒng)就能自動的進行工作,具有較高的智能性。
該模塊是系統(tǒng)的核心模塊。系統(tǒng)設計的目標就是要實現(xiàn)高效快速的查詢遙感衛(wèi)星數(shù)據(jù)。在該系統(tǒng)中2個子系統(tǒng)(桌面端子系統(tǒng)、網(wǎng)絡查詢子系統(tǒng))都提供了查詢的功能。它們在很大程度上相似,只是一個是面向服務器管理員,一個是面向普通的數(shù)據(jù)用戶。2個子系統(tǒng)都提供了多種種方式的查詢:點選、線選、框選、高級查詢SQL等。
點選、線選、框選都是面向運用比較初級的用戶,這類用戶關心更多的是地理空間的相互關系。這幾個選擇功能有助于快速地選擇到所需要的數(shù)據(jù)。
高級SQL查詢功能是面向應用層次較高的用戶,只能通過空間關系查詢不能滿足其需求,需要在查詢時指定更多的條件。此功能提供用戶構造SQL語句,同附加空間地理位置關系(可以是用戶指定,也可是行政區(qū)域)。
在實際應用過程中,接受系統(tǒng)會產(chǎn)生一些誤差,造成很多對用戶無用的數(shù)據(jù),如出現(xiàn)經(jīng)緯度明顯不合理的情況。這些數(shù)據(jù),只通過文本文件的方法幾乎是沒辦法處理的。通過該系統(tǒng),操作員只需要指定閾值,系統(tǒng)就會檢測出所有不符合要求的數(shù)據(jù),并提供后續(xù)處理功能。
除了以上3個特色的功能外,系統(tǒng)還附帶了許多小的特色功能:對鷹眼改進,增加鷹眼的自動縮放功能;專題圖的制作;統(tǒng)計圖的制作;部分數(shù)據(jù)的顯示;屬性表的查看和導出;查詢結果的定位和下載等等。
目前,該系統(tǒng)版本升級至v2008,在用戶界面上做了很大的修改,但其核心思想還是沒有改變。該系統(tǒng)已應用在重慶市地理信息系統(tǒng)重點實驗室MODIS衛(wèi)星數(shù)據(jù)接收中心,系統(tǒng)穩(wěn)定,方便適用,為各數(shù)據(jù)用戶提供數(shù)據(jù)的查詢下載等服務,效果明顯,達到了預期的效果。但系統(tǒng)還存在一些需要繼續(xù)改進的地方:①功能的局限性。系統(tǒng)目前所提供的有關數(shù)據(jù)操作的功能僅僅局限在添加查詢上,對遙感衛(wèi)星數(shù)據(jù)信息的修改功能上稍顯薄弱。②目前所有數(shù)據(jù)信息都記錄在同一Shapefile文件中,當數(shù)據(jù)量非常大時,會對查詢等操作的效率產(chǎn)生一定的影響,解決的辦法是分時間段,如每年的數(shù)據(jù)記錄在同一Shapefile文件里。
[1] 丁愛華,魯明星,呂冰.基于遙感技術的采煤塌陷區(qū)時空演變研究[J].安徽農(nóng)業(yè)科學,2010,38(7):3723-3725.
[2] 戴文遠.基于GIS的現(xiàn)代地圖學實習教改與創(chuàng)新[J].重慶師范大學學報:自然科學版,2009,26(1):111-114.
[3] 雷明良,王丹.遙感手段獲取海洋表層流場的計算方法[J].四川兵工學報,2009,30(12):86-88.
[4] 陳文鋒,戴宏民,周均.地理信息系統(tǒng)技術在環(huán)境科學中的應用[J].重慶工商大學學報:自然科學版,2009,26(1):31-34.
[5] 蔣波濤.ArcObjects開發(fā)基礎與技巧[M].湖北:武漢大學出版社,2006.
[6] 朱凌.ArcGIS9的特點及其ArcObjects Controls版的使用體會[M].北京測繪,2004(1):16-18.
[7] 馬林兵,張新長.WEB GIS原理與方法教程[M].北京:科學出版社,2006.9.
[8]ESRI Inc.ArcGIS9-Building a Geodatabase[Z].Redland,CA:[s.n.],2004.
[9]ESRI Inc.ArcGIS9-Using_ArcGIS_Spatial_Analyst[Z].Redland,CA:[s.n.],2004.
[10]胡澤明,岳春生,王志剛.嵌入式GIS系統(tǒng)實時響應的軟件方法實現(xiàn)[J].測繪科學,2007(1):98-99.