熊偉晴,孫 杰,燕曉波
(中國電子科技集團公司第二十七研究所,河南 鄭州 450047)
某靶場光電測量項目采用兩臺光電經緯儀對目標單位進行跟蹤測量,通過對各單位測量結果的綜合交會計算和分析,獲得目標的空間姿態,進而得到目標的運動參數和軌跡。該項目的軟件系統包含操控軟件、數據匯集軟件、圖像判讀軟件和交會仿真軟件等,其中數據匯集軟件和圖像判讀軟件完成前期的原始試驗數據收集、預處理及目標質心提取等工作,其處理結果作為交會仿真軟件的輸入。本文重點介紹交會仿真軟件的設計。
多數交會測量解算軟件在解算得到全部數據后,通過二維三維方式繪制計算結果。為了提高該項目的計算準確性,需要設計一種計算、仿真相結合的動態分析方法,在對原始數據計算過程進行仿真驗證,仿真過程能夠融合各類實際地理、設備信息,修正調整每次計算的目標數據,實現目標姿態及運動過程的準確復現,最終建立三維軌跡作為結論輸出。這種方式可以建立準確的可視化分析環境,使計算數據和人工經驗有效結合,并大幅減少無效數據數量。
本文提出采用Direct3D技術實現交會測量的仿真和解算,并使用高級著色器語言(High Level Shader Language,簡稱HLSL),將Direct3D技術與GPU硬件設備相結合,使交會解算過程快速、有效、逼真地呈現出來。系統具備良好的人機交互性,支持用戶的多種空間視角操作。
Direct3D(以下簡稱D3D)是Microsoft的DirectX軟件開發包的重要組成部分,這個開發包提供了對實時的、三維圖形的支持[1],適用于多媒體、娛樂、即時3D動畫等廣泛和實用的3D圖形計算。Direct3D是一個圖形操作系統,其核心功能是提供一個與圖形硬件的接口,結束圖形應用程序的設備相關性,具有良好的硬件兼容性和友好的編程方式。
在本項目中,為快速、有效、直觀地呈現交會計算過程,建立準確的可視化分析環境,采用Direct3D技術實現交會測量過程的三維可視化。
HLSL具有數據類型、函數、循環判斷等語法特性,專用于圖形渲染,將一些復雜的圖像處理快速而有效地在顯卡上完成,與組合式或低階Shader Language相比,能降低在編寫復雜特殊效果時發生的編程錯誤的機會[2]。
在本項目中,由于原始數據的采集量大、數據幀頻高,導致仿真點、線密集,通過HLSL技術對指定關鍵點、線路、區域實現數據的動態效果模擬,便于態勢的焦點分析和調整。
常用的交會測量算法有L公式、K公式、M公式、方向余弦法、異面交會法和最短距離法等。其中,最短距離法認為交會測量時,各站點視線并不是兩兩共面相交的,而是一簇異面直線,取到各視線的距離之和最小的位置為目標點。本方案采用最短距離法獲取目標位置初始值,然后利用兩臺以上光電測量設備觀測數據,借助最小二乘估計法解算目標位置參數的精確值。雙站交會測量數學模型如圖1所示。

圖1 最短距離法示意圖

其中,r為加權系數r∈[0,1],根據測量站設備不同的測量誤差適當選取,對于同型設備可取0.5。上述解算得到的x,y,z即為目標空間位置信息。
本項目依據交會測量應用場景建立仿真過程。基于Direct3D構建仿真環境(虛擬空間、三維地形),加載測量節點實體模型,構建虛擬信號模型(通信鏈路、測量視場、定位方向等),通過從數據庫中獲得所需要的圖像判讀結果數據,在仿真環境下驅動各模型要素形成仿真實體,從算法庫獲取交會解算、交會修正及仿真顯示等算法,動態實現對目標運動過程的仿真和軌跡模擬。
交會仿真軟件的總體架構包括資源層、支持層和應用層3個主要層次。
資源層主要提供計算機開發環境、各類基礎數據資源,是構建仿真系統的前提。其中計算機操作系統為Windows10,使用Direct3D開發庫開發,數據庫采用Mysql。數據資源主要包括判讀結果數據、模型數據、地理信息數據及相關系統管理數據。
支持層主要提供模型設計、計算方法和仿真實現的技術功能,是系統計算、仿真的動力主體。該層次主要包括模型管理、虛實映射、Direct3D技術框架、交會計算、仿真同步和仿真可視化等部分。
應用層主要提供系統仿真應用實現形態和交互環境。該層次主要包括仿真環境構設、仿真資源管理、仿真計算和仿真顯示控制。
交會仿真軟件的總體架構如圖2所示。

圖2 交會仿真軟件總體架構設計圖
仿真模型接口主要提供仿真模型、實體模型和計算模型。
圖像判讀數據接口主要提供交會計算所需的數據。
仿真資源管理模塊主要提供所需數據、素材和模型的管理功能,包括圖像判讀數據、仿真模型、實體模型和計算模型等。
地形環境構設模塊主要提供仿真數字地形環境生成功能。
交會計算仿真模塊主要提供仿真計算功能,是交會仿真軟件的核心模塊。
軌跡模擬模塊主要提供軌跡動態模擬功能。
仿真顯示控制模塊主要提供顯示界面內容的管理、態勢界面的操作控制功能。交會仿真軟件組成如圖3所示。

圖3 樣品掃描電鏡分析結果

圖3 交會仿真軟件組成圖
交會仿真軟件的工作流程可分為態勢資源獲取、模型數據交互計算、顯示單元數據更新、顯示效果更新、態勢顯示管理和態勢操作控制幾個部分。工作流程如圖4所示。

圖4 交會仿真軟件工作流程圖
3.4.1 交會計算仿真模塊
依據交會測量原理,驅動測量節點實體模型、測量視場模型及相關閾值參數,在仿真地形環境中,通過交會測量算法進行計算,同步在仿真環境下模擬測量錐形視場的交會形態,得到不規則交集空間;結合地理、測量設備、誤差等參數因素進行修正,通過最小二乘估計算法得單幀交會點空間坐標。交會點空間坐標計算試驗仿真如圖5所示。

圖5 交會點空間坐標計算試驗仿真界面
3.4.2 軌跡模擬模塊
由于交會數據量大,數量上限不定,在軌跡模擬模塊中采用動態生成頂點緩存方式實現目標軌跡的模擬。動態生成頂點緩存是通過提前構建初始基本圖元頂點結構,建立個體單元頂點緩沖,在獲取新生成的交會點后,根據交匯點坐標進行相應的世界移動和旋轉變換生成新軌跡頂點圖元,添加至頂點緩沖體序列中;在修正調整軌跡時,對緩沖體指定序列進行靈活刪除和替換。整個軌跡頂點的生成和修改過程只影響局部,無需重構整體軌跡,經實際驗證不超過10 ms,可以實現軌跡的動態生成及變化過程,為高效率仿真分析創造了條件。
本項目軟件在普通PC機上實現,操作系統為Windows10,開發工具為Microsoft Visual Studio 2017,DirectX版本為DirectX 10。
交會仿真軟件根據兩臺光電經緯儀的測量數據解算出目標的姿態和運動軌跡,并將軌跡模擬顯示在軟件的窗口界面,如圖6所示。

圖6 交會仿真軟件界面
本文提出了一種基于Direct3D的交會測量軟件系統設計方法,并結合Windows編程技術成功將三維可視化應用于交會測量的動態仿真,根據真實數據模擬復現交會測量過程,為今后交會測量軟件系統開發提供了一種新的思路。