王靈艷,李 智,牛軍浩,馬光利
(1.桂林電子科技大學電子工程與自動化學院,廣西桂林 541004;2.桂林航天工業學院電子信息與自動化學院,廣西桂林 541004;3.桂林電子科技大學廣西自動檢測技術與儀器重點實驗室,廣西桂林 541004)
一種基于空間方位角的投影瞄準算法
王靈艷1,李 智2,牛軍浩3,馬光利1
(1.桂林電子科技大學電子工程與自動化學院,廣西桂林 541004;2.桂林航天工業學院電子信息與自動化學院,廣西桂林 541004;3.桂林電子科技大學廣西自動檢測技術與儀器重點實驗室,廣西桂林 541004)
針對虛擬瞄準訓練系統中真實環境的現實瞄準位置與投影場景的虛擬瞄準位置存在偏差的問題,提出了一種基于空間方位角的投影瞄準算法。通過電子羅盤采集投影區域空間方位角信息進行投影平面空間定位并建立空間直角坐標系,然后通過空間直角坐標與像素坐標的轉換,消除屏幕投影形變引起的坐標差異,運用運動軌跡分析解決支點轉動引起的偏差。實驗結果表明,該算法能夠實現實際瞄準位置與虛擬瞄準位置的統一,減小因投影形變、支點轉動等因素引起的瞄準位置偏差,達到預期的精度要求,保證訓練效果。
瞄準訓練;電子羅盤;像素坐標;投影形變;瞄準算法
隨著科技的發展,計算機虛擬技術日益成熟,各類虛擬現實系統越來越多地應用于日常生活及軍事領域。為了提高部隊日常訓練的現代化水平,節約實彈射擊訓練所需的高昂成本,研制虛擬瞄準訓練系統已成為一種必然趨勢。虛擬瞄準訓練系統使用投影屏幕投影三維虛擬場景,通過機械瞄準具對投影場景中的虛擬飛行目標進行瞄準發射訓練。若系統判定的虛擬瞄準位置與實際瞄準位置不一致,即實際操作時已瞄準飛行目標的投影點,但系統認定虛擬場景中的飛行目標未被瞄準,此時訓練系統將失去瞄準功能,不能進行瞄準訓練。因此,虛擬與現實中的瞄準差異將直接影響系統的訓練功能和訓練效果。文獻[1]提出了外加攝像機的方法,拾取激光在平面的投射圖像,經圖像分析處理確定投射點位置。此方法激光投射點的識別依賴于一些特定的條件:1)要求屏幕對攝像機完全可見;2)系統啟動后,屏幕與攝像機之間無相對運動;3)投射的激光點必須比屏幕上的其他部分更亮,包括投影的各種變化圖像。而實際瞄準訓練中不允許激光輔助,一旦進行實際訓練,該方法將失去意義。
鑒于此,提出了一種基于空間方位角的投影瞄準算法。通過電子羅盤采集并記錄投影畫面上已標定的校準點的方向角和俯仰角信息,定位投影平面空間位置,再將現實中瞄準目標點時該點的空間坐標和虛擬場景中被瞄準目標的虛擬空間坐標統一換算到像素坐標系進行對比、誤差修正,使實際瞄準位置與虛擬瞄準位置一致,實現瞄準效果。
瞄準訓練系統主要由主控計算機、投影屏幕和瞄準裝置3個部分組成,如圖1所示。在主控計算機設置當前虛擬訓練場景,并將場景及校正所需的校準點在大屏幕上進行投影[2-4]。訓練人員在指揮員指揮下操作瞄準裝置完成校正及相關訓練操作,其各項操作參數通過裝置中的無線通信模塊傳輸到主控計算機,用于相關計算及判定。

圖1 虛擬瞄準訓練系統Fig.1 Virtual training system
電子羅盤位于瞄準裝置中,方向角以正北方向為0°、順時針為正方向進行測量;俯仰角以水平方向為0°、上仰方向為正方向進行測量。電子羅盤根據瞄準裝置的姿態實時采集俯仰角和方向角信息,并通過無線方式傳輸給主控計算機。可通過瞄準裝置上的機械瞄準具瞄準校準點,也可通過瞄準裝置上的輔助瞄準激光完成。瞄準校準點后扣下扳機,主控計算機依據扳機扣下的開關信號判斷此時電子羅盤傳輸的數據是否為校準點的角度信息。各校準點信息采集完畢即可通過投影瞄準算法實現瞄準功能。
通過定位投影平面與瞄準裝置的相對位置建立虛擬場景與現實瞄準之間的聯系。瞄準裝置依次瞄準投影屏幕上的校準點Q、T、D、K、E,采集投影屏幕空間方位角信息,虛擬瞄準訓練場景如圖2所示。系統根據該角度信息進行投影瞄準算法計算,實現瞄準功能。此時訓練人員才可用瞄準裝置瞄準跟蹤屏幕上的虛擬飛行目標進行瞄準發射訓練。通過投影瞄準算法,系統根據電子羅盤傳輸的角度信息對瞄準裝置跟蹤瞄準虛擬飛行目標的過程進行判定,再結合瞄準裝置的各項操作參數完成虛擬場景中導彈發射、導彈飛行軌跡、能否擊中目標等判定。

圖2 虛擬瞄準訓練場景Fig.2 Virtual training scene
投影瞄準算法的目的是使虛擬瞄準位置與現實瞄準位置一致,實現瞄準功能,使虛擬瞄準訓練系統能進行正常、有效的訓練[5]。
2.1 投影瞄準算法原理分析
投影瞄準算法通過校準點對投影平面進行定位,確定瞄準裝置與投影場景的相對位置;通過投影畫面各頂點位置確定投影形變情況,再利用直角坐標和像素坐標的轉換消除該形變產生的瞄準誤差;最后消除支點轉動引起的偏差,完成虛擬與現實瞄準的統一。
系統通過瞄準具瞄準校準點采集其方向角及俯仰角信息,用瞄準裝置上的輔助瞄準激光進行瞄準,以減小測量誤差。通過OpenGL函數可在投影畫面相應像素坐標點畫出校準點,如圖2的校準點為Q、T、D、K、E。由瞄準裝置支點O分別瞄向屏幕投影的4個頂點Q、T、K、E及底邊中點D。4個頂點可確定一個錐形空間區域,不能確定屏幕所在平面位置,再加上點D可確定一系列平行且相似于四邊形QTKE的四邊形組。再以底邊TK的長度作為限制條件,可確定唯一投影屏幕相對于瞄準裝置的位置。
虛擬訓練系統共包含虛擬場景空間直角坐標系、屏幕投影畫面中的像素坐標系、現實中的空間直角坐標系3個坐標系。虛擬空間坐標系與現實空間坐標系均與像素坐標系存在聯系。虛擬場景在大屏幕上進行投影時,場景中各點均有相對應的像素坐標;而現實中瞄準裝置是以投影的目標像素點為參考點進行瞄準的。因此,現實瞄準位置與虛擬瞄準位置的統一,可利用像素坐標作為中間變量進行轉換。
該訓練系統虛擬場景采用Vega Prime軟件設計[6-7]。Vega Prime中的getWorldToScreenMatrix()函數可將虛擬場景中任意一點的空間坐標轉換為該點在屏幕上顯示的像素坐標[8-9]。只需將現實瞄準點的空間坐標轉換為對應的屏幕像素坐標,系統比較轉換前后的像素坐標即可完成瞄準判定。像素坐標系位于投影畫面所在平面,因此需要建立該平面上各點直角坐標與其對應像素坐標之間的關系。
2.2 投影平面空間定位及坐標系的建立
依據校準點空間方位角信息進行相關計算。圖2中△OTK在水平面上的投影如圖3所示。

圖3 水平面投影Fig.3 Horizontal plane projection
O′為瞄準裝置支點O在水平面的投影點,M為點O′在TK上的投影點,D為TK中點。TK長度已知,通過校準點的角度信息可得到T、D、K的方向角,設∠TO′D=γ1,∠DO′K=γ2,計算點O′相對屏幕的位置,即求O′M、TM的長度。

虛擬瞄準訓練的空間幾何模型如圖4所示。M′為O在屏幕上的投影,β0、β1分別為Q、T的俯仰角。根據lON=lO′T,以及α0、lO′M、x1的值,即可計算豎直方向各直線的長度。以T為原點建立空間直角坐標系T-xyz。在該坐標系下,投影平面上任意一點被瞄準時,根據此時該點方向角和俯仰角信息可求出該點坐標。投影平面即為該空間直角坐標系下的xTy平面,也是像素坐標系所在平面,因此只需將投影各點在平面直角坐標系xTy下的坐標轉換為像素坐標。

圖4 瞄準訓練空間幾何模型Fig.4 Space geometry model of aiming training
2.3 投影形變校正及像素坐標轉換
投影形變是指投影畫面上各點像素坐標與現實空間坐標的偏移。在理想情況下,投影畫面為標準矩形,如圖5所示,此時像素坐標系與平面直角坐標系是重疊的。投影區域任意一點的像素坐標等于其平面坐標,此時可直接將平面直角坐標作為像素坐標用于虛擬坐標系與現實坐標系。

圖5 投影矩形Fig.5 Projection rectangle
在現實情況下,由于各類因素,如投影儀擺放位置是否正對投影幕布、投影是否在屏幕中央以及距離遠近等影響,投影畫面總有一定的形變,使得像素坐標系與平面坐標系產生偏移。這些形變可能是水平方向或豎直方向的梯形形變,甚至可能是二者的疊加。這使得最終投影畫面并非標準矩形,而是梯形甚至不規則四邊形,投影畫面像素坐標系發生形變,各點像素坐標不再等于其平面直角坐標。
投影形變校正就是建立現實平面直角坐標系與變形后像素坐標系之間的對應關系,實現像素坐標轉換。在理想情況下,投影畫面是如圖5所示的矩形,平面直角坐標系xTy和像素坐標系pxTpy是重疊的,可將該矩形區域QTKE看作由無窮多組豎直線段組成,每條豎直直線上各點x坐標相同,px坐標相同,且x=px。若投影畫面產生水平方向梯形形變,如圖6所示,則像素坐標系變形,與直角坐標系產生偏移。

圖6 投影畫面水平方向梯形形變Fig.6 Trapezoid deformation in horizontal direction of projection
該形變是由像素點的偏移導致的。以分辨率1680像素×1050像素為例,在像素坐標系pxTpy下,T、K、Q、E的像素坐標分別為(0,0)、(1680,0)、(0,1050)、(1680,1050),同時TQ上所有點橫向像素坐標均為0,KE上所有點的橫向像素坐標均為1680。在直角坐標系xTy下,各點豎直方向直角坐標未發生形變,仍與像素坐標保持一致,但水平方向直角坐標與像素坐標不再一致。
存在該梯形形變時,梯形具有以下幾何性質:設V為梯形2條邊QT、EK延長線的交點,則任一垂直線段形變后的延長線均過V點。在極端情況下,投影梯形形變為三角形時,底邊所有點匯聚為一個點,此時的該點橫向像素坐標涵蓋了[0,1680]的所有取值。
過V點和投影范圍內任一點P的直線FJ與TK、QE分別相交于F、J,則P、F的橫向像素坐標相同。GN為過P點且平行于TK的直線,與梯形兩腰交點分別為G、N。設像素坐標系下,P點的像素坐標為(px,py),而TK段像素值和GN段像素值同為1680,則像素坐標下存在以下關系:

而在直角坐標系下,△VGN中有

由式(3)、(4)可將形變后各點的直角坐標轉換為對應的像素坐標。
已知直角坐標系下,P、Q、E、T、K的直角坐標分別為(xp,yp)、(x1,1050)、(x3,1050)、(0,0)、(1680,0),QE、GP分別與y軸相交于H、L,KR垂直于QE,垂點為R,與GN相交于U,求P點像素坐標(px,py)。在△THQ中有

投影畫面產生水平方向梯形形變時,豎直方向直角坐標與像素坐標相同,由式(3)、(4)求點P對應的水平方向像素坐標,則有

投影豎直方向梯形形變如圖7所示,可利用類似原理進行校正。

圖7 豎直方向梯形形變Fig.7 Trapezoid deformation in vertical direction
投影形變校正就是將豎直和水平方向的形變進行校正換算后,再次建立直角坐標系與變形的像素坐標系之間的對應關系,將實際瞄準點的平面直角坐標轉換為像素坐標。此時虛擬場景中的目標也有對應的像素坐標,將二者進行對比,系統即可判定是否瞄準,從而達到虛擬瞄準與現實瞄準的統一。
2.4 支點轉動偏移修正
實際訓練中訓練裝置以人的肩膀為支點進行瞄準,操作人員轉動瞄準裝置時,支點隨之轉動。支點轉動修正是為了消除該轉動帶來的影響。
在理想狀態下,瞄準裝置瞄向N、P、Q和T時,支點O固定不變。而實際操作中支點O會產生位置偏移,水平方向支點偏移如圖8所示。瞄準裝置瞄準N時,O偏移到O1,產生一個偏角誤差,同理向右瞄準P時偏移到O2,發射裝置瞄向屏幕任意一點時支點O都會在弧線O1OO2上滑動,因此計算中使用的支點為O3。

圖8 水平方向支點偏移Fig.8 Horizontal pivot offset
支點O水平偏移到O1后測量左側校準點豎直方向俯仰角時,支點沿弧線上下滑動如圖9所示。豎直方向測量的實際支點為O″,且O″在NO1的延長線上。

圖9 豎直方向支點偏移Fig.9 Vertical pivot offset
O3與O″同在NO1的延長線上,且可能不是同一點,即豎直方向與水平方向在測量過程中使用的可能為不同支點。實際計算是以水平方向為基準,使用支點O3。水平方向的坐標計算不受影響,但在該條件下計算的豎直方向坐標出現偏差,不同支點的豎直方向情況如圖10所示,計算所得豎直方向TQ長度實際為被截取的T′Q′長度。

圖10 實際支點圖Fig.10 Actual pivot
△O3T′Q′相似于△O″TQ,實際所需TQ的長度與T′Q′的長度存在以下比例關系:

豎直方向坐標通過式(10)即可修正支點轉動引起的誤差。用屏幕分辨率豎直方向像素值作為TQ實際長度進行比例換算,水平方向與豎直方向邊長比與實際投影分辨率達到一致。
投影瞄準算法將瞄準裝置瞄準點的實際平面直角坐標和該點對應的虛擬空間坐標統一換算為像素坐標,完成現實瞄準與虛擬瞄準的統一,因此測試點為投影畫面上不同像素坐標的點。
用支架支撐瞄準裝置進行固定支點測試,排除圖8中支點O轉動引起的偏差,投影形變校正前測試數據如表1所示。支點不變,投影形變校正后測試數據如表2所示。理論值為測試點的像素坐標,測試值為實際瞄準測試點時平面直角坐標轉換的像素坐標。角度誤差為由支點分別向理論值點和測試值點發出射線時這兩條射線的夾角。從表1可看出,角度誤差平均值為1.147°,數據變化規律符合預期,但誤差過大。

表1 投影形變校正前測試數據Tab.1 The test data before projection distortion is uncorrected

表2 投影形變校正后測試數據Tab.2 The test data after projection distortion is corrected
從表1、2可看出,投影形變校正后角度誤差減小,平均值由1.147°降至0.243°,精度顯著提升。
以相同的測試點在投影形變校正的前提下,以訓練人員的肩膀為支點進行實際訓練測試,分別記錄支點轉動修正前和修正后的測試數據。數據表明,支點轉動修正后角度誤差減小,平均值由0.876°降至0.227°,精度顯著提升。
最后以虛擬飛行目標作為測試瞄準目標進行瞄準發射訓練測試,測試結果表明,投影瞄準算法達到了預期目標,可實現瞄準功能,虛擬瞄準位置與現實瞄準位置達到統一,且精度符合預期要求,系統可進行正常瞄準發射訓練。
在分析虛擬瞄準位置與現實瞄準位置偏差問題的基礎上,提出了一種基于空間方位角的投影瞄準算法。通過電子羅盤測量校準點方位角定位投影平面與瞄準裝置相對位置,利用坐標系對應關系進行投影形變校正,通過比例轉換進行支點轉動修正,最終實現系統的瞄準功能,且瞄準誤差在0.5°以內。該瞄準算法不受場地和光線強度等條件的限制,已經成功運用到了虛擬瞄準訓練系統中。
[1] 王全玉,米慶,申鵬洋,等.虛擬發射裝置在投影系統中的定位方法研究[J].系統仿真學報,2012,24(10):2060-2065.
[2] 王江春.間瞄火炮室內仿真訓練模擬系統研究:迫擊炮訓練模擬系統[J].系統仿真學報,2008,20(8):2018-2022.
[3] 劉航,王積忠,林峰,等.實驗室中基于視景仿真的立體成像與顯示技術[J].實驗室研究與探索,2007,26(3):32-35.
[4] 鄭長偉,卜戍兵,薛青.間瞄火炮射擊訓練模擬系統的設計與實現[J].系統仿真學報,2005(9):2127-2129.
[5] 董光波,張錫恩.水平度調整和瞄準過程的計算機仿真[J].計算機仿真,2004,21(7):26-29.
[6] 房保國,張大發,林亞軍.基于Vega的閥門虛擬仿真技術研究[J].計算機仿真,2005,22(7):212-214.
[7] 薛雪東,徐兵,洪光,等.基于Creator/Vega Prime的某導彈發射設備模擬訓練系統[J].彈箭與制導學報,2008,28(6):307-310.
[8] 黃子才,和春耀,胡庭剛.追擊炮綜合訓練模擬系統的設計與實現[J].指揮控制與仿真,2011,33(4):95-102.
[9] 王蘭美,趙繼成,秦華東.OpenGL及其在VC++下的開發應用[J].武漢大學學報(工學版),2006,39(4):62-65.
編輯:張所濱
A projection aiming algorithm based on spatial azimuth
WANG Lingyan1,LI Zhi2,NIU Junhao3,MA Guangli1
(1.School of Electronic Engineering and Automation,Guilin University of Electronic Technology,Guilin 541004,China;2.School of Electronic Information and Automation,Guilin University of Aerospace Technology,Guilin 541004,China;3.Guangxi Key Laboratory of Automatic Detection Technology and Instrument,Guilin University of Electronic Technology,Guilin 541004,China)
In order to solve the problem of the deviation between the actual aiming position in the real environment and the virtual aiming position in the projection scene in virtual aiming training system,aprojection aiming algorithm based on spatial azimuth is proposed.The projection plane space is located and the space rectangular coordinate system is established according to the spatial azimuth information collected by electronic compass.The coordinate difference caused by the screen projection distortion is eliminated through converting the space rectangular coordinate to pixel coordinate.The deviation problem caused by the rotation of the pivot point is solved by analyzing the motion trajectory.Experimental results show that according to the algorithm,the actual aiming position is unified,and the position deviation caused by the projection distortion and the pivot rotation is reduced effectively.The training effect is guaranteed.
aiming training;electronic compass;pixel coordinate;projection deformation;aiming algorithm
TP39
:A
:1673-808X(2016)05-0375-07
2015-12-20
國家自然科學基金(61361006);廣西自動檢測技術與儀器重點實驗室基金(YQ14203)
李智(1965-),男,廣西靈川人,教授,博士,研究方向為自動測試總線與系統、現代測試技術、智能控制。E-mail:cclizhi@guet.edu.cn
王靈艷,李智,牛軍浩,等.一種基于空間方位角的投影瞄準算法[J].桂林電子科技大學學報,2016,36(5):375-381.