渠士豪,郭永剛
(西藏農(nóng)牧學(xué)院水利土木工程學(xué)院,西藏 林芝 860000)
我國是世界上地質(zhì)災(zāi)害最嚴(yán)重的國家之一,其中滑坡災(zāi)害占總災(zāi)害的68.9%[1]?;戮哂蟹植紡V、破壞大、隱蔽性高等特點[2],一旦發(fā)生會對人民生命財產(chǎn)安全和國家基礎(chǔ)設(shè)施產(chǎn)生巨大破壞,嚴(yán)重影響區(qū)域社會經(jīng)濟(jì)發(fā)展。
隨著計算機(jī)技術(shù)、監(jiān)測技術(shù)和GIS 技術(shù)的發(fā)展,滑坡的預(yù)警和易發(fā)性分析也從人工方式轉(zhuǎn)向了自動化和信息化。近些年來,一些學(xué)者以計算機(jī)技術(shù)為載體,結(jié)合地理信息管理系統(tǒng),提出了自動化、信息化的滑坡信息管理與分析系統(tǒng)的開發(fā)思路。對于單體滑坡監(jiān)測預(yù)警,陶宜權(quán)等[3]采用云計算、大數(shù)據(jù)和GIS 二次開發(fā)等技術(shù)設(shè)計了針對秦巴山區(qū)的淺表層滑坡災(zāi)害監(jiān)測預(yù)警平臺,實現(xiàn)了秦巴山區(qū)滑坡風(fēng)險快速且準(zhǔn)確率高的預(yù)警預(yù)報;羅志會等[4]以STM32 單片機(jī)為核心設(shè)計了一種基于LoRa 傳輸技術(shù)的滑坡監(jiān)測系統(tǒng),實現(xiàn)了便捷、低耗能、可視化的滑坡狀態(tài)遠(yuǎn)程監(jiān)測;黃玲等[5]以MQTT傳輸協(xié)議為基礎(chǔ),結(jié)合層次分析模糊綜合評價模型,設(shè)計了一種基于Web 的山體滑坡監(jiān)測預(yù)警系統(tǒng),實現(xiàn)了監(jiān)測信息的傳輸、分析、預(yù)警和可視化。對于區(qū)域性滑坡易發(fā)性分析,羅金[6]基于GIS二次開發(fā)工具與機(jī)器學(xué)習(xí)模型相結(jié)合設(shè)計了基于各類機(jī)器學(xué)習(xí)方法的滑坡易發(fā)性評價系統(tǒng),采用Python 語言調(diào)用相關(guān)接口實現(xiàn)了數(shù)據(jù)提取與預(yù)處理、評價模型計算和滑坡易發(fā)性分類圖的生成等功能;汪宙峰等[7]利用ArcGIS Engine開發(fā)工具和空間分析技術(shù),結(jié)合數(shù)學(xué)模型設(shè)計了基于ArcGIS Engine 的滑坡危險性評價系統(tǒng)。上述系統(tǒng)和平臺的開發(fā)極大程度上簡化了分析過程、提高了分析結(jié)果的精度,但這些系統(tǒng)的開發(fā)都是單純地針對單體滑坡或區(qū)域性滑坡,不能夠滿足藏東南地區(qū)對滑坡災(zāi)害多尺度分析的需求,且藏東南地區(qū)夏季氣候溫和濕潤,冬季氣候干冷,年溫差小,日溫差大,具有典型的高原特征,因此藏東南的滑坡研究與其他區(qū)域相比有明顯的差異[8]。
考慮到以上問題,本文將單體滑坡監(jiān)測預(yù)警、區(qū)域性滑坡易發(fā)性分析和滑坡信息管理整合到一起,并根據(jù)藏東南地區(qū)的環(huán)境特殊性選用適當(dāng)?shù)臄?shù)學(xué)分析模型,設(shè)計開發(fā)一種基于ArcGIS Engine 的藏東南滑坡信息管理與分析系統(tǒng)。
藏東南滑坡信息管理與分析系統(tǒng)包括數(shù)據(jù)采集層、基礎(chǔ)支撐層、數(shù)據(jù)層、應(yīng)用層和用戶層。其中,數(shù)據(jù)采集層包括在滑坡監(jiān)測站布設(shè)的土壤濕度傳感器、降雨檢測儀、位移傳感器和切向角監(jiān)測器等設(shè)備,通過GPRS DTU 通信技術(shù)將實時采集的數(shù)據(jù)信息上傳至接收服務(wù)器;基礎(chǔ)支撐層主要包括計算機(jī)服務(wù)系統(tǒng)、地理信息系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)和網(wǎng)絡(luò)設(shè)施等,為應(yīng)用系統(tǒng)的開發(fā)與使用提供軟硬件基礎(chǔ)支撐;數(shù)據(jù)層主要包括實時監(jiān)測數(shù)據(jù)、地理空間數(shù)據(jù)、歷史滑坡數(shù)據(jù)和監(jiān)測站數(shù)據(jù);應(yīng)用層主要包括數(shù)據(jù)管理模塊、滑坡預(yù)警模塊,數(shù)據(jù)展示模塊和滑坡易發(fā)性分析模塊等;用戶層主要包括普通用戶和管理員。基于ArcGIS Engine 的藏東南滑坡信息管理與分析系統(tǒng)總體架構(gòu),如圖1所示。
圖1 基于ArcGIS Engine的藏東南滑坡信息管理與分析系統(tǒng)總體架構(gòu)
數(shù)據(jù)庫采用Geodatabase+Mysql 的搭建模式。Geodatabase 是一種采用標(biāo)準(zhǔn)關(guān)系數(shù)據(jù)庫技術(shù)來表現(xiàn)地理信息的數(shù)據(jù)模型。Mysql 是Oracle 旗下一款體積小、開源、移植性強(qiáng)的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。根據(jù)數(shù)據(jù)類型的不同將數(shù)據(jù)分為屬性數(shù)據(jù)和空間數(shù)據(jù)兩部分,分別儲存在Mysql 和Geodatabase 中。其中,屬性數(shù)據(jù)包括用戶數(shù)據(jù)、通用數(shù)據(jù)、監(jiān)測點數(shù)據(jù)、歷史滑坡數(shù)據(jù)、降雨監(jiān)測數(shù)據(jù)、位移監(jiān)測數(shù)據(jù)和土壤濕度監(jiān)測數(shù)據(jù)等;空間數(shù)據(jù)包括高程數(shù)據(jù)、坡度數(shù)據(jù)、坡向數(shù)據(jù)、年均降水?dāng)?shù)據(jù)、距道路距離數(shù)據(jù)、距河流距離數(shù)據(jù)和植被覆蓋率數(shù)據(jù)等。數(shù)據(jù)庫邏輯結(jié)構(gòu),如圖2所示。
圖2 滑坡信息管理與分析數(shù)據(jù)庫邏輯結(jié)構(gòu)
根據(jù)用戶權(quán)限類別,將系統(tǒng)功能分為2 個模塊,分別是管理員模塊和普通用戶模塊。管理員模塊不僅擁有普通用戶模塊的所有權(quán)限,同時擁有屬于管理員模塊的專屬權(quán)限,如監(jiān)測站數(shù)據(jù)管理、歷史滑坡數(shù)據(jù)管理、空間數(shù)據(jù)管理、用戶請求管理和用戶信息管理等;普通用戶模塊權(quán)限包含監(jiān)測站數(shù)據(jù)查詢、歷史滑坡數(shù)據(jù)查詢、空間數(shù)據(jù)查詢和滑坡易發(fā)性分析等。
基于ArcGIS Engine 的藏東南滑坡信息管理與分析系統(tǒng)功能,如圖3所示。
圖3 基于ArcGIS Engine的藏東南滑坡信息管理與分析系統(tǒng)功能
(1)監(jiān)測站數(shù)據(jù)查詢。管理員和普通用戶能以圖表的形式查看監(jiān)測站的地理位置信息、管理人員信息、設(shè)備基本信息和設(shè)備監(jiān)測信息(降水量、位移量、土壤濕度等)等。
(2)歷史滑坡數(shù)據(jù)查詢。管理員和普通用戶能以圖表的形式查看研究區(qū)域歷史滑坡的名稱、地理位置、地下水類型、滑坡類型、地震烈度、受災(zāi)情況等信息。
(3)空間數(shù)據(jù)查詢。管理員和普通用戶能以圖形的形式查看已擁有的滑坡數(shù)據(jù)集,如歷史滑坡點、高程、坡度、坡向、距道路距離、距河流距離、年均降水量等。
(4)實時預(yù)警通報。管理員和普通用戶能夠以表格的形式查看實時發(fā)布的滑坡預(yù)警信息,包括監(jiān)測點、經(jīng)度、緯度、預(yù)警級別、警報原因、警報時間、處理情況等信息,并可以對未處理的通知進(jìn)行處理。
(5)數(shù)據(jù)管理請求。為確保數(shù)據(jù)的真實性和可用性,系統(tǒng)限制普通用戶直接對數(shù)據(jù)進(jìn)行管理,但給予普通用戶提交數(shù)據(jù)管理請求的權(quán)限,例如,普通用戶想要修改歷史滑坡信息,可以對相關(guān)信息進(jìn)行增、刪、改、查的操作,但系統(tǒng)不會立即進(jìn)行修改,而是將請求和數(shù)據(jù)暫時存入數(shù)據(jù)庫,等待管理員審核。對于空間數(shù)據(jù)的管理,例如想要添加新的影響因子數(shù)據(jù)或更新最新的滑坡點數(shù)據(jù),需要將空間數(shù)據(jù)和請求一同提交給管理員。
(6)滑坡易發(fā)性分析。普通用戶和管理員可以選擇不同的數(shù)學(xué)分析模型,導(dǎo)入不同的空間數(shù)據(jù),得到對應(yīng)的滑坡易發(fā)性分析圖。
(7)系統(tǒng)管理。管理員和普通用戶可以對屬性數(shù)據(jù)和空間數(shù)據(jù)進(jìn)行導(dǎo)出和打印等常規(guī)數(shù)據(jù)管理操作。
(8)監(jiān)測站數(shù)據(jù)管理。管理員可以對監(jiān)測站的地理位置信息、管理人員信息、設(shè)備基本信息和設(shè)備監(jiān)測信息等數(shù)據(jù)進(jìn)行修改、刪除、查詢和添加新監(jiān)測站等操作。
(9)歷史滑坡數(shù)據(jù)管理。管理員可以對研究區(qū)域歷史滑坡的名稱、地理位置、地下水類型、滑坡類型、地震烈度、受災(zāi)情況等信息進(jìn)行刪除、修改、查詢和添加歷史滑坡信息等操作。
(10)空間數(shù)據(jù)管理。管理員可以對已有的空間數(shù)據(jù)如DEM、歷史滑坡點、高程、坡度、坡向、距道路距離、距河流距離、年均降水量等進(jìn)行添加、更新、刪除和編輯等操作。
(11)用戶請求管理。對于普通用戶提交的對屬性數(shù)據(jù)和空間數(shù)據(jù)的操作請求,管理員可以進(jìn)行詳情查看,了解請求的類型以及與請求共同提交的數(shù)據(jù)信息,并做出通過或駁回的操作。
(12)用戶信息管理。管理員可以對普通用戶進(jìn)行編輯、刪除、增加和權(quán)限設(shè)置等操作。
ArcGIS Engine 是ESRI 基于ArcGIS Object 搭建的一款GIS 平臺,該平臺在ArcGIS Object 的基礎(chǔ)上進(jìn)行了很大改進(jìn),使其可以脫離ArcGIS軟件環(huán)境直接嵌入應(yīng)用程序中,大大提高了開發(fā)軟件的適用性、操作性和獨立性。另外,利用ArcGIS Engine 軟件可以使滑坡數(shù)據(jù)處理和滑坡易發(fā)性評價處于同一GIS平臺下,數(shù)學(xué)模型以模塊的形式融入GIS 環(huán)境,滑坡數(shù)據(jù)不必流出GIS 平臺即可完成對其分析過程,相對傳統(tǒng)的滑坡易發(fā)性分析過程精度更高、結(jié)果更直觀。
.NET Framework 將強(qiáng)大的功能與新技術(shù)相結(jié)合,搭建出視覺上引人注目的用戶應(yīng)用程序,實現(xiàn)跨技術(shù)邊界的無縫通信,并且能支持各種業(yè)務(wù)流程。.NET Framework 的目的是讓建立Web Services 以及因特網(wǎng)應(yīng)用程序的工作變得簡單。Web端對瀏覽器的兼容度要求較高,且任何請求都需要通過網(wǎng)絡(luò)進(jìn)行。相對Web端應(yīng)用Windows窗體應(yīng)用不僅更加方便,而且對計算機(jī)性能應(yīng)用比較充分。因滑坡易發(fā)性分析等功能模塊對計算機(jī)性能和網(wǎng)絡(luò)功能要求較高,使用Windows 窗體應(yīng)用程序更能保證系統(tǒng)界面運行穩(wěn)定。
滑坡監(jiān)測點一般地理位置復(fù)雜、通信條件惡劣,為保證數(shù)據(jù)傳輸?shù)目煽啃院蛯崟r性,同時考慮到續(xù)航、操作和成本,在滑坡監(jiān)測點布設(shè)GPRS DTU 物聯(lián)網(wǎng)無線數(shù)據(jù)終端,通過GPRS 上傳數(shù)據(jù)到接收服務(wù)器。利用GSM 網(wǎng)絡(luò)覆蓋廣的特點,通過撥號的方式觸發(fā)數(shù)據(jù)傳輸,也可以設(shè)置成長連接進(jìn)行數(shù)據(jù)傳輸,從而達(dá)到操作簡單、低能高效、實用性強(qiáng)、遠(yuǎn)程無人監(jiān)測的效果。
藏東南滑坡信息管理與分析系統(tǒng)功能實現(xiàn)界面,如圖4所示。
圖4 滑坡信息管理與分析系統(tǒng)功能實現(xiàn)界面
監(jiān)測站數(shù)據(jù)查詢功能采用DataGridView 控件進(jìn)行數(shù)據(jù)展示。先將數(shù)據(jù)綁定到DataGridView 控件,再將DataMember 屬性設(shè)置為要綁定的列表或表的字符串即可。DataGridView 控件對表格數(shù)據(jù)的展示非常清晰明了,通常在Windows 窗體應(yīng)用程序中顯示表格數(shù)據(jù)時優(yōu)先考慮DataGridView 控件。此功能在查詢?nèi)勘O(jiān)測站數(shù)據(jù)的基礎(chǔ)上添加了條件查詢,允許用戶通過站點名稱和負(fù)責(zé)人查詢監(jiān)測站信息,站點名稱和負(fù)責(zé)人下拉菜單內(nèi)容為與數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù),初始值為空。對所有監(jiān)測站信息的查詢,若需要進(jìn)行條件查詢可以通過下拉菜單選擇內(nèi)容進(jìn)行查詢。監(jiān)測站信息查詢功能界面,如圖4(a)所示。
歷史滑坡數(shù)據(jù)查詢功能仍是以表格的形式展示,所以同樣使用DataGridView 控件構(gòu)建。在條件查詢中選擇地區(qū)限制,用戶可以對市和縣進(jìn)行限定,查找到對應(yīng)地區(qū)的歷史滑坡數(shù)據(jù)信息。歷史滑坡數(shù)據(jù)查詢功能界面,如圖4(b)所示。
空間數(shù)據(jù)查詢功能采用Arc Engine 組件庫中的AxMapControl、AxTOCControl 和AxToolbarControl 控件進(jìn)行搭建。初始界面根據(jù)數(shù)據(jù)庫中數(shù)據(jù)排序顯示排序最靠前的區(qū)域空間數(shù)據(jù),可以通過AxTOCControl 控件對顯示數(shù)據(jù)進(jìn)行切換,通過AxToolbarControl 控件或者鼠標(biāo)的點擊、拖拽、移動事件實現(xiàn)對顯示數(shù)據(jù)的漫游、地圖縮放、全圖顯示和要素信息查看等功能。通過下拉菜單可以對區(qū)域進(jìn)行切換,Ax-TOCControl控件中的數(shù)據(jù)也會同時切換??臻g數(shù)據(jù)查詢功能界面,如圖4(c)所示。
實時預(yù)警通報功能界面主要由DataGridView 控件搭建,除了展示預(yù)警發(fā)布位置、發(fā)布時間和預(yù)警原因等信息外,還會將實時監(jiān)測的降雨量、位移量等信息與數(shù)學(xué)分析模型相結(jié)合,計算并對滑坡易發(fā)性分級,將數(shù)據(jù)結(jié)果保存到數(shù)據(jù)庫,并在頁面顯示。存在未處理的預(yù)警信息時界面右上角會出現(xiàn)警示紅燈。實時預(yù)警通報功能界面,如圖4(d)所示。
數(shù)據(jù)管理請求功能由Button組件和文本的點擊事件實現(xiàn)。在監(jiān)測站數(shù)據(jù)查詢界面、歷史滑坡數(shù)據(jù)查詢界面和空間數(shù)據(jù)查詢界面中都有放置的Button組件或文本,點擊相應(yīng)的組件可實現(xiàn)向管理員提交對數(shù)據(jù)增加、刪除或修改的請求功能。數(shù)據(jù)管理請求功能界面,如圖4(e)所示。
滑坡易發(fā)性分析功能的實現(xiàn)依托于Arc Engine強(qiáng)大的空間分析功能,利用IFeatureClass、ISpatial-Filter、IQueryFilter 和IFeatureCursor 等接口與數(shù)學(xué)分析模型相結(jié)合,通過將Shape 格式轉(zhuǎn)化成Grid 類型的柵格數(shù)據(jù),通過數(shù)據(jù)定量化、圖層數(shù)據(jù)疊加等步驟得到每個柵格的易發(fā)性分析值,最后將結(jié)果賦值給一張空的柵格圖層并進(jìn)行分級,從而得到滑坡易發(fā)性分析圖?;乱装l(fā)性分析功能界面,如圖4(f)所示。
監(jiān)測站數(shù)據(jù)管理、歷史滑坡數(shù)據(jù)管理和空間數(shù)據(jù)管理3 項功能的實現(xiàn)界面與監(jiān)測站數(shù)據(jù)查詢、歷史滑坡數(shù)據(jù)查詢和空間數(shù)據(jù)查詢3項功能的界面一致(此處不再展示),功能也基本一致,只是在對數(shù)據(jù)的增加、刪除和修改操作上不再發(fā)送請求,而是直接對數(shù)據(jù)進(jìn)行修改。
用戶請求管理功能實現(xiàn)界面主要由DataGrid-View 控件搭建,用戶的請求信息以表格的形式呈現(xiàn)在管理界面,包括數(shù)據(jù)類型、操作方式、提交時間、提交用戶等信息,管理員通過文本“未處理”點擊事件打開新界面查看詳細(xì)的請求內(nèi)容,可以做出駁回、通過或返回操作,駁回和通過操作會決定數(shù)據(jù)是否被操作,并使“處理”無法再被點擊。用戶請求管理功能界面,如圖4(g)所示。
用戶信息管理功能主要由DataGridView 控件搭建,所有用戶的信息以表格的形式在組件中展示,管理員可以對除初始管理員以外的所有用戶信息進(jìn)行增加、刪除、修改、查找操作,初始管理員可以對所有用戶信息進(jìn)行修改,即超級管理員。用戶信息管理功能界面,如圖4(h)所示。
系統(tǒng)管理功能可以對歷史滑坡數(shù)據(jù)、監(jiān)測站數(shù)據(jù)、用戶數(shù)據(jù)實現(xiàn)數(shù)據(jù)導(dǎo)入、導(dǎo)出等操作。系統(tǒng)管理功能界面(以歷史滑坡數(shù)據(jù)界面為例),如圖4(i)所示。
本文將GIS 軟件二次開發(fā)技術(shù)與數(shù)學(xué)分析模型相結(jié)合,設(shè)計開發(fā)了基于ArcGIS Engine 的藏東南滑坡信息管理與分析系統(tǒng)。該系統(tǒng)采用C/S 架構(gòu)模式搭建,在地理信息技術(shù)的基礎(chǔ)上結(jié)合GIS 數(shù)據(jù)分析、GPRS DTU 通信等相關(guān)技術(shù),為用戶提供監(jiān)測數(shù)據(jù)查詢、空間數(shù)據(jù)查詢、實時預(yù)警通報、滑坡易發(fā)性分析等功能。用戶登錄應(yīng)用即可獲得實時的滑坡預(yù)警,通過簡單的操作即可得到區(qū)域性滑坡易發(fā)性分析圖。該系統(tǒng)將滑坡易發(fā)性分析過程整體化,簡化了分析過程,提高了結(jié)果的精度,使滑坡易發(fā)性分析更加方便、準(zhǔn)確。