楊 鵬,許壽全,朱翠云
(1.中國人民解放軍32381部隊,北京 100000;2.江蘇自動化研究所,江蘇 連云港 222061)
現行光學探測類裝備的視頻圖像數據采集主要采用紅外傳感器和電視傳感器兩種方式[1],通常通過圖像采集板將前端傳感器采集的視頻圖像進行預處理[2]后發給圖像數據處理模塊執行目標提取、航跡處理、目標跟蹤、預警等后續功能[3-6]。該類裝備在研制階段的效能驗證主要通過實驗室仿真和高/低空飛行器實飛兩種方式。其中實驗室仿真須搭建配套試驗驗證環境用于構造外部目標圖像數據,投入成本不菲,飛行器實飛更是如此。并且,通常情況下,隨某一型號裝備產生的驗證環境往往型號針對性較強,通用性考慮不足,造成重復建設。
該文提出一種基于Vega Prime的三維可見光場景仿真系統和GPU高并行硬件體系下高階渲染引擎—OGRE驅動動態場景的電視圖像目標、紅外圖像目標仿真技術。基于此技術,輔以目標動態定位和開放式目標數量及運動參數裝訂即可滿足光學探測類裝備效能驗證的通用性要求,可在多種環境下高效低成本實現視頻目標數據的定制、生成、注入等功能,完整覆蓋效能邊際,既可滿足裝備研制階段的效能驗證需求又能支撐交付實裝后的功能校驗及維保需求。
光學探測類裝備主要用于可見光、紅外光目標探測,典型組成由探測模塊、伺服控制模塊、數據處理模塊、顯控及接口模塊組成,如圖1所示。

圖1 光學探測類裝備典型組成
探測模塊:通過前端紅外傳感器和電視傳感器捕獲目標視頻。
數據處理模塊:通過圖像采集板將采集的視頻圖像進行預處理后發給圖像處理模塊,圖像處理模塊的功能主要通過質心算法或相關算法進行圖像特征計算,將圖像中的目標進行解析,實現目標檢測、捕獲、關聯、融合、跟蹤、跟蹤位移解算、跟蹤預測等功能[7]。
伺服控制模塊:接收綜合導航數據及數據處理模塊的跟蹤位移解算數據,通過平臺穩定閉環控制、PID控制實現設備平臺縱橫搖抵消及指向器控制,保障跟蹤穩定性。
顯控模塊:實現人機界面顯示、圖像及數據壓縮存儲、場景檢索回放、人機輸入設備響應。
光學探測類裝備可對作戰環境中機動目標進行探測、跟蹤,因此,在裝備研制階段,效能驗證須按作戰場景仿真大量目標機動數據,且為滿足通用性需求,目標類型、數量、運動軌跡均須靈活可配置,支持主流的目標圖像注入接口。因此,需要設計一款通用性較強的半實物自動化仿真平臺[8-9],滿足如下功能:
(1)目標仿真方式:本機仿真產生。
(2)生成單批目標:
(a)根據輸入的目標參數,定制單批目標的方位、距離、速度、航向等信息,生成相應圖像。
(b)目標運動方式:直線運動(參數:距離、方位、俯仰、運動方向)、遠近曲線運動、遠近弧線運動、圓圈運動(參數:距離,圓半徑)。
(c)根據輸入的航路段信息,產生單個目標航跡復雜的目標視頻。
(3)生成多批目標:
(a)給定距離,方位范圍,高度,目標數,一次生成多批目標,方位平均分布/環狀分布,支持簡單運動方式。
(b)預設航母、飛機編隊陣型。
(c)根據輸入的目標個數信息,產生指定個數的隨機目標視頻。
(4)根據要求指定產生空中目標、海面目標等具有固定機動模式的目標。
(5)根據目前傳感器的視場角度,設置目標距離,提示目標超出視場范圍的高度邊界。
(6)提供人機交互手段,可以方便地錄入和修改視頻信號。
(7)電視視頻具備投影顯示及標準視頻輸出功能。
(8)紅外視頻具備光纖注入及標準視頻輸出功能。
(9)具備生成視頻的存儲與回放功能。
(10)設置參數可編輯、保存、讀取。
典型電視信號源生成采用基于Vega Prime的三維可見光場景仿真系統[10-11],其結構主要包含飛機艦船導彈三維模型、紋理圖片信息、場景配置、視點設置、運動方式設置、場景切換、模型驅動等。
可總結為,基于Vega Prime的三維可見光場景仿真系統主要包括:LynX圖形界面設計、視景模型的預處理和可視化仿真程序設計三部分,它們之間的關系如圖2所示。

圖2 三維可見光場景仿真系統關系框架
(1)視景模型預處理,利用MultiGen Creator建立格式為.flt的視景三維模型庫,通過Creator Terrain Studio生成場景地形模型庫。
(2)基于Vega的LynX圖形界面設計,包括設置三維模型初始位置、設置基本環境、設置特效、設置漫游方式等。
(3)基于MFC/Vega可視化仿真程序設計,主要完成仿真過程,通過Vega自帶的API函數調用視景模型預處理生成的視景三維模型庫、場景地形模型庫和LynX圖形界面設計生成的.adf文件進行控制。其主要內容包括鼠標拾取、固定路徑漫游、視點控制、實時驅動算法和碰撞檢測與響應等內容。
GPU的高并行硬件體系下,高階渲染引擎—OGRE驅動動態場景被用來實現紅外輻射計算和仿真結果的渲染輸出[12],驅動或生成三維紅外場景。首先把預處理階段生成的資源和三維紅外場景建模讀入GPU顯存,在GPU的可編程渲染過程中獲取DDS紋理中的各種仿真數據,實現基于實時的紅外輻射計算、大氣效應仿真。以基于OGRE的三維場景仿真程序為核心,組合紅外成像系統效應和反饋響應,可以實現紅外成像系統數字仿真,渲染生成實時紅外圖像。
(1)依據仿真系統中的其他模塊輸入的場景資源,渲染不包含大氣效應和成像系統效應的場景。
(2)借助紅外特效模塊添加紅外云、紅外煙霧等紅外特效。
(3)利用大氣輻射傳輸模塊,添加路徑輻射和大氣衰減對場景的影響。
(4)完成紅外成像系統虛擬樣機實時仿真工作。紅外物理渲染的主要輸入數據是景象設計階段集成的三維紅外景象,以紅外輻射亮度為中間計算量,以輻射數據或量化后的灰度圖像為輸出結果。
紅外物理渲染的主要輸入數據是景象設計階段集成的三維紅外景象,以紅外輻射亮度為中間計算量,以輻射數據或量化后的灰度圖像為輸出結果。
與只是將紋理貼圖看作材質或者設置物體表面顏色的傳統可見光渲染方法有所區別,在進行紅外渲染時,將GPU的所有渲染狀態看作物體表面的材質。物體表面的材質包含光學特性數據、大氣效應數據以及物體熱輻射模型數據,所有的這些數據和輻射傳輸計算模型的GPU程序構成了紅外輻射計算模型。
通過上述材質組織方式,將紅外輻射計算模型嵌入到GPU的光照渲染模型中,GPU的圖形渲染過程即紅外圖像的產生過程。
場景紅外輻射動態渲染原理如圖3所示。

圖3 場景紅外輻射動態渲染原理
基于GPU的輻射傳輸模型主要考慮大氣路徑輻射、物體對太陽或者月亮輻射的反射及物體自身輻射來模擬場景中到達探測器的輻射能量。
頂點渲染程序在實現輻射傳輸計算模型中主要做一些輔助工作,例如,物體在局部坐標系與世界坐標系之間的變換,將物體相對于局部坐標系或世界坐標系的位置進行插值送入像素渲染程序供進一步處理等。像素渲染程序可以實現輻射傳輸計算模型中的輻射計算。
(1)輸入頂點數據作為數據源;
(2)完成坐標變換,對數據進行輔助處理;
(3)數據裁減、光柵化等;
(4)確定海拔高度、坐標位置等信息;
(5)計算相對于探測器的各種信息;
(6)根據相對姿態信息對紋理尋址;
(7)輻射傳輸計算;
(8)深度測試、混合測試等。
在場景仿真中,仿真結果逼真度極大地受大氣的輻射效應仿真效果影響著。大氣的輻射效應主要表現為大氣路徑衰減和路徑輻射,其計算工作已在仿真預處理階段完成,并編碼為響應紋理,可供仿真時調用。
2.2.1 目標定位
仿真平臺采用東北天坐標系[13]。
假設目標的初始距離R、方位角A、俯仰角E、線速度VR、方位角速度VA、俯仰角速度VE。假設光電設備安裝高度H,則計算出目標地理坐標:

接下來,根據圖像輸出速率計算目標每一幀時間對應的地理坐標位置。
最后,根據更新的地理坐標計算目標當前的距離、方位角、俯仰角。

E=atan(z/R)
2.2.2 地平坐標與甲板坐標變換模塊
坐標變換模塊為系統提供可能用到的各種坐標變換[14],包括:地平坐標系到甲板坐標系的轉換WD2BWD、甲板坐標系到地平坐標系的轉換BWD2WD。
坐標變換子模塊的主要作用是消除系統平臺的擾動對穩定對象的影響,計算出消除平臺擾動需要在甲板坐標系運動到的位置。
坐標變換模塊接收導航數據,實現PID控制中角度數據在不同坐標系間的轉換。
輸入:WD2BWD模塊輸入項包含大地方位角、俯仰角、縱橫搖及BWD2WD模塊的輸入項甲板方位角、俯仰角、縱橫搖。
輸出:WD2BWD模塊及BWD2WD模塊的輸出項如表1所示。

表1 坐標變換輸出項
大地直角坐標系o-xyz:又稱水平穩定坐標系。ox軸指向正東方向,oy軸指向正北方向,oz軸指向天頂方向。
甲板直角坐標系oc-xcyczc:又稱動坐標系。oyc軸為艦船艏艉線,指向艦首為正;oxc軸與艦船艏艉線垂直,并與其在同一平面上,指向右舷為正;ozc軸與甲板平面oxcyc垂直,向上為正。
導航提供的姿態信息主要有航向角、縱搖角和橫搖角。航向角是艦船艏艉線在水平面上的投影與正北的夾角,自正北算起,順時針方向為正;縱搖角是艦船艏艉線oxc與水平面的夾角,艦艏抬起為正,在垂直面內測量,為鉛直角;橫搖角是艦橫軸oyc與肋骨面水平線之間的夾角,甲板右舷下傾為正,在肋骨面內測量,不是鉛直角。
大地坐標到甲板坐標的變換公式:
目標的甲板高度角為:
Eg=sin-1(-sinPcosAcosE+cosPsinRsinAcosE+cosPcosRsinE)
目標的甲板舷角為:
甲板坐標到大地坐標的變換公式:
目標的大地高度角為:
E=sin-1(cosRsinPcosAgcosEg+sinRsinAgcosEg+cosRcosPsinEg)
目標的大地方位角為:
以上各式中各符號的定義為:
Eg:甲板坐標系下目標的俯仰角;
Ag:甲板坐標系下目標的方位角;
E:大地坐標系下目標的俯仰角;
A:大地坐標系下目標的方位角;
R:橫搖角;
P:縱搖角。
2.2.3 視頻圖像仿真
視頻圖像仿真中三維視景由Vega Prime三維實景仿真軟件模擬產生。
Vega Prime作為高性能的VR開發平臺,提供了兩種系統設計模式。一種是使用Lynx Prime 軟件提供的API函數(C++類庫函數)進行程序開發,創建一個應用程序所必需的全部API均可包含在Vega中。另一種是單純地使用Lynx Prime圖形用戶界面配置系統,Lynx Prime圖形環境是點擊式的,只需用戶用鼠標的左、中、右鍵點擊即可改變應用程序的性能,如多CPU資源分配、顯示通道、觀察者、視點、時間尺度、系統配置、模型、特殊效果和數據庫等。
典型電視信號源生成設備軟件采用Lynx和API函數結合開發方式,在VC軟件建立基于MFC類庫的工程,應用Vega Prime軟件與VC軟件的編程接口,調用API函數實現視頻圖像的實時仿真。
視景仿真的過程分為三步:
(1)調用場景和目標模型進行動態組合。
Vega中的場景運動體(Players)提供了一種在應用場景中控制和放置動態實體的方法。場景運動體描述的位置、特性以及附加的Vega類事件組成場景運動體的數據。Vega中,每個場景運動體均可能被認為是來自引入Vega類的其他類型或附件的動態坐標系。可見對象物和特殊效果的方向、位置可在場景運動中被確定下來。
場景運動體參考的Vega類的類型包括:運動模型、體、對象物和相交矢量。場景運動體可同時包括多個相交矢量和對象物,也可以為某個場景運動體選擇某個單獨的個體事件或運動模型。圖4描述了其他Vega事件與場景運動體之間的關系。

圖4 Vega場景運動體的連通性
Vega的公共API函數vgProp()可為某個場景運動體設置多個屬性。在場景運動體上可以附著諸如觀察者、運動模型、導航器、體和相交矢量這樣的類。Vega為觀察者、場景運動體以及任意的參考坐標系提供用于加入和查詢參考坐標系的函數:
(a)觀察者函數:vgPlyrObservRef() vgGetPlyr ObservRef();
(b)場景運動體函數:vgPlyrPlyrRef() vgGetPlyr PlyrRef();
(c)參考坐標系函數:vgPlyrCSRef() vgGetPlyr CSRef()。
當多個對象物附著在一個場景運動體中時,用對象相對場景運動體位置的偏移量來表示對象物的位置是最好的選擇,使用函數vgMakeObj()預先指定偏移對象物位置。在把數據庫中靜態對象物轉換為動態對象物時,把該初值或偏移的位置提供給對象物。
每個場景運動體參考一個近似場景運動體的尺寸和形狀的體以支持碰撞檢測和相關的操作。體的附屬物可從LynX的Players面板中或Vega的API中構造,函數vgPlyrVol()和vgGetPlyrVol()用于附著和查詢一個場景運動體。由LynX的Player面板或使用Vega的API函數可以把多個相交矢量附著到一個場景運動體中,提供的函數有添加函數vgAdd、刪除函數vgRem、查詢函數vgGet和vgGetNum。vgPlayer有兩種回調函數。
·場景運動體加入對象物的回調。
回調標識符為VGPLYR_ADD_OBJ。
回調必須為以下形式:
void MyFunc(vgCommon*parent, vgCommon*child, void*udata);
·場景運動體刪除對象物的回調。
回調標識符為VGPLYR_REM_OBJ。
回調必須為以下形式:
void MyFunc(vgCommon*parent, vgCommon*child, void*udata);
(2)添加環境效果。Vega的環境描述場景內大氣層和氣候條件,環境數據由屬性和加到Vega類事件中的參考對象物組成,環境提供一種方法控制當前的霧模型、能見度范圍和時辰變化。Vega提供許多可選的環境效果,可在每個環境中調用和控制,環境效果可仿真通常觀察到的大氣層和自然現象。
(3)Vega Prime使用Vege Lynx預覽Vega的應用程序,用戶通過預覽評估當前的仿真效果是否符合要求,根據用戶需求調整參數并配置ACF文件,直到用戶滿意,全屏播放仿真視頻。
視頻圖像仿真軟件流程如圖5所示。

圖5 視頻圖像仿真軟件流程
為驗證仿真平臺的有效性,該文通過想定方式模擬構建視頻目標場景[15-16],目標類型包括艦船、飛機,分別按不同的運動軌跡、不同高度、不同速度運行。
構建半實物仿真平臺,如圖6所示。通過參數設置,可在本機模擬產生單批目標、多批目標的三維可見光及紅外視頻,目標類型、數量、運動軌跡均可靈活配置,支持主流的目標圖像注入接口。

(a)三維可見光目標圖像半實物仿真平臺
采用Vega Prime三維實景仿真軟件,調用API函數實現視頻圖像的實時仿真,通過Vega的公共API函數vgProp()設置目標屬性參數,生成視頻效果如圖7所示。

(a)三維可見光目標圖像
通過某型光學探測類裝備對視頻目標進行目標提取、航跡處理、目標跟蹤、預警等操作驗證,其處理結果與期望結果一致。仿真結果與期望結果對比如表2所示。

表2 仿真結果與真實試驗結果對比
由此表明,半實物仿真平臺仿真構建的作戰場景能夠被光學探測武器識別、處理,與期望結果一致,符合光學探測類裝備測試需求。
該文提出一種基于虛擬現實技術的視頻目標仿真方法,并在此基礎上給出了通過VR技術實現的工具架構,可在多種環境下高效低成本實現視頻目標數據的定制、生成、注入等功能,完整覆蓋效能邊際,既可滿足裝備研制階段的效能驗證需求又能支撐交付實裝后的功能校驗及維保需求,具有實際參考價值。