馮消冰, 鄭軍
(清華大學(xué) 機械工程系, 北京 100084)
無人機不需要載人操作,只需要相關(guān)人員利用遙控器對其進(jìn)行控制,這一定程度上限制了無人機在各行業(yè)中的發(fā)展。無人機導(dǎo)航主要指通過搭建相機傳感器,利用相機獲得視覺信息并據(jù)此調(diào)整無人機姿態(tài)與坐標(biāo)。為提高無人機運行穩(wěn)定性,必須對其進(jìn)行定位,以此實現(xiàn)信號穩(wěn)定跟蹤。
有學(xué)者利用增強現(xiàn)實技術(shù)的姿態(tài)標(biāo)記與顏色空間域標(biāo)記算法和機載光電測量實現(xiàn)無人機跟蹤,在跟蹤過程中結(jié)合目標(biāo)點、像點與相機光心3點的集合關(guān)系構(gòu)建無人機定位數(shù)學(xué)模型,對比2種方法位姿估計與跟蹤效果,并在不同跟蹤距離下對無人機檢出率進(jìn)行對比[1-2]。還有部分學(xué)者使用強化學(xué)習(xí)算法和自適應(yīng)容錯控制算法實現(xiàn)無人機定位[3-4]。
上述研究豐富了無人機自主定位跟蹤理論,但是當(dāng)被跟蹤個體處于復(fù)雜背景下時,難以對其信號進(jìn)行穩(wěn)定跟蹤。為此本文通過圖像傳感器、CCD攝像機等設(shè)備將模擬信號轉(zhuǎn)換為數(shù)字信號,處理為更適合人眼觀察的圖像,并利用改進(jìn)圖像特征塊匹配法計算模塊間相似度,在復(fù)雜環(huán)境下實時對目標(biāo)進(jìn)行檢測與識別,獲取目標(biāo)運動軌跡、方向等信息,以此實現(xiàn)無人機導(dǎo)航信號穩(wěn)定跟蹤,有助于控制飛行穩(wěn)定性。
無人機導(dǎo)航信號穩(wěn)定跟蹤的前提是需要對其進(jìn)行識別,本文無人機導(dǎo)航信號識別過程中,主要通過圖像采集裝置完成序列圖像采集,考慮到無人機在運動過程中背景會發(fā)生變化,特征點匹配方式實現(xiàn)全局補償,在此基礎(chǔ)上完成信號識別。
序列圖像表示在持續(xù)時間上對單幀圖像進(jìn)行等間隔采集,能夠描述幀和幀之間的信息相關(guān)性,是目標(biāo)跟蹤等任務(wù)主要處理目標(biāo)。一般情況下,考慮人眼連續(xù)運動特性,將圖像采集速度設(shè)置為25幀/s,以此滿足實時性要求。
在圖像采集裝置中,電荷耦合組件(charge coupled device,CCD)屬于一種由多個電容構(gòu)成的集成電路,可將圖像光學(xué)信號轉(zhuǎn)變?yōu)橛嬎銠C可以識別的數(shù)字信號。CCD攝像機是根據(jù)感光原理制作的光電轉(zhuǎn)換設(shè)備,是一種將三維坐標(biāo)映射到二維世界的工具。與紅外成像相比,其分辨率更高,對于目標(biāo)識別、跟蹤精度更具優(yōu)勢。此外,CCD攝像機必須利用圖像采集卡等中介裝置,將模擬信號變換為數(shù)字信號,以此實現(xiàn)序列圖像采集。
無人機在運動過程中,圖像傳感器也隨之運動,采集的圖像中不只存在目標(biāo)的運動,背景也會產(chǎn)生相對運動。此種條件下,無人機導(dǎo)航信號的檢測精度有所降低,為改善此類現(xiàn)象必須對運動中的背景進(jìn)行補償,確保其處于靜止?fàn)顟B(tài)[5]。本文利用特征點匹配方式實現(xiàn)全局補償。
1.2.1 特征點匹配
1)特征點提取。
識別目標(biāo)從三維空間轉(zhuǎn)換至二維圖像的過程中包括信息量豐富的輪廓、紋理、點特征等視覺特征。與其他特征相比,點特征較為簡單且數(shù)量較大,具有較強的抗噪性能。因此本文通過對點特征的提取與處理,實現(xiàn)全局運動參數(shù)估計。
角點是圖像關(guān)鍵的局部特性,也是較為典型的特征點,對于角點目前沒有具體定義,可將其理解為圖像中某方面屬性特征比較突出的點。利用角點特征估計運動參數(shù),在保證圖像質(zhì)量的基礎(chǔ)上,減少數(shù)據(jù)處理量,提高運算速度。本文利用Harris算法進(jìn)行角點提取。具體步驟如下:
①分別獲取圖像像素點在x′與y′方向上的梯度值,建立梯度矩陣M:
(1)
②通過Gauss平滑窗口對圖像進(jìn)行去噪處理[6],獲取新的梯度矩陣M′,則均值為0的窗口函數(shù)表達(dá)式為:
(2)
式中σ表示不為零的平滑窗口常數(shù)系數(shù)。
③獲取圖像中全部像素點的響應(yīng)函數(shù)值R′:
(3)
式中k表示權(quán)重系數(shù)。
④確定局部極值點,獲得圖像角點[7]。
2)特征點匹配。
為獲取特征點運動向量,必須從采集到的2幀圖像內(nèi)挑選出相互匹配的特征點對。為滿足匹配精度要求,本文對匹配準(zhǔn)則與策略進(jìn)行分析。
分別將t與t-1時間點圖像內(nèi)角點作為候選匹配點和目標(biāo)匹配點。在匹配過程中,由于單個角點信息量較少,影響匹配效果,因此選取匹配點的某個小鄰域信息替換匹配點信息,匹配準(zhǔn)則與策略分別如下。
匹配準(zhǔn)則:特征點匹配的關(guān)鍵在于對比候選匹配點和目標(biāo)匹配點之間的相似性程度,因此要完成特征點匹配必須建立相似度度量匹配準(zhǔn)則。本文將最小絕對誤差作為其匹配準(zhǔn)則,定義式表示為:
[I(x′+u,y′+v,t+1)]T
(4)
(5)
在確立匹配準(zhǔn)則后,利用自適應(yīng)十字搜索算法獲得估計量的最優(yōu)值。十字模式的形狀是對稱的,在4個方向上均存在搜索點,如圖1所示。
圖1 自適應(yīng)十字搜索算法Fig.1 Adaptive cross search algorithm
圖1所示的自適應(yīng)十字搜索算法主要分析鄰近特征塊運動向量的關(guān)聯(lián)程度,經(jīng)過對運動向量估計確定搜索區(qū)間。假設(shè)將當(dāng)前特征塊相關(guān)程度較大的上、左上、右上以及左上4個特征塊作為參考相鄰塊,在初級搜索中確定對稱的十字模型,在此模型中除4個頂點外,添加預(yù)測運動向量。當(dāng)這些向量在處于垂直或水平方向時,預(yù)測向量會與十字模型中4個運動向量重疊。因此令十字模型與預(yù)測運動向量長度相同,則長度計算公式為:
(6)
d=max[|VP(x′),VP(y)|]
(7)
利用式(7)即可實現(xiàn)特征點匹配,且可以減少中心搜索程序,提高匹配效率。
1.2.2 背景補償
經(jīng)過上述處理后,獲得一系列匹配成功的特征點,利用這些特征點實現(xiàn)當(dāng)前幀背景運動的全局補償。
如果Tt-1與Tt時間點圖像中某特征點坐標(biāo)分別表示為(X,Y)與(X′,Y′)。特征點運動通過旋轉(zhuǎn)與平移進(jìn)行表示,則2個特征點的變換關(guān)系表示為:
(8)
利用迭代加權(quán)最小二乘估計回歸系數(shù),確定各點權(quán)重大小,則參數(shù)a的估計式為:
(9)
式中:ρ(θ)(θ-ri,a/σ)屬于單調(diào)非減函數(shù);ri,a表示樣本預(yù)測誤差;σi表示ri,a的標(biāo)準(zhǔn)方差。對式(9)進(jìn)行求導(dǎo)得到:
(10)
式中:ψ(ri,a/σi)表示ρ(ri,a/σi)的導(dǎo)數(shù),假設(shè)ω(ri,a/σi)=ψ(ri,a/σi),則ω(ri,a/σi)表示權(quán)重函數(shù),因此有:
(11)
利用獲得的特征點權(quán)重ω計算出新的估計值a,經(jīng)過多次迭代后獲得最后的運動參數(shù)估計值。
(12)
式中:X0表示x+u的整數(shù)部分;μX表示X+u的小數(shù)部分。
本文選取向后映射方式實現(xiàn)全局補償,表達(dá)式為:
I(X,Y,t+1)=I(X0,Y0,t)+[I(X0+1,Y0,t)-
I(X0,Y0,t)]X+[I(X0,Y0+1,t)-
I(X0,Y0,t)]Y+[I(X0+1,Y0+1,t)-
I(X0,Y0,t)-I(X0+1,y0,t)-
I(X0,Y0+1,t)]
(13)
在實現(xiàn)運動背景補償后,利用三幀法對無人機導(dǎo)航信號進(jìn)行識別[8]。具體步驟如下:
1)獲取前5幀圖像光流累計值,以此儲存背景光流信息。假設(shè)A5表示累計矩陣,和視頻圖像序列大小相同,且設(shè)定原始值為0,則計算公式為:
k=1,2,3,4,5
(14)
2)獲取后3幀圖像光流累計值,以此識別無人機導(dǎo)航信號,假設(shè)A3為累計矩陣,公式為:
k=8,9,10
(15)
3)對比步驟1獲取的前5幀圖像和后3圖像的光流重合部分,則其他部分即為無人機真實運動部分,以此判斷出像素B(i,j)是否為無人機導(dǎo)航信號:
(16)
此算法中沒有參與運算的兩幀圖像的作用是隔離背景與運動目標(biāo)。根據(jù)上述方法有效區(qū)分背景與目標(biāo),即可實現(xiàn)無人機導(dǎo)航信號識別,為后續(xù)穩(wěn)定跟蹤無人機導(dǎo)航信號奠定基礎(chǔ)。
無人機導(dǎo)航信號經(jīng)過圖像處理、特征提取等過程實現(xiàn)自動識別,完成對其跟蹤的準(zhǔn)備工作。本文利用改進(jìn)的圖像模塊匹配方法實現(xiàn)無人機導(dǎo)航信號跟蹤。模塊跟蹤屬于跟蹤尺寸變化的方式,此方法目的是結(jié)合當(dāng)前幀儲存某幅圖像的模塊確定運動軌跡。若參數(shù)可以在尺度上自由縮放,跟蹤模塊即可實時跟蹤目標(biāo)。該算法主要分為模塊匹配與模塊更新2個部分。
假定目標(biāo)模塊圖像表示為T(x),在圖像I(x)背景中運動,與模塊相同尺寸的I(x)內(nèi)子圖像為R(x)。如果由T(x)轉(zhuǎn)換為R(x)的幾何變換函數(shù)為W(x;p),變量x=(x,y)代表圖像信號中不同像素坐標(biāo),p(p1,p2,…,pn)為變換值,則:
(17)
綜上所述,圖像匹配問題能夠表示為計算一組例如位移、旋轉(zhuǎn)等的幾何變量,使目標(biāo)模塊和子圖像相似度最大化:
(18)
式中:D表示圖像相似度量,該值越大,代表子圖像與目標(biāo)模塊越相似。對式(18)中的變量p進(jìn)行泰勒展開,消除高階項[9],得:
(19)
加入梯度算子Δp,并將式(19)變換為:
(20)
式中H表示n×n的Hessian矩陣:
(21)
復(fù)雜的幾何變換中引入冗余自由度,導(dǎo)致匹配精度降低,為此本文只分析水平與垂直方向的位移變化,因此有:
W(x;p)=W(x+p;Δp)
(22)
則模塊儲存方法的步驟表示為:
1)構(gòu)建主子集X?R;
2)獲取殘差T(x)T-R(W(x;p)T)T;
4)獲取Δp,并得出p←p+Δp;
5)如果p收斂則結(jié)束,反之回到步驟2重新開始。
(23)
(24)
在模塊更新過程中,能夠得到無人機導(dǎo)航信號變化軌跡,但是模塊尺寸大小不發(fā)生改變。因此,當(dāng)尺度不變時能夠穩(wěn)定跟蹤到無人機的導(dǎo)航信號。如果目標(biāo)變小,則主要模塊中包括整個目標(biāo),如果目標(biāo)變大,主要模塊會較好地儲存細(xì)節(jié)特征,有效克服尺度變化帶來的影響。
驗證基于改進(jìn)圖像特征塊匹配的無人機導(dǎo)航信號穩(wěn)定跟蹤方法的有效性。從以下2個方面進(jìn)行實驗準(zhǔn)備:
1)無人機在空中飛行時,保持飛機從西向東飛行,并在飛機上安裝了數(shù)碼相機。航線65%重疊,最大偏角不超過8%,航線彎曲度不超過5%。飛行過程中需要保證所有的航線都沒有陰影和空洞。搜索目標(biāo)與相鄰點之間的最大誤差小于0.2 mm。搜索目標(biāo)排列為4個基線,MAPGIS導(dǎo)航系統(tǒng)連接搜索目標(biāo)平面進(jìn)行圖像采集。對實驗設(shè)備及運行參數(shù)進(jìn)行規(guī)范,具體如表1所示。
表1 實驗參數(shù)設(shè)置Table 1 Experimental parameter setting
2)仿真實驗利用華碩N46VZ攝像頭對無人機導(dǎo)航信號進(jìn)行標(biāo)定與識別跟蹤。軟件環(huán)境是C++與Open CV。硬件運行環(huán)境是Pentium2.8GHz CPU,4 G內(nèi)存的計算機。感光面積設(shè)置為4.5 mm×3.2 mm,像素為820×650。
根據(jù)上述實驗準(zhǔn)備,模擬無人機飛行環(huán)境如圖2所示。
圖2 仿真飛行環(huán)境Fig.2 Simulation of flight environment
在上述實驗條件下,利用本文方法、文獻(xiàn)[1]、文獻(xiàn)[2]方法對無人機信號進(jìn)行檢測,對比不同方法檢出率;同時對無人機導(dǎo)航信號跟蹤,分別比較3種方法跟蹤的距離誤差(如圖3、4所示)。
圖3 不同方法無人機導(dǎo)航信號檢出率對比Fig.3 Comparison of detection rate of UAV navigation signal with different methods
圖4 跟蹤距離誤差測試結(jié)果Fig.4 Tracking distance error test results
由圖3可知,當(dāng)圖像幀數(shù)為5時,3種方法檢出率均在85%以上,但是隨著圖像幀數(shù)的增加,文獻(xiàn)[1]與文獻(xiàn)[2]2種方法的檢出率下降較為明顯,而所提方法檢出率下降趨勢緩慢。這是因為該方法對背景全局運動進(jìn)行補償,確保背景靜態(tài)化,從而提高無人機導(dǎo)航信號識別率。
為進(jìn)一步驗證本文方法的無人機導(dǎo)航信號跟蹤性能,將無人機信號的跟蹤距離誤差作為實驗指標(biāo),對比3種方法的跟蹤性能,具體的實驗結(jié)果如圖4所示。分析圖4可知,利用計算機視覺對無人機導(dǎo)航信號進(jìn)行跟蹤的距離誤差最小。這是因為所提方法通過計算機視覺實現(xiàn)無人機導(dǎo)航信號精準(zhǔn)識別,為穩(wěn)定跟蹤奠定基礎(chǔ),減少跟蹤距離誤差,同時改進(jìn)的模塊匹配跟蹤方法可以減少外形突變導(dǎo)致的跟蹤誤差,進(jìn)一步提高跟蹤精度。
1)仿真實驗表明,該方法可以有效檢測出目標(biāo)信號,同時減少跟蹤距離誤差,獲得準(zhǔn)確的目標(biāo)位置信息。
2)結(jié)合現(xiàn)階段研究成果來看,此次提出的無人機導(dǎo)航信號跟蹤方法可以符合目標(biāo)跟蹤等方面要求。
但是在投入到實際應(yīng)用前,仍有一些工作要進(jìn)一步展開,如考慮天氣因素對無人機目標(biāo)跟蹤精度的影響,相信在研究者不懈努力下,目標(biāo)跟蹤技術(shù)將不斷發(fā)展。