@@ -7,6 +7,19 @@ Extended Kalman Filter Localization
7
7
8
8
EKF
9
9
10
+ .. code-block :: ipython3
11
+
12
+ from IPython.display import Image
13
+ Image(filename="ekf.png",width=600)
14
+
15
+
16
+
17
+
18
+ .. image :: extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png
19
+ :width: 600px
20
+
21
+
22
+
10
23
This is a sensor fusion localization with Extended Kalman Filter(EKF).
11
24
12
25
The blue line is true trajectory, the black line is dead reckoning
@@ -17,7 +30,7 @@ is estimated trajectory with EKF.
17
30
18
31
The red ellipse is estimated covariance ellipse with EKF.
19
32
20
- Code; `PythonRobotics/extended_kalman_filter.py at master ·
33
+ Code: `PythonRobotics/extended_kalman_filter.py at master ·
21
34
AtsushiSakai/PythonRobotics <https://github.com/AtsushiSakai/PythonRobotics/blob/master/Localization/extended_kalman_filter/extended_kalman_filter.py> `__
22
35
23
36
Filter design
@@ -85,12 +98,14 @@ where
85
98
This is implemented at
86
99
`code <https://github.com/AtsushiSakai/PythonRobotics/blob/916b4382de090de29f54538b356cef1c811aacce/Localization/extended_kalman_filter/extended_kalman_filter.py#L53-L67 >`__
87
100
88
- Its Javaobian matrix is
101
+ Its Jacobian matrix is
89
102
90
- :math: `\begin {equation*} J_F= \begin {bmatrix} \frac {dx}{dx}& \frac {dx}{dy} & \frac {dx}{d\phi } & \frac {dx}{dv}\\ \frac {dy}{dx}& \frac {dy}{dy} & \frac {dy}{d\phi } & \frac {dy}{dv}\\ \frac {d\phi }{dx}& \frac {d\phi }{dy} & \frac {d\phi }{d\phi } & \frac {d\phi }{dv}\\ \frac {dv}{dx}& \frac {dv}{dy} & \frac {dv}{d\phi } & \frac {dv}{dv}\\ \end {bmatrix} = \begin {bmatrix} 1 & 0 & -v sin(\phi )dt & cos(\phi )dt\\ 0 & 1 & v cos(\phi )dt & sin(\phi ) dt\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end {bmatrix} \end {equation*}`
103
+ :math: `\begin {equation*} J_F= \begin {bmatrix} \frac {dx}{dx}& \frac {dx}{dy} & \frac {dx}{d\phi } & \frac {dx}{dv}\\ \frac {dy}{dx}& \frac {dy}{dy} & \frac {dy}{d\phi } & \frac {dy}{dv}\\ \frac {d\phi }{dx}& \frac {d\phi }{dy} & \frac {d\phi }{d\phi } & \frac {d\phi }{dv}\\ \frac {dv}{dx}& \frac {dv}{dy} & \frac {dv}{d\phi } & \frac {dv}{dv}\\ \end {bmatrix} \end {equation*}`
104
+
105
+ :math: `\begin {equation*} = \begin {bmatrix} 1 & 0 & -v sin(\phi )dt & cos(\phi )dt\\ 0 & 1 & v cos(\phi )dt & sin(\phi ) dt\\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \\ \end {bmatrix} \end {equation*}`
91
106
92
107
Observation Model
93
- =================
108
+ ~~~~~~~~~~~~~~~~~
94
109
95
110
The robot can get x-y position infomation from GPS.
96
111
@@ -104,10 +119,12 @@ where
104
119
105
120
Its Jacobian matrix is
106
121
107
- :math: `\begin {equation*} J_H= \begin {bmatrix} \frac {dx}{dx}& \frac {dx}{dy} & \frac {dx}{d\phi } & \frac {dx}{dv}\\ \frac {dy}{dx}& \frac {dy}{dy} & \frac {dy}{d\phi } & \frac {dy}{dv}\\ \end {bmatrix} = \begin {bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end {bmatrix} \end {equation*}`
122
+ :math: `\begin {equation*} J_H= \begin {bmatrix} \frac {dx}{dx}& \frac {dx}{dy} & \frac {dx}{d\phi } & \frac {dx}{dv}\\ \frac {dy}{dx}& \frac {dy}{dy} & \frac {dy}{d\phi } & \frac {dy}{dv}\\ \end {bmatrix} \end {equation*}`
123
+
124
+ :math: `\begin {equation*} = \begin {bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end {bmatrix} \end {equation*}`
108
125
109
126
Extented Kalman Filter
110
- ======================
127
+ ~~~~~~~~~~~~~~~~~~~~~~
111
128
112
129
Localization process using Extendted Kalman Filter:EKF is
113
130
0 commit comments