馬曉東,呂 昊,張 杰,高帥華
(中國飛行試驗研究院,西安 710089)
近年來,基于視覺傳感器的無人機自主著陸技術作為其智能化、自主化研究中的重要環(huán)節(jié),受到廣泛關注[1]。當前將視覺傳感器運用于無人機自主著陸中的多是旋翼機。由于其可近距離飛行、慢速垂直起降,能獲得清晰的圖像,故多是利用合作地標,設計算法對其進行識別、跟蹤及相對位姿解算用于著陸導航[2-4]。該方法實時性較強、導航精度較高,故研究與應用較為廣泛。而固定翼無人機由于飛行速度較快、著陸位置較為固定(多為跑道)、且進入著陸狀態(tài)是距離著陸點較遠,多是通過檢測和跟蹤跑道、識別地平線等方法實現無人機自主著陸[5-6]。但該方案無法得到較為全面的導航信息,且實時性較差、精度較低,無法滿足固定翼無人機自主著陸需求。
基于上述研究基礎,結合旋翼機利用合作地標自主著陸的優(yōu)勢,利用由兩個視覺傳感器構成的雙目視覺系統設計一套固定翼無人機自主著陸導航方法,通過對無人機著陸過程分析,設計地標形狀并確定擺放方式,方便機載雙目視覺系統對著陸地標進行檢測識別與跟蹤,并提取關鍵特征角點用于相對位姿估算,并進行雙目融合以提高精度。
固定翼無人機降落過程分為:進場平飛→下滑→拉平→滑行[6],整個降落過程飛機對準跑道飛行,僅在高度方向變化快速,其他方向位移變化不大?;诖颂攸c,確定合作目標形狀及擺放方式如圖1所示。地標垂直地面、面向無人機進場方向放置,保證著陸過程中地標始終在視場內,且仿射變換較小,從而方便無人機識別跟蹤與三維信息解算。
圖1 合作目標擺放方式示意圖
視覺導航算法的工作流程如圖2所示,主要包括目標檢測識別、目標跟蹤以及相對位姿解算3部分。
目標檢測主要包括兩部分:圖像預處理包括濾波、分割、邊緣檢測及輪廓提取,在去除噪聲等干擾之外,提取包括目標的“疑似目標”輪廓集;基于合作地標圖案外圓輪廓特點設置閾值條件進行初步篩選。如圖3所示,圓形地標成像時由于拍攝角度的變化,會畸變?yōu)轭悪E圓形;用矩形邊框逼近,會存在如下特點:橢圓在矩形框中所占面積較大,且橢圓中心與矩形中心距離較近。
圖2 視覺導引自主著陸工作流程框圖
圖3 目標輪廓與其逼近矩形框關系示意圖
基于上述特點,設計篩選閾值條件如式(1)所示:
(1)
式(1)中:SL、OL分別為閉合輪廓面積與中心,||OL-OB||表示兩中心點的歐式距離,T1、T2則為所設閾值。
2.2.1SURF-BoW特征提取
SURF是一種尺度、旋轉不變的檢測與描述方法,具備重復性、特異性及魯棒性優(yōu)點[7]。而BoW是文本信息檢索與分類領域中常用描述方法,用于圖像分類領域時,將二維像素信息映射為視覺詞匯向量,在保持圖像局部特征的同時對圖像信息進行有效壓縮[8]。結合兩者優(yōu)勢,提取SURF-BoW特征用于分類器的訓練。提取方法步驟如下:
步驟1:樣本圖像統一尺寸為256×256,并進行預處理;
步驟2:對預處理后的樣本圖像進行網格稠密采樣,使用的網格采樣間隔是32像素;
步驟3:在每個網格區(qū)域內計算SURF特征得到一個64維的特征向量,每幅樣本圖像可得到一個64×64的SURF特征向量集合;
步驟4:使用K-means均值聚類算法對訓練圖像集上所有的SURF特征進行聚類,每個聚類中心對應一個視覺單詞,從而生成一個由n個視覺單詞構成的視覺單詞表;
步驟5:對樣本圖像提取出的特征進行向量化,即用網格采樣點的SURF特征與視覺單詞表中的每個視覺單詞所對應的SURF特征進行比較,從而找出最相近的視覺單詞來表示網格采樣點周圍區(qū)域;
步驟6:統計每一幅目標圖像中各個視覺單詞出現頻率,并得到一個長度為視覺單詞字典大小的詞頻向量,從而構建每幅目標圖像的SURF-BoW特征。
2.2.2SVM分類器
f(x)=wTx+b
(2)
本文樣本數據為非線性,對于只能對線性數據進行分類的SVM,需引入非線性核函數將低維線性數據轉化到高維特征空間,使其線性可分。本文所用核函數為高斯核函數:
(3)
通過非線性高斯核函數轉換,最終分類器定義函數表示為:
(4)
此次研究選取了1 200個正樣本圖像和1 396個負樣本用于線下SVM分類器訓練。其中正樣本為不同角度、畸變、亮度、模糊等各種情況下的地標圖像,負樣本為具體場景下的周遭干擾目標識別的物體或環(huán)境圖像。
為提高跟蹤實時性,本文以網格采樣初始化后的跟蹤點代替目標,利用跟蹤器進行跟蹤與性能檢測和篩選,以篩選后的跟蹤點所在最小矩形框區(qū)域為跟蹤到的目標圖像。目標跟蹤點初始化與跟蹤如圖4所示。
圖4 目標跟蹤點初始化與跟蹤示意圖
金字塔L-K光流法是在L-K光流法[9]基礎上改進而來,通過引入金字塔降采樣空間,改善原算法對目標移動過快跟蹤效果差的缺陷[10]。但其面對模糊、光照變化等情況,跟蹤效果仍無法滿足需求。本文采用前后跟蹤誤差與相鄰幀局部區(qū)域圖像相似性約束對其進行改進,并設計目標跟蹤失敗再搜索算法,保證跟蹤系統的準確、穩(wěn)定與連續(xù)。
3.1.1前后雙向跟蹤誤差
圖5 前后跟蹤誤差
3.1.2相鄰幀局部圖像相似性約束
本文以金字塔K-L光流法為核心對跟蹤點進行跟蹤,相鄰幀之間由于時間間隔較短,局部區(qū)域圖像應相似?;诖颂匦?,分別以t時刻跟蹤點xt與t+1時刻對應點xt+1為中心,截取10px×10px大小的區(qū)域圖像,進行歸一化相關系數匹配,其結果越大,表明兩者越相似,該跟蹤點跟蹤性能越好。歸一化相關系數法原理式:
其中T(x,y)、I(x,y)分別為圖像T、I中點(x,y)的灰度。
基于該方法與3.1.1中的前后跟蹤誤差設置跟蹤點跟蹤性能約束條件如式(5)所示,當跟蹤點滿足式(5),則認為其跟蹤性能較好,反之,則篩除。
(5)
式(5)中,i表示第i個跟蹤點,FBT、NCCT皆為設定閾值。經多次試驗,當FBT=5、NCCT=0.7算法效果最佳。
為了保證跟蹤目標的準確性與完整性,在基于約束條件篩除跟蹤性能較差的跟蹤點,得到跟蹤目標之后,以上幀目標為模板與本幀目標進行歸一化相關系數匹配,得到匹配結果NCCL,若NCCL≥T,則認為跟蹤成功,反之,則認為跟蹤失敗。經多次試驗,T取0.7時,算法性能最好。
3.1.3跟蹤失敗后目標再搜索
跟蹤失敗后存在兩種情況:目標不再視場內;目標仍在視場內。對于第2種情況,若直接采用SVM分類器進行目標識別,會增加算法的時間復雜度。故本文設計目標再搜索方法,從而在目標跟蹤失敗后仍能快速找到目標。
首先,利用相鄰兩幀間隔時間較短、目標位移尺度變化較小的特點,以上幀目標中心為本幀搜索區(qū)域中心,搜索區(qū)域長高為上幀目標長高的3倍,確定目標再搜索區(qū)域。之后在搜索區(qū)域內重新進行目標檢測得到“疑似目標”圖像集。最后,以上一幀目標圖像為模板,與“疑似目標”圖像集中所有圖像統一尺度,并進行歸一化相關系數匹配。取其中相關系數最大且大于0.7的“疑似目標”圖像為本幀再搜索到的目標;若均小于0.7,則利用SVM分類器精確識別目標。
以本文跟蹤算法與金字塔L-K光流法及以L-K光流法為核心的經典自學習實時跟蹤算法TLD算法進行跟蹤性能對比分析。測試視頻有三組,并采用兩種度量手段評估性能:一是每幀平均處理時間;二是跟蹤誤差,可用下式表示:
(Gx,Gy)與(Tx,Ty)分別為跟蹤到的目標所在矩形框與真實目標所在矩形框中心坐標。
算法運行后,結果可見表1、圖6與圖7。經對比可得,本文跟蹤算法實時性較好,可達30 fps;且其目標跟蹤誤差不超過5個像素,相比金字塔L-K光流法與TLD算法,目標跟蹤準確性較好。而由圖7可明顯看出,本文所設計跟蹤算法跟蹤到的目標相對于TLD與金字塔L-K光流法來說,較為完整,且在光照較強、圖像模糊時仍能跟蹤到目標,表明本文跟蹤算法穩(wěn)定性、連續(xù)性較好。
表1 每幀平均處理時間
圖6 跟蹤誤差結果曲線
圖7 部分跟蹤結果示意圖
Shi-Tomasi算子作為Harris算子的改進算法,利用梯度矩陣的特征值進行強角點判定,可有效避免角點聚簇,故本文選取Shi-Tomasi算子來提取角點。但其提取到的角點為像素級角點,為提高角點檢測精度,本文在利用Shi-Tomasi算子提取到角點后,對其進行亞像素級優(yōu)化,以提高精度。如圖8所示。
圖8 角點亞像素級優(yōu)化
假設世界坐標系下某一點P(xWi,ywi,zwi)在像平面內對應點為p(ui,vi),基于透視投影成像原理,可得:
其中f、dx、dy、u0,、v0為攝像機內參,可由標定所得;Zc為點P與光心之間的距離;R、T分別為攝像機坐標系相對于世界坐標系的旋轉矩陣與平移向量。T可表示為T=(tx,ty,tz)T,而R可用下式表示:
其中,攝像機坐標系繞OX軸的旋轉角度為φ,繞OY軸的旋轉角度為θ,繞OZ軸的的旋轉角度為ψ。
給定4組共面的空間點世界坐標及其對應像點像素坐標,若攝像機參數已知,基于文獻[11]中關于P4P問題求解方法可知,R、T可唯一確定。若已知目標標志中心世界坐標為(xo,yo,zo),可得攝像機在世界坐標系下的坐標為(xo+tx,yo+ty,zo+tz),相對姿態(tài)為:φ=-arcsin(r13),ψ=arcsin(r12/cosφ),θ=arcsin(r23/cosφ)。
(φ,ψ,θ)=((φl+φr)/2,(ψl+ψr)/2,(θl+θr)/2)
以Vega Prime、Creater視景仿真軟件進行雙目視景仿真,并利用仿真圖像進行算法性能測試。仿真所用的雙目攝像機模型如圖9(a)所示,設置光心之間相距1 m,相機內參為fx=fy=618.038 672、u0=v0=256。仿真視景圖像如圖9(b)所示,分辨率均為512×512。圖中4個特征角點世界坐標為(0, -2 828.427 12, 0),(2 828.427 12, 0, 0 ),(0, 2 828.427 12, 0),(-2 828.427 12, 0, 0),單位為mm。
圖9 雙目視景仿真圖像
依據由近到遠,即Z坐標(光軸方向上)從30~150 m,以5 m間隔選取25幀圖像運行算法,結果如圖10所示。
由圖10可知,本文所用位姿估算方法相比于單目視覺位姿估算方法,精度有較大提升。在與目標相距30~150 m的距離內,光軸所在方向的位置估算精度在2 m以內,其他兩軸的位置估計精度在120 mm以內,而姿態(tài)角的估計精度在1°以內,該精度滿足固定翼無人機進近段自主著陸需求。
提出了一種基于雙目視覺的固定翼無人機自主著陸方法。通過對固定翼無人機自主著陸過程分析,基于易檢測識別、易提取特征用于位姿解算等前提,設計合作地標形狀并確定擺放方式。利用地標輪廓幾何特征及SVM分類器,完成目標檢測識別;并利用改進金字塔L-K光流法完成目標精確跟蹤;提取亞像素關鍵角點特征,基于透視投影方法完成相對位姿估算,并利用雙目均值融合以提高估算精度。本文算法實時性、穩(wěn)定性好,可穩(wěn)定準確的識別、跟蹤目標,估算精度較高,可滿足固定翼無人機自主著陸需求。