楊玉婷 高 鑫 袁韻潔
(西安電子工程研究所 西安 710100)
隨著軍事作戰(zhàn)能力的提升,作戰(zhàn)模式已從單一武器作戰(zhàn)演變?yōu)槲淦飨到y(tǒng)的協(xié)同作戰(zhàn),空間范圍也不再局限于陸地,空中和海面的拓展使戰(zhàn)場逐漸成為立體化的形態(tài)[1-2]。范圍的擴大使本就瞬息萬變的戰(zhàn)場信息變得更加復(fù)雜,傳統(tǒng)的單一信息展示已不能全面反映實際戰(zhàn)場,多維度的態(tài)勢演示是未來的發(fā)展方向。
結(jié)合實際作戰(zhàn)情況,作戰(zhàn)演示系統(tǒng)一般需提供地圖顯示控制、戰(zhàn)場態(tài)勢信息顯示、空情目標(biāo)信息顯示等功能。Cesium是一種GIS(geo information system地理信息系統(tǒng))平臺,可直觀顯示態(tài)勢信息、空情信息等,能夠動態(tài)展示戰(zhàn)場變化,將從戰(zhàn)場中實時獲得的數(shù)據(jù)以圖形化的方式展示出來。本文首先概述了Cesium平臺的特點及場景,然后對Cesium平臺涉及的三種數(shù)據(jù)進行分析,最后對Cesium在武器系統(tǒng)作戰(zhàn)演示中的兩類典型應(yīng)用進行介紹。
Cesium是一個基于JavaScript語言的開源三維地理信息庫,無需額外安裝插件即可在支持html5的瀏覽器上運行。Cesium具有成本低、支持多種數(shù)據(jù)可視化方法、跨平臺、計算精度高等優(yōu)勢;基于WebGL底層框架進行開發(fā),并在WebGL的基礎(chǔ)上做了許多算法優(yōu)化,能夠更加流暢地海量加載三維模型數(shù)據(jù)與全球的遙感影像數(shù)據(jù)和地形數(shù)據(jù)[3]。相比于其他GIS平臺,Cesium真正實現(xiàn)了二、三維一體化,支持2D平面地圖、2.5D哥倫布地圖、3D三維地圖的場景切換,圖1展示了三種不同場景,通過右上角的地圖模式切換選項,即可在三種場景間任意切換。
圖1 Cesium場景
此外對于開發(fā)者來說,Cesium有詳細的API文檔,對其屬性、方法等進行了說明,還提供了Sandcastle沙盒代碼庫,可在沙盒中運行測試程序,提高了開發(fā)效率。Cesium可用于與GIS相關(guān)的各行業(yè),如建筑、水文、城市規(guī)劃等,Chaturvedi K在Cesium上加載3D城市模型,用于指導(dǎo)城市建設(shè)[4],Meersbergen M V利用Cesium實現(xiàn)了水文預(yù)報數(shù)據(jù)集的可視化[5],目前Cesium在武器系統(tǒng)作戰(zhàn)演示方向的應(yīng)用鮮有提及。
在武器系統(tǒng)作戰(zhàn)演示應(yīng)用中,Cesium作為地理信息平臺,能夠?qū)崟r態(tài)勢信息等展示在地圖上。這其中涉及到地圖數(shù)據(jù)、模型數(shù)據(jù)以及作戰(zhàn)演示數(shù)據(jù),下面就三類數(shù)據(jù)的來源以及加載方式進行詳細介紹。
Cesium可加載天地圖、Arcgis等在線地圖,也支持瓦片地圖模式。作戰(zhàn)演示軟件應(yīng)用于武器系統(tǒng)局域網(wǎng)內(nèi),沒有網(wǎng)絡(luò)環(huán)境無法讀取在線數(shù)據(jù),因此瓦片地圖模式是最佳選擇。瓦片地圖技術(shù)的原理是將一定坐標(biāo)范圍內(nèi)的地圖,按照固定的若干個比例尺(瓦片級別)和指定圖片尺寸,切成若干行及列的正方形圖片,并按一定的命名規(guī)則保存到目錄系統(tǒng)中[6]。
圖2顯示了瓦片地圖的劃分,可以看出下一級瓦片是在上一級瓦片基礎(chǔ)上進行了一分四劃分,即四叉樹劃分法,由此可知隨著瓦片級別的增多,地圖的分辨率會越來越高。在讀取地圖數(shù)據(jù)時根據(jù)不同的瓦片級別將瓦片圖片進行拼接,即可實現(xiàn)地圖加載服務(wù)。
圖2 瓦片地圖劃分示例
圖3是瓦片地圖加載代碼,該段代碼可完成瓦片地圖的加載,其中imageryProvider中的url子項是瓦片地圖在本地的存儲地址,其余項是地圖顯示特性的描述,加載后的地圖可實現(xiàn)移動、放大、縮小操作。
圖3 瓦片地圖加載代碼
武器系統(tǒng)作戰(zhàn)態(tài)勢信息中包含各類裝備、飛行導(dǎo)彈、空情目標(biāo)、環(huán)境建筑物等,在演示時需采用不同的模型與其一一對應(yīng)。對于2D平面地圖場景來說,可直接采用圖片文件,支持jpg、png、ico等格式。對于3D三維地圖場景來說,Cesium支持gltf和bgltf兩種格式[7]。gltf是一種交換格式,用于在互聯(lián)網(wǎng)或者移動設(shè)備上展現(xiàn)3D內(nèi)容,bgltf是gltf二進制格式的擴展。Cesium中提供了多種3D模型參考,包括飛機、越野車、人物等,除自帶的3D模型外還可自定義設(shè)計3D模型。對于常見的obj、3ds、fbx等模型格式,可先通過3dmax轉(zhuǎn)換為dae格式,再通過dae轉(zhuǎn)gltf工具轉(zhuǎn)換為gltf格式應(yīng)用于Cesium中。
圖4是模型對象的加載代碼,在創(chuàng)建模型時可對其位置、方向(包括偏航角、俯仰角、翻滾角)、像素等進行設(shè)置。創(chuàng)建后的模型可隨地圖的移動而移動,地圖在一定縮放范圍內(nèi)改變時,模型保持一定的尺度不變。
圖4 模型對象加載代碼
作戰(zhàn)演示數(shù)據(jù)來源于武器系統(tǒng)、監(jiān)視測量設(shè)備、人工情報等,如來自武器指揮控制系統(tǒng)的導(dǎo)彈發(fā)射指令、來自雷達車的空情目標(biāo)信息、來自光電經(jīng)緯儀的追蹤數(shù)據(jù)等。作戰(zhàn)演示數(shù)據(jù)具有來源多且格式不同的特點,如采用逐比特讀取的方式會降低作戰(zhàn)演示系統(tǒng)的兼容性,每適配一種武器系統(tǒng)則需更改一次數(shù)據(jù)接口。
以空情目標(biāo)為例,在演示中需要獲取其類型、批號、速度、空間位置信息,不同的武器系統(tǒng)均需提供這四類信息給作戰(zhàn)演示系統(tǒng)。因此可在武器系統(tǒng)與作戰(zhàn)演示系統(tǒng)之間增加一個數(shù)據(jù)解析模塊,設(shè)計好數(shù)據(jù)解析模塊與作戰(zhàn)演示系統(tǒng)之間的接口,采用數(shù)據(jù)預(yù)處理方式實現(xiàn)作戰(zhàn)演示系統(tǒng)對外接口的標(biāo)準(zhǔn)化,提高了作戰(zhàn)演示系統(tǒng)的可擴展性。
作戰(zhàn)演示系統(tǒng)最核心的功能是戰(zhàn)場態(tài)勢顯示,除此外在Cesium中還可以實現(xiàn)作戰(zhàn)前規(guī)劃布局功能。
作戰(zhàn)演示系統(tǒng)能夠顯示并動態(tài)更新戰(zhàn)場中的態(tài)勢信息,以實際衛(wèi)星地圖為背景(二維或三維場景),真實直觀地演示戰(zhàn)場中的各種變化。以空情信息為例,來說明態(tài)勢顯示過程(數(shù)據(jù)解析模塊與作戰(zhàn)演示系統(tǒng)之間通過MQTT協(xié)議[8]通信為例,具體通信方式可根據(jù)需求確定)。
圖5是態(tài)勢顯示過程流程圖,基于Cesium的作戰(zhàn)演示系統(tǒng)首先將進行系統(tǒng)初始化配置,設(shè)置好接收端口、服務(wù)器IP地址并連接到MQTT服務(wù)器上;然后訂閱空情信息主題,完成空情消息訂閱;之后有空情消息到達時,將解析空情信息,得到空情種類、經(jīng)緯度、高度、速度、批號,判斷該批號是否已經(jīng)存在,若存在則更新模型信息,若不存在則創(chuàng)建該批號模型;最后依據(jù)數(shù)據(jù)完成界面顯示更新操作。
圖5 態(tài)勢顯示過程流程圖
其中空情種類決定了模型的種類;經(jīng)緯度、高度可確定空情目標(biāo)位置;速度信息可決定空情行進的方向;批號作為目標(biāo)實體的id,用于區(qū)分不同的空情目標(biāo),當(dāng)空情目標(biāo)需要更新時,找到對應(yīng)的目標(biāo)實體是至關(guān)重要的一步,此時id就是其唯一的標(biāo)識。
圖6是二維空情信息顯示,視圖內(nèi)共有三架飛機。圖7是三維態(tài)勢顯示,視圖內(nèi)有兩架飛機,一輛戰(zhàn)車,在Cesium中直觀地展示了相互之間的態(tài)勢關(guān)系。隨著作戰(zhàn)數(shù)據(jù)的更新,地圖中的模型會產(chǎn)生相應(yīng)的動態(tài)變化來演示真實場景。
圖6 二維態(tài)勢顯示
圖7 三維態(tài)勢顯示
3.2.1 獲取作戰(zhàn)區(qū)域
在武器系統(tǒng)作戰(zhàn)前,指揮人員可根據(jù)獲取的裝備位置信息以及其他人工情報等,對作戰(zhàn)區(qū)域做一整體規(guī)劃布局。如在某作戰(zhàn)演示系統(tǒng)中,作戰(zhàn)前已知導(dǎo)彈發(fā)射車位置和目標(biāo)靶機的相關(guān)人工情報信息(目標(biāo)距離、進入方位、類型等),通過模型數(shù)據(jù)加載的方式可在地圖的相應(yīng)位置添加發(fā)射車、目標(biāo)靶機并繪制出作戰(zhàn)覆蓋區(qū)域。圖8的灰色矩形即是根據(jù)已知信息計算生成的作戰(zhàn)區(qū)域,通過放大該區(qū)域讀取高級別的瓦片地圖,即可清晰地看到實際的作戰(zhàn)區(qū)域。若已知作戰(zhàn)區(qū)域的邊界坐標(biāo),也可通過直接裝訂的方式在地圖上繪制出作戰(zhàn)區(qū)域。
圖8 作戰(zhàn)區(qū)域生成
3.2.2 監(jiān)視測量裝備坐標(biāo)選取
監(jiān)視測量裝備是武器系統(tǒng)作戰(zhàn)中必不可少的,覆蓋范圍是該類設(shè)備的重要指標(biāo)之一。如何根據(jù)作戰(zhàn)配置合理放置監(jiān)視測量裝備是指揮人員在作戰(zhàn)前需要著重考慮的問題,若放置不合理,則可能出現(xiàn)監(jiān)視測量盲區(qū)。Cesium可提供監(jiān)視區(qū)域預(yù)覽效果,并能夠反饋放置點坐標(biāo)位置。
在Cesium中可通過點選地圖的方式獲取該點的經(jīng)緯度坐標(biāo),如圖9所示,通過點選地圖操作,在點擊處添加雷達一臺,圖中圓心處黑色圓點指代雷達設(shè)備,灰色區(qū)域代表該設(shè)備的覆蓋范圍,同時將得到該點經(jīng)緯度坐標(biāo)為(105.542300,38.753265),可作為雷達放置點參考。
圖9 監(jiān)視測量裝備坐標(biāo)獲取
以上兩種應(yīng)用背后的原理均是Cesium靈活的坐標(biāo)轉(zhuǎn)換機制,對于獲取作戰(zhàn)區(qū)域來說,Cesium支持WGS84經(jīng)緯度坐標(biāo)的直接讀取,圖4中的Position一項即可直接獲取經(jīng)緯度坐標(biāo),在地圖中對應(yīng)位置添加模型。對于監(jiān)視測量裝備坐標(biāo)選取來說,通過獲取鼠標(biāo)點擊位置,得到屏幕坐標(biāo),然后將其轉(zhuǎn)換為笛卡爾空間直角坐標(biāo)系,最后再轉(zhuǎn)換為地理坐標(biāo),得到點擊處的經(jīng)緯度值,轉(zhuǎn)換代碼如圖10所示。
圖10 屏幕位置轉(zhuǎn)換為經(jīng)緯度坐標(biāo)代碼
戰(zhàn)場環(huán)境復(fù)雜多變,作戰(zhàn)演示系統(tǒng)需要實時顯示戰(zhàn)場態(tài)勢。Cesium作為一種可加載離線瓦片地圖的開源地理信息庫,可為作戰(zhàn)演示系統(tǒng)提供一個良好的顯示平臺。本文介紹了Cesium的優(yōu)勢及場景,分析了Cesium平臺涉及的地圖數(shù)據(jù)、模型數(shù)據(jù)和作戰(zhàn)演示數(shù)據(jù),詳細介紹了態(tài)勢顯示和戰(zhàn)前規(guī)劃布局兩種典型應(yīng)用。Cesium二、三維一體化的體制使實時態(tài)勢消息可以更好的呈現(xiàn),靈活的坐標(biāo)轉(zhuǎn)換使實際位置和地圖點完美呼應(yīng),Cesium在武器系統(tǒng)作戰(zhàn)演示方向有很好的應(yīng)用潛力。