黃立鑫,李旺平,周兆葉,劉亞東,李志紅,楊戰(zhàn)青
(1.蘭州理工大學(xué)土木工程學(xué)院,甘肅 蘭州 730050;2.甘肅省應(yīng)急測(cè)繪工程研究中心,甘肅 蘭州 730050;3.甘肅省自然資源廳,甘肅 蘭州 730000)
目前計(jì)算工程土石方量的基本方法主要有方格網(wǎng)法、橫斷面法和 DTM法三種[1-3]。國(guó)外學(xué)者針對(duì)這一問題做了很多研究,Kerry等[4]基于有限元法將地面三維激光掃描技術(shù)獲得的點(diǎn)云數(shù)據(jù)轉(zhuǎn)換成曲面,創(chuàng)建施工前和施工后不規(guī)則三角網(wǎng)(TIN)模型,以確定土方工程量。JANI?等[5]采用AutoLISP編程語言開發(fā)的基于數(shù)字地形模型計(jì)算土方量的應(yīng)用程序,在AutoCAD環(huán)境下對(duì)幾個(gè)大型露天礦的實(shí)際應(yīng)用進(jìn)行了測(cè)試和驗(yàn)證,結(jié)果表明這種新的數(shù)學(xué)模型能獲得更好的實(shí)現(xiàn)土方量計(jì)算。陸永紅[6]將三維坐標(biāo)轉(zhuǎn)換與南方 CASS 軟件相結(jié)合解決礦山環(huán)境治理中出現(xiàn)空洞的土石方計(jì)算難題,通過實(shí)際工程案例驗(yàn)證該方法的可行性。李博等[7]基于無人機(jī)傾斜攝影測(cè)量技術(shù)獲得地面研究區(qū)土方量,并與GNSS-RTK測(cè)量結(jié)果進(jìn)行對(duì)比,結(jié)果表明利用該方法能夠提高土方計(jì)算精度高,并且能簡(jiǎn)化工作流程降低生產(chǎn)成本。整體上可知,不少學(xué)者對(duì)于山區(qū)土石方量的計(jì)算這一問題從數(shù)據(jù)源獲取、計(jì)算方法等不同角度進(jìn)行研究,但是由于山區(qū)環(huán)境復(fù)雜,氣候條件惡劣,三維激光掃描儀和GNSS-RTK測(cè)量時(shí)外業(yè)施測(cè)困難,用無人機(jī)施測(cè)也存在一定的局限性。而借助高分辨率的遙感影像、高精度的數(shù)字高程模型(DEM)等多源數(shù)據(jù),選用合理的計(jì)算方法,是獲取山區(qū)復(fù)雜地形條件下土石方量的一種可行和有效的策略。利用DEM數(shù)據(jù)計(jì)算區(qū)域土石方量最常用的方法是通過Esri公司開發(fā)的ArcMap軟件的空間分析功能,首先用此模塊創(chuàng)建TIN模型,設(shè)定施工場(chǎng)地設(shè)計(jì)高程等參數(shù)進(jìn)行計(jì)算,再利用ArcSence軟件中的3D模塊實(shí)現(xiàn)三維可視化。整個(gè)操作過程需要在兩個(gè)平臺(tái)之間進(jìn)行數(shù)據(jù)轉(zhuǎn)換,增加了操作過程的復(fù)雜性。因此針對(duì)將遙感影像與數(shù)字高程模型相結(jié)合,并將二三維數(shù)據(jù)集成在同一個(gè)操作平臺(tái),能夠快速高效地獲取山區(qū)復(fù)雜地形土石方量這一問題,依托Visual Studio和ArcGIS Engine二次開發(fā)平臺(tái),基于衛(wèi)星影像和高精度數(shù)字模型數(shù)據(jù),開發(fā)出一套適應(yīng)于山區(qū)復(fù)雜地形土石方量計(jì)算的系統(tǒng),并通過實(shí)際工程案例數(shù)據(jù)計(jì)算驗(yàn)證系統(tǒng)的穩(wěn)定性和可行性。
該系統(tǒng)總體設(shè)計(jì)選擇由常規(guī)的基礎(chǔ)設(shè)施層、數(shù)據(jù)層和應(yīng)用層三部分組成。
基礎(chǔ)設(shè)施層由服務(wù)器、存儲(chǔ)設(shè)備等軟硬件基礎(chǔ)設(shè)施,為系統(tǒng)提供必要的運(yùn)行環(huán)境,系統(tǒng)采用Windows7操作系統(tǒng),基于VS2010+ArcGIS Engine10.2為開發(fā)平臺(tái),使用C#.NET語言進(jìn)行編程,DevExpress15.2第三方控件對(duì)整體框架界面進(jìn)行優(yōu)化設(shè)計(jì);數(shù)據(jù)層選取高分二號(hào)影像和DEM數(shù)據(jù),依據(jù)系統(tǒng)的數(shù)據(jù)轉(zhuǎn)化功能模塊,將DEM柵格數(shù)據(jù)轉(zhuǎn)化成為TIN數(shù)據(jù),通過ENVI等遙感衛(wèi)星影像處理軟件對(duì)高分辨率影像進(jìn)行后期處理制作正射影像數(shù)據(jù),將TIN數(shù)據(jù)和正射影像數(shù)據(jù)作為系統(tǒng)的基礎(chǔ)數(shù)據(jù)源,建立可進(jìn)行量測(cè)的三維場(chǎng)景模型;應(yīng)用層通過搭建系統(tǒng)界面,實(shí)現(xiàn)文件管理、數(shù)據(jù)管理、數(shù)據(jù)分析和應(yīng)用工具4個(gè)要功能菜單,方便對(duì)數(shù)據(jù)的管理及更新。本系統(tǒng)主要實(shí)現(xiàn)地圖顯示和圖層控制、遙感影像和TIN數(shù)據(jù)疊加顯示、二三維場(chǎng)景聯(lián)動(dòng)顯示、土石方量計(jì)算、屬性查詢和生成斷面圖等服務(wù)功能。
基于在山區(qū)基礎(chǔ)建設(shè)中對(duì)地形、地貌以及各種影響因素等的需求,山區(qū)復(fù)雜地形土石方量計(jì)算系統(tǒng)功能結(jié)構(gòu)如圖1所示。

圖1 系統(tǒng)功能結(jié)構(gòu)設(shè)計(jì)
通過ArcGIS Engine添加MapControl和SceneControl控件,其中封裝的Map對(duì)象提供相應(yīng)的屬性、方法和事件,可以加載矢量數(shù)據(jù)、柵格數(shù)據(jù)、CAD數(shù)據(jù)和二、三維地圖數(shù)據(jù)的功能,實(shí)現(xiàn)地圖顯示功能。編程設(shè)置二、三維地圖工具,對(duì)視圖顯示進(jìn)行控制,如地圖放大、地圖縮小、地圖平移、全圖顯示、鷹眼顯示、漫游瀏覽等功能,其中漫游瀏覽是三維視圖特有的,通過定義鼠標(biāo)事件,按住鼠標(biāo)左鍵移動(dòng)實(shí)現(xiàn)三維場(chǎng)景在三維空間的旋轉(zhuǎn),滿足用戶最基本的地圖管理與地圖操作的功能。通過添加TOCControl控件實(shí)現(xiàn)圖層的順序調(diào)整和右鍵菜單等基本控制功能。
為了使山區(qū)復(fù)雜地形便于直接進(jìn)行觀察和分析,更清楚地辨別各類地物地貌的特征,很多情況下需要通過將二維數(shù)據(jù)與三維數(shù)據(jù)相互疊加來實(shí)現(xiàn)地形渲染,增強(qiáng)地形和地表影像的相關(guān)性和三維可視化效果。系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)遙感影像和TIN數(shù)據(jù)疊加顯示功能,主要使用ITinLayer和IRasterLayer接口從已有的TIN數(shù)據(jù)和影像數(shù)據(jù)對(duì)象中創(chuàng)建圖層,調(diào)用I3DProperties組件類的Apply3DProperties方法實(shí)現(xiàn)遙感影像數(shù)據(jù)和TIN數(shù)據(jù)疊加顯示,效果如圖2所示。

圖2 遙感影像和TIN數(shù)據(jù)疊加顯示
二三維場(chǎng)景聯(lián)動(dòng)是將二維和三維顯示結(jié)合起來,通過相互操作響應(yīng)機(jī)制實(shí)現(xiàn)信息之間的傳遞,克服常規(guī)二維GIS數(shù)據(jù)的抽象性和三維GIS虛擬場(chǎng)景漫游的迷失感,在復(fù)雜地形瀏覽分析過程中具有宏觀性、真實(shí)性和整體性等優(yōu)點(diǎn),增強(qiáng)區(qū)域的可視化效果。主要使用 IActiveView、IEnvelope、IPoint和 ICamera 接口[8],創(chuàng)建目標(biāo)點(diǎn)(Target)和觀察點(diǎn)(Observer)并設(shè)置對(duì)應(yīng)的高度。在程序代碼中設(shè)置三維場(chǎng)景的高度角為60°,設(shè)置三維場(chǎng)景的方位角為180°。在系統(tǒng)中可以使用數(shù)據(jù)加載功能添加二維遙感影像圖和三維TIN圖,拖動(dòng)鼠標(biāo),系統(tǒng)的二維界面和三維界面依據(jù)代碼設(shè)定的視場(chǎng)角度同時(shí)移動(dòng),實(shí)現(xiàn)二三維聯(lián)動(dòng)功能,效果如圖3所示。

圖3 二三維場(chǎng)景維聯(lián)動(dòng)
系統(tǒng)開發(fā)的土石方計(jì)算模塊主要依據(jù)TIN數(shù)據(jù)計(jì)算區(qū)域內(nèi)體積的原理,需要調(diào)用ISurface接口的GetVolume方法,GetVolume方法是雙重引用整型數(shù)據(jù),通過IOException和AutomationException類的運(yùn)算。計(jì)算過程中返回高于或低于輸入高程值(Z)的體積,計(jì)算TIN 表面相對(duì)于指定高程水平面之間的空間體積。在使用過程中選擇“基礎(chǔ)面之上”或“基礎(chǔ)面之下”選項(xiàng),系統(tǒng)根據(jù)TIN數(shù)據(jù)結(jié)構(gòu)自動(dòng)計(jì)算出指定基礎(chǔ)面以上或以下的體積。土石方量計(jì)算模塊菜單如圖4所示。

圖4 計(jì)算模塊菜單
選取甘肅省天祝縣約90 m2作為研究區(qū),區(qū)域的整體特征是地勢(shì)西北高東南低,地貌以多山地為主,海拔在2 846~3 750 m之間。欲將整個(gè)區(qū)域進(jìn)行平整,設(shè)計(jì)高程為3 700 m,計(jì)算研究區(qū)域需要挖方量。
將設(shè)計(jì)高程作為計(jì)算的基準(zhǔn)面高度,通過系統(tǒng)開發(fā)的土石方計(jì)算模塊與傳統(tǒng)土方量計(jì)算軟件分別以設(shè)計(jì)高程為基準(zhǔn)進(jìn)行計(jì)算,比較分析各種方法計(jì)算結(jié)果的精確度,驗(yàn)證開發(fā)模塊的可行性和準(zhǔn)確性。
3.1.1 高分二號(hào)影像數(shù)據(jù)
高分二號(hào)衛(wèi)星是我國(guó)首顆空間分辨率達(dá)到亞米級(jí)的民用遙感衛(wèi)星,于2015年3月投入使用。其全色影像數(shù)據(jù)空間分辨率為1 m,星下點(diǎn)達(dá)到0.81 m,多光譜數(shù)據(jù)空間分辨率為4 m,星下點(diǎn)達(dá)到3.24 m[9],影像的分辨率高,將其用于系統(tǒng)三維可視化的數(shù)據(jù)源能夠獲得很好的效果。
根據(jù)季節(jié)和云量選取研究區(qū)域的高分二號(hào)影像數(shù)據(jù),首先通過ENVI和ERDAS軟件平臺(tái)對(duì)研究區(qū)的影像進(jìn)行正射校正、自動(dòng)配準(zhǔn)、影像融合和波段轉(zhuǎn)換等基本處理,再利用開源計(jì)算機(jī)視覺庫(kù)(OpenCV)對(duì)影像進(jìn)行拉伸和銳化的后處理,得到研究區(qū)高分二號(hào)遙感正射影像。
3.1.2 三維TIN數(shù)據(jù)
不規(guī)則三角網(wǎng)(TIN)模型相對(duì)于規(guī)則格網(wǎng)模型和等高線模型,由于TIN模型在構(gòu)建過程中不受坡度等地形條件的限制,并且能夠更加精確的表示地形細(xì)部特征,能充分表現(xiàn)高程細(xì)節(jié)的變化,所以能夠更加有效的模擬較為復(fù)雜地形區(qū)域的地表真實(shí)情況。文中采用基于程序代碼的方法將研究區(qū)的基礎(chǔ)DEM數(shù)據(jù)轉(zhuǎn)換成三維TIN數(shù)據(jù)。
3.2.1 系統(tǒng)開發(fā)模塊計(jì)算土石方量
打開軟件,選擇數(shù)據(jù)分析菜單下的土石方量計(jì)算模塊進(jìn)行研究區(qū)域填挖方量的計(jì)算。將基礎(chǔ)面高度設(shè)為3 700 m,分別選擇“基礎(chǔ)面之上”選項(xiàng),系統(tǒng)自動(dòng)計(jì)算挖方量。得到挖方量為2 816 283.47 m3,其計(jì)算結(jié)果如圖5所示。

圖5 系統(tǒng)土石方量計(jì)算結(jié)果圖
3.2.2 傳統(tǒng)測(cè)量軟件計(jì)算土石方量
選用目前工程中常用的南方CASS9.0軟件進(jìn)行土方量計(jì)算,本軟件工程應(yīng)用中土方計(jì)算方法包括4種:DTM 法、斷面法、方格網(wǎng)法和等高線法[10]。方格法主要適用邊界規(guī)整地形變化不明顯的場(chǎng)地;斷面法適用于場(chǎng)地的地形起伏較大、變化明顯、且呈帶狀分布的區(qū)域[11];DTM 法利用已知平面坐標(biāo)點(diǎn)的高程信息,通過空間插值的方法計(jì)算土石方量,對(duì)于復(fù)雜不規(guī)則地形的計(jì)算精度較高;等高線法是根據(jù)等高距計(jì)算任意兩條封閉等高線間的土石方量[12]。根據(jù)以上土石方計(jì)算方法和適用地形條件,適合本次山區(qū)復(fù)雜地形土石方計(jì)算的方法有 DTM法和等高線法。選擇軟件DTM法土方計(jì)算功能對(duì)研究區(qū)的挖方量進(jìn)行復(fù)核計(jì)算,其計(jì)算結(jié)果見表1。

表1 土方量計(jì)算結(jié)果/m3
通過對(duì)系統(tǒng)開發(fā)模塊和傳統(tǒng)測(cè)量軟件土石方計(jì)算結(jié)果對(duì)比分析,可以得出結(jié)論:與傳統(tǒng)DTM法計(jì)算結(jié)果相比差值為671.4 m3,驗(yàn)證表明該方法可用于土石方量的計(jì)算,計(jì)算結(jié)果能達(dá)到精度要求。由于系統(tǒng)開發(fā)的計(jì)算模塊采用的數(shù)據(jù)源是非接觸式獲取的,可以減少外業(yè)測(cè)量的工作量,計(jì)算過程簡(jiǎn)單,因此在山區(qū)復(fù)雜地形環(huán)境中用于計(jì)算土石方量具有一定的實(shí)用性。
土石方量的計(jì)算方法和精度對(duì)工程建設(shè)具有重要的意義。文章介紹了基于VS和ArcGIS Engine開發(fā)平臺(tái),使用C#.NET語言二次開發(fā)實(shí)現(xiàn)山區(qū)復(fù)雜地形土石方量計(jì)算系統(tǒng)的原理及技術(shù)方法,將二維影像數(shù)據(jù)和三維TIN數(shù)據(jù)有效地集成在同一個(gè)操作界面,增強(qiáng)了區(qū)域的可視化效果,并結(jié)合實(shí)際計(jì)算案例,采用不同方法對(duì)研究區(qū)域的土石方的填挖方量進(jìn)行計(jì)算,結(jié)果表明通過本系統(tǒng)開發(fā)的計(jì)算模塊得到的填挖方量計(jì)算結(jié)果能夠達(dá)到精度要求,并且整個(gè)計(jì)算過程相比傳統(tǒng)計(jì)算方法更具有準(zhǔn)確性和可操作性,能較好地解決在基礎(chǔ)工程建中,山區(qū)復(fù)雜地形條件下的土石方計(jì)算問題,為山區(qū)相關(guān)工程建設(shè)的決策和實(shí)施階段提供高精度的測(cè)繪數(shù)據(jù)服務(wù)。