唐 文,魏志強,軒新想,張玉方
(中國電子科技集團公司第三研究所,北京 100015)
隨著航拍無人機和云臺技術(shù)的不斷發(fā)展,使用無人機搭載光電吊艙對目標進行偵察和監(jiān)視的應(yīng)用場景越來越多。為了實現(xiàn)對目標的全天候監(jiān)測和精確定位,光電吊艙需要搭載可見光電視、紅外熱像儀、激光測距機等多種光電探測器??紤]到尺寸和重量的限制,這種搭載了多個光電探測器的吊艙大多采用兩軸結(jié)構(gòu)。由于兩軸結(jié)構(gòu)在橫滾方向沒有姿態(tài)補償,當無人機姿態(tài)改變時,會在吊艙視軸產(chǎn)生橫滾角度分量,致使觀察到的圖像相對于水平面發(fā)生傾斜,影響對目標的觀察和判斷。為了消除這種傾斜現(xiàn)象,一般采用圖像消旋的辦法。常見的圖像消旋方法有物理消旋、光學消旋及電子消旋等[1-3],需要使用姿態(tài)傳感器(陀螺儀、傾角儀等)獲取視軸的橫滾角,再使用圖像變換的辦法對圖像進行處理[4]。對于沒有在橫滾軸布置姿態(tài)傳感器的吊艙,無法直接獲取視軸橫滾角,但可以根據(jù)飛機和吊艙的空間姿態(tài)關(guān)系,間接獲取視軸橫滾角[5]。本文基于多旋翼無人機和光電吊艙的空間姿態(tài)關(guān)系,建立了兩軸光電吊艙視軸橫滾角計算數(shù)學模型,使用MATLAB軟件編寫了視軸橫滾角計算程序,分析了圖像旋轉(zhuǎn)角與無人機和吊艙姿態(tài)角的對應(yīng)關(guān)系,使用三維建模渲染軟件Blender建立了無人機搭載光電吊艙偵察的虛擬仿真環(huán)境,實現(xiàn)了光電吊艙圖像消旋的虛擬仿真,驗證了視軸橫滾角計算模型及計算程序的有效性。
消旋正向選擇一般有“向上標準”和“向前標準”[5],本文的消旋正向標準使用“向上標準”,即天在上地在下,適于目標畫面在地平線附近的情形。坐標系以大地為基準,使用東北天坐標系,X軸指東,Y軸指北,Z軸指天。
無人機(Drone)坐標系及姿態(tài)角定義如圖1所示。X軸指向無人機前方,Y軸指向無人機左側(cè),Z軸指向無人機上方。無人機相對大地的姿態(tài)角為,橫滾角(RollD)繞X軸,俯仰角(PitchD)繞Y軸,方位角(YawD)繞Z軸。
圖1 無人機坐標系及姿態(tài)角
吊艙(Turret)基座與無人機固連,其坐標系及姿態(tài)角定義如圖2所示。吊艙上光電載荷的初始方向與無人機坐標系方向相同。其相對無人機的姿態(tài)角為,橫滾角(RollT)繞X軸,俯仰角(PitchT)繞Y軸,方位角(YawT)繞Z軸。
圖2 吊艙坐標系及姿態(tài)角
使用吊艙坐標系中三個相互垂直的單位向量iT,jT,kT表示吊艙光電載荷的三個軸向,其中,iT為光電載荷視軸向量,初始方向與吊艙坐標系X軸相同;jT為光電載荷側(cè)向向量,初始方向與吊艙坐標系Y軸相同;kT為光電載荷垂向向量,初始方向與吊艙坐標系Z軸相同。在吊艙坐標系中的表示如下:
采用歐拉角法求解光電載荷在無人機和大地坐標系下的姿態(tài)角。吊艙坐標系到無人機坐標系,分別繞吊艙X,Y,Z三個軸旋轉(zhuǎn)的姿態(tài)變換矩陣為
無人機坐標系到大地坐標系,分別繞無人機X,Y,Z三個軸旋轉(zhuǎn)的姿態(tài)變換矩陣為
將吊艙坐標系中的光電載荷方向向量變換到大地坐標系中,可以得到光電載荷三個軸向向量iT,jT,kT在無人機姿態(tài)(RollD,PitchD,YawD)和光電吊艙姿態(tài)(RollT,PitchT,YawT)共同作用下的大地坐標系中的表示iG,jG,kG。
我的老姐姐知道我們的事,并沒有責怪老伴,反倒說我。在她看來,我和老伴并不般配。老伴大學畢業(yè),原來是企業(yè)的領(lǐng)導(dǎo),人長得也精神,有些內(nèi)向;而我初中畢業(yè),后來進城也是靠老伴才找到的工作,說話辦事風風火火的。姐姐還埋怨我那去世的老媽媽,說老媽媽當時看男方的條件好,仗著是老鄰居,硬是把我們整一塊去了。我的婆婆公公在家也說了算,所以,我這婚姻完全是兩邊老人做主的。
無人機到地面的姿態(tài)變換順序為方位→俯仰→橫滾,即Z軸→Y軸→X軸。所以無人機到地面的坐標變換矩陣為
吊艙到無人機的姿態(tài)變換順序根據(jù)吊艙的結(jié)構(gòu)形式有所不同。對于本文這種沒有橫滾軸的吊艙,其姿態(tài)變換順序為方位→俯仰→橫滾,即Z軸→Y軸→X軸,橫滾軸用于圖像消旋,相當于橫滾軸在最后一級的三軸吊艙。所以吊艙到無人機的坐標變換矩陣為
綜合吊艙到無人機和無人機到地面的坐標變換矩陣,得到吊艙到地面的坐標變換矩陣為
求得地面坐標系下吊艙光電載荷的三個方向向量如下。
地面坐標系下視軸向量:
地面坐標系下側(cè)向向量:
地面坐標系下垂向向量:
視軸橫滾角θ可以通過求取地面坐標系下視軸側(cè)向向量jG與視軸水平方向參考向量τG的夾角獲得。其中,地面坐標系下視軸水平方向參考向量τG使用地面坐標系下的視軸向量iG與地面法向向量nG的外積獲得,τG始終與水平面平行。
則地面坐標系下的視軸水平方向參考向量為
求得視軸橫滾角為
上式求得的θ范圍為0~180°,無法區(qū)分視軸側(cè)向量jG通過順時針還是逆時針旋轉(zhuǎn)到水平方向參考向量τG的方向,這里通過地面坐標系下視軸側(cè)向向量jG的z的正負判斷旋轉(zhuǎn)方向,如圖3所示。z為正時,視軸側(cè)向向量在水平面上方,θ取正值,即視軸側(cè)向量通過繞視軸順時針旋轉(zhuǎn)θ后,與水平方向參考向量方向相同;z為負時,視軸側(cè)向向量在水平面下方,θ取負值,即視軸側(cè)向量通過繞視軸逆時針旋轉(zhuǎn)θ后,與水平方向參考向量方向相同。
圖3 圖像旋轉(zhuǎn)角正負定義示意圖
根據(jù)上述計算模型,使用MATLAB軟件編寫圖像消旋角度計算程序,實現(xiàn)任意無人機和吊艙姿態(tài)下視軸橫滾角的計算,輸出給圖像處理模塊作為圖像消旋需要的圖像旋轉(zhuǎn)角度。
以無人機姿態(tài)為俯仰10°、橫滾10°為例,計算在無人機姿態(tài)固定的情況下,吊艙姿態(tài)與圖像旋轉(zhuǎn)角度的關(guān)系,繪制關(guān)系分布圖,如圖4所示。從圖4可以看出,圖像旋轉(zhuǎn)角在(-78°,136°)、(106°,136°)、(-106°,-44°)、(78°,-44°)四個位置出現(xiàn)了突變。這四個位置對應(yīng)吊艙視軸向量與地面法向向量平行的四個位置。吊艙俯仰運動越過此位置時,視軸水平方向參考向量的方向發(fā)生翻轉(zhuǎn)。由于圖像旋轉(zhuǎn)角是基于視軸水平方向參考向量計算的,所以計算得到的圖像旋轉(zhuǎn)角度也發(fā)生了180°的翻轉(zhuǎn),這是使用“向上標準”時會發(fā)生的現(xiàn)象。另外,在吊艙方位角136°和-44°附近,是圖像旋轉(zhuǎn)角θ定義正負轉(zhuǎn)換的位置,所以吊艙方位角越過此處時,圖像旋轉(zhuǎn)角的正負符號會發(fā)生改變。
圖4 吊艙姿態(tài)與圖像旋轉(zhuǎn)角度關(guān)系圖
需要說明的是,這里給出了吊艙全部姿態(tài)角(方位角-180°~180°、俯仰角-180°~180°)下的圖像旋轉(zhuǎn)角分布,實際使用時,吊艙方位角的轉(zhuǎn)動范圍是n×360°,俯仰角的轉(zhuǎn)動范圍在-60°~120°,一般俯仰角超過45°畫面中就不會出現(xiàn)地平線了,不需要進行“向上標準”的圖像消旋。
以吊艙的姿態(tài)為方位10°、俯仰10°為例,計算在吊艙姿態(tài)不變情況下,無人機姿態(tài)與圖像旋轉(zhuǎn)角度的關(guān)系,繪制曲線如圖5所示。從圖5可以看出,圖像旋轉(zhuǎn)角在(-50°,77°)、(130°,103°)、(-41°,105°)、(139°,-75°)四個位置出現(xiàn)了突變,這與圖4中的圖像旋轉(zhuǎn)角度出現(xiàn)180°翻轉(zhuǎn)的原因相同。與無人機姿態(tài)固定時圖像旋轉(zhuǎn)角的符號正負轉(zhuǎn)換位置僅受吊艙方位角影響不同,當?shù)跖撟藨B(tài)固定時,圖像旋轉(zhuǎn)角的符號正負轉(zhuǎn)換的位置同時受無人機俯仰和橫滾姿態(tài)的影響。
圖5 無人機姿態(tài)與圖像旋轉(zhuǎn)角度關(guān)系圖
通過以下幾個特定位姿的算例,可以更好地說明無人機和吊艙的姿態(tài)對圖像旋轉(zhuǎn)角的影響規(guī)律。各特定位姿對應(yīng)的吊艙姿態(tài)角如表1所示。
表1 特定位姿的吊艙姿態(tài)角
圖6給出了無人機俯仰角0°不變,僅進行-30°~30°橫滾運動時的圖像旋轉(zhuǎn)角變化趨勢。從圖6(a)可以看出,當?shù)跖摰姆轿唤呛透┭鼋菫?°時,圖像旋轉(zhuǎn)角度隨無人機橫滾角度線性變化。當?shù)跖摲轿唤菫?°、俯仰角增大時,圖像旋轉(zhuǎn)角度與無人機橫滾角開始呈現(xiàn)非線性關(guān)系,吊艙俯仰角越大,相同無人機橫滾角下對應(yīng)的圖像旋轉(zhuǎn)角度越大。當?shù)跖摲轿唤菫?°、俯仰角為90°時,圖像旋轉(zhuǎn)角在無人機橫滾角0°左右出現(xiàn)階躍,這是采用“向上標準”進行消旋時會出現(xiàn)的現(xiàn)象。從圖6(b)可以看出,當?shù)跖摳┭鼋菫?°、方位角增大時,無人機的橫滾運動對圖像旋轉(zhuǎn)的影響越來越小。當?shù)跖摳┭鼋菫?°、方位角90°時,圖像旋轉(zhuǎn)角保持0°不變,這是由于此時無人機的橫滾運動與吊艙的俯仰運動繞相同的空間軸轉(zhuǎn)動,與吊艙的俯仰運動等效,因此此時無人機的橫滾運動對圖像旋轉(zhuǎn)沒有影響。
圖6 無人機橫滾角對不同吊艙姿態(tài)下圖像旋轉(zhuǎn)角的影響
圖7給出了無人機橫滾角0°不變,僅進行-30°~30°俯仰運動時的圖像旋轉(zhuǎn)角變化趨勢。從圖7(a)可以看出,當?shù)跖摲轿唤菫?°時,除了由于采用“向上標準”發(fā)生的圖像旋轉(zhuǎn)角180°階躍,無人機的俯仰運動對圖像旋轉(zhuǎn)角沒有影響。從圖7(b)可以看出,當?shù)跖摳┭鼋菫?°、方位角增大時,圖像旋轉(zhuǎn)角與無人機俯仰角呈線性關(guān)系,且吊艙方位角越大,圖像旋轉(zhuǎn)角越大。當?shù)跖摲轿唤菫?0°時,無人機的俯仰運動軸與視軸重合,無人機的俯仰運動與視軸的橫滾運動等效,所以此姿態(tài)下無人機的俯仰運動對圖像旋轉(zhuǎn)角的影響最大。
圖7 無人機俯仰角對不同吊艙姿態(tài)下圖像旋轉(zhuǎn)角的影響
利用免費開源三維建模渲染軟件Blender建立無人機和吊艙的三維模型,同時在場景的“世界屬性”中導(dǎo)入帶有地平線場景的高動態(tài)范圍全景圖像作為世界環(huán)境位置參考,建立無人機偵察的虛擬仿真環(huán)境,效果如圖8(a)所示。通過設(shè)置場景中的“攝相機”參數(shù)模擬吊艙中光電載荷的視場,效果如圖8(b)所示。Blender軟件可以方便地進行無人機和吊艙的姿態(tài)變換操作,用來實現(xiàn)不同姿態(tài)下的圖像消旋效果仿真驗證。
圖8 基于Blender軟件建立的虛擬仿真環(huán)境
利用Blender軟件中的“空物體”,建立無人機、吊艙的參考坐標系,使用“移動”和“旋轉(zhuǎn)”命令調(diào)整吊艙和無人機的相對位置,并在“物體屬性”的“關(guān)系”中將無人機參考坐標系設(shè)置為吊艙坐標系的父級,實現(xiàn)無人機和吊艙空間關(guān)系的定義。同時,將無人機和吊艙的參考坐標系分別設(shè)置為無人機和吊艙三維模型的父級,建立無人機和吊艙參考坐標系與三維模型的直接對應(yīng)關(guān)系,通過改變對應(yīng)“空物體”的姿態(tài),實現(xiàn)無人機、吊艙模型姿態(tài)的變換,并在仿真環(huán)境中直觀地顯示出來。
利用Blender軟件中的“攝像機”模塊,使用其“鏡頭”中的“視野”定義視場角(這里設(shè)為45°),建立吊艙光電載荷的仿真視場,實現(xiàn)無人機姿態(tài)改變對吊艙光電載荷視場影響的仿真。
圖9為無人機姿態(tài)改變前后光電載荷的仿真視場。其中,圖9(a)對應(yīng)無人機方位角0°/俯仰角0°/橫滾角0°、吊艙方位角7°/俯仰角-1°的姿態(tài),圖9(b)對應(yīng)無人機方位角0°/俯仰角10°/橫滾角10°、吊艙方位角8°/俯仰角-9°的姿態(tài)??梢钥闯?,由于無人機姿態(tài)發(fā)生改變,為了觀察相同的目標,需要調(diào)整吊艙的方位角和俯仰角,盡管可以把目標放在視場中心,但由于吊艙沒有橫滾運動補償,視場中的地平線有一些傾斜,需要進行圖像消旋處理。
圖9 不同無人機和吊艙姿態(tài)下的光電載荷視場虛擬仿真
按照上述仿真模型定義的無人機和吊艙姿態(tài),使用編寫的MATLAB程序計算得到圖像旋轉(zhuǎn)角度為-11.16°。將模擬光電載荷視場的“攝像機”進行繞橫滾軸-11.16°的“旋轉(zhuǎn)”操作,得到的消旋后視場如圖10所示??梢钥闯觯跖摲抡嬉晥鲋械牡仄骄€恢復(fù)水平,驗證了本文建立的吊艙橫滾角計算模型和MATLAB計算程序的正確性。
圖10 圖像消旋后的視場
使用Blender軟件中的“測量”工具測量吊艙側(cè)軸方向與水平參考方向的夾角,如圖11所示,測得夾角為11.16°,與程序計算的結(jié)果一致,可以從另一角度驗證本文建立的吊艙橫滾角計算模型和計算程序的正確性。
圖11 Blender軟件中的測角結(jié)果
本文通過建立吊艙視軸橫滾角計算的數(shù)學模型,編寫了視軸橫滾角計算程序,分析了圖像旋轉(zhuǎn)角與無人機和吊艙姿態(tài)角的對應(yīng)關(guān)系,使用三維軟件進行了圖像消旋效果虛擬仿真,驗證了數(shù)學模型和計算程序的正確性。將本程序集成到吊艙中,無需增加姿態(tài)傳感器就可以獲得消旋需要的圖像旋轉(zhuǎn)角度,可為圖像電子消旋提供必要的輸入?yún)?shù)。在實際應(yīng)用時,程序需要的輸入?yún)?shù)可以從無人機和吊艙獲得,其中無人機相對大地的姿態(tài)角從無人機的慣導(dǎo)系統(tǒng)(飛控)獲得,吊艙相對無人機的姿態(tài)角從吊艙的方位和俯仰測角傳感器(如磁編碼器、旋轉(zhuǎn)變壓器等)獲得,通過時間統(tǒng)一的姿態(tài)數(shù)據(jù)計算得到視軸橫滾角即圖像旋轉(zhuǎn)角,提供給吊艙中的圖像處理單元進行處理,即可實現(xiàn)圖像的電子消旋。