本篇內(nèi)容主要講解“opencv怎么實(shí)現(xiàn)卡爾曼濾波”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“opencv怎么實(shí)現(xiàn)卡爾曼濾波”吧!
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比阿拉山口網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式阿拉山口網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋阿拉山口地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
卡爾曼濾波就是將模型預(yù)測的數(shù)據(jù)和觀測數(shù)據(jù)進(jìn)行融合,來過濾掉觀測誤差,進(jìn)而得到更精確的數(shù)據(jù)。
以一個小車在平面上走為例子,小車的程序讓它以初速度為V0,加速度為a的運(yùn)動方式向前運(yùn)動,但由于各種誤差和原因(比如有風(fēng),或者上坡等),我們的小車并不嚴(yán)格按照這個模型走,存在噪聲(并且假設(shè)高斯分布)。
并且我們不斷的用傳感器來測量小車的位置,但傳感器也存在高斯分布的噪聲。
卡爾曼濾波主要有五大公式,在這個例子的基礎(chǔ)上,我們依次來看一下。
第一個公式:
Xk:當(dāng)前狀態(tài)描述矩陣
Fk:狀態(tài)轉(zhuǎn)移矩陣
Bk:控制矩陣
Uk:控制向量
對于小車來說,狀態(tài)描述就是它的一維的位置x,以及運(yùn)動速度v:
狀態(tài)轉(zhuǎn)移矩陣就是從上一時刻到下一時刻之間的過渡:
我們將Fk和Xk-1相乘,就可以得到:
顯而易見,就是在小車勻速運(yùn)動下的狀態(tài)變化了。
但我們的小車是勻加速運(yùn)動的,我們將加速度視為控制向量Uk,因?yàn)榧铀俣仁怯刹扔烷T啊之類的產(chǎn)生的(姑且這么理解吧)。
因?yàn)槲覀冎挥幸粋€控制變量,及加速度a,所以
控制矩陣Bk就是將控制向量轉(zhuǎn)換,將控制變量體現(xiàn)到狀態(tài)Xk上:
到此為止,我們用第一個公式推導(dǎo)出了小車從上一個時刻到當(dāng)前時刻狀態(tài)的理想變化。
第二個公式:
Pk:描述狀態(tài)量之間的互相關(guān)性,是Xk的協(xié)方差矩陣,也就是Cov(Xk)
Fk:狀態(tài)轉(zhuǎn)移矩陣
Qk:外界噪聲的協(xié)方差
Pk是Xk的協(xié)方差,我們第一個公式更新了狀態(tài)向量Xk,第二個公式就是更新Xk的協(xié)方差Pk,并加上一個外界噪聲Qk。
因?yàn)槲覀冇玫氖强柭鼮V波,我們目標(biāo)對象的狀態(tài)都是呈現(xiàn)高斯分布,所以我們有兩個需要關(guān)注的變量:均值以及協(xié)方差。所以我們需要在更新了Xk,也就包含均值和方差之后,還需要更新協(xié)方差,來關(guān)注各狀態(tài)量之間的關(guān)聯(lián)程度。
第三個公式:
K:卡爾曼增益矩陣
Hk:傳感器數(shù)據(jù)
Pk :傳感器測量的噪聲的協(xié)方差
第三個公式的意義就是求出K,而K是為了在公式四五中使用,單獨(dú)拎出來并沒有什么直觀上的意義。
我們知道,卡爾曼濾波就是將傳感器的觀測數(shù)據(jù)和模型的預(yù)測數(shù)據(jù)相融合,而公式一二做的就是給出模型的預(yù)測數(shù)據(jù),公式三四五做的就是將預(yù)測數(shù)據(jù)和觀測數(shù)據(jù)相融合來得到一個新的,更準(zhǔn)確的數(shù)據(jù)。
在這兩者之間有觀測數(shù)據(jù)的采集這一步,但這不屬于卡爾曼濾波算法要做的。
而顯然兩者的重疊部分就是最優(yōu)的最可能的分布了,如何得到中間這一塊呢?就是將兩個高斯分布相乘。
兩者相乘之后(也就是融合之后),得到的大概如下圖:
為了簡便,我們用一個k來簡化一下:
這個k,就是我們公式三求的卡爾曼增益了!(一維情況下)
而后面的兩個公式,就是我們公式四五的一維表達(dá)了,不過因?yàn)槲覀儗?shí)際問題有可能是多維的,所以我們實(shí)際的公式用矩陣表示,看著可能更復(fù)雜一些。
第四個公式:
Xk' :數(shù)據(jù)融合之后的狀態(tài)分布
Xk:模型預(yù)測的Xk狀態(tài)分布
Zk:Xk的均值
HkXk:傳感器觀測數(shù)據(jù)的均值
第五個公式:
更新狀態(tài)描述量的互相關(guān)性。
到此,相信大家對“opencv怎么實(shí)現(xiàn)卡爾曼濾波”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!