国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于模糊核均值聚類優(yōu)化的光流測速方法

2023-01-03 08:16閆寶龍趙東花劉曉杰吳新冬閆德利王晨光
導航定位與授時 2022年6期
關鍵詞:光流金字塔均值

閆寶龍,趙東花,劉曉杰,吳新冬,閆德利,王晨光,申 沖

(1. 中北大學儀器科學與動態(tài)測試教育部重點實驗室,太原 030051;2. 中北大學儀器與電子學院,太原 030051;3.中北大學信息與通信工程學院,太原 030051)

0 引言

全球定位系統(tǒng)(Global Positioning System,GPS)易受信號干擾[1],慣性導航系統(tǒng)(Inertial Navigation System,INS)不僅成本高,而且單獨工作時誤差易隨時間積累。近年來,隨著成本低、自主性強的視覺導航技術發(fā)展[2-3],光流法可被用于進行物體運動估計與目標跟蹤,是視覺導航的一個重要研究方向。

自B.Horn等[4]在1981年提出光流算法基本原理后,引起國內(nèi)外學者的廣泛關注。光流即昆蟲在飛行時觀察物體,物體在其視網(wǎng)膜上形成一系列變化的圖像信息,這些連續(xù)變化的圖像信息不斷“流過”視網(wǎng)膜(即圖像平面)就形成了光流[5]。光流可以看作是觀察3D運動的2D投影[6-10]。研究人員受此啟發(fā),將光流引入到無人機導航中[11],由于無人機飛行時圖像背景會發(fā)生變化,因此可利用所攜帶相機計算出在圖像坐標系下的運動速度,然后通過圖像中像素點與物體的投影關系,最終解算出無人機在地理坐標系下的速度信息。Amizai等[12]提出了一種金字塔分層光流算法,該方法能夠在大位移形變時抑制光流估計誤差,并相應研發(fā)了具有體積小、功耗低、成本低等優(yōu)點的可應用于無人機的仿生光流導航系統(tǒng)。由于無人機的運動估計是由背景變化引起全局運動與場景中前景變化引起局部運動的組合,若采用光流法進行運動估計時不剔除由前景運動物體帶來的局部運動中的光流干擾值和野值,將會導致光流測速精度降低。文獻[13]為了提高光流測速精度,提出了一種梯度閾值法對噪聲點進行處理,但是閾值大小無法確定,并且需根據(jù)無人機飛行場景變化實時調(diào)整閾值大小,這在實際導航中會帶來不便。文獻[14]針對前景與背景進行分割以消除前景影響,提出了一種模糊分類方法,但該方法對每張圖像進行分割,計算量較大。

本文為了進一步提高載體運動速度的解算精度,提出了一種基于模糊核均值聚類算法優(yōu)化的金字塔Lucas-Kanade光流測速方法(FKCM-金字塔LK)。該方法不僅收斂速度快,而且能處理大數(shù)據(jù)集,因此能夠在大范圍內(nèi)減小由于圖片信息丟失造成的計算不準確,同時還能將光流干擾值以及光流野值剔除,最終提高光流測速精度。

1 光流測速原理

光流法是利用三維空間運動物體的圖像序列中像素在時間域上的變化以及相鄰幀之間的相關性,找到上一幀與當前幀之間存在的對應關系,得到其在二維平面上的運動。如圖1所示,圖像中的每一個點都對應一個空間點,每一個空間點相對于攝像機的速度向量都可以投影為像平面上一個點上的二維速度向量,而每個像素的二維速度向量就構成了運動場。該方法需要3個前提條件:

1)相鄰圖像間時間連續(xù),且物體做微小運動;

2)保持空間一致性;

3)相鄰圖像之間的亮度保持不變。

圖1 運動場與光流場對應關系圖Fig.1 Corresponding diagram of motion field and optical flow field

假設圖像中一點(x,y)在t時刻的亮度為I(x,y),同時,假設該點在垂直方向上的分量表示為μ(x,y),在水平方向上的分量表示為v(x,y),則可以得到

(1)

在經(jīng)過一段時間間隔Δt后,該光流點的亮度為I(x+Δt,y+Δt,t+Δt),當Δt趨近于0時,可以假設該點亮度不變,得到

I(x,y,t)=I(x+Δt,y+Δt,t+Δt)

(2)

當該點亮度發(fā)生變化時,則移動后該點亮度可以用Taylor公式進行展開計算,得到

(3)

當式(3)中的二階無窮小接近于0,且Δt趨近于0時,則有

(4)

式中,ω=(μ,v),令

(5)

Ixμ+Iyv+Izt=0

(6)

由上述計算可知,傳統(tǒng)LK算法需要滿足3個約束條件,而無人機導航過程大幅運動時很難保持所需的3個約束條件,因此易出現(xiàn)計算的特征點誤差大的問題。金字塔LK算法可在此基礎上將圖像分層計算并縮小圖像尺寸,使用小尺寸上的像素點代表更大尺寸圖像上的多個像素點[15]。

金字塔LK算法首先利用低通濾波平滑曲線對圖像進行采樣,生成金字塔圖像,每一層圖像的高度與寬度是下一層的一半;然后從最頂層計算圖像的光流,利用最頂層光流的計算結果估計下一層光流的初始值進行金字塔跟蹤;最后將上層圖像得到的光流矢量疊加作為下一層的初始值進行迭代,最終計算得到的光流值就是所有層光流矢量的疊加(見圖2)。這樣就可以利用相對較小的領域窗口處理更大尺寸圖像上的像素移動[16]。其具體實現(xiàn)過程如下:

圖2 圖像金字塔Fig.2 The image pyramid

設相鄰的兩幀圖像分別為M1和M2,在一個大小為o的窗口鄰域中,假設ε是前后兩幀圖像的光流殘差,則

(7)

光流計算方向與圖像分解方向相反,首先在第n層進行光流估計,計算的結果反饋到n-1層,并作為n-1層的初始值,這樣逐層傳遞,直到第0層為止。則式(7)變成

ε=εn(dμ,dv)

(8)

其中,每層光流估計值通過式(9)傳遞給下一層,并作為下一層的初始值

gn-1=2(gn+dn)

(9)

通常,最頂層的初始值為0,即gn=(0,0)。因此,金字塔LK算法通過對圖像尺寸的縮小,使得小像素點可以涵蓋更多像素點信息,從而更容易實現(xiàn)傳統(tǒng)LK算法的約束條件,最終降低所計算特征點的誤差。

2 基于模糊核均值聚類的金字塔LK光流算法

由于前景運動物體所形成的光流值的大小通常與背景光流相異,從數(shù)據(jù)處理角度應將干擾項剔除。但由于缺少干擾項的速度先驗信息,光流測速中常用于改善精度的隨機抽樣一致(Random Sample Consensus,RANSAC)算法[16]與基于前后向誤差的歸一化互相關匹配值(Normalization Cross Correlation,NCC)算法[17]在有效排除干擾項的能力上還有待提升。利用聚類算法將光流值按照光流數(shù)據(jù)分布的概率峰值進行聚類,可以將背景光流與干擾項進行區(qū)分,從而將干擾項剔除[18]。其中,Mean-Shift聚類算法需要選定聚類初始值,K-means聚類算法需要對初始聚類中心進行選擇。而模糊核均值聚類只需要確定聚類數(shù)以及終止誤差即可進行求解,具有較快的解算速度,因此在本文中將模糊核均值聚類算法與金字塔LK算法相結合。其中,模糊核均值聚類算法是將隸屬度的概念引入到聚類算法中,首先通過優(yōu)化目標函數(shù),以獲得每個樣本中的數(shù)據(jù)對于所有聚類中心的隸屬度,判斷樣本數(shù)據(jù)的歸屬以便對數(shù)據(jù)進行自動分類[19]。然后,計算出光流值以及載體在相機坐標系下的速度,最后經(jīng)過坐標系轉(zhuǎn)換,就可以得到地理坐標系下的速度。

本文提出的基于模糊核均值聚類金字塔LK光流算法的具體過程如下:

1)通過模糊核均值聚類算法將樣本數(shù)據(jù)非線性映射Φ映射到高維特征空間[20],在高維特征空間中得到映射集為Φ(xk)(k=1,2,…,N),由米氏(Mercer)定理可知,輸入空間中樣本空間的內(nèi)積在隱射空間通過K(xi,xj)=[Φ(xi),Φ(xj)]求得。如果樣本的聚類數(shù)為C,第i類的聚類中心為pi,在此i類中第k個樣本的隸屬度為uik∈[0,1],則模糊核聚類算法的目標函數(shù)為

(10)

(11)

d2(xk,pi)=K(xk,xk)-2K(xk,pi)+

K(pi,pi)

(12)

在模糊聚類中引入核函數(shù),是因為通過核運算可以得到新的距離度量,從而產(chǎn)生了同一空間不同距離的聚類[21]。

2)將金字塔LK光流算法利用模糊核均值聚類算法進行分組,選取包含像素速度最多的一組,取其平均值作為最終的光流值。假設像素相鄰區(qū)域空間運動的矢量一致,計算相鄰圖像中對應像素點流向信息,獲取特征點附近小窗口局部信息以及匹配光流矢量。使用超定方程組對式(6)進行求解,得到中心點的運動參數(shù)[22],其方程可表示為

(13)

使用最小二乘法可以求出μ、v兩向量的大小

(14)

(15)

利用μ、v矢量大小即可求得實際運動速度。

3 實驗驗證

3.1 仿真實驗

本次仿真實驗首先在Google Earth上采集圖像,再使用Matlab中imcrop函數(shù)固定裁剪框的大小,得到兩個大小相同的圖片,在使用該函數(shù)過程中,設置移動的像素值作為基準值,移動距離通過Google Earth的“標尺”功能在圖片上標明。一組仿真實驗為無人機速度為12m/s,在對地高度120m的位置進行拍攝,光流圖像矢量圖如圖3所示。在Matlab中設置橫向位移像素值為15像素,使用金字塔LK算法的求解結果為移動13.9548像素,誤差為6.96%。通過FKCM-金字塔LK算法的求解結果為移動14.6310像素,誤差為2.46%。

(a) 金字塔LK解算運動方向

由仿真實驗可以看出(見圖4),通過基于模糊核均值聚類算法優(yōu)化的金字塔LK算法與傳統(tǒng)金字塔LK算法相比,無論在高地環(huán)境還是城市環(huán)境中,金字塔LK解算運動矢量的方向與真實方向大致一致,但是存在干擾項,經(jīng)過聚類算法優(yōu)化后,可將干擾項剔除。同時,經(jīng)過優(yōu)化后的金字塔LK算法解算移動的像素值更加靠近真實值,并且有效減小了干擾項與光流信息丟失導致的光流值誤差,使得載體速度解算精度更高。

(a) 金字塔LK解算運動方向

3.2 室外實驗

利用無人機進行室外實驗,實驗設備如圖5所示,實驗設備參數(shù)如表1所示。實驗過程中,無人機在對地30m高度飛行,同時控制無人機飛行速度為2.3m/s,無人機沿正東方向飛行,X方向前進約50m,Y方向基本保持恒定。采集并截取無人機運動過程中的視頻圖像,使用金字塔LK算法、Horn-Schunck算法、本文提出的FKCM-金字塔LK算法分別進行對比處理,實驗結果如圖6及表2所示。

圖5 室外實驗圖Fig.5 Outdoor experiment

表1 攝像頭參數(shù)表

圖6 光流算法速度對比曲線Fig.6 Comparison curve of optical flow velocity by different algorithms

表2 HS算法、金字塔LK算法與FKCM-金字塔LK算法對比

由上述分析可知,HS算法對實際運動過程中解算的速度后半?yún)^(qū)域出現(xiàn)解算錯誤,金字塔LK算法對實際運動過程中的測速結果波動性較大,而使用本文提出的FKCM-金字塔LK算法解算速度值更加平滑和穩(wěn)定,最終更加靠近真實值。利用該方法解算的速度標準差由0.8205m/s降低到0.1782m/s,精度提升79.28%;與此同時,使用該方法解算的RMSE由0.8163m/s降低到0.1773m/s,精度提升78.28%。光流測速的精度得到了有效提高。

4 結論與展望

本文針對視覺導航中光流信息容易受到物體相對運動影響的問題,提出了一種基于模糊核均值聚類算法優(yōu)化的金字塔LK光流測速方法。該方法不僅可以有效地減少物體相對移動對光流測速的影響,而且可以使得光流測速精度大幅提高。本文結合目前現(xiàn)有的研究成果,對未來優(yōu)化光流算法技術面臨的挑戰(zhàn)進行展望。

1)實驗過程中,無人機由于受到氣流的影響,飛行時會產(chǎn)生抖動,導致光流解算的速度偏離基準值,可以使用增穩(wěn)系統(tǒng)或者去抖動算法進行改進,使得計算出來的速度更接近準確值。

2)雖然光流算法在速度測量精度方面得到了一定提升,但其應用依然受光流法假設的影響,因此可以對光流算法做進一步改進,如采用強魯棒圖像特征點提取方法等。

猜你喜歡
光流金字塔均值
利用掩膜和單應矩陣提高LK光流追蹤效果
“金字塔”
基于改進Cycle-GAN的光流無監(jiān)督估計方法
一種多尺度光流預測與融合的實時視頻插幀方法
Great Vacation Places
基于自適應紋理復雜度的仿生視覺導航方法研究
均值—方差分析及CAPM模型的運用
均值—方差分析及CAPM模型的運用
淺談均值不等式的應用
金字塔是用金子造的嗎