靳慧亮,高文琦,劉立輝
(中國電子科學(xué)研究院,北京 100041)
空基電子系統(tǒng)三維顯控框架設(shè)計(jì)與實(shí)現(xiàn)
靳慧亮,高文琦,劉立輝
(中國電子科學(xué)研究院,北京 100041)
當(dāng)前廣泛用于空基任務(wù)電子系統(tǒng)的二維態(tài)勢顯示只能顯示單一維度信息,并且當(dāng)態(tài)勢中存在大批量目標(biāo)時(shí),無法表達(dá)目標(biāo)在高程空間的分布,目標(biāo)重疊嚴(yán)重,不能有效識(shí)別目標(biāo)。三維場景渲染技術(shù)已經(jīng)廣泛用于場景仿真、商業(yè)游戲、虛擬現(xiàn)實(shí)等領(lǐng)域,但針對(duì)空基系統(tǒng)態(tài)勢顯示的研究卻顯得滯后。為此,在對(duì)比論述三維態(tài)勢顯示相對(duì)于二維優(yōu)點(diǎn)以及研究開源三維引擎OpenSceneGraph的基礎(chǔ)上,針對(duì)空基任務(wù)電子系統(tǒng)的特點(diǎn),設(shè)計(jì)了一套三維地理信息渲染引擎和態(tài)勢顯控框架。該引擎支持三維地理信息渲染、矢量和高程數(shù)據(jù)解析、模型加載、場景漫游,三維基礎(chǔ)圖元繪制、軍標(biāo)繪制、航線規(guī)劃、三維量算、三維交互等,能夠支撐三維顯示控制系統(tǒng)的開發(fā)。該框架突破了項(xiàng)目中三維只能用來仿真演示的現(xiàn)狀,實(shí)現(xiàn)了對(duì)空基任務(wù)電子系統(tǒng)各平臺(tái)業(yè)務(wù)的實(shí)時(shí)消息驅(qū)動(dòng)、情報(bào)顯示和交互響應(yīng),實(shí)現(xiàn)了態(tài)勢顯控從二維向三維的轉(zhuǎn)變。
空基平臺(tái);三維GIS;顯控系統(tǒng);三維態(tài)勢
顯示控制系統(tǒng)是空基電子信息的重要組成部分之一,承擔(dān)著信息的收發(fā)、呈現(xiàn)和交互等功能。當(dāng)前空基信息系統(tǒng)采用二維態(tài)勢顯示和標(biāo)繪方式,圖元經(jīng)過Lambert投影變換繪制到二維地圖上。二維態(tài)勢的本質(zhì)是對(duì)三維世界目標(biāo)的抽象,操作員需要在獲取到二維信息后,大腦將其轉(zhuǎn)換為可理解的三維場景,而三維場景省略了這樣的過程,提高了情報(bào)處理速度[1]。隨著信息量的增大,空基任務(wù)系統(tǒng)需要應(yīng)對(duì)的態(tài)勢愈發(fā)復(fù)雜,二維態(tài)勢圖已經(jīng)不足以應(yīng)對(duì)大批量、多目標(biāo)、多維度的需要。比如二維態(tài)勢圖上雷達(dá)的威力范圍被抽象為一個(gè)標(biāo)準(zhǔn)的圓形,雷達(dá)探測到的目標(biāo)用二維圖標(biāo)標(biāo)繪在態(tài)勢圖上。隨著目標(biāo)的增多,會(huì)出現(xiàn)目標(biāo)重合的現(xiàn)象,難以分辨在同一空域內(nèi)處于不同高度的目標(biāo)。此外,地形起伏、海洋和水域的反射以及干擾機(jī)[2]等會(huì)改變雷達(dá)的掃描波束,從而影響雷達(dá)威力范圍。當(dāng)前的三維顯示(如Synthesis ToolKit等)主要目的是仿真演示[2],缺少面向?qū)嶋H裝備的研究[3-4]。
針對(duì)空基信息系統(tǒng)的特點(diǎn),基于開源三維渲染引擎OpenSceneGraph(以下簡稱OSG),設(shè)計(jì)了一套跨平臺(tái)的三維顯控框架,具備了三維地理信息加載、三維標(biāo)繪和航線規(guī)劃、多視圖、二三維切換等功能,支撐空基電子系統(tǒng)業(yè)務(wù)的開發(fā),并成功在預(yù)研項(xiàng)目中得到了應(yīng)用。
OSG是在OpenGL的基礎(chǔ)上使用標(biāo)準(zhǔn)C++開發(fā)的一個(gè)跨平臺(tái)開源三維引擎,OSG基于底層的接口實(shí)現(xiàn)了一套易于使用的三維渲染模式,使得開發(fā)人員專注于三維場景的開發(fā),不必關(guān)注底層實(shí)現(xiàn)[5]。OSG采用了包圍體的形式實(shí)現(xiàn)場景的管理,場景的組織形式是一棵自頂向下的結(jié)構(gòu)樹,能夠提高渲染效率[6]。節(jié)點(diǎn)Node是所有場景的最小單元形式,節(jié)點(diǎn)可以代表矩陣換算、可繪制的對(duì)象等。
顯控框架是空基電子系統(tǒng)的中間件,接收從傳感器的數(shù)據(jù),進(jìn)行計(jì)算并將情報(bào)信息繪制到屏幕。同時(shí)接收用戶的交互指令,做出顯示反饋。顯控框架使用了OSG作為三維場景渲染引擎??栈到y(tǒng)結(jié)構(gòu)如圖1所示。
圖1 空基電子系統(tǒng)框圖
當(dāng)前的二維態(tài)勢地圖采取了瓦片式的地圖加載方式,裁剪特定區(qū)域的shapefile格式地圖,并在態(tài)勢圖初始化時(shí)一次以瓦片的形式逐步加載到內(nèi)存中并且顯示。在地圖瓦片的邊界處,會(huì)出現(xiàn)地圖的失真,且無法 顯示所裁剪地圖區(qū)域外的信息[7]。OSG地理信息系統(tǒng)開發(fā)的SDK和地形渲染引擎osgEarth實(shí)現(xiàn)了全球地圖,支持開放標(biāo)準(zhǔn)的地圖數(shù)據(jù)服務(wù)(TMS,WMS),能夠集成本地存儲(chǔ)的數(shù)據(jù)和網(wǎng)絡(luò)服務(wù)器提供的圖像[8]。在osgEarth的基礎(chǔ)上建立了空基平臺(tái)三維地理信息引擎(Aero-3dGIS)。Aero-3dGIS通過加載earth文件載入地圖,earth文件是用XML語言定義的osgEarth地圖文件格式,指明GIS所用的地圖類型、三面圖、矢量和模型數(shù)據(jù)的存放位置等信息。地圖類型分為兩種:Geocentric和Projected[9]。Geocentric是將地圖呈現(xiàn)為一個(gè)在地心坐標(biāo)系中的完整地球,采用了Geocentric類型的地圖。
Aero-3dGIS包括圖形層、高度層以及模型層,地圖作為osg根節(jié)點(diǎn)加入到場景。圖形層是按照幾何坐標(biāo)疊加到地圖上的經(jīng)過柵格化處理的圖片,通常是一些表征地形紋理的圖片。高度層提供了包含高層數(shù)據(jù)的高度地圖網(wǎng)格。模型層渲染地形無關(guān)的數(shù)據(jù),如外部的3D模型、矢量特征等。圖層能夠設(shè)置開啟或關(guān)閉以適應(yīng)場景渲染的需要。
使用了由CGIAR-CSI提供的免費(fèi)全球地理信息數(shù)據(jù)實(shí)現(xiàn)了全球地理顯示[10]。CGIAR-CSI的SRTM數(shù)據(jù)是由NASA提供的、覆蓋全球所有國家的數(shù)字高程數(shù)據(jù)。
地形紋理依據(jù)細(xì)節(jié)層次(Levels of Details,LoD)依次加載,從而降低了計(jì)算機(jī)的負(fù)載[11]。OSG的LoD節(jié)點(diǎn)定義了最大最小值的距離范圍,根據(jù)當(dāng)前視點(diǎn)與場景的距離來決定加載哪些子節(jié)點(diǎn)。如圖2所示,按照視點(diǎn)高度的不同,加載不同細(xì)節(jié)的模型。
實(shí)驗(yàn)中發(fā)現(xiàn),使用鼠標(biāo)進(jìn)行三維場景的漫游效率低、不夠準(zhǔn)確,操作員難以迅速找到當(dāng)前場景的理想觀察視角。通過繼承osgGA::MatrixManipulator接口,編寫了自定義的場景漫游操作器,實(shí)現(xiàn)了場景視角的快捷鍵切換。當(dāng)操作員點(diǎn)擊選取當(dāng)前視圖中的一個(gè)場景,通過切換預(yù)先定義好的快捷鍵,就可以以當(dāng)前選中模型的物體坐標(biāo)系為參考,切換到俯視、側(cè)視、前45°俯視等視角。
Aero-3dGIS支持三維態(tài)勢的渲染,態(tài)勢圖是三維顯控框架的核心,空基態(tài)勢圖的主要組成要素包括[12-13]:
圖2 不同視角高度的紋理數(shù)據(jù)顯示
(1)地理信息,包括包含的政區(qū)、邊界、地名、河流、海岸線、經(jīng)緯柵格等矢量數(shù)據(jù),三維高程信息,以及反映地表特征的紋理圖片。
(2)戰(zhàn)場信息,包括空中、地面、海面的固定設(shè)施三維模型,如雷達(dá)站、導(dǎo)彈發(fā)射井、海上雷達(dá)平臺(tái)等,以及移動(dòng)目標(biāo)三維模型,包括艦船、飛機(jī)、飛艇、戰(zhàn)車等。此外,雷達(dá)作為獨(dú)立類別,針對(duì)不同元素,應(yīng)體現(xiàn)出雷達(dá)掃描波束、范圍的區(qū)別。
(3)標(biāo)繪信息,包括航線、航跡、引導(dǎo)線、作戰(zhàn)線、軍標(biāo)、標(biāo)牌等信息,是對(duì)戰(zhàn)場信息的必要補(bǔ)充和信息擴(kuò)展。
(4)交互信息,包括場景的漫游、視圖快捷切換、目標(biāo)常規(guī)操作,以及模型的相交運(yùn)算。
根據(jù)三維態(tài)勢的組成要素圖,抽象出面向?qū)ο蟮娜S顯控框架類圖,如圖3所示。
圖3 三維顯控框架主要類視圖
三維顯控框架抽象出了四個(gè)負(fù)責(zé)不同功能的類,四類又根據(jù)具體功能派生出不同的子類,覆蓋三維態(tài)勢圖所涉及到的功能模塊。如軍標(biāo)類3DMSymbols繼承標(biāo)繪信息類3DBattleFieldInfo,主要功能是用軍標(biāo)標(biāo)記態(tài)勢圖中的特定目標(biāo)。3DBattleFieldInfo繼承osg::BillBoard和osg::Drawable。
osg::BillBoard是OSG中的布告板節(jié)點(diǎn),能夠?qū)D形繪制在朝向視點(diǎn)的多邊形表面上,多邊形的朝向隨著觀察角度的變化而變化,布告板技術(shù)適合在三維態(tài)勢中顯示軍標(biāo)、標(biāo)牌等二維元素,使得觀察者在任何角度都可以看到布告板中的內(nèi)容。三維框架封裝了顯控系統(tǒng)的對(duì)外開發(fā)接口,使用OSG避免了直接對(duì)底層的調(diào)用。同時(shí)OSG從上而下的樹形場景管理結(jié)構(gòu),優(yōu)化了場景的組織,提高了場景的渲染效率。
三維顯控框架主視圖包含多個(gè)場景。利用OSG的場景結(jié)構(gòu)樹建立了若干個(gè)特定的場景,開發(fā)人員可以在場景中調(diào)用接口添加模型,不必直接關(guān)注模型在OSG場景樹中的組織形式。
三維顯控框架在Red Hat Linux系統(tǒng)下基于Qt開發(fā),開發(fā)語言為C++。框架采取C++動(dòng)態(tài)鏈接庫插件集成的形式,子系統(tǒng)所需功能以插件的形式集成到框架中[14]。
框架提供模型加載、消息通信、窗口管理、菜單控制接口??蚣軉?dòng)后的態(tài)勢界面如圖4所示。
圖4 三維顯控框架人機(jī)界面
框架模型庫中提供了常用的三維模型,3dMax,Maya等軟件生成的三維模型也可以通過模型導(dǎo)入接口導(dǎo)入到指定場景。圖5左圖顯示將飛機(jī)三維模型導(dǎo)入到三維態(tài)勢圖,右圖是根據(jù)空基平臺(tái)雷達(dá)的數(shù)學(xué)模型建立的三維雷達(dá)模型疊加到飛機(jī)模型上的效果圖。圖中能夠看出雷達(dá)的掃描波束特征、威力覆蓋范圍等二維視圖無法展示的信息。
圖5 空基平臺(tái)雷達(dá)三維模型
針對(duì)空基任務(wù)電子系統(tǒng)的特點(diǎn),設(shè)計(jì)了一套三維地理信息渲染引擎和態(tài)勢顯控框架。
通過與二維態(tài)勢的實(shí)際對(duì)比,三維態(tài)勢圖的優(yōu)點(diǎn)可以總結(jié)為:三維可以展示全球地圖,顯示效果優(yōu)于二維且量算更精確;三維態(tài)勢解決了二維態(tài)勢的目標(biāo)疊加問題,可以從高程維度觀察接近的目標(biāo);三維態(tài)勢能夠真實(shí)展示武器威力范圍在空間的分布,結(jié)合目標(biāo)在空間中的位置,為指揮引導(dǎo)提供了更精確的數(shù)據(jù)。
三維的優(yōu)點(diǎn)明顯,同時(shí)也存在一些問題,如現(xiàn)有的 交互設(shè)備(鼠標(biāo)、鍵盤)在三維場景漫游時(shí)經(jīng)會(huì)出錯(cuò),三維目標(biāo)過多時(shí)計(jì)算機(jī)特別是國產(chǎn)計(jì)算機(jī)卡頓明顯等。后續(xù)工作將繼續(xù)對(duì)這些問題展開研究,實(shí)現(xiàn)國產(chǎn)平臺(tái)上的自主可控三維態(tài)勢引擎。
[1]BrantW.Mentalimageryandcreativity:cognition,observationandrealization[M].Germany:Springer,2013:227-228.
[2]HujsakR,WoodburnJW,SeagoJH.TheOrbitDeterminationToolKit(ODTK)-Version5[J].AdvancesintheAstronauticalSciences,2007,127:381-400.
[3] 蒲 瑋,李 雄,吳成海.三維戰(zhàn)場態(tài)勢顯示標(biāo)繪技術(shù)[J].科技導(dǎo)報(bào),2014,32(34):62-68.
[4] 呂 慶,孟劍萍.基于場景圖形管理技術(shù)的三維空中態(tài)勢引擎設(shè)計(jì)與實(shí)現(xiàn)[J].指揮控制與仿真,2011,33(6):58-64.
[5]OpenSceneGraphreferencemanualV.2.2[M].[s.l.]:[s.n.],2007:36-43.
[6]HagedornJ.Highperformancevisualization[M]//Mathematicalandcomputationalsciencesdivision.[s.l.]:[s.n.],2007:56-71.
[7] 王 琪.網(wǎng)絡(luò)二維地圖與三維虛擬場景集成探討[J].測繪科學(xué),2008,33(2):124-126.
[8] 吳曉雪,任鴻翔,張顯庫,等.基于osgEarth三維數(shù)字地球建設(shè)的研究[J].大眾科技,2015(1):1-3.
[9] 王寶山,武繼軍,羅建元.大地坐標(biāo)轉(zhuǎn)換模型與精度研究[J].河南理工大學(xué)學(xué)報(bào):自然科學(xué)版,2006,25(2):111-115.
[10] 吳運(yùn)金,趙玉國,張甘霖.基于SRTM數(shù)據(jù)的中國1:100萬SOTER地形體的構(gòu)建[J].土壤,2010,42(1):123-130.
[11] 徐智勇,吳小芳.LOD技術(shù)在電子地圖顯示中的應(yīng)用研究[J].測繪信息與工程,2004,29(5):19-21.
[12] 韓桂明,韓傳久,莫建文,等.基于OSG的雷達(dá)三維雷達(dá)信息顯示系統(tǒng)仿真[J].微計(jì)算機(jī)信息,2008,24(13):247-249.
[13] 韓曉寧,陳 希,王嬌艷.三維海戰(zhàn)場雷達(dá)探測可視化研究與實(shí)現(xiàn)[J].計(jì)算機(jī)科學(xué),2013,40(3):147-150.
[14] 劉立輝,孟慶鑫.基于動(dòng)態(tài)鏈接庫的復(fù)雜信息系統(tǒng)分層框架設(shè)計(jì)[J].計(jì)算機(jī)與信息技術(shù),2009(5):39-41.
Design and Implementation of 3D Aero Display and Control System for OSG
JIN Hui-liang,GAO Wen-qi,LIU Li-hui
(China Academy of Electronics and Information Technology,Beijing 100041,China)
2D display and control is used to be main way of presenting air situation,but when there exists plenty of overlapping items,it’s difficult to clearly distinguish useful targets.3D graph rendering technology is widely applied in scenario emulation,business games,virtual reality and so on,but few research has been conducted in aero dis-ctrl system.Therefore,on the basis of discussion of advantages of 3D dis-ctrl system compared with 2D method and research of OpenSceneGraph,in order to implement 3D aero dis-ctrl system,a 3D dis-ctrl framework based on OSG has been designed.It supports 3D geography rendering,vector and elevation data parsing,model loading and scene roaming,graph and symbols painting as well as 3D airline plotting,3D manipulation,3D measurement and interaction.By this framework,3D-tech can not only be used for emulation,but also be available for constructing actual data-driven aero 3D dis-ctrl systems.
aero dis-ctrl platform;3D GIS;display and control system;3D situation
2016-05-16
2016-09-08
時(shí)間:2017-03-07
國家工信部基金項(xiàng)目(2012ZX01041-005)
靳慧亮(1987-),男,工程師,研究方向?yàn)槿藱C(jī)交互與顯示控制。
http://kns.cnki.net/kcms/detail/61.1450.TP.20170307.0921.034.html
TP302
A
1673-629X(2017)04-0161-03
10.3969/j.issn.1673-629X.2017.04.036