黃建峰,宋金根,丁小蔚,龔堅剛,孫福昌,黃 淮
1(浙江省電力公司檢修公司,杭州 310000)2(浙江華云電力工程設計咨詢有限公司,杭州 310000)3(南京工程學院 電力學院,南京 211167)
隨著電力系統可視化水平的不斷發展,三維仿真技術在輸電線路輔助設計、運行管理和技能培訓中的應用越來越廣泛,為電網運維部門提供了具體的操作對象和高效的輔助手段[1].然而,作為輸電線路三維可視化系統的重要組成部分,廊道內復雜的地形結構對三維引擎提出了極大要求和挑戰,如何有效地實時渲染大規模虛擬地形場景成為輸電線路仿真的主要瓶頸[2].
文獻[3]采用基于圖像的建模方法合成了輸電線路的地形環境,避免了大量數據的復雜建模和優化工作,缺點是降低了三維場景的交互性和沉浸感.文獻[4]通過無人機掃描獲取地形場景的數據模型,結合區域紋理信息構建了輸電線路走廊的三維地理環境,但是龐大的數據量嚴重影響了建模速度.
靜態LOD是一種適用于GPU處理的虛擬地形場景繪制方法.文獻[5]介紹了靜態LOD算法的優缺點,利用邊界的多重細節層次來解決相鄰地形塊之間的裂縫問題.文獻[6]引入線性四叉樹管理機制構建了地形塊的調度準則,提高了畫面的流暢度和渲染效率.本文研究了基于靜態LOD的輸電線路虛擬地形繪制方法,以滿足輸電線路三維可視化系統的實際需求.
通常情況下,靜態LOD算法采用四叉樹法劃分地形網格,離線生成各地形塊的不同細節層級,根據評價函數決定渲染時采用的細節層級,對地形塊進行載入和繪制[7].在不影響地形場景逼真度的前提下,有效減少了渲染的數據量和時間.
然而,四叉樹法采用正方形作為初始地形網格,在此基礎上進行遞歸劃分,對生成的地形塊和節點數要求非常嚴格.同時,算法根據視點的位置和地形塊的復雜程度建立評價函數,忽視了視點移動速度對層次細節載入的影響.
地形數據的存儲是實現大規模地形算法的首要和關鍵.若采用正方形作為長距離輸電線路虛擬場景的初始地形,不僅高程模型數據量龐大,其空間分布也會不均勻,導致生成的地形四叉樹結構不平衡,嚴重影響了虛擬場景的建模速度和效率[8].為此,本文根據輸電線路走廊的位置和范圍,進行地形數據的分塊優化存儲處理.
首先,獲取高程模型數據的等間距離散點三維坐標和拓撲網絡結構信息,保證地形數據的完整性.遍歷所有采集到的高程數據點,以最小矩形包圍盒為地形結構的根節點,劃分矩形區域劃分成多個邊長為2n+1的正方形地形塊,構建下一層次的子節點,當區域不足形成正方形時,以包含該區域的最小正方形進行增補,如圖1所示.對各子節點包含的地形塊進行四叉樹遞歸分割,構建不同細節層級的地形數據結構,深度值取4–7之間.

圖1 地形數據分塊模型
在輸電線路虛擬場景中,視角移動速度會對屏幕的渲染效果產生重要影響,視角移動速度越快則看到的場景越模糊.因此,將視角移動速度納入評價因子中,結合視點距離、地形復雜度等因素改進評價函數f,計算渲染時采用的地形細分程度,公式如式(1)所示:

式中,D(z)為地形塊高程值的方差;C1、C2分別為視點距離和地形復雜度的控制因子;L為視點與地形塊的直線距離;r為地形塊邊長;v為視點移動速度.
在其他控制因子保持不變的情況下,當移動速度變快時,評價函數變小,表示將采用深度值較低的地形塊.若評價函數計算結果小于1,則對當前地形層級直接進行渲染操作,否則重新計算深度值更高的細節層級,從而提高了大規模地形渲染的效率.
對四叉樹結構中各細節層級的正方形地形單元,采集數字高程模型中各單元頂點的平面坐標和高程值,利用數學函數完成網格內地形曲面的模擬,適用于虛擬現實系統中的大規模地形場景建模[9].本文提出了一種基于線性插值函數的地形渲染方法.
插值函數直接決定了地形建模的精度和速度,常用的函數類型有距離加權、線性內插、樣條函數、最小二乘法等[10].其中,線性插值函數具有數據存儲量小、拓撲結構簡單、易于采集和計算的優點,獲得了較為廣泛的使用.根據插值方式的不同,線性函數主要分為雙線性多項式、雙三次多項式和最鄰近插值三種.
考慮到輸電線路廊道內地形條件的復雜性,采用單一的插值方式難以準確描述地理條件信息,也影響了虛擬場景的還原度和沉浸感.為保證地形模擬精度的同時提高建模速度,根據網格內地形特征選擇不同的插值模型,對地形平坦區域采用計算量小的雙線性多項式,對地形崎嶇區域采用模擬精度高的雙三次多項式進行插值計算.
以線性插值法為基礎,引入閾值判斷規則格網中各單元格高程值的方差,選擇不同的線性函數模擬區域表面的地形起伏,流程如圖2所示.

圖2 算法流程圖
步驟1.設定閾值T.

步驟3.判斷閾值T和方差的大小,若閾值大轉步驟4,否則轉步驟5.
步驟4.采用雙線性多項式進行插值計算,利用待插值點所在格網的四個頂點坐標計算多項式系數,待插值點高程的表達式為:

式中,x、y為待插值點的平面坐標,a11、a12、a21、a22為雙線性多項式系數.
步驟5.采用雙三次多項式進行插值計算,多項式系數由待插值點所在格網和鄰近格網的16個頂點坐標決定,高程表達式為:

步驟6.計算所有單元,完成基于規則格網的地形建模.
為驗證本算法在仿真大規模地形場景方面的有效性和優越性,選取了某地區數字高程模型的5000個采樣點,劃分為10*10網格,分別采用ROAM算法、規則四叉樹算法和本文算法進行地形渲染,計算不同狀態下地形塊的渲染數,對比測試結果如表1所示.

表1 算法測試結果對比
實驗結果表明:在靜止狀態時,三種算法繪制的三角面數基本相同;然而當視點處于運動狀態時,本文算法有效減少了三角面的繪制數,具有更加流暢的虛擬場景幀數.
針對算法中各細節層級的地形塊,分別采用雙線性法、雙三次法和閾值判斷法模擬地形起伏,在保證模擬精度的同時有效減少了運算時間,如圖3所示.

圖3 網格生成結果
針對輸電線路三維可視化系統中地形場景的渲染問題,提出一種基于靜態LOD的虛擬地形場景建模方法.建立地形數據的分塊優化處理結構,將視角移動速度納入評價函數的控制因子中,通過函數計算結果調用細節層級.根據正方形網格內高程點的方差分別選擇不同的插值函數模擬地形起伏,實驗結果證明本文算法有效減少了運動狀態下地形三角面的繪制數,具有更加流暢的虛擬場景體驗和良好的地形仿真效果.
1 陳海波,鄭健,費瑞軼,等.虛擬現實技術在電力系統中的典型應用.電網與清潔能源,2016,32(2):20–25.
2 楊成順,楊中亞,黃宵寧.基于資產類模型和空間信息模型的輸電線路三維可視化平臺.電測與儀表,2015,52(23):122–128.[doi:10.3969/j.issn.1001-1390.2015.23.022]
3 孫鳳杰,劉慧娟,陳鶴.輸電線路虛擬三維場景建模方法研究與實現.中國電力,2015,48(9):86–89,94.
4 麥曉明,陳馳,彭向陽,等.輸電線路走廊三維可視化技術和系統設計.中國電力,2015,48(2):98–103.
5 夏杰,陳奇.基于靜態LOD的海量地形繪制中的接縫算法.計算機工程與設計,2010,31(22):4847–4850.
6 李欽,戴樹嶺,趙永嘉,等.分塊 LOD 大規模地形實時渲染算法.計算機輔助設計與圖形學學報,2013,25(5):708–713.
7 馬彥力.三維GIS大數據量場景快速可視化關鍵技術研究[碩士學位論文].杭州:浙江大學,2013.
8 劉揚,宮阿都,李京.基于數據分層分塊的海量三維地形四叉樹簡化模型.測繪學報,2010,39(4):410–415.
9 盧立托,李攀峰,馬洪浩.基于GPU的不規則三角網向規則格網數字高程模型轉換算法優化.計算機應用,2015,35(S1):32–34.
10 顧春雷,楊漾,朱志春.幾種建立DEM模型插值方法精度的交叉驗證.測繪與空間地理信息,2011,34(5):99–102.
11 Chen GY,Du LB,He HJ,et al.Research on key techniques of expendable conductivity temperature depth measuring system.Instrumentation,2015,2(2):18–27.