喻 鈞,代 軍,盧延新,胡志毅,王占峰
(1.西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,西安 710021;2.軍委后勤部建筑工程研究所,西安 710032)
迷彩偽裝的三維視景仿真*
喻 鈞1,代 軍1,盧延新1,胡志毅2,王占峰2
(1.西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,西安 710021;2.軍委后勤部建筑工程研究所,西安 710032)
針對(duì)當(dāng)前軍事工程偽裝設(shè)計(jì)中存在的以經(jīng)驗(yàn)為主導(dǎo)、設(shè)計(jì)效果無法預(yù)測(cè)等問題,提出一種基于MFC的Vega Prime仿真方法用于迷彩偽裝的三維視景仿真。以我國(guó)某地區(qū)的數(shù)字高程模型為基礎(chǔ)數(shù)據(jù),采用三維可視化仿真技術(shù),構(gòu)建了偽裝場(chǎng)景的地形模型和地物模型。通過紋理映射技術(shù)把迷彩圖案實(shí)施到模型表面,并利用實(shí)時(shí)渲染引擎Vega Prime API對(duì)模型進(jìn)行渲染,建立迷彩偽裝仿真場(chǎng)景。仿真結(jié)果表明:采用視景仿真技術(shù)對(duì)工程偽裝效果進(jìn)行虛擬場(chǎng)景再現(xiàn),能夠生成逼真的迷彩偽裝場(chǎng)景。
迷彩偽裝,地形建模,視景仿真,數(shù)字高程模型
迷彩偽裝作為最基本的軍事偽裝技術(shù),是現(xiàn)代戰(zhàn)爭(zhēng)中對(duì)抗偵查與打擊的常用手段之一[1]。目前常用的工程偽裝方法是用涂料將迷彩圖案噴涂在偽裝目標(biāo)的表面,由于它的偽裝效果受環(huán)境因素的影響,通常要人工參與偽裝效果的評(píng)價(jià),因而可能消耗大量的人力和物力。隨著仿真技術(shù)在軍事領(lǐng)域的廣泛應(yīng)用,軍事戰(zhàn)場(chǎng)復(fù)雜的地理環(huán)境以及大量的地形、地物數(shù)據(jù)[2],使得許多學(xué)者開始運(yùn)用基于Vega Prime(以下簡(jiǎn)稱VP)的視景仿真技術(shù),構(gòu)建軍事目標(biāo)的三維模型或再現(xiàn)真實(shí)環(huán)境,達(dá)到逼真的仿真效果。例如,文獻(xiàn)[3]結(jié)合MFC應(yīng)用程序的開發(fā)特點(diǎn),給出一種基于多進(jìn)程技術(shù)的三維視景開發(fā)方法,應(yīng)用于某型便攜式防空導(dǎo)彈模擬訓(xùn)練器軟件的三維場(chǎng)景開發(fā);文獻(xiàn)[4]針對(duì)虛擬戰(zhàn)場(chǎng)大地形可視化的特點(diǎn),著重于大規(guī)模真實(shí)地形可視化技術(shù)的研究;文獻(xiàn)[5]在文獻(xiàn)[3]的基礎(chǔ)上作了進(jìn)一步改進(jìn),給出一種在VC++的MFC類庫編程環(huán)境下對(duì)VP實(shí)現(xiàn)無縫集成的程序框架,優(yōu)化了系統(tǒng)的結(jié)構(gòu)。但上述方法均不滿足真實(shí)三維空間及仿真的實(shí)時(shí)和交互性的需求,且不適用于工程偽裝的仿真。
針對(duì)上述問題,本文在汲取文獻(xiàn)[2-5]提到的三維視景仿真方法的基礎(chǔ)上,以我國(guó)某地區(qū)的DEM(數(shù)字高程模型)為基礎(chǔ)數(shù)據(jù),結(jié)合實(shí)際的工程偽裝環(huán)境,建立了基于MFC的Vega Prime視景仿真框架,設(shè)計(jì)出一套偽裝效果仿真場(chǎng)景的實(shí)時(shí)漫游系統(tǒng)。
迷彩偽裝的三維視景仿真系統(tǒng)包括仿真模型和仿真場(chǎng)景兩部分。仿真模型是指仿真目標(biāo)區(qū)域的所有模型,仿真場(chǎng)景是指為了實(shí)現(xiàn)工程偽裝仿真效果而生成的偽裝仿真虛擬場(chǎng)景。
針對(duì)工程偽裝視景仿真系統(tǒng),其設(shè)計(jì)和開發(fā)可以分以下4個(gè)步驟來完成,系統(tǒng)總體框架如圖1所示。
1)建立地形模型。獲取我國(guó)某軍事地區(qū)目標(biāo)區(qū)域的高精度DEM數(shù)據(jù)以及衛(wèi)星正射影像數(shù)據(jù),在Terra Vista中建立仿真場(chǎng)景的地形模型,從而構(gòu)建出地表的海拔高度、起伏狀態(tài);
2)建立地物模型。根據(jù)仿真場(chǎng)景周圍地物的平面布局、紋理材質(zhì)等數(shù)據(jù),在MultiGen Creator中構(gòu)建地物模型,從而構(gòu)建出場(chǎng)景的軍事設(shè)備、武器裝備以及倉儲(chǔ)營(yíng)房等;
3)偽裝場(chǎng)景模型。根據(jù)仿真場(chǎng)景周圍的背景和目標(biāo)特征,采用文獻(xiàn)[6]的迷彩設(shè)計(jì)方法獲得數(shù)碼迷彩圖案,將迷彩圖案映射到三維模型表面,并將偽裝后的模型布置到整個(gè)場(chǎng)景中;
4)渲染與實(shí)現(xiàn)。利用OpenFlightAPI編程導(dǎo)出模型的布置信息,利用Vega Prime和visual studio編寫實(shí)時(shí)調(diào)度顯示程序,結(jié)合MFC框架生成實(shí)時(shí)漫游的仿真場(chǎng)景。
圖1 系統(tǒng)總體框架
在軍事偽裝中,地形指地球表面高低起伏的自然狀態(tài)。一個(gè)目標(biāo)能否被偵查發(fā)現(xiàn),主要取決于地形的復(fù)雜程度和目標(biāo)與背景特性的差別[7],而地形模型是對(duì)真實(shí)地形屬性的一種抽象和簡(jiǎn)化的表達(dá),因此,在戰(zhàn)場(chǎng)環(huán)境視景仿真中不可避免地涉及到地理空間的三維場(chǎng)景顯示和處理,地形視景仿真已經(jīng)成為戰(zhàn)場(chǎng)環(huán)境三維視景仿真研究的熱點(diǎn)。
Terra Vista是MultiGen公司推出的復(fù)雜地形視景仿真建模的軟件,用于構(gòu)建三維地形仿真模型。Terra Vista以項(xiàng)目管理的方式管理三維地形數(shù)據(jù),主要由地形數(shù)據(jù)源庫、地形參數(shù)配置、矢量參數(shù)配置、CDB格式地形文件瀏覽以及模型數(shù)據(jù)庫構(gòu)成。它運(yùn)行于Windows平臺(tái),生成MataFlight或Open-Flight格式的地形數(shù)據(jù)庫可直接用于PC工作站或其他圖形視景系統(tǒng)。Terra Vista構(gòu)建三維地形仿真模型主要包括數(shù)據(jù)載入、地形參數(shù)設(shè)置、計(jì)算生成地形等3個(gè)步驟。
1)數(shù)據(jù)載入。主要包括高程數(shù)據(jù)、衛(wèi)星影像數(shù)據(jù)、矢量數(shù)據(jù)等數(shù)據(jù)的導(dǎo)入。
首先,載入數(shù)字高程數(shù)據(jù)。以國(guó)內(nèi)某地區(qū)周圍60 km2的區(qū)域作為目標(biāo)所處的偽裝場(chǎng)景。DEM數(shù)據(jù)越精確,建立的地形越逼真,可以表達(dá)真實(shí)地形更細(xì)小的局部細(xì)節(jié),對(duì)于仿真場(chǎng)景一般要求地形格網(wǎng)的精度為10 m~30 m。因此,采用文獻(xiàn)[8]提出的一種改進(jìn)的雙線性內(nèi)插算法,在原有DEM數(shù)據(jù)的基礎(chǔ)上進(jìn)行插值,從而提高DEM數(shù)據(jù)的精度。數(shù)據(jù)轉(zhuǎn)換及插值過程如下:
①從SRTM1中獲取對(duì)應(yīng)區(qū)域.hgt格式的原始DEM數(shù)據(jù),然后在ArcGIS中將.hgt格式的數(shù)據(jù)轉(zhuǎn)換為ASCII格式;
②在UltraEdit中將ASCII格式DEM數(shù)據(jù)的數(shù)據(jù)體部分導(dǎo)出為.txt格式文件,保存文件頭與文件說明;
③將導(dǎo)入Matlab,并利用改進(jìn)的雙線性內(nèi)插算法將30 m精度的插值至15 m精度,并導(dǎo)出為.txt文件;
④在UltraEdit中,修改文件的文件頭與文件說明,并將文件作為數(shù)據(jù)體,一起構(gòu)成本文使用的DEM數(shù)據(jù)。
在Global Mapper中顯示插值前后的DEM數(shù)據(jù),如下頁圖2所示。
其次,載入衛(wèi)星影像數(shù)據(jù)。使用Bing Maps Satellite獲取待偽裝區(qū)域的衛(wèi)星影像數(shù)據(jù),該影像是以 SPHERE RADIUS 6378137基準(zhǔn)的 Mercator投影,而SRTM DEM所使用的為WGS84基準(zhǔn)的Geocentric地心投影,因此,需要進(jìn)行格式轉(zhuǎn)換,利用Global Mapper中的投影轉(zhuǎn)換工具,將衛(wèi)星影像轉(zhuǎn)化為WGS84基準(zhǔn)的Geocentric地心投影格式,獲得的衛(wèi)星正射影像如圖3所示。
圖2 DEM數(shù)據(jù)效果對(duì)比圖
圖3 衛(wèi)星正射影像圖
最后,載入矢量數(shù)據(jù),矢量數(shù)據(jù)指地形數(shù)據(jù)庫中除去地形以外的其他多邊形,可以是自然形成的,如湖泊與河流,也可以為人工構(gòu)建的,如建筑與道路。本文根據(jù)衛(wèi)星影像,在Terra Vista中制作該區(qū)域的矢量數(shù)據(jù),主要規(guī)則為:為所占地域范圍有限、位置、方向和大小不需要具體形狀的物體創(chuàng)建點(diǎn)細(xì)節(jié);為長(zhǎng)度遠(yuǎn)遠(yuǎn)大于寬度和高度的物體創(chuàng)建線性細(xì)節(jié);為所占面積較大、區(qū)域邊沿需要重點(diǎn)定義的物體創(chuàng)建區(qū)域細(xì)節(jié)。
2)地形參數(shù)設(shè)置。主要包括層次細(xì)節(jié)(LOD)的級(jí)別數(shù)、可視距離、格網(wǎng)大小以及格網(wǎng)中三角網(wǎng)的構(gòu)造方法。地形LOD技術(shù)是一種地形的繪制方法,在不影響場(chǎng)景視覺效果基礎(chǔ)上,通過逐級(jí)簡(jiǎn)化地形表面的細(xì)節(jié)來減少地形場(chǎng)景的幾何復(fù)雜性,從而提高繪制算法的效率。本文采用四叉樹分層遞進(jìn)的方式構(gòu)造LOD,每一層將地形劃分為若干網(wǎng)格,下一層將上一層中的每個(gè)網(wǎng)格四分,以此類推,各層中每個(gè)網(wǎng)格由若干數(shù)量三角形細(xì)分。仿真場(chǎng)景LOD設(shè)為三級(jí),可視距離設(shè)為5000m,地形塊設(shè)為7500m×7 500 m,采用Denauley算法構(gòu)造三角形網(wǎng),最終生成的多分辨率幾何地形,如圖4所示。
3)計(jì)算生成地形。利用Gaming Area工具選取要生成的目標(biāo)區(qū)域,設(shè)定輸出紋理圖片的格式及分辨率,確定輸出的模型格式,考慮到后期在Creator中修正,本文采用OpenFlight格式。在生成地形幾何模型過程中,Terra Vista生成的地形以劃分網(wǎng)格為單元存儲(chǔ)在OpenFlight模型文件中,最后通過外部引用節(jié)點(diǎn)將各個(gè)模型節(jié)點(diǎn)統(tǒng)一在文件名為master.flt文件中。圖5所示為最終生成的幾何地形。
圖4 不同分辨率的地形幾何模型
圖5 地形效果
地物模型是戰(zhàn)場(chǎng)環(huán)境的重要組成部分,包括自然地物、軍事設(shè)備、碉堡、倉儲(chǔ)營(yíng)房等重要戰(zhàn)場(chǎng)地物對(duì)象。MultiGen Creator是創(chuàng)建三維地物模型的可視化仿真軟件。軟件的基本核心是建模模塊,提供了創(chuàng)建和編輯數(shù)據(jù)庫文件的可視化環(huán)境[9]。與3DMAX、MAYA等常用建模工具不同的是,Creator用層次化結(jié)構(gòu)的方式描述仿真場(chǎng)景,可以方便地將模型按照幾何特性進(jìn)行有效的組織,適合實(shí)時(shí)進(jìn)行遍歷操作[10]。利用Creator建模的基本步驟如下。
1)確定模型數(shù)據(jù)。對(duì)于自然地物需要位置、面積等信息;對(duì)于建筑需要平面圖、剖面圖、三視圖等信息;
2)確定模型的層次結(jié)構(gòu)。按照樹狀層次結(jié)構(gòu)分解模型,例如建筑的地面、內(nèi)墻面等;
3)采用文獻(xiàn)[6]的仿造數(shù)碼迷彩設(shè)計(jì)方法生成迷彩偽裝圖案,選取的典型背景以及生成的迷彩圖案如下頁圖6所示。
圖6 迷彩圖案的生成
4)采用紋理映射技術(shù),將圖6(b)的迷彩圖案映射至三維模型表面,通過交互式控制模塊旋轉(zhuǎn)物體或改變視點(diǎn)來得到不同視角的效果圖,獲得具有工程實(shí)際應(yīng)用價(jià)值的偽裝目標(biāo)三維視圖,最后將三維模型按照對(duì)應(yīng)比例放置于仿真場(chǎng)景中,構(gòu)建的地物模型如圖7、圖8所示。
圖7 飛機(jī)偽裝模型
圖8 坦克偽裝模型
實(shí)時(shí)渲染引擎是偽裝仿真場(chǎng)景的核心,Multi-Gen公司開發(fā)的實(shí)時(shí)三維視景仿真工具Vega Prime廣泛應(yīng)用于軍事仿真領(lǐng)域[11],VP主要包括LynX Prime圖形用戶界面配置工具和VSG高級(jí)跨平臺(tái)場(chǎng)景渲染API[12]。本文在MFC類庫的編程環(huán)境下調(diào)用VP實(shí)現(xiàn)虛擬實(shí)時(shí)的仿真系統(tǒng)的設(shè)計(jì),具體方法如下:
1)在應(yīng)用程序中單獨(dú)創(chuàng)建一個(gè)工作線程來運(yùn)行VP的整個(gè)程序流程,包括初始化、定義、配置和幀循環(huán)。
2)然后在MFC框架的視圖類中添加負(fù)責(zé)開啟該線程的成員函數(shù)。
3)利用API函數(shù) AfxBeginThread開啟 VP線程,在后臺(tái)進(jìn)行幀循環(huán)刷新VP視景窗口。系統(tǒng)運(yùn)行流程圖如圖9所示。
圖9 系統(tǒng)運(yùn)行流程圖
圖10、圖11為所開發(fā)的基于VP的工程偽裝仿真場(chǎng)景主頁面,設(shè)計(jì)出的偽裝場(chǎng)景系統(tǒng)界面主要分為4個(gè)區(qū)域。其中,區(qū)域1為創(chuàng)建模型子面板,包括載入OpenFlight格式的地形與地物模型、生成數(shù)碼迷彩,實(shí)現(xiàn)對(duì)地形模型與地物模型的偽裝;區(qū)域2為渲染配置子面板,包括設(shè)置仿真中的觀察者、運(yùn)動(dòng)模式以及大氣環(huán)境,實(shí)現(xiàn)對(duì)仿真場(chǎng)景的控制,如平移、縮放、旋轉(zhuǎn)等;區(qū)域3為仿真控制子面板,實(shí)現(xiàn)整個(gè)場(chǎng)景漫游的開始及結(jié)束;區(qū)域4為仿真場(chǎng)景顯示子面板,顯示仿真場(chǎng)景的全貌。使用者可以借助PC端設(shè)備在虛擬場(chǎng)景中任意漫游,系統(tǒng)將根據(jù)移動(dòng)的位置,實(shí)時(shí)渲染更新,通過近景遠(yuǎn)景視角切換,從不同角度和位置查看仿真場(chǎng)景的布局。
圖10 場(chǎng)景漫游正視圖
從圖10、圖11的仿真結(jié)果可以看出,本系統(tǒng)建立的地形模型和地物模型符合區(qū)域目標(biāo)背景的特征,偽裝后的仿真場(chǎng)景具有很高的逼真度和真實(shí)感,達(dá)到不易被偵查和發(fā)現(xiàn)的目的,充分體現(xiàn)了視景仿真在迷彩偽裝中的重要性。
圖11 場(chǎng)景漫游側(cè)視圖
本文通過三維視景仿真技術(shù)對(duì)傳統(tǒng)的工程偽裝方法進(jìn)行了改進(jìn),搭建了基于MFC的VP視景仿真框架,實(shí)現(xiàn)了對(duì)目標(biāo)區(qū)域地形、地物的建模和渲染,建立了立體、動(dòng)態(tài)、高逼真的偽裝仿真場(chǎng)景。結(jié)果表明:本文設(shè)計(jì)的偽裝仿真場(chǎng)景在視覺上真實(shí)再現(xiàn)了實(shí)地偽裝作業(yè)的效果,增強(qiáng)了使用者的臨場(chǎng)感,解決了當(dāng)前軍事工程偽裝效果的檢測(cè)主要依賴于實(shí)地作業(yè)的問題,為工程偽裝效果的評(píng)估提供了一種有效的輔助手段,為軍事工程偽裝的設(shè)計(jì)提供了很好的虛擬仿真平臺(tái)。
[1]胡江華.偽裝技術(shù)[M].北京:國(guó)防工業(yè)出版社,2012:84-88.
[2]許建中.戰(zhàn)場(chǎng)環(huán)境地形編輯器系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].火力與指揮控制,2016,41(1):152-156.
[3]張樂,韓佳盈.MFC框架下的Vega Prime三維視景程序開發(fā)技術(shù)[J].火力與指揮控制,2014,39(3):159-162.
[4]姚凡凡,梁強(qiáng).基于Vega Prime的三維虛擬戰(zhàn)場(chǎng)大地形動(dòng)態(tài)生成研究[J].系統(tǒng)仿真學(xué)報(bào),2012,24(9):1900-1904.
[5]胡梓楠,于勁松.基于MFC編程框架的Vega Prime軟件集成技術(shù)的研究 [J]. 系統(tǒng)仿真學(xué)報(bào),2009,21(14):4291-4294.
[6]喻鈞,雙曉.仿造數(shù)碼迷彩的設(shè)計(jì)方法[J].應(yīng)用科學(xué)學(xué)報(bào),2012,33(4):331-334.
[7]董志明,郭齊勝.戰(zhàn)場(chǎng)環(huán)境建模與仿真[M].北京:國(guó)防工業(yè)出版社,2013:153-157.
[8]喻鈞,盧延新.一種改進(jìn)的雙線性規(guī)則格網(wǎng)DEM內(nèi)插算法[J].測(cè)繪科學(xué)技術(shù)學(xué)報(bào),2015,32(5):531-535.
[9]邵曉東.Creator建模藝術(shù)[M].西安:西安電子科技大學(xué)出版社,2014:40-43.
[10]王娜娜,韓勇.基于3DS MAX和MultiGen Creator的虛擬地理信息系統(tǒng)建模的比較分析[J].測(cè)繪通報(bào),2010,11(2):47-51.
[11]Vega Prime Programmer’s Guide(Version 2.0)[Z].Dallas:MultiGen-Paradigm Inc.,2005:12-16.
[12]王孝平.Vega Prime實(shí)時(shí)三維虛擬現(xiàn)實(shí)開發(fā)技術(shù)[M].成都:西南交通大學(xué)出版社,2012:128-133.
Dimensional Visual Simulation of Camouflage
YU Jun1,DAI Jun1,LU Yan-xin1,HU Zhi-yi2,WANG Zhan-feng2
(1.School of Computer Science and Engineering,Xi’an Technological University,Xi’an 710021,China;2.Architectural Engineering Institute,General Logistics Department,Xi’an 710032,China)
Aiming at the problems of the design of military engineering camouflage affected by the experience and unpredictable performance,it presents a new Vega Prime simulation method based on MFC.The method can be used in the dimensional visual simulation of camouflage.As the basic data of Digital Elevation Model (DEM for short) in an area in China,the models of terrain and culture of camouflage scene are created using three-dimensional visualization simulation technology.The camouflage pattern is painted to the model surface through by texture mapping technology,as well as using real-time rendering engine Vega Prime API to render the model,finally camouflage simulation scenario is established.The experimental results show that,the realistic camouflage scenery can be generated using the visual simulation technology for engineering camouflage effect of virtual scene.
camouflage,terrain modeling,visual simulation,digital elevation model
1002-0640(2017)10-0157-05
TP391.9
A
10.3969/j.issn.1002-0640.2017.10.033
2016-09-01
2016-10-08
全軍后勤重大科研項(xiàng)目(AY2112001);中國(guó)博士后科學(xué)基金特別資助項(xiàng)目(2015T81085)
喻 鈞(1970- ),女,重慶人,教授。研究方向:圖像處理與軍事偽裝。