陳鑌
摘要:針對空中巡邏機器人在空中巡邏過程中出現(xiàn)GPS失效或者空中巡邏機器人執(zhí)行室內巡邏任務GPS不可用的情況,提出了使用單目視覺ORB-SLAM和慣性導航系統(tǒng)相結合的方法,用于提高強干擾環(huán)境和室內環(huán)境(無GPS信號)下的空中巡邏機器人定位精度。本設計對硬件平臺和軟件平臺進行設計對提出的視覺導航方法進行驗證,最終結果表明,在室內無GPS信號情況下采用視覺導航,該方案能夠有效減小定位誤差,空中巡邏機器人的位置、速度和姿態(tài)誤差也得到有效抑制。
關鍵詞:視覺導航;ORB-SLAM;空中巡邏;室內定位;單目視覺
中圖分類號:TP391.41 文獻標識碼:A 文章編號:1009-3044(2018)21-0233-03
Abstract:In view of the case of GPS failure in the air patrol robot during the air patrol or the inability of the air patrol robot to perform indoor patrol task GPS, a combination of monocular visual ORB-SLAM and inertial navigation system is proposed to improve the strong interference environment and indoor environment (no GPS signal). The positioning accuracy of the patrol robot. In this design, the hardware platform and software platform are designed to verify the proposed visual navigation method. The final results show that the positioning error can be effectively reduced by using visual navigation without GPS signal in the room, and the position, speed and attitude error of the aerial patrol robot can be effectively suppressed.
Key words:visual navigation;ORB-SLAM;air patrol;indoor location;monocular vision
1 引言
隨著科學技術的進步,移動機器人在生活中越來越可見,利用機器人協(xié)助人類完成某些工作,不僅可以提高生活效率,生活品質,同時可以節(jié)約生活成本,創(chuàng)造更多的社會價值。但機器人的定位問題,一直是人類探究的話題,研究人員利用各種的傳感器,開發(fā)各種算法實現(xiàn)定位。餐廳服務機器人,掃地機器人等機器人利用視覺傳感器讀取前方圖像,通過圖像處理技術尋找特征點實現(xiàn)定位;港口自動運輸車利用地下導軌產(chǎn)生的磁場,通過分析磁場的強弱實現(xiàn)位置監(jiān)控。任何傳感器都存在局限性,空中巡邏機器人若要自主導航對機載GPS定位依賴度高;當出現(xiàn)GPS信號弱或者完全無GPS信號時,要如何解決空中機器人導航問題,所以本論文利用視覺傳感器與慣性傳感器相結合的方式實現(xiàn)空中巡邏機器人能夠在無GPS信號時的定位與導航。
單目視覺的研究最早從基于濾波的研究到目前基于關鍵幀的研究,在圖像處理算法上實現(xiàn)了較大突破,Strasdat等人[1]證明基于關鍵幀的實用性比基于濾波的更具有意義。Klein G等人[2]提出的PTAM算法,首次將跟蹤定位與建立地圖分兩個線程檢測特征點。Pirker等人[3]提出了閉環(huán)修正、重定位等比較完善的CD-SLAM算法系統(tǒng)。R.Mur-Artal和J.D.Tardos 等人[4-5]提出了ORB-SLAM算法,融合了PTAM算法的主要思想和Strasdat提出的閉環(huán)修正方法,整個過程均采用ORB特征點進行跟蹤、構圖、重定位和閉環(huán)修正,與前面提出的SLAM方法相比,具有較高的定位精度和實時性,可以用在對實時性要求較高的場合。
2 單目ORB-SLAM算法
ORB-SLAM是基于特征點的單目實時定位與建圖系統(tǒng)。ORB-SLAM算法主要分三個模塊:跟蹤、建圖、閉環(huán)檢測。如圖1所示。
跟蹤:首先在關鍵幀中提取圖像的特征,根據(jù)前一幀的位姿判斷當前位姿;然后依據(jù)ORB特征跟蹤局部圖像的特征,對當前幀的圖像進行優(yōu)化;最后根據(jù)當前幀的特征確定下一幀圖像。
建圖:主要完成局部地圖的構建,包括對關鍵幀的插入,驗證最近生成的地圖點并進行篩選,然后生成新的地圖點,使用本地BA,最后再對插入的關鍵幀進行篩選,去除多余的關鍵幀[6]。
閉環(huán)檢測:分為閉環(huán)檢測和閉環(huán)校正。當返回到之前走過的位置時,可以識別這個位置并且根據(jù)當時的關鍵幀判斷得到現(xiàn)在的位置,這就是閉環(huán)檢測。閉環(huán)校正,主要是閉環(huán)融合和本質圖優(yōu)化。
整體實現(xiàn)步驟如下:
1) 讀取圖像,通過“張正友標定法”進行攝像頭標定,主要是對攝像頭的畸變、失真進行修正。不過,修正過程中還是會存在誤差。修正之后需要對圖像濾波,去除噪聲,為特征提取做好準備。
2) 提取的ORB特征點,利用FAST算子提取特征點,F(xiàn)AST算子的優(yōu)點是計算速度快,可以實時應用到實際場景中。
3) 保存關鍵幀的特征點與下一幀的信息進行比較,兩幀圖像與關鍵幀可以建立圖像幾何關系,通過幾何關系推算出相機的實時位姿信息。
4) 對圖像的每一幀都進行上述操作,尋找、保存關鍵點和保存關鍵幀。構建地圖信息,再利用閉環(huán)檢測提高定位精度。
3 ORB-SLAM算法與慣性導航系統(tǒng)結合
單目視覺在一些復雜的環(huán)境仍然存在許多不足,需要通過其他傳感器彌補不足之處。例如,空中巡邏機器人在飛行過程中無法獲取到圖像的深度信息,利用慣性傳感器能夠實時監(jiān)控空中巡邏機器人真實的加速度、速度等信息。利用這些信息與圖像信息建立數(shù)學模型,推算出圖像的深度信息,進而得到空中巡邏機器人真實的位置姿態(tài)[7]。
IMU(慣性測量單元)是測量物體三軸姿態(tài)角以及加速度的裝置??罩醒策墮C器人導航時需要知道導航坐標系的角速度信號,測量物體的加速度信號以及空中巡邏機器人在三維空間中的角速度和加速度,利用這兩個信號加上導航坐標系推斷出物體姿態(tài)。通過擴展卡爾曼濾波器濾波可以把數(shù)據(jù)融合在一起,擴展卡爾曼濾波器也被用來補償系統(tǒng)中的時間延遲[8]。
基于EKF的位置和速度預測,通過應用PID控制引導空中巡邏機器人在世界坐標系中朝著期望的目標位置[P=x,y,z,ΨΤ∈R4]前進。根據(jù)當前狀態(tài)估計,將生成的控制轉換成以機器人為中心的坐標系并將其發(fā)送到空中巡邏機器人。
4 實驗與分析
4.1 實驗平臺搭建
本實驗通過linux操作系統(tǒng)實現(xiàn),并且需要先安裝ROS系統(tǒng)。ROS系統(tǒng)中裝有單目SLAM工具包,擁有實時仿真軟件,方便空中巡邏機器人參數(shù)的調整與測試。程序運行后視頻界面和字符界面如圖3和圖4所示。
4.2 實驗環(huán)境
為何能夠有效地檢測視覺定位精度,實驗的場景布置在室內,且周邊環(huán)境較為復雜,如圖5所示。
4.3 數(shù)據(jù)分析
4.3.1 姿態(tài)估計精度
通過測量三種不同場景的姿態(tài)來估計精度:空中巡邏機器人飛行一個大圖形;空中巡邏機器人飛行一個小圖形;空中巡邏機器人定點懸停。圖4-4顯示了三種情景中飛行數(shù)據(jù),以及每個場景的飛行姿態(tài)均方根誤差(RMSE)。三個飛行的估計軌跡(藍色)和地面真實軌跡(紅色):一個大圖形(3m×3m×1m),一個小圖形(1m×1m×1m),和靜止在一個位置上。通過數(shù)據(jù)可以得到,姿態(tài)估計誤差與被覆蓋空間的大小線性相關:在局部,可以非常準確地估計了空中巡邏機器人的運動軌跡,但在長距離上估計誤差將變大。
4.3.2 定位精度和飛行速度
考慮到該系統(tǒng)的延遲很大,空中巡邏機器人的姿態(tài)穩(wěn)定性很大程度上取決于EKF的準確預測:姿態(tài)估計越準確,特別是速度估計越高,控制器增益可以設置得越高,而不會導致振蕩。為了獲得較好的穩(wěn)定性,空中巡邏機器人在不同環(huán)境中定點懸停60秒以上,并測量定位精度的均方根誤差(RMSE)。圖7顯示了三種不同環(huán)境的結果:測量的RMSE分別是:5.0cm(實驗室內)、8.1cm (體育館內)和15.0cm(室外)。
為了評估飛行速度,將反復讓空中巡邏機器人飛行一定距離,并測量空中巡邏機器人到達指定目標位置的所需的時間(誤差保持在10cm以下)。表1顯示了空中巡邏機器人移動給定位置所需的平均時間:達到3m距離的目標位置平均為3.1s,其中最大飛行速度為2 m/s。
5 結論
綜上所述,該空中巡邏機器人視覺導航系統(tǒng)在沒有GPS的環(huán)境中,利用單目視覺ORB-SLAM和慣性導航系統(tǒng)相結合的方法,對空中巡邏機器人進行準確的導航,并且不需要額外的地標或者位置傳感器。姿態(tài)估計精度、定位精度和飛行速度誤差都在有效范圍內。通過實驗表明,該空中巡邏機器人視覺導航切實可行,具有較好的定位精度。目前只是對單目視覺ORB-SLAM的算法應用,今后對其參數(shù)的優(yōu)化以及視覺跟蹤失敗后系統(tǒng)魯棒性可以進一步提高。
參考文獻:
[1] Strasdat H,Montiel J M M,Davison A J.Visual SLAM:why filter[J].Image and Vision Computing, 2012,30(2):65-77.
[2] Klein G, Murray D. Parallel tracking and mapping for small AR workspaces[C].2007 IEEE and ACM Interna- tional Symposium on Mixed and Augmented Reality (ISMAR).2007:225-234.
[3] Pirker K, Ruther M, Bischof H.CD SLAM-continuous localization and mapping in a dynamic world[C].2011 IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS).2011:3990-3997.
[4] M.Achtelik,M.Achtelik,S.Weiss,and R.Siegwart,“Onboard IMU and monocular vision based control for MAVs in unknown in- and outdoor environments,”in Proc. IEEE Intl.Conf.On Robotics and Automation (ICRA),2011.
[5] W.S.Ng and E.Sharlin,“Collocated interaction with flying robots,”in Proc.IEEE Intl.Symposium on Robot and Human Interactive Communication,2011.
[6] 周紹磊,吳修振,劉剛,等.一種單目視覺ORB-SLAM/INS組合導航方法[J].中國慣性技術學報,2016,24(5):633-637.
[7] 于乃功,黃燦,林佳.基于單目視覺的機器人目標定位測距方法研究[J].計算機測量與控制,2012,20(10):2654-2656+2660.
[8] 金舒燦,胡越黎,張賀.基于EKF的四旋翼姿態(tài)解算仿真與設計[J].電子技術應用,2017,43(9):127-131+136.
【通聯(lián)編輯:唐一東】