李杰 劉子龍
摘 要:提出一種將ROS系統(tǒng)的AR.Drone飛行器作為載體,基于飛行器實(shí)現(xiàn)物體識(shí)別追蹤的具體優(yōu)化方案。在計(jì)算機(jī)視覺(jué)方面,結(jié)合物體識(shí)別OpenCV模塊中的Haar級(jí)聯(lián)分類器與卡爾曼濾波,實(shí)現(xiàn)無(wú)人機(jī)的目標(biāo)識(shí)別以及對(duì)錯(cuò)誤目標(biāo)的過(guò)濾功能,使飛行器在搭載攝像頭模塊后,可結(jié)合現(xiàn)有視覺(jué)模型完成目標(biāo)識(shí)別要求,算法融合后的系統(tǒng)性能具有良好的魯棒性;在飛行器控制方面,結(jié)合飛行器自身的反饋控制模塊與基于相對(duì)位置控制的PD位置控制器,優(yōu)化飛行器自身姿態(tài)及目標(biāo)追蹤過(guò)程中的動(dòng)態(tài)參數(shù)調(diào)節(jié)優(yōu)化功能,使飛行器在目標(biāo)追蹤過(guò)程中具有良好的自適應(yīng)性?;谝陨蟽牲c(diǎn)優(yōu)化方案建立實(shí)驗(yàn)?zāi)P?,取得了較好的實(shí)驗(yàn)效果。具體相對(duì)位置估計(jì)均方根誤差實(shí)驗(yàn)結(jié)果為:在x方向上為0.124 Sm,在v方向上為0.243 7m,在z方向上為0.176 8m,證明了該優(yōu)化方案的實(shí)用性。
關(guān)鍵詞:計(jì)算機(jī)視覺(jué);無(wú)人機(jī);目標(biāo)識(shí)別;目標(biāo)追蹤;ROS系統(tǒng);OpenCV
DOI: 10. 11907/rjdk.191475
開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):
中圖分類號(hào):TP301
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1672-7800(2020)001-0021-04
0 引言
在計(jì)算機(jī)視覺(jué)領(lǐng)域,物體識(shí)別算法框架的發(fā)展已趨于穩(wěn)定,目前的計(jì)算機(jī)視覺(jué)已能夠應(yīng)用于大部分場(chǎng)景[1-6]。無(wú)人駕駛飛行器[7-8]( Unmanned Aerial Vehicle,UAV)是一種兼具飛行、垂直起降等功能,具有較好機(jī)動(dòng)性的小型機(jī)器人,在融合計(jì)算機(jī)視覺(jué)技術(shù)后,廣泛應(yīng)用于無(wú)人機(jī)導(dǎo)航、定位著陸、飛行避障、視覺(jué)同步定位與建圖( Simultaneous Lo-calization and Mapping,SLAM)等方面。無(wú)人機(jī)物體識(shí)別追蹤技術(shù)利用無(wú)人機(jī)作為載體,結(jié)合計(jì)算機(jī)視覺(jué)技術(shù),在飛行過(guò)程中結(jié)合飛行高度與視角,提取目標(biāo)物體圖像特征并對(duì)特征信息進(jìn)行處理,同時(shí)結(jié)合相對(duì)位置控制算法,實(shí)現(xiàn)追蹤功能。
無(wú)人駕駛飛行器在發(fā)展過(guò)程中,必然會(huì)經(jīng)歷具備自主飛行能力的階段,而在自主飛行技術(shù)中,視覺(jué)追蹤技術(shù)是其中最為重要的。無(wú)人機(jī)由軍用與民用飛機(jī)演變而來(lái),在定位方面,飛機(jī)上通常采用ADS-B廣播式自動(dòng)相關(guān)監(jiān)視系統(tǒng)與掃描雷達(dá)系統(tǒng)相融合實(shí)現(xiàn)自身定位,而早期大型無(wú)人機(jī)也沿用這種思路,通過(guò)GPS衛(wèi)星確定飛機(jī)自身位置,定期向外廣播自身位置與航向。由于GPS衛(wèi)星及雷達(dá)的成本非常高,隨后出現(xiàn)一種通過(guò)“看見(jiàn)”目標(biāo)佩戴的GPS跟蹤器實(shí)現(xiàn)追蹤目的的特殊無(wú)人機(jī),類似Lily Camera。該技術(shù)識(shí)別目標(biāo)的能力較強(qiáng),但也有著明顯缺點(diǎn),受額外GPS追蹤器的限制,使其暫時(shí)難以得到廣泛應(yīng)用。另一種方案是使用攝像頭與超聲波接發(fā)裝置,使無(wú)人機(jī)能用光學(xué)或聲學(xué)方式掃描周圍空間。如大疆的高端無(wú)人機(jī)“悟”,即憑借該技術(shù)可以在沒(méi)有GPS的室內(nèi)進(jìn)行簡(jiǎn)單的懸停。但無(wú)論是光學(xué)攝像頭還是超聲波,都要依靠信號(hào)差進(jìn)行判斷,因而無(wú)力應(yīng)對(duì)反差小或者消聲、吸光的地面狀況。近年來(lái)隨著深度學(xué)習(xí)技術(shù)在計(jì)算機(jī)視覺(jué)領(lǐng)域的快速發(fā)展,使無(wú)人機(jī)依靠高性能芯片自主提取與識(shí)別跟蹤目標(biāo)特征,從而實(shí)現(xiàn)物體的自動(dòng)識(shí)別追蹤成為可能。
本文融合計(jì)算機(jī)視覺(jué)領(lǐng)域與機(jī)器人領(lǐng)域技術(shù),提出飛行器在目標(biāo)識(shí)別追蹤[9-13]過(guò)程中的一種優(yōu)化模型。該模型改進(jìn)了飛行器在目標(biāo)識(shí)別追蹤過(guò)程中的視覺(jué)估計(jì)誤差匹配精度,達(dá)到了更好的人機(jī)交互效果。
1 整體系統(tǒng)描述
本實(shí)驗(yàn)采用四旋翼飛行器AR.Drone Parrot,飛行器模型見(jiàn)圖1。
由于該飛行器體積小、質(zhì)量較輕,并且有泡沫機(jī)身保護(hù),因而可以很好地應(yīng)對(duì)個(gè)人實(shí)驗(yàn)項(xiàng)目。在硬件設(shè)施上,該無(wú)人機(jī)配備有三軸陀螺儀與加速度計(jì)、超聲波高度計(jì)、氣壓傳感器和磁羅盤。此外,其包含兩個(gè)攝像頭:飛行器前部有帶90。角鏡頭的攝像頭,分辨率為1280×720像素,采樣頻率為30 fps,用于對(duì)實(shí)時(shí)視頻流與圖像進(jìn)行記錄;飛行器底部有一個(gè)微型攝像頭,分辨率為320×240像素,采樣頻率為15 fps,可用于估算水平光流速度。飛機(jī)本身嵌入Linux系統(tǒng),因此可通過(guò)WiFi使飛行器與手機(jī)等電子產(chǎn)品進(jìn)行交互。但該飛行器的軟件和硬件都采用封閉式架構(gòu),需要使用一臺(tái)裝配ROS操作系統(tǒng)[14]的PC作為上位機(jī),通過(guò)上位機(jī)各模塊節(jié)點(diǎn)實(shí)現(xiàn)對(duì)下位機(jī)驅(qū)動(dòng)程序的控制。實(shí)驗(yàn)?zāi)P涂刂屏鞒桃?jiàn)圖2。
2 視覺(jué)對(duì)象識(shí)別與跟蹤
2.1 物體識(shí)別算法
實(shí)驗(yàn)過(guò)程中飛行器正前方攝像頭以BCR格式、30Hz速率傳輸圖像,通過(guò)上位機(jī)中的OpenCV庫(kù)進(jìn)行視頻流分析,并使用內(nèi)核為Sx5的模糊濾波器對(duì)圖像進(jìn)行平滑處理,實(shí)現(xiàn)降噪功能,從而減少因高頻噪聲引起的誤報(bào)檢測(cè)次數(shù)。同時(shí),使用直方圖均衡化改善圖像對(duì)比度。ROS系統(tǒng)調(diào)用OpenCV庫(kù)中的Haar分類器[15-17]對(duì)目標(biāo)進(jìn)行識(shí)別,并通過(guò)卡爾曼濾波器選擇跟蹤識(shí)別目標(biāo)。目標(biāo)識(shí)別追蹤流程見(jiàn)圖3。
Haar分類器是一種監(jiān)督分類器,其通過(guò)圖像的不同級(jí)別級(jí)聯(lián)使用H aar-like特征進(jìn)行檢測(cè),以確定是否存在預(yù)先訓(xùn)練的指定目標(biāo)物體圖片。此外,Haar分類器還使用積分圖(Intergral Image)對(duì)Haar-like特征求值進(jìn)行加速,采用AdaBoost算法訓(xùn)練區(qū)分具有特定特征的強(qiáng)分類器,并使用篩選式級(jí)聯(lián)方式將強(qiáng)分類器級(jí)聯(lián)結(jié)到一起,以提高準(zhǔn)確率。
2.2 目標(biāo)追蹤模型構(gòu)建
卡爾曼濾波[8-20j( Kalman Filter)是一種高效率的遞歸濾波器(自回歸濾波器),其能夠從一系列不完全及包含噪聲的測(cè)量中,估計(jì)動(dòng)態(tài)系統(tǒng)狀態(tài)。為了增強(qiáng)算法對(duì)抗遺漏檢測(cè)的穩(wěn)健性,以及在離散時(shí)間內(nèi)的類似場(chǎng)景都能識(shí)別出訓(xùn)練過(guò)的目標(biāo)對(duì)象,在目標(biāo)追蹤分類器上考慮使用卡爾曼濾波器。隨著離散時(shí)間的增加,線性算子則會(huì)作用在當(dāng)前狀態(tài)上,產(chǎn)生一個(gè)新的狀態(tài),同時(shí)會(huì)帶入一些噪聲,并且系統(tǒng)一些已知控制器的控制信息也會(huì)被加入。
本文控制算法基于真實(shí)實(shí)驗(yàn)?zāi)M場(chǎng)景,見(jiàn)圖4。對(duì)于每個(gè)被跟蹤的目標(biāo),飛行器會(huì)在離散時(shí)間內(nèi)對(duì)目標(biāo)建立運(yùn)動(dòng)學(xué)模型。
在卡爾曼濾波處理中有兩個(gè)過(guò)程:當(dāng)檢測(cè)窗口的值小于某個(gè)門限值時(shí)采用卡爾曼濾波器,否則采用修正后的卡爾曼濾波算法。當(dāng)飛行器在識(shí)別過(guò)程中捕獲多個(gè)目標(biāo)時(shí),分類器會(huì)識(shí)別與先前估計(jì)值最接近的目標(biāo)。若正確識(shí)別目標(biāo),則更新卡爾曼濾波估計(jì)值,并用選框標(biāo)記出來(lái)進(jìn)行追蹤,追蹤過(guò)程中會(huì)更新卡爾曼濾波測(cè)量矢量參數(shù);若識(shí)別多目標(biāo)時(shí)出現(xiàn)錯(cuò)誤,則進(jìn)行算法流程迭代,追蹤過(guò)程中更新卡爾曼濾波估計(jì),最終正確識(shí)別目標(biāo)并進(jìn)行檢測(cè)。
2.3 相對(duì)位置控制模型
為了保證飛行器在目標(biāo)追蹤過(guò)程中有良好的自適應(yīng)性和魯棒性,獲得完整的目標(biāo)狀態(tài)信息反饋,需要飛行器在飛行過(guò)程中對(duì)目標(biāo)物體保持恒定距離。將飛行器相對(duì)位置控制轉(zhuǎn)換成具有時(shí)變參考的三維位置控制,可以使用PD位置控制器對(duì)控制回路進(jìn)行補(bǔ)償,則飛行器動(dòng)態(tài)模型如下:
3 算法實(shí)驗(yàn)與分析
為了更好地研究飛行器在實(shí)際目標(biāo)識(shí)別追蹤過(guò)程中的性能,采用基于室內(nèi)和室外兩種不同背景條件的檢測(cè)方法。在室內(nèi)條件下,由于實(shí)驗(yàn)背景的單一性及外部噪聲較少,飛行器在目標(biāo)識(shí)別與追蹤過(guò)程中可以實(shí)現(xiàn)快速響應(yīng),因此室內(nèi)試驗(yàn)條件可用于測(cè)試計(jì)算機(jī)視覺(jué)算法融合結(jié)果。在室外實(shí)驗(yàn)條件下,飛行器受光照、風(fēng)力、背景等噪聲干擾較大,對(duì)其目標(biāo)識(shí)別與追蹤性能造成一定干擾,則可以測(cè)試動(dòng)態(tài)視覺(jué)相對(duì)位置估計(jì)誤差。
3.1 計(jì)算機(jī)視覺(jué)算法融合結(jié)果分析
針對(duì)計(jì)算機(jī)視覺(jué)算法融合結(jié)果的分析,是指在卡爾曼濾波控制飛行器位姿基礎(chǔ)上,融合Haar級(jí)聯(lián)分類器對(duì)目標(biāo)的視覺(jué)算法結(jié)果進(jìn)行分析。Haar級(jí)聯(lián)分類器可以預(yù)先訓(xùn)練目標(biāo)識(shí)別權(quán)重,卡爾曼濾波則有助于過(guò)濾識(shí)別的錯(cuò)誤目標(biāo),從而提高系統(tǒng)運(yùn)算速度,并使其具有較好的魯棒性。實(shí)驗(yàn)數(shù)據(jù)見(jiàn)圖5。
3.2 計(jì)算機(jī)視覺(jué)估計(jì)誤差結(jié)果分析
視覺(jué)估計(jì)誤差結(jié)果見(jiàn)圖6。從圖中可以看出,在離散時(shí)間內(nèi),飛行器基于自身姿態(tài)相對(duì)位置估計(jì)誤差值比較穩(wěn)定。對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行處理后可以得出,在x、y、z3個(gè)方向上,相對(duì)位置估計(jì)均方根誤差的實(shí)驗(yàn)結(jié)果分別為0.124 5m、0.243 7m和0.176 8m。
本文提出的飛行器目標(biāo)識(shí)別追蹤算法在實(shí)驗(yàn)中表現(xiàn)出良好性能,不論是在室內(nèi)還是室外環(huán)境中,飛行器都能較好地應(yīng)對(duì)外界噪聲,證實(shí)了系統(tǒng)的有效性、自適應(yīng)性與魯棒性。
同時(shí),本次實(shí)驗(yàn)也存在一些不足。首先本實(shí)驗(yàn)基于計(jì)算機(jī)視覺(jué)技術(shù)識(shí)別目標(biāo)物體,對(duì)特征不明顯或未經(jīng)過(guò)訓(xùn)練的目標(biāo)會(huì)出現(xiàn)識(shí)別錯(cuò)誤等情況;其次是在飛行器追蹤功能中,采用相對(duì)位置控制以保證飛行器始終能獲取目標(biāo)特征,但對(duì)于偏航造成的目標(biāo)特征丟失過(guò)程缺乏魯棒性;受實(shí)驗(yàn)條件限制,本實(shí)驗(yàn)飛行器追蹤速度恒定,不適用于追蹤移動(dòng)速度較快的目標(biāo)。
4 結(jié)語(yǔ)
本文基于一種能夠搭載ROS系統(tǒng)的飛行器實(shí)現(xiàn)目標(biāo)識(shí)別與追蹤功能。硬件設(shè)備使用AR.Drone與一臺(tái)裝配了ROS機(jī)器人系統(tǒng)的上位機(jī),通過(guò)上位機(jī)節(jié)點(diǎn)通信功能實(shí)現(xiàn)對(duì)飛行器的控制以及物體識(shí)別與追蹤。在計(jì)算機(jī)視覺(jué)算法中,目標(biāo)識(shí)別可通過(guò)Haar級(jí)聯(lián)分類器加以實(shí)現(xiàn),同時(shí)調(diào)用卡爾曼濾波追蹤被標(biāo)記的目標(biāo)。在飛行器追蹤過(guò)程中,通過(guò)PD控制模型使飛行器在離散時(shí)間內(nèi)完成與目標(biāo)物體的相對(duì)位置調(diào)節(jié),最終完成狀態(tài)反饋。未來(lái)希望能夠在本實(shí)驗(yàn)數(shù)據(jù)基礎(chǔ)上,通過(guò)融合機(jī)器人及計(jì)算機(jī)視覺(jué)領(lǐng)域相關(guān)技術(shù),進(jìn)一步改善人機(jī)交互過(guò)程,使智能機(jī)器人能夠更好地服務(wù)于人們的生產(chǎn)和生活。
參考文獻(xiàn):
[1] CHEN C H.Handhook of pattern recognition and computer vision[Ml. USA: World Scientific. 2015.
[2]DONALD G,STUART G,NEIL H, et al.Visual tunng test for com-puter vision systems[Jl. PNAS March, 2015, 112( 12): 3618-3623.
[3]SURAJ S,RAVI K S,KONDA R M, et al.A taxonomy of deep convo-lutional neural nets for computer vision[J].Front.Robot.AI. 2016,2(36):1-13.
[4]STANISLAV E,DMITRY M,ALEKSANDR I,et al.Multilayer cogni-tive architecture for UAV control [J]. Cognitive Systems Research,2016, 39: 58-72.
[5]曹美會(huì),鮮斌,張旭,等.基于視覺(jué)的四旋翼無(wú)人機(jī)自主定位與控制系統(tǒng)[J].信息與控制,2015,44(2):190-196.
[6] 劉錦濤,吳文海,李靜,等.四旋翼無(wú)人機(jī)風(fēng)場(chǎng)擾動(dòng)軌跡控制器設(shè)計(jì)[J].飛行力學(xué),2016, 34(2):47-54.
[7]郁一帆,王磊.無(wú)人機(jī)技術(shù)發(fā)展新動(dòng)態(tài)[J].飛航導(dǎo)彈,2019(2):34-42.
[8]LAV G,RAJ J,GABOR V.Survey of important issues in UAV com-munication net,vorks[J].IEEE Communications Survevs& Tutorials,2016, 18(2):1123-1152.
[9]DAWEI D,YUANKAI Q, HONCYANC Y. et al.The unmanned aeri-al vehicle benchmark: object detection and tracking[C].The Europe-an Conference on Computer Vision( ECCV), 2018: 370-386.
[10]CUSTAV H, COUTAM B, MARTIN D.Combining visual trackingand person detection for long term tracking on a UAV [Jl. Interna-tional Symposium on Visual Computing, 2016, 10072: 557-568.
[11]L1 J,YE D H. CHUNG T,et al.Multi-target detection and trackingfrom a single camera in unmanned aerial vehicles( UAVs)[ C]. 2016IEEE/RSJ International Conference on Intelligent Robots and Sys-tems (IROS). IEEE, 2016
[12] 張音哲,劉貴喜,李斯,等.無(wú)人機(jī)多機(jī)動(dòng)目標(biāo)自主探測(cè)與跟蹤[J].控制理論與應(yīng)用,2015,32( 11):1561-1566.
[13]朱曉鋼,楊兵,許華杰.支持無(wú)線傳感器網(wǎng)絡(luò)多目標(biāo)跟蹤的最鄰近數(shù)據(jù)關(guān)聯(lián)算法研究[J].計(jì)算機(jī)科學(xué),2011, 38(5):67-70.
[14]ANIS K.Robot Operating System (ROS)[ M]. Saudi Arabia: Spring-er, Cham.2016.
[15] 閆河,王鵬,楊曉龍,等.一種新的AdaBoost人臉檢測(cè)方法[Jl.重慶理工大學(xué)學(xué)報(bào):自然科學(xué),2019, 33(2):106-110, 161.
[16] 張雪芹,方婷,李志前.基于類Haar特征和AdaBoost的車輛識(shí)別技術(shù)[J].華東理工大學(xué)學(xué)報(bào),2016,42(2):260-265.
[17]張丹丹,李雷.基于PCANet-RF的人臉檢測(cè)系統(tǒng)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2016, 26(2):31-34.
[18]崔培林,周翟和,呂品,等.自適應(yīng)誤差四元數(shù)無(wú)跡卡爾曼濾波四旋翼飛行器姿態(tài)解算方法[J].西安交通大學(xué)學(xué)報(bào),2019, 53(3):97-102. IlO.
[19]CARCIA R V, NICHOLAS D F O M. KUGA H K, et al.UnscentedKalman filter for spacecraft atitude estimation using modified Ro-drigues parameters and real data [Jl. Computational and AppliedMathematics. 2016.35(3): 835-846.
[20]喬少杰,韓楠,朱新文,等.基于卡爾曼濾波的動(dòng)態(tài)軌跡預(yù)測(cè)算法[J].電子學(xué)報(bào),2018, 46(2):418-423.
[21]YONGPINC P,HAOYONG Y, TAIREN S. Global asymptotic stabi-lization using adaptive fuzzy PD control[ J].
IEEE, 2015, 45(3):574-582.
[22]TOLGAY K. ALI H M. Adaptive PD-SMC for nonlinear robotic ma-nipulator tracking control [Jl. Studies in Informatics and Control,2017. 26(1):49-58.
(責(zé)任編輯:黃健)
基金項(xiàng)目:國(guó)家自然科學(xué)基金項(xiàng)目( 61573246)
作者簡(jiǎn)介:李杰(1994-),男,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院碩士研究生,研究方向?yàn)闄C(jī)器人控制、圖像處理;劉子龍(1972-),男,上海理工大學(xué)光電信息與計(jì)算機(jī)工程學(xué)院副教授、碩士生導(dǎo)師,研究方向?yàn)榍度胧较到y(tǒng)、控制科學(xué)與控制理論、機(jī)器人控制。