曹端廣 張子民 周 英 李 錦 邢華橋
1山東建筑大學(xué)測繪地理信息學(xué)院,山東 濟(jì)南,250101
隨著城市化的快速發(fā)展,城鎮(zhèn)基礎(chǔ)設(shè)施越來越完善,輸油管道穿越人口密集區(qū)、環(huán)境敏感區(qū)的情況日益突出,給管道企業(yè)安全平穩(wěn)運(yùn)營提出了嚴(yán)峻的挑戰(zhàn)。計(jì)算機(jī)技術(shù)和測繪技術(shù)的快速發(fā)展,地下管線數(shù)據(jù)管理也面臨著由二維平面向三維空間的轉(zhuǎn)變。地下管線三維模型能夠直觀再現(xiàn)地下管線縱橫交錯(cuò)的空間位置關(guān)系,為輔助規(guī)劃建設(shè)、合理集約利用地下空間、保障管線安全提供有效技術(shù)支撐[1,2]。對(duì)于三維管線管理系統(tǒng)來講,目前國內(nèi)外普遍采用GIS技術(shù)、仿真技術(shù),通過建立數(shù)學(xué)模型進(jìn)行管線的模擬和分析處理[3]。國內(nèi)外三維GIS軟件產(chǎn)品繁多,選擇合適的平臺(tái)至關(guān)重要,關(guān)系著模型精度和顯示速度,在WEB端實(shí)現(xiàn)海量三維數(shù)據(jù)存儲(chǔ)和快速顯示是目前國內(nèi)外學(xué)者的研究熱點(diǎn)[4]。盧丹丹等[1]在進(jìn)行武漢市地下管線三維模型建設(shè)工作中研究出一種利用OpenGL實(shí)時(shí)繪制三維管線段的高精度自動(dòng)三維建模技術(shù);Mathias等[5]采用GPU射線投射的方式研究出基于體素(Voxel)的大型三維管線渲染方式;馬波等[6]基于地圖符號(hào)化思想,研究出一套適合城市地下管線二三維一體化存儲(chǔ)、更新、展示和應(yīng)用的數(shù)據(jù)庫設(shè)計(jì);畢天平等[7]采用視點(diǎn)相關(guān)球面LOD(levels of detail)算法和面向服務(wù)的架構(gòu)進(jìn)行三維管線系統(tǒng)的開發(fā)。本文利用SuperMap開發(fā)平臺(tái),搭載傾斜攝影和三維輸油管線等模型,設(shè)計(jì)和實(shí)現(xiàn)了三維輸油管線信息管理與安全預(yù)警系統(tǒng)。在系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的過程中解決了3個(gè)主要技術(shù)問題:一是選擇出最合適的三維管線建模方法;二是實(shí)現(xiàn)大數(shù)據(jù)量傾斜攝影實(shí)景三維模型在瀏覽器快速加載與顯示;三是利用緩沖區(qū)分析和Dijkstra算法結(jié)合實(shí)時(shí)交通信息數(shù)據(jù)進(jìn)行安全預(yù)警。系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)幫助油氣運(yùn)輸企業(yè)進(jìn)行信息化管理并在發(fā)生安全事件時(shí)提供決策支持。
系統(tǒng)層次架構(gòu)分為應(yīng)用層、服務(wù)層、業(yè)務(wù)邏輯層和數(shù)據(jù)層。應(yīng)用層有WEB服務(wù)接口、GIS服務(wù)系統(tǒng)和離線應(yīng)用子系統(tǒng);服務(wù)層包括WEB Service服務(wù)、GIS接口和ADO(active data objects)對(duì)象模型。業(yè)務(wù)邏輯層有GIS基礎(chǔ)平臺(tái)、工作流和中間件;數(shù)據(jù)層中包含3種數(shù)據(jù),分別為基礎(chǔ)地理數(shù)據(jù)、傾斜攝影數(shù)據(jù)和三維管線數(shù)據(jù)。
系統(tǒng)技術(shù)架構(gòu)采用SpringMVC作為總體架構(gòu),使用SuperMap iServer和Tomcat7.x作為WEB服務(wù)器引擎,前端渲染使用了Webgl和Echarts,地圖渲染使用了Cesium和SuperMap。數(shù)據(jù)庫使用了Oracle 11g數(shù)據(jù)庫。
系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)了圖層控制功能模塊、數(shù)據(jù)瀏覽功能模塊、查詢定位功能模塊、數(shù)據(jù)分析功能模塊、動(dòng)態(tài)標(biāo)注功能模塊和系統(tǒng)管理功能模塊,圖1為系統(tǒng)功能模塊圖。
圖1 系統(tǒng)功能模塊圖Fig.1 System Function Block Diagram
圖層控制功能模塊用于控制系統(tǒng)中不同圖層的開啟與關(guān)閉。圖層類型分為基礎(chǔ)圖層和三維要素圖層,基礎(chǔ)圖層包含影像圖層、矢量圖層、注記圖層等,三維要素圖層包含三維管線管點(diǎn)、傾斜攝影實(shí)景模型、三維地形模型。
數(shù)據(jù)瀏覽功能實(shí)現(xiàn)以不同方式瀏覽查看系統(tǒng)中的數(shù)據(jù),其中包含分屏對(duì)比、場景卷簾、飛行漫游和VR展示。分屏對(duì)比可以實(shí)現(xiàn)二分屏、三分屏和四分屏;場景卷簾實(shí)現(xiàn)上下和左右卷簾;飛行漫游沿設(shè)置好的不同航線進(jìn)行飛行瀏覽;VR展示功能可以查看系統(tǒng)中的VR場景數(shù)據(jù)。
查詢定位功能模塊可以進(jìn)行屬性查詢和閥室定位。屬性查詢可以查詢管線的屬性信息也可以查詢傾斜攝影模型單體化信息,屬性查詢可以查詢管線的類型、材質(zhì)、形狀、尺寸等屬性,雙擊查詢結(jié)果列表可以定位管線所在位置。閥室定位功能通過閥室編號(hào)快速定位閥室所在位置。傾斜攝影單體化之后的模型屬性包含名稱、行政隸屬、人口數(shù)、所屬單位等信息。
數(shù)據(jù)分析功能模塊中包含空間量算和空間分析兩個(gè)子功能模塊??臻g量算功能可以實(shí)現(xiàn)距離量算、面積量算和高度量算,距離量算通過點(diǎn)擊選取三維空間中兩個(gè)坐標(biāo)點(diǎn)位并計(jì)算其空間距離;面積量算是計(jì)算空間中3個(gè)及以上點(diǎn)位形成的平面的面積;高度量算是計(jì)算空間中兩個(gè)點(diǎn)位的垂直高度。空間分析功能模塊包含橫斷面分析、開挖分析、緩沖區(qū)分析和應(yīng)急預(yù)案模擬4個(gè)子功能,橫斷面分析是在管線區(qū)域畫一條橫截面線,使其與地下管線相交,根據(jù)相交情況獲得地下管線橫截面和埋深等信息,此功能可以為道路施工等相關(guān)單位提供決策支持[8]。開挖分析進(jìn)行傾斜攝影開挖,將選中區(qū)域的傾斜攝影模型隱藏,顯示模型下方的管線管點(diǎn)模型。緩沖區(qū)分析是以點(diǎn)或線為基礎(chǔ),建立周圍一定寬度范圍內(nèi)的緩沖區(qū)圖層并查詢此范圍內(nèi)的管線管點(diǎn)信息。
動(dòng)態(tài)標(biāo)注功能模塊是用戶對(duì)風(fēng)險(xiǎn)性高、容易發(fā)生安全事故的POI(point of interest)信息進(jìn)行標(biāo)注入庫,在后期的運(yùn)維過程中用戶重點(diǎn)關(guān)注這部分信息,從而提高信息管理的效率,其中包括標(biāo)注信息的展示和標(biāo)注信息的管理。
系統(tǒng)管理功能模塊是對(duì)系統(tǒng)用戶和系統(tǒng)使用的說明指導(dǎo),包括系統(tǒng)用戶管理和系統(tǒng)幫助文檔兩部分。系統(tǒng)用戶管理可以對(duì)系統(tǒng)用戶基本信息進(jìn)行增刪改查等基本操作,同時(shí)可以對(duì)不同用戶的權(quán)限進(jìn)行設(shè)置,以滿足不同用戶角色的需求。點(diǎn)擊系統(tǒng)幫助文檔可以在線查看系統(tǒng)的操作說明。
當(dāng)前三維建模技術(shù)主要有兩種:一是數(shù)字表面模型集成地物手工三維模型,即在包含了地表建筑設(shè)施、水系、植被等的數(shù)字表面模型上疊加研究所需的地物手工三維模型[9];二是傾斜攝影模型結(jié)合地物單體化操作,將傾斜攝影實(shí)景三維模型進(jìn)行切割單體化,使地物成為帶有屬性信息的個(gè)體[10]。系統(tǒng)集成了多種三維模型,綜合各種建模技術(shù)特點(diǎn),考慮到建模工作量和投入,對(duì)于大場景采用數(shù)字表面模型,輸油管線沿線地物采用傾斜攝影模型,輸油管線設(shè)施設(shè)備采用手工三模模型。
三維管線管點(diǎn)建模方法種類繁多,大致可分為以下3種類型:手工精細(xì)化建模、基于規(guī)則的建模和符號(hào)化建模。綜合三種管線建模方法,系統(tǒng)采用符號(hào)化建模方法。利用SuperMap符號(hào)化建模方法對(duì)部分管線管點(diǎn)二維矢量數(shù)據(jù)進(jìn)行建模流程如2所示。首先將矢量數(shù)據(jù)導(dǎo)入軟件中,利用數(shù)據(jù)類型轉(zhuǎn)換功能將二維點(diǎn)和二維線轉(zhuǎn)換為三維管點(diǎn)管線,轉(zhuǎn)換依據(jù)為點(diǎn)數(shù)據(jù)高程值和線數(shù)據(jù)的起始點(diǎn)、終止點(diǎn)高程值,通過拓?fù)錁?gòu)網(wǎng)方式將三維管點(diǎn)管線構(gòu)建三維網(wǎng)絡(luò)并將生成的三維網(wǎng)絡(luò)數(shù)據(jù)集添加到三維場景中;然后使用制作專題圖實(shí)現(xiàn)三維數(shù)據(jù)符號(hào)化,將符號(hào)風(fēng)格、符號(hào)顏色、符號(hào)大小與數(shù)據(jù)屬性表中相應(yīng)的字段進(jìn)行關(guān)聯(lián),關(guān)聯(lián)成功之后按符號(hào)風(fēng)格進(jìn)行顯示,圖3為顯示效果;最后將配圖好的三維場景生成場景緩存,如果需要在前端調(diào)用,則使用SuperMap iServer將場景發(fā)布為服務(wù)。
圖2 管線管點(diǎn)建模流程圖Fig.2 Flow Chart of Pipeline Point Modeling
圖3 管線管點(diǎn)建模效果圖Fig.3 Pipeline Point Modeling Effect Diagram
傾斜攝影實(shí)景三維模型是使用Smart3D軟件(即ContextCapture)對(duì)傾斜攝影所得影像數(shù)據(jù)進(jìn)行實(shí)景建模,生成的三維模型數(shù)據(jù)為三維引擎定義的osgb格式。實(shí)景三維模型具有數(shù)據(jù)獲取效率高、模型顯示效果逼真等特點(diǎn)。模型的空間分辨率很高,可達(dá)0.1 cm甚至更高,因此其數(shù)據(jù)量巨大,如何在瀏覽器中快速加載和顯示傾斜攝影模型,是需要解決的一個(gè)重要問題[11]。為解決此問題,系統(tǒng)在加載實(shí)景三維模型前對(duì)模型進(jìn)行壓縮,在不影響顯示效果的前提下提高加載速度,壓縮使用了合并根節(jié)點(diǎn)和紋理壓縮兩種壓縮方法。
合并根節(jié)點(diǎn)壓縮技術(shù):傾斜攝影模型數(shù)據(jù)通常采用分塊(Tile)方式存儲(chǔ),即在一定空間范圍的模型劃為一個(gè)塊并存儲(chǔ)在一個(gè)文件夾中,每個(gè)文件夾下包含一個(gè)根節(jié)點(diǎn)文件和若干子節(jié)點(diǎn)文件[12]。系統(tǒng)通過索引文件記錄根節(jié)點(diǎn)相對(duì)路徑加載模型。當(dāng)模型空間范圍廣、數(shù)據(jù)量龐大,使得模型被劃分為很多個(gè)根節(jié)點(diǎn),讀取這些根節(jié)點(diǎn)花費(fèi)時(shí)間較長導(dǎo)致加載模型較慢,通過合并根節(jié)點(diǎn)來提升加載效率。合并根節(jié)點(diǎn)是將相鄰一定空間范圍的根節(jié)點(diǎn)合并為一個(gè)根節(jié)點(diǎn),即向上抽稀形成一層更為粗糙的LOD層級(jí),每合并一次,模型根節(jié)點(diǎn)數(shù)量減少為原始數(shù)量的1/4,合并根節(jié)點(diǎn)后示意圖如圖4所示。
圖4 合并根節(jié)點(diǎn)后示意圖Fig.4 Schematic Diagram After Merging Root Nodes
傾斜攝影紋理壓縮技術(shù):紋理壓縮是將傾斜攝影切片的紋理壓縮成適合特定設(shè)備的紋理格式從而優(yōu)化傾斜攝影數(shù)據(jù)在三維場景中的渲染功能。根據(jù)適用設(shè)備,紋理壓縮分為3種壓縮類型:DDS(direct draw surface)是以定長壓縮形式存儲(chǔ)圖形數(shù)據(jù),在PC端直接被顯卡支持,從而節(jié)省大量的顯存。iOS系列設(shè)備移動(dòng)端壓縮紋理是針對(duì)iOS系列設(shè)備的壓縮紋理格式,壓縮比高達(dá)16∶1,在該比例下仍然保持較好的貼圖質(zhì)量,由于移動(dòng)設(shè)備資源有限,其顯存往往與內(nèi)存共用,此壓縮方式可以在不損失貼圖質(zhì)量的情況下節(jié)省大量的內(nèi)存。Android系列設(shè)備移動(dòng)端壓縮紋理是針對(duì)Android系列設(shè)備的壓縮紋理格式,在OpenGL ES 2.0中定義,適用于所有支持OpenGL ES 2.0的Android平臺(tái)設(shè)備[13]。
當(dāng)輸油管線某處發(fā)生泄露或火災(zāi)情況時(shí),系統(tǒng)可以進(jìn)行應(yīng)急預(yù)案模擬。在地圖中添加事故點(diǎn)位置,系統(tǒng)首先通過緩沖區(qū)分析,查詢出距離事故點(diǎn)最近的安全巡檢工人和此管線上游閥室,系統(tǒng)從數(shù)據(jù)庫中調(diào)出巡檢工人的個(gè)人信息,管理員撥打巡檢工人電話通知其去關(guān)閉上游閥室。同時(shí)緩沖區(qū)分析還查詢出距離事故點(diǎn)最近的消防隊(duì)、醫(yī)院和警察局的坐 標(biāo)位 置,系 統(tǒng)基 于Dijkstra算 法[14,15]計(jì) 算 出消防車、救護(hù)車和警車到達(dá)事故點(diǎn)的最短路徑,系統(tǒng)在選擇最佳路徑時(shí),除了要考慮路線長短,還要考慮每段道路的擁堵程度,所以利用通行時(shí)間最短作為選擇依據(jù)最為合理。通行時(shí)間屬性通過距離和通行速度的商值確定,系統(tǒng)通過解析實(shí)時(shí)交通信息(real-time information of China,RTIC)數(shù)據(jù)獲取道路的通行速度,以道路網(wǎng)中路段長度作為通行距離[16]。如圖5所示,在地圖中展示3種車輛按照此路徑模擬從出發(fā)到抵達(dá)事故點(diǎn)進(jìn)行救援的行駛路線。
圖5 應(yīng)急預(yù)案模擬效果圖Fig.5 Emergency Plan Simulation Effect Diagram
三維輸油管線信息管理與安全預(yù)警系統(tǒng)的開發(fā)為石油運(yùn)輸企業(yè)提供了更加科學(xué)、直觀的管理手段,在發(fā)生管線泄漏、火災(zāi)等安全事件時(shí)能夠輔助管理者進(jìn)行決策。對(duì)比分析不同三維管線建模方法,找出以SupMap軟件為代表的符號(hào)化建模方法更加適用于城市級(jí)別的三維管線批量快速建模。通過合并根節(jié)點(diǎn)和紋理壓縮技術(shù)將傾斜攝影實(shí)景模型進(jìn)行壓縮,可以有效提高模型的顯示速度。利用緩沖區(qū)分析和最短路徑Dijkstra算法的安全預(yù)警技術(shù),生動(dòng)形象地進(jìn)行應(yīng)急預(yù)案模擬,為管理者提供直觀、可靠的決策依據(jù)。