卡爾曼濾波
文章目錄
1貝葉斯濾波
1.1理論基礎
(1)本質:通過貝葉斯公式對隨機訊號處理,從而減小不確定度(即方差)。
(2)隨機過程:x1,…,xn為隨機變數,但不獨立。
主觀概率(先驗概率)(實驗前),
引入外部觀測(證據、資訊),
得到相對客觀的概率(後驗概率)(實驗後)。
(3)先驗概率、後驗概率、似然概率:
離散舉例:溫度測量
T
實
際
溫
度
、
T
m
溫
度
計
測
量
溫
度
T實際溫度、T_m溫度計測量溫度
T實際溫度、Tm溫度計測量溫度
a. 先驗概率分佈
{
P
(
T
=
10
)
=
0.8
表
示
實
際
溫
度
為
10
的
概
率
為
0.8
P
(
T
=
11
)
=
0.2
\left\{ \begin{aligned} &P(T=10) = 0.8 表示實際溫度為10的概率為0.8 \\ &P(T=11)=0.2 \end{aligned} \right.
b. 溫度計測量值
T
m
T_m
Tm
c. 後驗概率分佈:
P
(
T
=
10
∣
T
m
=
10.3
)
=
P
(
T
m
=
10.3
∣
T
=
10
)
∗
P
(
T
=
10
)
P
(
T
m
=
10.3
)
P(T=10|T_m=10.3)=\frac{P(T_m=10.3|T=10)*P(T=10)}{P(T_m=10.3)}
P(T=10∣Tm=10.3)=P(Tm=10.3)P(Tm=10.3∣T=10)∗P(T=10)
表示在溫度計顯示為10.3度的條件下,實際溫度為10度的概率。
其中,
P
(
T
m
=
10.3
∣
T
=
10
)
P(T_m=10.3|T=10)
P
(
T
m
=
10.3
)
P(T_m=10.3)
P(Tm=10.3)看作常數
η
\eta
η。
後驗= η ∗ 似 然 ∗ 先 驗 \eta*似然*先驗 η∗似然∗先驗,其中 η = 1 ∑ ( 似 然 ∗ 先 驗 ) \eta=\frac{1}{\sum{(似然*先驗)}} η=∑(似然∗先驗)1。
連續:
f
X
∣
Y
(
x
∣
y
)
=
f
Y
∣
X
(
y
∣
x
)
∗
f
X
(
x
)
f
Y
(
y
)
=
η
∗
似
然
∗
後
驗
f_{X|Y}(x|y)=\frac{f_{Y|X}(y|x)*f_{X}(x)}{f_{Y}(y)}=\eta*似然*後驗
定理:若
f
X
(
x
)
f_{X}(x)
fX(x)~
N
(
μ
1
,
δ
1
2
)
,
f
Y
∣
X
(
y
∣
x
)
N(\mu_{1}, \delta_1^2),f_{Y|X}(y|x)
N(μ1,δ12),fY∣X(y∣x)~
N
(
μ
2
,
δ
2
2
)
N(\mu_2, \delta_2^2)
N(μ2,δ22),
則
f
X
∣
Y
(
x
∣
y
)
f_{X|Y}(x|y)
fX∣Y(x∣y)~
N
(
δ
2
2
δ
1
2
+
δ
2
2
∗
μ
1
+
δ
1
2
δ
1
2
+
δ
2
2
∗
μ
2
,
δ
1
2
δ
2
2
δ
1
2
+
δ
2
2
)
.
N(\frac{\delta_2^2}{\delta_1^2+\delta_2^2}*\mu_1+\frac{\delta_1^2}{\delta_1^2+\delta_2^2}*\mu_2, \frac{\delta_1^2\delta_2^2}{\delta_1^2+\delta_2^2}).
N(δ12+δ22δ22∗μ1+δ12+δ22δ12∗μ2,δ12+δ22δ12δ22). (本質:實現方差降低)。
|
|
1.2貝葉斯濾波演算法
X-先驗,Y-觀測,
Q
k
Q_k
Qk-預測噪聲,
R
k
R_k
Rk-觀測噪聲
(1)過程
x1,…,xn由遞推得:
(2)前提假設:
a
.
{
狀
態
方
程
:
X
k
=
f
(
X
k
−
1
)
+
Q
k
觀
測
方
程
:
Y
k
=
h
(
X
k
)
+
R
k
a. \left\{ \begin{aligned} &狀態方程:X_k=f(X_{k-1})+Q_k \\ &觀測方程:Y_k=h(X_k)+R_k \end{aligned} \right.
a.{狀態方程:Xk=f(Xk−1)+Qk觀測方程:Yk=h(Xk)+Rk
b.
X
k
、
X
k
−
1
、
Y
k
、
Q
k
、
R
k
X_k、X_{k-1}、Y_k、Q_k、R_k
Xk、Xk−1、Yk、Qk、Rk均為隨機變數;
X
0
、
Q
1
.
.
.
Q
k
、
R
1
.
.
.
R
k
X_0、Q_1...Q_k、R_1...R_k
X0、Q1...Qk、R1...Rk相互獨;
X
0
X_0
X0 ~
f
0
(
x
)
,
Q
k
f_0(x),Q_k
f0(x),Qk ~
f
Q
k
(
x
)
,
R
k
f_{Q_k}(x),R_k
fQk(x),Rk ~
f
R
k
(
x
)
f_{R_k}(x)
fRk(x)。
(3)預測步、更新步:
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2卡爾曼濾波
(1)前提假設:
a.
f
(
X
k
−
1
)
=
F
∗
X
k
−
1
,
h
(
X
k
)
=
H
∗
X
k
f(X_{k-1})=F*X_{k-1},h(X_k)=H*X_k
f(Xk−1)=F∗Xk−1,h(Xk)=H∗Xk,F、H為常數;
b. Q~ N(0, q), R~ N(0,r)。
(2)預測步、更新步
(3)五個公式:
{
μ
k
−
=
F
∗
μ
k
−
1
+
δ
k
−
=
F
2
∗
δ
k
−
1
+
+
q
卡
爾
曼
增
益
K
=
H
∗
δ
k
−
H
2
∗
δ
k
−
+
r
μ
k
+
=
K
∗
(
y
k
−
H
∗
μ
k
−
)
+
μ
k
−
δ
k
+
=
(
1
−
H
∗
K
)
∗
δ
k
−
\left\{ \begin{aligned} &\mu_k^-=F*\mu_{k-1}^+\\ &\delta_k^-=F^2*\delta_{k-1}^++q\\ &卡爾曼增益K=\frac{H*\delta_k^-}{H^2*\delta_k^-+r}\\ &\mu_k^+=K*(y_k-H*\mu_k^-)+\mu_k^-\\ &\delta_k^+=(1-H*K)*\delta_k^- \end{aligned} \right.
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎧μk−=F∗μk−1+δk−=F2∗δk−1++q卡爾曼增益K=H2∗δk−+rH∗δk−μk+=K∗(yk−H∗μk−)+μk−δk+=(1−H∗K)∗δk−
(4)矩陣形式:
μ
k
→
μ
k
⃗
,
δ
k
→
δ
k
⃗
\mu_k\rightarrow\vec{\mu_k},\delta_k\rightarrow\vec{\delta_k}
μk→μk
,δk→δk
,F、H均為矩陣。
{
μ
k
−
⃗
=
F
∗
μ
k
−
1
+
⃗
δ
k
−
⃗
=
F
∗
δ
k
−
1
+
⃗
∗
F
T
+
q
卡
爾
曼
增
益
K
=
H
∗
δ
k
−
⃗
H
∗
δ
k
−
⃗
∗
H
T
+
r
μ
k
+
⃗
=
K
∗
(
y
k
⃗
−
H
∗
μ
k
−
⃗
)
+
μ
k
−
⃗
δ
k
+
⃗
=
(
1
−
H
∗
K
)
∗
δ
k
−
⃗
\left\{ \begin{aligned} &\vec{\mu_k^-}=F*\vec{\mu_{k-1}^+}\\ &\vec{\delta_k^-}=F*\vec{\delta_{k-1}^+}*F^T+q\\ &卡爾曼增益K=\frac{H*\vec{\delta_k^-}}{H*\vec{\delta_k^-}*H^T+r}\\ &\vec{\mu_k^+}=K*(\vec{y_k}-H*\vec{\mu_k^-})+\vec{\mu_k^-}\\ &\vec{\delta_k^+}=(1-H*K)*\vec{\delta_k^-} \end{aligned} \right.
⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧μk−
=F∗μk−1+
δk−
=F∗δk−1+
∗FT+q卡爾曼增益K=H∗δk−
∗HT+rH∗δk−
μk+
=K∗(yk
−H∗μk−
)+μk−
δk+
=(1−H∗K)∗δk−
學習來源:感謝up主:忠厚老實的老王