王毅
摘 要:為保證無人機(jī)在視覺傳感器的輔助下進(jìn)行自主著陸的著陸精度、實時性和安全性,需要具備一套跟蹤速度快、穩(wěn)定性高的圖像處理跟蹤算法。本文首先介紹在檢測識別到目標(biāo)后,在目標(biāo)所在區(qū)域網(wǎng)格撒點,初始化若干個跟蹤特征點;之后,采用L-K光流法跟蹤初始化后的像素點,并采用前后誤差法,篩選去除跟蹤效果差的點;然后,為保證跟蹤目標(biāo)的完整性,采用模板匹配,比較前后兩幀跟蹤的目標(biāo)的相似性,以此結(jié)果判斷是否需要重新檢測識別;最后,以拍攝的視頻資料為素材進(jìn)行算法實時性和跟蹤穩(wěn)定性的驗證。實驗結(jié)果表明設(shè)計的目標(biāo)跟蹤算法可以快速穩(wěn)定的跟蹤目標(biāo),滿足無人機(jī)進(jìn)行自主著陸的要求。
關(guān)鍵詞:無人機(jī) 實時性 穩(wěn)定性 目標(biāo)跟蹤 L-K光流法 前后誤差法
中圖分類號:TP13 文獻(xiàn)標(biāo)識碼:A 文章編號:1674-098X(2017)08(a)-0009-04
Abstract:In order to ensure the landing accuracy, real-time and safety of autonomous landing of unmanned aerial vehicle (UAV) with visual aids, a fast tracking algorithm with high stability is needed. In this paper, firstly, after the detection and recognition of the target, the grid scattering points in the target area are initialized, and 100 tracking feature points are initialized. After, the L-K optical flow method is used to track the initialized feature points, and the Forward-Backward Error Automatic Detection is used to filter out the points with poor tracking effect. In order to ensure the integrity of the tracking target, template matching is used to compare the similarity of the targets before and after the two frames tracking, and the result is used to determine whether the target needs to be re-detected and re-recognized. The experimental results show that the designed target tracking algorithm can track the target quickly and stably, and meet the requirement of UAV landing autonomously.
Key Words:Unmanned aerial vehicle; Real-time; Stability; Target tracking; L-K optical flow method; Forward-Backward Error Automatic Detection
隨著軍事航空和日常生化智能化的快速發(fā)展,無人機(jī)(Unmanned Aerial Vehicle,UAV)自主飛行能力越來越受到關(guān)注。而自動著陸是無人機(jī)進(jìn)行自主飛行中最危險也是要求最高的過程[1]。現(xiàn)有的且無人機(jī)常用的著陸導(dǎo)航方式有全球定位系統(tǒng)(Global Positioning System,GPS)導(dǎo)航和慣性導(dǎo)航(Inertial Navigation System,INS)。但I(xiàn)NS導(dǎo)航系統(tǒng)是通過積分迭代運算得到的無人機(jī)位置和速度信息,隨著時間的推移會不斷地累計誤差;GPS導(dǎo)航雖然精度高、使用簡單,但易受電子干擾,極易丟失信號[2-3]。近年來,視覺導(dǎo)航的提出與快速應(yīng)用為這一難題的解決提供了新的思路。
視覺導(dǎo)航是基于視覺傳感器,通過設(shè)計圖像處理算法進(jìn)行無人機(jī)導(dǎo)航信息的解算[4]。其具備體積小、易裝備、功耗低、抗干擾性能較好、精度較高、成本低等優(yōu)點[5-6],越來越受到國際學(xué)者的青睞。而基于視覺圖像處理進(jìn)行導(dǎo)航的流程大部分是:首先進(jìn)行目標(biāo)檢測與識別;之后為了保證相對位姿等導(dǎo)航信息能夠?qū)崟r提供,進(jìn)行目標(biāo)的實時跟蹤;最后進(jìn)行位姿等信息的解算。其中目標(biāo)的跟蹤算法既要保證跟蹤算法的實時性,還要保證跟蹤目標(biāo)的穩(wěn)定性,避免影響最后的導(dǎo)航信息的解算。所以視覺傳感器能否很好的跟蹤到目標(biāo)是無人機(jī)完成自主著陸的一個必要環(huán)節(jié)[7]。
本文首先在檢測識別到的目標(biāo)區(qū)域進(jìn)行網(wǎng)格撒點,初始化若干個跟蹤特征點;之后,基于L-K光流跟蹤算法的基礎(chǔ)上,采用前后誤差法,進(jìn)行跟蹤特征點篩選,當(dāng)跟蹤特征點個數(shù)小于初始化跟蹤特征點數(shù)目的一半時,從新網(wǎng)格撒點,進(jìn)行跟蹤特征點初始化;最后,用最小矩形框包圍所有跟蹤特征點,所包圍的區(qū)域為跟蹤到的目標(biāo),以跟蹤到的目標(biāo)圖像與上一幀的目標(biāo)圖像進(jìn)行相似性檢測,判斷是否跟蹤失敗,如果失敗則從新檢測識別,若成功,則繼續(xù)跟蹤算法。
1 目標(biāo)跟蹤算法流程
本文設(shè)計的目標(biāo)跟蹤算法流程如圖1所示。
(1)對檢測識別到的目標(biāo)進(jìn)行跟蹤特征點初始化(100個特征點)。
(2)下一幀圖像開始用前后誤差光流跟蹤法進(jìn)行跟蹤,去除跟蹤效果較差的特征點。
(3)通過跟蹤到的特征點,用矩形框逼近,得到跟蹤后的目標(biāo)圖像。endprint
(4)將跟蹤后的目標(biāo)圖像與跟蹤前的目標(biāo)圖像進(jìn)行歸一化相似性檢測。
(5)若相似性大于0.9,則認(rèn)為跟蹤正確,進(jìn)入(6)否則重新檢測識別目標(biāo),然后進(jìn)行跟蹤特征但初始化。
(6)判斷跟蹤特征點數(shù)目,若數(shù)目大于50,則進(jìn)入step 7;否則重新跟蹤特征點初始化。
(7)對跟蹤后的目標(biāo)進(jìn)行處理,進(jìn)行相對位姿即導(dǎo)航信息解算。
1.1 跟蹤特征點初始化
為了保證能夠?qū)崟r的跟蹤檢測識別到目標(biāo),本文采用L-K光流法作為目標(biāo)跟蹤算法的核心。而L-K光流跟蹤是對特征像素點進(jìn)行跟蹤。故須合理的利用特征點來表示目標(biāo)圖像,通過跟蹤特征點來達(dá)到跟蹤目標(biāo)圖像的目的,并且在跟蹤完畢后通過跟蹤后的特征點能夠重新找到目標(biāo)在整幅圖像中的位置。
本文采用網(wǎng)格撒點的方式,將檢測識別到的目標(biāo)均分成若干個區(qū)域,每個小區(qū)域的中心作為跟蹤特征點,以此完成跟蹤特征點初始化。假設(shè)圖2(a)所示為檢測識別后的目標(biāo)圖像,初始化的跟蹤特征點如圖2(b)所示。
1.2 前后誤差光流跟蹤
點的跟蹤是計算機(jī)視覺的通常的任務(wù):給定時刻某個點的位置,目標(biāo)就是估算出t+1時刻點的位置。L-K光流跟蹤實現(xiàn)的就是這個目的。本文不采用L-K光流跟蹤中檢測易跟蹤角點部分的算法,只采用跟蹤部分的算法。輸入的角點通過1.1節(jié)的算法來提供。但點的跟蹤通常面臨跟蹤到錯誤的點或跟蹤的點在下一時刻已消失[8]。故采用英國Surrey大學(xué)的學(xué)生Zdenek Kalal提出的前后誤差法進(jìn)行算法設(shè)計。
前后誤差法是基于所謂的前后相容性的假設(shè):正確的跟蹤應(yīng)該不依賴實時流的方向[8]。故若采用的跟蹤器為L-K光流跟蹤,可以如此利用該假設(shè):(1)跟蹤器從t時刻到t+1時刻跟蹤的點可以生成一條跟蹤軌跡;(2)跟蹤器從t+1時刻到t時刻跟蹤相同的點也可以生成一條跟蹤軌跡;(3)兩條軌跡進(jìn)行比較,如果兩條軌跡不同,則認(rèn)為前向跟蹤的點是錯誤的。如圖3所示,圖中點①跟蹤正確,點②明顯跟蹤錯誤。
前后誤差光流跟蹤的軌跡示意圖如圖4所示。設(shè)是一個圖像序列,是t時刻一個點的位置。使用L-K光流跟蹤器,對向前跟蹤k幀,生成的軌跡為。其中f代表向前,k代表幀數(shù)。之后,向后跟蹤,即從向前跟蹤到時刻,生成的軌跡為。其中b代表向后。前后誤差被定義為這兩條軌跡的相似性。前后誤差為:||||,即點與之間的歐式距離。通過設(shè)置閾值,來判斷該點是否跟蹤正確。本文通過反復(fù)試驗,設(shè)置為前后誤差大于5個像素,則認(rèn)為跟蹤錯誤。
1.3 相鄰目標(biāo)圖像相似性檢測
在采用前后誤差光流跟蹤算法后,初始化后的跟蹤特征點中,會被去除掉一部分跟蹤效果不好的點。此時,用矩形逼近找出當(dāng)前幀目標(biāo)圖像可能因為跟蹤特征點去除太多而使得目標(biāo)圖像缺失一部分,會影響到最后的導(dǎo)航信息的解算。故為了保證跟蹤的穩(wěn)定性,需通過一定的手段來判斷當(dāng)前跟蹤到的目標(biāo)是否為完整的所需要的目標(biāo)。
本文采用模板匹配的方式,運用歸一化相關(guān)匹配法,來計算當(dāng)前跟蹤到目標(biāo)與上一幀的目標(biāo)的相似性。流程如下:(1)將當(dāng)前幀跟蹤到目標(biāo)圖像進(jìn)行尺度變換,使得當(dāng)前目標(biāo)圖像尺寸和上一幀目標(biāo)圖像尺寸相同;(2)采用歸一化相關(guān)匹配法,對當(dāng)前目標(biāo)與上一幀目標(biāo)圖像進(jìn)行模板匹配;(3)若得到的相關(guān)系數(shù)大于0.9,則認(rèn)為跟蹤到的目標(biāo)圖像是正確的目標(biāo),否則從新進(jìn)行檢測識別,找到正確的目標(biāo)圖像。歸一化相關(guān)匹配法的原理公式如下:
(1)
其中,R的值域為[0,1],0表示完全不相似,1表示完全相似。為模板圖像在處的灰度值,為目標(biāo)圖像在處的灰度值。
2 實驗結(jié)果
算法在Inter(R)Core(TM) i5-6200 CPU with HD Graphics 2.40GHz處理器、4.00GB內(nèi)存的PC機(jī)上運行。素材視頻分辨率為1280×720,幀率為29幀/s。與近年來提出的實時目標(biāo)跟蹤算法——壓縮感知跟蹤算法,進(jìn)行對比分析,對比結(jié)果如表1所示。每幀運行時間如圖5所示,運行結(jié)果目標(biāo)圖像如圖6所示。
表1,圖5給出了本文設(shè)計的目標(biāo)跟蹤算法與壓縮感知跟蹤算法的運行周期:壓縮感知跟蹤的運行周期為76.66ms(約13幀/s);本文設(shè)計的目標(biāo)跟蹤算法運行周期為29.87ms(約33幀/s)。由此可知,本文設(shè)計的目標(biāo)跟蹤算法實時性較強,滿足視覺輔助無人機(jī)自主著陸的需求。
圖6則給出了壓縮感知跟蹤算法和本文設(shè)計的目標(biāo)跟蹤算法運行結(jié)果的一部分。有圖可知,本文設(shè)計的算法相對于壓縮感知跟蹤算法,更加穩(wěn)定和精確。
3 結(jié)語
本文針對視覺輔助無人機(jī)自主著陸對目標(biāo)跟蹤算法的實時性、穩(wěn)定性的要求,以L-K光流跟蹤為核心,結(jié)合前后誤差法和歸一化相關(guān)性模板匹配算法,設(shè)計了一套符合要求的目標(biāo)跟蹤視覺處理算法。L-K光流跟蹤器保證算法的實時性,前后誤差法和歸一化相關(guān)性模板匹配則保證了跟蹤的穩(wěn)定性。經(jīng)驗證,該算法滿足視覺輔助無人機(jī)進(jìn)行自主著陸對目標(biāo)跟蹤的實時性和穩(wěn)定性的要求。
參考文獻(xiàn)
[1] 吳賽飛,王新華,賈森,等.基于紅外視覺的固定翼無人機(jī)自動著陸引導(dǎo)系統(tǒng)[J].電子測量技術(shù),2016(3):131-135.
[2] KONG W W,ZHANG D B,WANG X. Autonomus landing of an UAV with a ground-based actuated infrared stereo vision system[A].IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS)[C].IEEE,2013:2963-2970.
[3] 吳顯亮,石宗因,鐘宜生.無人機(jī)視覺導(dǎo)航研究綜述[J].系統(tǒng)仿真學(xué)報,2010,22(1):62-65.
[4] 丁萌,曹云峰.利用計算機(jī)視覺獲取無人機(jī)飛行姿態(tài)角[J].傳感器與微系統(tǒng),2007,26(11):65-68.
[5] RICHARD W M,GREGORY A,DEBITETTO P A,et al.Vision-aided Navigation for small uavs in gpschallenged environments[J].The Draper Technology Digest,2007.
[6] KONG W,ZHOU D,ZHANG Y,et al.A ground-based optical system for autonomous landing of a fixed wing UAV[A].IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS)[C].IEEE,2014:4797-4804.
[7] 鄧紅德,王麗君,金波.一種無人機(jī)自主著陸視覺跟蹤方法[J].計算機(jī)測量與控制,2009(7):1387-1389.
[8] Kalal Z, Mikolajczyk K, Matas J. Forward-Backward Error: Automatic Detection of Tracking Failures[A].In: Pattern Recognition(ICPR),2010 20th International Conference on[C].Istanbul,Turkey:IEEE, 2010:23-26.endprint