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