鄭曉平,韓 波,李 平,張 宇
(1.浙江大學工業(yè)控制研究所,浙江杭州310027;2.浙江大學導航制導與控制研究所,浙江杭州310027)
小型無人直升機(small unmanned helicopter,SUH)由于飛行靈活、搭載方便等特點,在災區(qū)探查,邊界巡邏,農(nóng)業(yè)灌溉等領域有著很大的應用優(yōu)勢。其中機體離地高度信息的測量對于無人機自主降落起著關鍵性的作用。目前,離地高度數(shù)據(jù)通常由INS/GPS和聲納配合使用獲得,當姿態(tài)發(fā)生變化時,聲納所測的數(shù)據(jù)準確性下降,且容易受近地面環(huán)境的影響,而在野外山區(qū)或天氣不佳,GPS信號則容易受阻導致高程數(shù)據(jù)誤差較大,且非差分GPS精度不高,不能滿足無人機自主降落要求,而差分GPS則價格昂貴。
隨著機器視覺技術的發(fā)展,基于視覺的導航系統(tǒng)可以快速處理大量的圖像信息,計算獲得SUH的飛行狀態(tài)和離地高度信息,不受地面效應與環(huán)境影響,具有較高的定位精度,能有效地彌補傳統(tǒng)方法的不足。
文獻[1]采用視覺方法檢測和提取特征點,通過攝像機透視模型解算得到直升機相對位置與姿態(tài),Yakimenko O A等人則研究了在機載攝像機可觀察到母艦上至少3個可辨識點的條件下,確定相對于母艦的位置問題[2]。Billingsley J根據(jù)已知的姿態(tài)角信息與合作目標提供的視覺信息估計出位置參數(shù)。在無人機高度為5 m時,視覺信息得到的位置參數(shù)誤差小于 10 cm[3]。文獻[4]充分利用跑道的兩條邊線和地平線所構(gòu)造的幾何關系,描述了求解姿態(tài)角和高度值估計的算法。
基于單目視覺的測量方法是以直線和圓作為圖像識別特征,在降落圖標實際尺寸未知的情況下,通過圖像和聲納傳感器,利用已知的姿態(tài)信息和攝像機投影模型,解算獲得機體的離地高度。實驗表明:算法特征識別率高,輸出結(jié)果的實時性和準確性均能滿足SUH自主降落要求。
在SUH自主降落過程中,自主降落系統(tǒng)根據(jù)視覺導航系統(tǒng)提供的相關信息,控制SUH平穩(wěn)降落,而機體離地高度屬于導航信息的一部分,其測量系統(tǒng)流程如圖1所示。
圖1 測量系統(tǒng)流程圖Fig 1 Flow chart of measurement system
離地高度測量系統(tǒng)需要提前標定攝像頭,獲得內(nèi)參數(shù),而實時的機體姿態(tài)信息,可以由INS/GPS組合導航提供或者基于視覺的姿態(tài)算法計算獲得。在自主降落過程中,首先,通過處理攝像頭獲得的圖像與起飛過程聲納傳感器的數(shù)據(jù),獲得特征直線在圖像坐標系和世界坐標系下的描述方程,然后,利用已知姿態(tài)信息求解旋轉(zhuǎn)矩陣,最后,根據(jù)攝像頭的投影模型實時輸出機體離地高度數(shù)據(jù)。
識別降落圖標并根據(jù)投影關系求解機體離地高度信息,需要知道降落圖標上特征幾何元素在世界坐標系與圖像坐標系的具體位置。為了使降落圖標易于識別,縮短視覺導航系統(tǒng)采集處理數(shù)據(jù)所需要的時間,設計降落圖標如圖2所示。圖標包含圓和直線段2種簡單的幾何元素,深色區(qū)域為紅色或其他易于識別的顏色,其余區(qū)域為白色。
圖2 降落圖標Fig 2 Landing icon
由圖1可知,視覺圖像處理部分在其中起著關鍵性的作用,其主要任務是處理從攝像頭得到的視頻數(shù)據(jù),輸出降落圖標上特征直線在圖像坐標系與世界坐標系中的描述方程,主要包括圖像閾值化、劃分連通域、識別特征圓與特征直線、求解特征直線的描述方程等,如圖3所示,具體過程如下:
1)先對視頻圖像進行自適應閾值處理[5],將周圍環(huán)境與降落圖標分離出來,獲得二值圖像。
圖3 對降落圖標的圖像處理過程Fig 3 Image processing for landing icon
2)在二值圖像中,分離像素值為0或者1的部分,并將像素值為0的區(qū)域連接成0區(qū)域,同理劃分出1區(qū)域,并舍棄像素面積過小和面積縱橫比相差太大的區(qū)域。
3)在SUH起飛階段,使用隨機Hough變換算法識別特征圓,并計算圓的直徑像素長度Lu。由于起飛迅速,SUH姿態(tài)可認為基本不變,假設成像平面與著陸平面平行,由投影關系可得f/h=Lu/Lw,其中,f為攝像頭焦距,h為聲納所測的實時離地高度,即可求得特征圓在世界坐標系的直徑長度Lw。
4)使用Hough變換方法識別特征直線,并在圖像坐標系下求得其描述方程ajxu+bjyu+cj=0(j=r,l)。根據(jù)特征圓與兩特征直線相切的已知條件,可知道特征直線在世界坐標系的描述方程為yw=±0.5Lw。
為了使SUH平穩(wěn)降落,在搜尋到降落圖標后,SUH在飛控程序控制下保持懸停狀態(tài),逐漸下降高度并微調(diào)水平位置。在實際降落過程中,由于機身姿態(tài)的改變,攝像頭的成像平面與著陸平面存在一定的夾角,導致利用線性關系估算高度產(chǎn)生誤差,因而,基于視覺圖像估算離地高度需要考慮姿態(tài)變化帶來的影響。
SUH自主降落的過程可認為是連續(xù)變化的,機載攝像頭與著陸平面的幾何關系如圖4所示。A為攝像頭的成像平面,B為降落圖標所在的著陸平面,世界坐標系owxwywzw為北東地坐標系[6],坐標原點定于著陸目標圓心 ow處。t時刻,SUH機體坐標系可記為otxtytzt,坐標原點ot為無人機質(zhì)心,otxt軸沿機身對稱軸指向機頭方向,otyt軸垂直于飛機對稱平面指向右方,otzt垂直于otxtyt平面指向下方。另外,攝像頭坐標系為otxcyczc,圖像坐標系為ouxuyu。定義otxc與 otyt重合,otzc與 otzt重合,otyc與 otxt方向相反。
設降落圖標上任意一點Pi在成像平面A的透視投影點為 Pi,u,Pi在 owxwywzw下的齊次坐標為
圖4 機載攝像頭與著陸平面的幾何關系Fig 4 Geometric relationship between on-board camera and landing plane
Pi,w=[xi,wyi,wzi,w1]T,Pi在 otxtytzt下的齊次坐標為
Pi,t=[xi,tyi,tzi,t1]T,Pi在 otxcyczc下的齊次坐標為
Pi,c=[xi,cyi,czi,c1]T,Pi,u在 ouxuyu下的齊次坐標為
Pi,u=[xi,uyi,u1]T,則機載攝像頭投影模型可表示為
t時刻,特征直線j在圖像坐標系的描述方程可表示成矩陣形式
其中,Dj=[ajbjcj]為特征直線的系數(shù)行向量。
將式(2)代入投影模型式(1)可得
其中,行向量
由于特征直線在世界坐標系上的描述方程始終為
則式(3)與式(5)等價,可化簡得
其中,Bj1,Bj3分別代表行向量的第一和第三個元素。
根據(jù)以上分析可知,在旋轉(zhuǎn)矩陣 Rw,j×j=fi×j(θ,φ,ψ)和內(nèi)部參數(shù)矩陣A已知的情況下,由兩條以上的特征直線信息,即可估算世界坐標系到機體坐標系在z方向上的平移Tz,即機體當前的離地高度,表達式如下
實際降落過程中,機體橫滾角θ,俯仰角φ與偏航角ψ由機載INS/GPS模塊測得,從而求得旋轉(zhuǎn)矩陣Rw,攝像頭內(nèi)部參數(shù)矩陣A,則可于SUH起飛前通過攝像頭標定獲得。針對不同的應用場景,特征直線在owxwywzw下的描述方程可以作為先驗信息,也可以于起飛過程中,配合聲納與視覺圖像計算獲得。最終由式(4)可實時得到Bi,進而估算SUH的離地高度Tz。
將攝像頭與聲納傳感器固聯(lián)于INS/GPS模塊,實驗裝置以不同的姿態(tài)角度拍攝位于水平面的降落圖標,并以上述圖像處理方法和高度估計算法做了大量實驗。
實驗主要步驟如下:
1)對攝像頭所采集的圖像進行魚眼矯正,再標定獲得攝像機的內(nèi)參數(shù)[7]:焦距為 198.4 像素(pixels),約為2.1 mm,光學中心坐標為(160,120)。
2)將世界坐標系原點設于降落圖標中心點,并根據(jù)組合導航所提供的偏航角大小調(diào)整降落圖標中2條相互平行的特征直線位置,使其與世界坐標系的xw軸平行。
3)配合聲納傳感器,利用第2節(jié)的方法模擬起飛過程,獲得降落圖標中圓直徑的實際長度,從而避免使用先驗知識。
4)在不同的離地高度下,連續(xù)改變姿態(tài)并使降落圖標始終處于攝像頭視野范圍內(nèi),如圖5所示。根據(jù)INS/GPS組合導航提供的數(shù)據(jù)與圖像信息,實時估算攝像頭離地垂直高度數(shù)據(jù)。
圖5 不同高度下的圖像處理結(jié)果Fig 5 Image processing results of different heights
在離地高度分別為30,75,100,150 cm時,在一段時間內(nèi),擺動實驗裝置使姿態(tài)角在0°~30°之間連續(xù)變化,并選取其中連續(xù)的5s作數(shù)據(jù)分析,如圖6所示。
由實驗結(jié)果可知,離地高度的增加會導致測量高度絕對誤差的增加,在離地高度為150 cm時,最大相對誤差為4.67%。針對圓直徑為15 cm的降落圖標,在姿態(tài)角較大時,為使相對誤差控制在5%以下,算法的有效測量范圍為30~150 cm,在自主降落的實際過程中3個姿態(tài)角均偏小,一般在10°以下,則有效的測量范圍可達30~200 cm。
圖6 不同高度下的測量結(jié)果Fig 6 Measurement results of different heights
算法的準確性主要取決于導航姿態(tài)數(shù)據(jù)與特征直線描述方程參數(shù)的準確性。以90級無人直升機為例,其支架高度約為30 cm,開始進入自主降落模式的安全高度約為200 cm,隨著離地高度的不斷下降,算法測得的離地高度最大絕對誤差逐漸收斂,能滿足自主降落對離地高度準確性的要求。
在驗證測量方法的實驗中,縮小降落圖標的尺寸,會使測量范圍變小,但有利于實驗數(shù)據(jù)的測量。在實際應用中,配合分級降落圖標,通過識別大尺寸的降落圖標,測量范圍則可以進一步擴大,而對于較高的離地高度,選擇大圖標來識別特征直線,可以有效降低相對誤差。
在SUH自主降落過程中,對于離地高度測量的實時性。針對姿態(tài)發(fā)生變化導致聲納傳感器測量不準和非差分GPS高程精度不高的情況,提出了一種基于特征直線的單目視覺高度測量方法,實驗表明:該方法實時性良好,測量范圍與精度均能滿足自主降落的要求。
[1]Sharp CS,Shakemia O,Sastry SS.A vision system for landing an unmanned aerial vehicle[C]∥Proceedingsof 2001 IEEEInternational Conference on Robotics and Automation(ICRA),Seoul,South Korea,2001:720-1727.
[2]Yakimenko O A,Kaminer I I,Lentz.W J,et al.Unmanned aircraft navigation for shipboard landing using infrared vision[J].IEEE Transactions on Aerospace and Electronic System,2002,38(4):1181-1200.
[3]Billingsley J,Bradbeer R.Mechatronics and machine vision in practice[M].Berlin,Heidelberg:Springer,2007:181-191.
[4]尚佳佳.無人機著陸圖像輔助導航方法研究[D].西安:西北工業(yè)大學,2007.
[5]章毓晉.圖像分割[M].北京:科學出版社,2001.
[6]鄧正隆.慣性技術[M].哈爾濱:哈爾濱工業(yè)大學出版社,2006:2.
[7]Bradski G,Kaebler A.Learning OpenCV[M].USA:O'Reilly Media,2008.