高潤喜
(包頭鐵道職業技術學院,內蒙古 包頭014060)
海上原油泄漏近年來頻頻發生,造成了較為嚴重的環境污染和經濟損失。為了避免此類災難事件影響范圍的持續擴大,在事故發生之后,應當立即向有關個人和公眾告知此類事件的嚴重程度和影響范圍,從而能夠及時采取相應的防范措施,使得負面影響能夠降到最低程度。因此,及時監視和發布此類災難事件的地理位置等信息十分重要。由于地理信息系統(GIS)在地理信息分析上具有較為強大的功能,因而GIS 被廣泛應用于記錄和分析災難事件的分布、區域等地理和特征信息,并在最近一些實際應用中取得了良好效果。
自20 世紀60 年代出現以來,GIS 已經被應用到多個領域。目前出現的一些商用GIS 軟件,具備強大功能和高昂價格,能夠滿足多種組織、公司、團體等對于地理信息記錄和分析的需求。然而對于大多數實際應用來說,此類商用軟件的功能過于復雜,同時擁有較為昂貴的使用成本[1-2]。
在實際應用中,大多數情況僅僅需要GIS 的部分功能即可以滿足需求,然而采用商用GIS 軟件卻不得不為多數不需要的功能付出高昂的代價。因此,當前業界的趨勢為采用開源GIS (OpenGIS)系統為平臺,根據現實實際需求,開發適用的定制化GIS系統。
OpenGIS 的意義為開源的地理信息系統,即開發者能夠按照一定的協議獲得開源軟件的源代碼,并根據自己的需要進行下載、修改、應用和發布。此類地理信息系統的開發往往依靠于個人開發者的不斷改進,而非企業團隊的系統開發。其最顯著的特征在于免費、自由,但同時開源軟件的功能也受到了較大限制[3]。
常見的OpenGIS 系統有MapWinGIS、DotSpatial等,其本質是一組開源的. NET 開發組件庫。本文采用DotSpatial 為平臺,設計和開發了一種海上信息分析和發布系統,并采用海上原油泄漏監視信息分析發布為應用場景,對該系統中信息分析和發布的關鍵技術進行研究,同時對GIS 軟件存在的問題提出了相應的解決方案,并且通過實例證明本文提出方法具有較好的可行性和實用性。
本文應用場景為海上原油泄漏信息的分析和發布,因而本文的目標在于構建一種有效的海上原油泄漏信息分析發布系統,采用DotSpatial 作為開發平臺,并采用GDAL 作為DotSpatial 的補充。
MapWinGIS 是一組開源的開發工具,用于中等規模的 GIS 應用開發,其核心是一組稱為MapWinGIS 的ActiveX 控件。通過這些工具,開發者能夠向自己的系統中添加多種GIS 特性。作為MapWinGIS 的升級版本,DotSpatial 擁有更加強大的功能,同時能夠支持更多的開發環境,因此,本文采用DotSpatial 作為系統開發平臺。
地理空間數據抽象庫 (Geo Spatial Data Abstraction Library,GSDL)是一個開源庫[4],能夠實現對于柵格化地理數據的讀取、轉換和編輯。當前有許多開源軟件,甚至一些商用軟件均使用該庫。GSDL 擁有自己的數據模型和API,并且提供一系列命令行用來編譯和處理數據[5]。
海上原油泄漏信息監視、分析和發布系統包含地圖顯示、信息展示、數據統計、數據映射和輸出、公告發布等功能。其中核心功能為數據顯示、編譯、映射和輸出。
柵格化的地理數據與傳統的矢量數據具有較大不同,當需要在DotSpatial 電子地圖中顯示此類數據時,諸如重投影等數據處理過程應當事先執行完畢,然后才能實現柵格化數據和矢量數據的分別顯示以及2 種數據的相互匹配。在本系統中,柵格化的原油泄漏點跡被轉化為矢量數據,然后數據被數值化、顯示,之后每個點跡的長軸和短軸均被確定,從而確定原油泄漏區域的范圍。這些處理能夠向用戶直觀地展示泄漏事件發生地點和發展趨勢。當需要將原油泄漏地點及信息映射到電子地圖并輸出時,用戶使用鼠標拖拽一個矩形,定義需要查看的區域,然后以HTML 格式發布相應結果。圖1 為系統的總體結構。
系統的功能總體包含5 個部分,其中地圖加載與顯示、數據編譯與分析、數據映射與輸出為系統的核心功能。

圖1 系統基本結構圖Fig.1 The structure of system
在開發海上信息分析發布系統過程中,仍然有若干問題需要克服,包括地理空間數據的匹配、數據格式轉換、矢量數據顯示、映射和輸出,網頁設計和制作等。本文針對以上若干問題進行研究,并給出相應的解決方案。
DotSpatial 在處理和顯示矢量數據時具有較好的性能和功能,而在處理柵格化數據時功能較弱。例如,DotSpatial 只能處理大小在40 M 以下的數據,因此,較大的圖片無法被添加到地圖中去。同時,由于柵格化數據與矢量數據有較大不同,DotSpatial也無法正常地讀取柵格化數據的坐標系信息。
除此之外,DotSpatial 在將圖片加入電子地圖時,無法對圖片進行拉伸,因此當電子地圖的網格數值不規則時,地圖圖片就無法正常反應不同網格之間的差異。
本文采用的圖片為ENVISAT SAR 圖片,其大小超過100 M。因此,使用GDAL 進行重采樣、重投影,并在圖片加入系統之前進行拉伸。由于重采樣會降低圖片的分辨率,因此需要將圖片的大小減少到40 M 以下。重投影過程由GDALWARP 實現,能夠實現圖片與地圖層次的匹配。通過以上步驟,實現地圖圖片與電子地圖的匹配,之后系統采用合理的灰度進一步強化地圖的視覺效果,在本系統中采用256 度灰度。
在對原油泄漏點跡進行分析的過程中,有多種算法能夠提取點跡的地理空間信息并進行計算,然后對多時態數據進行顯示。其中對于原油泄漏點跡的處理步驟為:
1)提取原油點跡的空間地理結構。泄漏原油的擴散范圍能夠通過點跡形狀信息反應出來,如幾何形態等,但是每個原油點跡的形狀總是不規則的。為了能夠直觀地長時間顯示每個原油點跡移動的變化情況,必須通過一些數據來表示其空間形狀,如區域信息、中點坐標、長軸、短軸、斷點坐標等。通過計算這些數據,能夠較為精確地反映出原油點跡的空間地理結構和幾何學形態,從而為判斷其運動趨勢和擴散范圍提供依據;
2)對數據進行轉換。原油點跡信息是由RS 圖像轉換和提取而來的,其數據結構為柵格化數據,并不適合對空間結構信息進行分析。因此,將柵格化的地理空間數據轉換為矢量數據,從而更加便于表示每個原油點跡的空間形態。由于DotSpatial 并不具備該數據轉換的功能,因此采用GDAL 將SAR 圖像中的原油點跡圖形轉換為多邊形類型的幾何數據集。
3)計算泄漏原油區域的長軸和短軸。通過步驟2,將泄漏原油的擴散區域表示為一個多邊形。那么長軸即為多邊形邊界上距離最遠的2 個點跡之間的連線,而短軸則是垂直于長軸,同時被多邊形截取的線段部分。長軸和短軸共同定義了原油泄漏區域的輪廓,其中對于長軸和短軸的表示方法分別如圖2 和圖3 所示。

圖2 區域長軸的表示方法Fig.2 The major axis of the area

圖3 區域短軸的表示方法Fig.3 The minor axis of the area
4)連接各個原油點跡。假設原油泄漏區域共有n 個點跡,分別為P(0),P(1),P(2),…,P(n)。將每個點跡分別與其他點跡互聯,則可以得到以下線段:

5)表示出長軸和短軸。通過步驟4 得到若干線段,通過比較線段的長度,假設其中最長的一條連接了P(i)和P(j),那么L(i,j)即為區域的長軸。將長軸等分為200 份,在每一等份的邊界點處做長軸的垂線,則垂線被多邊形區域截得若干條線段。由于多邊形的輪廓可能不規則,因此截得的線段可能存在多條,在這種情況下,將該垂線上被截得2 個最遠的交點相連,獲得的線段作為最終線段。最后,比較截得的200 條線段,選取其中最長的一條,作為區域的短軸。
6)多時態數據顯示。多時態數據反映了數據在一段時間序列中的變化情況。由于受到海洋中海浪、海風、洋流等影響,泄漏原油的擴散區域總是在不斷移動和變化,因此,掌握該區域的移動趨勢和變化軌跡,對于采取進一步的處理和應對措施至關重要。為了實現以上目標,需要對多個時間點下的區域變化軌跡進行顯示。由于對于原油點跡和泄漏區域的數據,提取自RS 圖像,因而需要采集不同時間點的RS 圖像,并對數據進行采集和分析,從而得出一段時間序列下的數據變化情況。
7)數據可視化。由于DotSpatial 不能夠支持多時態數據顯示,因而本文給出了一種結合色彩填充和圖形填充的方法,來表示一段時間內原油點跡的變化軌跡。同時,本文還給出了一種判斷數據可信性的方法,采用4 個級別(高、中、低、不可信)來判斷數據的可行性。最終,本文在數字地圖上,使用經緯度、海拔、等高線和不同的點線表示出以上數據,如圖4 所示。

圖4 多時態數據顯示結果Fig.4 The result of multi-temporal data rendering
8)匹配地圖。DotSpatial 中提供了一系列的控件和API,能夠滿足GIS 系統的地圖繪制和匹配需求。例如,其能夠自動繪制出經緯線,同時能夠使用鼠標繪制出多邊形等。
9)輸出數據。通過步驟1 ~步驟8,能夠在開源的GIS 系統DotSpatial 中,顯示海上原油泄漏區域的動態信息,并能夠采用不同的圖示和色彩表示更加豐富的信息。在Windows GDI +的幫助下,通過鼠標拖拽選中一部分區域,則DotSpatial 可以自動地將該區域中的相關信息以HTML 格式進行發布,通過構建合適的后端Web 發布系統,則可以發布經過DotSpatial 處理的直觀地理信息。
隨著人類海上活動的日益頻繁,越來越需要一種海上信息分析和發布系統。本文選取海上原油泄漏事件為應用場景,討論了在該應用中,對于信息監視、收集、分析和發布的各種需求,并使用開源GIS 平臺DotSpatial 構建了海上原油泄漏信息分析與發布系統,并對該系統的關鍵技術,如地理信息提取、編譯、多時態顯示、輸出等進行研究,成功開發了一種開源的信息分析與發布平臺。同時本文的研究成果能夠應用于廣泛的應用領域,具有較強的通用性。
[1]LI Yin,LAN Guo-xin,LIU Bin-xin,et al.Dynamic analysis on oil spill in Mexico Bay based on remote sensing and GIS[J].Marine Environmental Science,2012(1):80 -82.
[2]JIAO Jun-chao.Research on the prediction of oil spill based on GIS In Bohai Bay[J].Marine Environmental Science,2011(5):96 -101.
[3]胡安康.船舶數字化設計的主脈——CAE 信息鏈[J].艦船科學技術,2008,30(1):66 -70.HU An-kang.The main vein of digital ship design——CAE information chain[J].Ship Science and Technology,2008,30(1):66 -70.
[4]LIU Chang-ming,CHEN Luo.GDAL multi-source spatial data access middleware[J].Geo-spatial Information,2011(5):58 -62.
[5]任席闖,左麗芬,李樹明,等.基于GIS 的超低頻通信服務區的預測[J].艦船科學技術,2013,35(4):117 -119.REN Xi-chuang,ZUO Li-fen,LI Shu-ming,et al.The prediction of VLF communication service zone based on GIS[J].Ship Science and Technology,2013,35(4):117 -119.