?先討論濾波器的概念,濾波的意思是,讓機(jī)器人在某個(gè)正確位置上對(duì)應(yīng)的概率越高越好。
也就是可以理解為:把錯(cuò)誤位置上的概率濾低,把正確位置處的概率濾高。
假設(shè)一個(gè)機(jī)器人小R在如下場(chǎng)景中出現(xiàn),他剛開(kāi)始不知道自己在哪(小R還沒(méi)看到他眼前的門(mén)),因此他在這個(gè)場(chǎng)景中任何位置的概率是相等的。
如果此時(shí)縱坐標(biāo)為機(jī)器人小R在對(duì)應(yīng)位置處的概率,橫坐標(biāo)表示各個(gè)位置,應(yīng)該是一條均勻分布的直線。
突然,機(jī)器人看到了眼前這個(gè)門(mén),這里假設(shè)機(jī)器人提前知道一共有三個(gè)門(mén),因此小R現(xiàn)在知道自己可能在任意一個(gè)門(mén)前,即三個(gè)門(mén)分別對(duì)應(yīng)著一個(gè)正態(tài)分布。此時(shí)的概率波形可以理解為先驗(yàn)概率。
小R繼續(xù)向前走到第二個(gè)門(mén)前,他通過(guò)自己身上安裝的里程計(jì)發(fā)現(xiàn)自己走了d個(gè)單位。
根據(jù)之前的概率分布,小R可以預(yù)測(cè)到,自己的位置應(yīng)該向右平移了d個(gè)單位。那么可以將之前的概率分布向右平移d個(gè)單位,得到此時(shí)通過(guò)傳感器得到的概率分布。此時(shí)的概率波形可以理解為似然概率。
小R突然發(fā)現(xiàn)自己看到了第二扇門(mén)前,僅根據(jù)當(dāng)前的觀測(cè),小R知道自己在三個(gè)門(mén)前的概率相同,又可以得到之前的三個(gè)正態(tài)分布。根據(jù)傳感器預(yù)測(cè)得到的分布和根據(jù)先驗(yàn)信息得到的分布得:
兩個(gè)波形信號(hào)可以做個(gè)卷積融合得到:
這樣小R在第二扇門(mén)處(正確位置)的概率就變大了,在其他位置處的概率就變小了,進(jìn)而達(dá)到了濾波的目的。
以上即是普通濾波器的直觀解釋?zhuān)瑯拥兀梢灶?lèi)比到卡爾曼濾波上。
由式(2)可知,新的不確定性由上一時(shí)刻不確定性預(yù)測(cè)得到,并加上外部環(huán)境的干擾。
這時(shí)我們對(duì)系統(tǒng)的變化有了模糊的估計(jì),更新的狀態(tài)(均值)和不確定性(協(xié)方差)分別如式(1)和(2),預(yù)測(cè)的過(guò)程相當(dāng)于之前的波形向右平移d個(gè)單位的過(guò)程。
得到的新的最優(yōu)估計(jì)可以放到下一時(shí)刻不斷迭代。以上就是經(jīng)典卡爾曼濾波器的五個(gè)公式,給出了線性高斯系統(tǒng)的最優(yōu)無(wú)偏估計(jì)。
我們可以用這些公式對(duì)任何線性系統(tǒng)建立精確的模型,對(duì)于非線性系統(tǒng)來(lái)說(shuō),我們使用擴(kuò)展卡爾曼濾波,區(qū)別在于EKF多了一個(gè)把預(yù)測(cè)和測(cè)量部分進(jìn)行線性化的過(guò)程。
此時(shí)再看這個(gè)高贊無(wú)公式推導(dǎo)的回答來(lái)回顧全局,一切豁然開(kāi)朗
無(wú)公式直白解釋卡爾曼濾波:
假設(shè)你有兩個(gè)傳感器,測(cè)的是同一個(gè)信號(hào)。可是它們每次的讀數(shù)都不太一樣,怎么辦?
取平均。
再假設(shè)你知道其中貴的那個(gè)傳感器應(yīng)該準(zhǔn)一些,便宜的那個(gè)應(yīng)該差一些。那有比取平均更好的辦法嗎?
加權(quán)平均。(乘卡爾曼增益 K)
怎么加權(quán)?假設(shè)兩個(gè)傳感器的誤差都符合正態(tài)分布,假設(shè)你知道這兩個(gè)正態(tài)分布的方差,用這兩個(gè)方差值,(此處省略若干數(shù)學(xué)公式),你可以得到一個(gè)“最優(yōu)”的權(quán)重。
接下來(lái),重點(diǎn)來(lái)了:假設(shè)你只有一個(gè)傳感器,但是你還有一個(gè)數(shù)學(xué)模型(指的是上文中的預(yù)測(cè)模型)。模型可以幫你算出一個(gè)值,但也不是那么準(zhǔn)。怎么辦?
把模型算出來(lái)的值,和傳感器測(cè)出的值,(就像兩個(gè)傳感器那樣),取加權(quán)平均。
OK,最后一點(diǎn)說(shuō)明:你的模型其實(shí)只是一個(gè)步長(zhǎng)的,也就是說(shuō),知道x(k),我可以求x(k+1)。
問(wèn)題是x(k)是多少呢?答案:x(k)就是你上一步卡爾曼濾波得到的、所謂加權(quán)平均之后的那個(gè)、對(duì)x在k時(shí)刻的最佳估計(jì)值。于是迭代也有了。這就是卡爾曼濾波。(無(wú)公式)
-
傳感器
+關(guān)注
關(guān)注
2548文章
50668瀏覽量
751981 -
濾波器
+關(guān)注
關(guān)注
160文章
7727瀏覽量
177672 -
模型
+關(guān)注
關(guān)注
1文章
3171瀏覽量
48711
原文標(biāo)題:SLAM后端優(yōu)化中卡爾曼濾波的直觀通俗解釋
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論