今天我們來講一講P600室外無人機亮點功能之一“吊艙框選跟蹤”。該平臺配置USB接口的Q10F十倍變焦單光吊艙,并開發(fā)了其專用ROS驅(qū)動;通過機載系統(tǒng)中內(nèi)置的KCF框選追蹤算法,基于*圖像視覺實現(xiàn)對特定目標(人/車/其他無人機等…)的框選、追蹤與跟隨。下面將分別從原理說明和實機操作兩方面進行描述。
一、原理說明
1、KCF原理
KCF(Kernelized Correlation Filters)是一種鑒別式追蹤方法,這類方法一般都是在追蹤過程中訓(xùn)練一個目標檢測器,使用目標檢測器去檢測下一幀預(yù)測位置是否是目標,然后再使用新檢測結(jié)果去更新訓(xùn)練集進而更新目標檢測器。而在訓(xùn)練目標檢測器時一般選取目標區(qū)域為正樣本,目標的周圍區(qū)域為負樣本,當然越靠近目標的區(qū)域為正樣本的可能性越大。KCF相對于其他的tracking-by-detection方法速度得到了極大的提升,效果也相對較好。
KCF算法流程圖
2、節(jié)點圖
吊艙跟蹤節(jié)點圖如下圖所示:
3、跟蹤控制原理與主要消息流
控制說明:tracker_ros節(jié)點訂閱來自吊艙的圖像話題,得到xy偏移量和原本框大小和實際框大小,都在position_diff話題里面。xy的偏移量在serial_node節(jié)點由PID得到吊艙偏航橫滾的控制量并通過串口二發(fā)給吊艙。原本框大小和實際框大小在target_tarcking節(jié)點由PID得到無人機x方向的期望速度。
吊艙控制
俯仰角控制:PID控制(誤差來自檢測框與相機圖像中心點上下偏離的距離)偏航角控制:PID控制(誤差來自檢測框與相機圖像中心點左右偏離的距離)吊艙俯仰角和偏航角的PID代碼如下:
無人機跟蹤控制
無人機偏航是讀取吊艙偏航,并和吊艙偏航保持一致。X方向速度控制:PID控制(誤差來自當前檢測框的大小和最初手動框選大小的差)X方向速度的PID控制代碼如下:
二、實機操作
室外測試需要使用NoMachine連接TX2的遠程桌面,同時在TX2上框選要跟蹤的目標在完成初步測試之后,讓飛手在自穩(wěn)模式或定點模式下試飛飛機,飛機正常則返回地面繼續(xù)下面步驟啟動
fly_track_outdoor.sh
文件
/home/amov/track_ws/src/px4_command/sh/sh_for_P200/fly_tracking_outdoor.sh
觀察各個終端,確保都沒有錯誤在倒數(shù)第三個終端窗口輸入0選擇PID,輸入1選擇GO ON
在倒數(shù)第二個終端窗口輸入1選擇go on,輸入777選擇track
飛手嘗試切換offboard模式,能切換成功則在position模式下飛到一定高度??蜻x目標觀測速度數(shù)據(jù)是否正常,正常則繼續(xù)框選目標:
飛手切offboard模式飛機開始跟蹤,并注意在意外情況下控制飛機切到自穩(wěn)或者定點模式。
更多詳細的資料
可參考wiki手冊:
– End –
技術(shù)發(fā)展的日新月異,阿木實驗室將緊跟技術(shù)的腳步,不斷把機器人行業(yè)最新的技術(shù)和硬件推薦給大家??吹浇?jīng)過我們培訓(xùn)的學(xué)員在技術(shù)上突飛猛進,是我們培訓(xùn)最大的價值。如果你在機器人行業(yè),就請關(guān)注我們的公眾號,我們將持續(xù)發(fā)布機器人行業(yè)最有價值的信息和技術(shù)。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至2161241530@qq.com 舉報,一經(jīng)查實,本站將立刻刪除。如若轉(zhuǎn)載,請注明出處:http://m.sdanke.com/uncategorized/34839/