1. 程式人生 > >卡爾曼濾波和維納濾波

卡爾曼濾波和維納濾波

--總覺得網上其他部落格上寫的都不太適合自己理解,百般翻閱書籍理解了一下,供自己日後複習之用。
本文的程式整理可到此處下載:http://download.csdn.net/download/sillykog/10123483
  • 用過去的觀測值來估計當前或者將來的訊號稱為預測
  • 用當前和過去的觀測值來估計當前訊號稱為濾波
  • 用過去的觀測值估計過去的訊號成為平滑或內插

維納濾波

1.要求

  • 輸入過程廣義平穩
  • 輸入過程的統計特性已知

2.效果

  • 當訊號和干擾以及隨機噪聲同時輸入該濾波器時,在輸出端將訊號儘可能精確表現出來
  • 維納濾波根據全部過去觀測值和當前觀測值來估計訊號的當前值,解形式是傳遞函式或單位脈衝響應,說白了就是一個IIR無限單位脈衝濾波器

3.原理

  • 定義誤差為觀測值減去估計值
    e(n)=s(n)s^(n)

  • 目標函式為最小均方誤差
    minE[e2(n)]=minE[(s(n)s^(n))2]

  • 估計值計算如下
    s^(n)=x(n)h(n)=m=+h(m)x(nm)

  • 最小均方誤差可表示為
    E[e2(n)]=E[(s(n)s^(n))2]=E[(s(n)m=0+h(m)x(nm))2]

  • 對最小均方誤差求對衝擊響應的偏導並使其為零得到維納霍夫方程
    E[e2(n)h(m)=2E[(s(n)m=0+h(m)x(nm))x(nj)],j=0,1,2,...

  • 此時求得的h(m)hop

    t(m),並有
    Rxs(j)=E[x(nj)s(n)]
    Rxx(jm)=E[x(nm)x(nj)]

  • 維納霍夫方程方程可化簡為
    Rxs(j)=m=0+hopt(m)Rxx(jm),j=0,1,2,...

  • 將方程展開我們可以得到更直觀的方程組如下
    j=0Rxs(0)=h(0)Rxx(0)+h(1)Rxx(1)+...+h(N1)Rxx(1N)
    j=1Rxs(1)=h(0)Rxx(1)+h(1)Rxx(0)+...+h(N1)Rxx(2N)
    .........................................

    相關推薦

    濾波濾波

    --總覺得網上其他部落格上寫的都不太適合自己理解,百般翻閱書籍理解了一下,供自己日後複習之用。 本文的程式整理可到此處下載:http://download.csdn.net/download/sillykog/10123483 用過去的觀測值來估計當前或者

    濾波器優化的本質理解

    假設我們有兩個未知量想要知道他們的值。最直接的方法是找到兩個和這兩個未知量相關的方程,求解方程組就能得到他們的值。 但如果我們只能得到一個方程呢?也許你會說這個問題無解。但是換個角度想,雖然只有一個方程,但也不沒有好,至少我們還是多了一些關於這兩個位置量的資訊。 很多情況

    圖象恢復——(逆濾波濾波

    目的:對獲取影象在頻域用高斯函式進行退化併疊加白噪聲,對退化影象進行逆濾波和維納濾波恢復,比較原始影象和恢復影象,對利用逆濾波和維納濾波恢復方法恢復影象進行比較。一、基本原理      影象復原是一種客觀的操作,通過使用退化現象的先驗知識重建或恢復一副退化的影象;影象在形成、

    【概率機器人】3.1 濾波、擴展濾波無跡濾波

    取出 嘗試 bar return tar 簡化 exp 回顧 clas 這一章將介紹卡爾曼濾波、擴展卡爾曼濾波以及無跡卡爾曼濾波,並從貝葉斯濾波的角度來進行分析並完成數學推導。如果您對貝葉斯濾波不了解,可以查閱相關書籍或閱讀 【概率機器人 2 遞歸狀態估計】。 這三種濾波方

    基於濾波演算法在三球軌跡中跟蹤應用

    關於卡爾曼濾波跟蹤演算法的理解文章實在太多,絕大多數都在敘述演算法原理和一些理解,而且一般舉例都限於一維直線運動或者二維平面運動,故在此不做過多的重複表述,有關原理理解性的文章請參考本部落格後的refe

    無人駕駛汽車系統入門(二)——高階運動模型擴充套件濾波

    前言:上一篇文章的最後我們提到卡爾曼濾波存在著一個非常大的侷限性——它僅能對線性的處理模型和測量模型進行精確的估計,在非線性的場景中並不能達到最優的估計效果。所以之前為了保證我們的處理模型是線性的,我們上一節中使用了恆定速度模型,然後將估計目標的加減速用處理噪聲來表示,這一模

    濾波(Kalman Filter)原理理解測試

    Kalman Filter學原理學習 1. Kalman Filter 歷史 Kalman濾波器的歷史,最早要追溯到17世紀,Roger Cotes開始研究最小均方問題。但由於缺少實際案例的支撐(那個時候哪來那麼多雷達啊啥的這些訊號啊),Cotes

    基於濾波演算法融合影象速度資料加速度計資料

    最近在改進之前做的視覺定點演算法,以前只有一個位置環,現在準備再串一級速度環,但是解算出無人機的平移速度還是頗為頭疼的,網上的資料很少,需要我們自己動腦去解決這個問題。 首先要測水平速度,傳統的方法是GPS,我所設計的無人機的應用場景中的GPS訊號雖然有,但是

    濾波實現多項式擬合Matlab

    nom and kalman ffi 樣本 矩陣 協方差 數組 fontsize %%%%%%%%%%%%%Q3:多項式系數估計%%%%%%%%%%%%%%%% %%%%%%%%%%2016/07/21%%%%%%%%%%%%%%%%%%% clc;clear;

    濾波的一個簡單demo: 恒定加速度模型

    obi vtt efk rtp end atp cee cdn bs4 p { margin-bottom: 0.1in; direction: ltr; color: rgb(0, 0, 10); line-height: 120%; text-align: left }

    濾波3

    比較 應該 想要 不能 模型 不同 隨著 而已 風景 假設你去一個風景區旅遊時候,種下一棵果樹,但顯然從果樹苗到果實不是一天兩天能完成對。需要慢慢長高。而你又不可能經常去看,但又想知道樹的高度,哪怎麽辦? 所以要解決的問題是:如何正確估計一棵果樹的高度? 我們想要知道的果

    濾波2

    推導 概率 精確 情況 多維 結果 width tex 為什麽 作者:肖暢鏈接:https://www.zhihu.com/question/23971601/answer/46480923來源:知乎著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。

    濾波

    nbsp 應用 一周 log -1 現在 richtext http 一是 假設我養了一只豬: 一周前,這只豬的體重是46±0.5kg。註意,在這裏我用了±0.5,表示其實我對這只豬一周前的體重並不是那麽確定的,也就是說,46k

    濾波的原理說明

    收集 引入 濾波 div 概率 一個人 pdf span net 在學習卡爾曼濾波器之前,首先看看為什麽叫“卡爾曼”。跟其他著名的理論(例如傅立葉變換,泰勒級數等等)一樣,卡爾曼也是一個人的名字,而跟他們不同的是,他是個現代人!卡爾曼全名Ru

    MATLAB-濾波簡單運用示例

    south noi 增加 jacob mage 影響 方差 sqrt mark 1、角度和弧度之間的轉換公式? 設角度為 angle,弧度為 radian radian = angle * pi / 180; angle = radian * 180 / pi; 所以在ma

    cv2使用濾波(Kalman Filter)捕捉滑鼠運動

    本文主要介紹在cv2中使用Kalman濾波捕捉滑鼠運動。 cv2.KalmanFilter(dynamParams=None,#狀態的維度 measureParams=None, #測量的維度 controlParams=None,#控制的維度 type=None)#矩陣的型別

    濾波MATLAB程式碼實現

    沒有大量的公式推導,個人感覺也沒有必要,我們從小推導過很多公式,試著想想我們還能回憶起幾個?個人認為只需要記住公式的用法,作用,知道有這個公式就可以。用的時候我們可以隨時去查。所以樓主參考網上資料結合一個小例子整理出卡爾曼濾波的MATLAB程式碼實現。看懂這些程式碼我們需要對卡爾曼濾波演算法有基本的

    濾波的理解以及推導過程

    針對的系統為: 狀態方程       X(k)=AX(k-1)+Bu(k-1)+W(k-1) 測量方程       Z(k)=HX(k)+V(k)  &

    通俗理解濾波及其演算法實現(帶例項解析)

    1.簡介(Brief Introduction) 在學習卡爾曼濾波器之前,首先看看為什麼叫“卡爾曼”。跟其他著名的理論(例如傅立葉變換,泰勒級數等等)一樣,卡爾曼也是一個人的名字,而跟他們不同的是,他是個現代人! 卡爾曼全名Rudolf Emil Kalman,匈牙利數學家,1930年出生於