熊偉晴,孫 杰,燕曉波
(中國電子科技集團公司第二十七研究所,河南 鄭州 450047)
某靶場光電測量項目采用兩臺光電經緯儀對目標單位進行跟蹤測量,通過對各單位測量結果的綜合交會計算和分析,獲得目標的空間姿態(tài),進而得到目標的運動參數(shù)和軌跡。該項目的軟件系統(tǒng)包含操控軟件、數(shù)據(jù)匯集軟件、圖像判讀軟件和交會仿真軟件等,其中數(shù)據(jù)匯集軟件和圖像判讀軟件完成前期的原始試驗數(shù)據(jù)收集、預處理及目標質心提取等工作,其處理結果作為交會仿真軟件的輸入。本文重點介紹交會仿真軟件的設計。
多數(shù)交會測量解算軟件在解算得到全部數(shù)據(jù)后,通過二維三維方式繪制計算結果。為了提高該項目的計算準確性,需要設計一種計算、仿真相結合的動態(tài)分析方法,在對原始數(shù)據(jù)計算過程進行仿真驗證,仿真過程能夠融合各類實際地理、設備信息,修正調整每次計算的目標數(shù)據(jù),實現(xiàn)目標姿態(tài)及運動過程的準確復現(xiàn),最終建立三維軌跡作為結論輸出。這種方式可以建立準確的可視化分析環(huán)境,使計算數(shù)據(jù)和人工經驗有效結合,并大幅減少無效數(shù)據(jù)數(shù)量。
本文提出采用Direct3D技術實現(xiàn)交會測量的仿真和解算,并使用高級著色器語言(High Level Shader Language,簡稱HLSL),將Direct3D技術與GPU硬件設備相結合,使交會解算過程快速、有效、逼真地呈現(xiàn)出來。系統(tǒng)具備良好的人機交互性,支持用戶的多種空間視角操作。
Direct3D(以下簡稱D3D)是Microsoft的DirectX軟件開發(fā)包的重要組成部分,這個開發(fā)包提供了對實時的、三維圖形的支持[1],適用于多媒體、娛樂、即時3D動畫等廣泛和實用的3D圖形計算。Direct3D是一個圖形操作系統(tǒng),其核心功能是提供一個與圖形硬件的接口,結束圖形應用程序的設備相關性,具有良好的硬件兼容性和友好的編程方式。
在本項目中,為快速、有效、直觀地呈現(xiàn)交會計算過程,建立準確的可視化分析環(huán)境,采用Direct3D技術實現(xiàn)交會測量過程的三維可視化。
HLSL具有數(shù)據(jù)類型、函數(shù)、循環(huán)判斷等語法特性,專用于圖形渲染,將一些復雜的圖像處理快速而有效地在顯卡上完成,與組合式或低階Shader Language相比,能降低在編寫復雜特殊效果時發(fā)生的編程錯誤的機會[2]。
在本項目中,由于原始數(shù)據(jù)的采集量大、數(shù)據(jù)幀頻高,導致仿真點、線密集,通過HLSL技術對指定關鍵點、線路、區(qū)域實現(xiàn)數(shù)據(jù)的動態(tài)效果模擬,便于態(tài)勢的焦點分析和調整。
常用的交會測量算法有L公式、K公式、M公式、方向余弦法、異面交會法和最短距離法等。其中,最短距離法認為交會測量時,各站點視線并不是兩兩共面相交的,而是一簇異面直線,取到各視線的距離之和最小的位置為目標點。本方案采用最短距離法獲取目標位置初始值,然后利用兩臺以上光電測量設備觀測數(shù)據(jù),借助最小二乘估計法解算目標位置參數(shù)的精確值。雙站交會測量數(shù)學模型如圖1所示。
圖1 最短距離法示意圖
其中,r為加權系數(shù)r∈[0,1],根據(jù)測量站設備不同的測量誤差適當選取,對于同型設備可取0.5。上述解算得到的x,y,z即為目標空間位置信息。
本項目依據(jù)交會測量應用場景建立仿真過程?;贒irect3D構建仿真環(huán)境(虛擬空間、三維地形),加載測量節(jié)點實體模型,構建虛擬信號模型(通信鏈路、測量視場、定位方向等),通過從數(shù)據(jù)庫中獲得所需要的圖像判讀結果數(shù)據(jù),在仿真環(huán)境下驅動各模型要素形成仿真實體,從算法庫獲取交會解算、交會修正及仿真顯示等算法,動態(tài)實現(xiàn)對目標運動過程的仿真和軌跡模擬。
交會仿真軟件的總體架構包括資源層、支持層和應用層3個主要層次。
資源層主要提供計算機開發(fā)環(huán)境、各類基礎數(shù)據(jù)資源,是構建仿真系統(tǒng)的前提。其中計算機操作系統(tǒng)為Windows10,使用Direct3D開發(fā)庫開發(fā),數(shù)據(jù)庫采用Mysql。數(shù)據(jù)資源主要包括判讀結果數(shù)據(jù)、模型數(shù)據(jù)、地理信息數(shù)據(jù)及相關系統(tǒng)管理數(shù)據(jù)。
支持層主要提供模型設計、計算方法和仿真實現(xiàn)的技術功能,是系統(tǒng)計算、仿真的動力主體。該層次主要包括模型管理、虛實映射、Direct3D技術框架、交會計算、仿真同步和仿真可視化等部分。
應用層主要提供系統(tǒng)仿真應用實現(xiàn)形態(tài)和交互環(huán)境。該層次主要包括仿真環(huán)境構設、仿真資源管理、仿真計算和仿真顯示控制。
交會仿真軟件的總體架構如圖2所示。
圖2 交會仿真軟件總體架構設計圖
仿真模型接口主要提供仿真模型、實體模型和計算模型。
圖像判讀數(shù)據(jù)接口主要提供交會計算所需的數(shù)據(jù)。
仿真資源管理模塊主要提供所需數(shù)據(jù)、素材和模型的管理功能,包括圖像判讀數(shù)據(jù)、仿真模型、實體模型和計算模型等。
地形環(huán)境構設模塊主要提供仿真數(shù)字地形環(huán)境生成功能。
交會計算仿真模塊主要提供仿真計算功能,是交會仿真軟件的核心模塊。
軌跡模擬模塊主要提供軌跡動態(tài)模擬功能。
仿真顯示控制模塊主要提供顯示界面內容的管理、態(tài)勢界面的操作控制功能。交會仿真軟件組成如圖3所示。
圖3 樣品掃描電鏡分析結果
圖3 交會仿真軟件組成圖
交會仿真軟件的工作流程可分為態(tài)勢資源獲取、模型數(shù)據(jù)交互計算、顯示單元數(shù)據(jù)更新、顯示效果更新、態(tài)勢顯示管理和態(tài)勢操作控制幾個部分。工作流程如圖4所示。
圖4 交會仿真軟件工作流程圖
3.4.1 交會計算仿真模塊
依據(jù)交會測量原理,驅動測量節(jié)點實體模型、測量視場模型及相關閾值參數(shù),在仿真地形環(huán)境中,通過交會測量算法進行計算,同步在仿真環(huán)境下模擬測量錐形視場的交會形態(tài),得到不規(guī)則交集空間;結合地理、測量設備、誤差等參數(shù)因素進行修正,通過最小二乘估計算法得單幀交會點空間坐標。交會點空間坐標計算試驗仿真如圖5所示。
圖5 交會點空間坐標計算試驗仿真界面
3.4.2 軌跡模擬模塊
由于交會數(shù)據(jù)量大,數(shù)量上限不定,在軌跡模擬模塊中采用動態(tài)生成頂點緩存方式實現(xiàn)目標軌跡的模擬。動態(tài)生成頂點緩存是通過提前構建初始基本圖元頂點結構,建立個體單元頂點緩沖,在獲取新生成的交會點后,根據(jù)交匯點坐標進行相應的世界移動和旋轉變換生成新軌跡頂點圖元,添加至頂點緩沖體序列中;在修正調整軌跡時,對緩沖體指定序列進行靈活刪除和替換。整個軌跡頂點的生成和修改過程只影響局部,無需重構整體軌跡,經實際驗證不超過10 ms,可以實現(xiàn)軌跡的動態(tài)生成及變化過程,為高效率仿真分析創(chuàng)造了條件。
本項目軟件在普通PC機上實現(xiàn),操作系統(tǒng)為Windows10,開發(fā)工具為Microsoft Visual Studio 2017,DirectX版本為DirectX 10。
交會仿真軟件根據(jù)兩臺光電經緯儀的測量數(shù)據(jù)解算出目標的姿態(tài)和運動軌跡,并將軌跡模擬顯示在軟件的窗口界面,如圖6所示。
圖6 交會仿真軟件界面
本文提出了一種基于Direct3D的交會測量軟件系統(tǒng)設計方法,并結合Windows編程技術成功將三維可視化應用于交會測量的動態(tài)仿真,根據(jù)真實數(shù)據(jù)模擬復現(xiàn)交會測量過程,為今后交會測量軟件系統(tǒng)開發(fā)提供了一種新的思路。