我對卡爾曼濾波的簡單直白的理解

2021-10-07 23:08:30 字數 979 閱讀 8167

先用感性的語言來描述一下我的理解:

卡爾曼濾波是基於前乙個可信度以及輸入值與**值的偏差來對當前可信度進行計算,得到可信度後計算出當前值。

卡爾曼模型認為,輸入值的誤差是呈正態分佈的。

貼matlab**,具體內容可以看注釋。

clear ;

close all;

hold on;

grid on;

% axis equal;

data_result = ;%用於儲存資料,繪圖

%初始值

num = 100;%模擬num個步長,每個步長1s

x = 0;%初始位置

q = 0.001;%過程方差 需要標定

m = 0.25;%測量方差

measure = 0; %測量資料

p = 1 ;%初始誤差方差

v = 0.1; %車輛速度,預設是理想值

data(1,1) = 1;%第一列儲存時間

data(1,2) = x;%第二列儲存計算後得到的位置

data(1,3) = measure;%第三列儲存模擬的感測器輸入

for i = 2 : num

p_temp = p + q;%本次計算方差

k = p_temp/(p_temp+m);%本次計算可信度

measure = v * (i - 1) + sqrt(m)*randn();%模擬本次計算的gps定位值

x = x + v + k * (measure - (x +v));%得到本次計算的最終位置

p = (1 - k) * p_temp;%更新方差值

data(i,1) = i;%儲存資料

data(i,2) = x;

data(i,3) = measure;

endplot(data(:,1),data(:,2),'-');%繪製計算曲線

plot(data(:,1),data

卡爾曼濾波簡單理解

卡爾曼濾波是對系統的狀態 如汽車的速度 加速度等 進行最優估計,因為觀測資料中包含雜訊和干擾,所以最優估計也可看作是濾波過程。下面是卡爾曼濾波的兩個例子。例1 估計發動機內部溫度 如果想要測量火箭發動機內部的溫度,可以將感測器放入發動機內部測出內部溫度tin t ti n 但是感測器在內部會損壞無法...

卡爾曼濾波和粒子濾波最直白的解釋

卡爾曼濾波本來是控制系統課上學的,當時就沒學明白,也蒙混過關了,以為以後也不用再見到它了,可惜沒這麼容易,後來學計算機視覺和影象處理,發現用它的地方更多了,沒辦法的時候只好耐心學習和理解了。一直很想把學習的過程記錄一下,讓大家少走彎路,可惜總也沒時間和機會,直到今天。我一直有乙個願望,就是把抽象的理...

卡爾曼濾波的理解

首先了解一下濾波 濾波 filtering is weighting 濾波即加權 濾波的作用就是給不同的訊號分量不同的權重。最簡單的loss pass filter,就是直接把低頻的訊號給0權重,而給高頻部分1權重。常見的貝葉斯濾波和卡爾曼濾波 貝葉斯濾波我覺得關鍵在於對先驗概率和後驗概率的理解上,...