clean up localization docs (#570)

* clean up localization docs

* clean up localization docs

* clean up localization docs
This commit is contained in:
Atsushi Sakai
2021-11-18 22:35:10 +09:00
committed by GitHub
parent 137e372db1
commit 35984e8978
9 changed files with 28 additions and 1504 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 110 KiB

File diff suppressed because one or more lines are too long

View File

@@ -1,72 +0,0 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"collapsed": true,
"pycharm": {
"name": "#%% md\n"
}
},
"source": [
"# Particle Filter Localization\n",
"\n"
]
},
{
"cell_type": "markdown",
"source": [
"## How to calculate covariance matrix from particles\n",
"\n",
"The covariance matrix $\\Xi$ from particle information is calculated by the following equation: \n",
"\n",
"$\\Xi_{j,k}=\\frac{1}{1-\\sum^N_{i=1}(w^i)^2}\\sum^N_{i=1}w^i(x^i_j-\\mu_j)(x^i_k-\\mu_k)$\n",
"\n",
"- $\\Xi_{j,k}$ is covariance matrix element at row $i$ and column $k$.\n",
"\n",
"- $w^i$ is the weight of the $i$ th particle. \n",
"\n",
"- $x^i_j$ is the $j$ th state of the $i$ th particle. \n",
"\n",
"- $\\mu_j$ is the $j$ th mean state of particles.\n",
"\n",
"Ref:\n",
"\n",
"- [Improving the particle filter in high dimensions using conjugate artificial process noise](https://arxiv.org/pdf/1801.07000.pdf)\n"
],
"metadata": {
"collapsed": false
}
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 2
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython2",
"version": "2.7.6"
},
"pycharm": {
"stem_cell": {
"cell_type": "raw",
"source": [],
"metadata": {
"collapsed": false
}
}
}
},
"nbformat": 4,
"nbformat_minor": 0
}

View File

@@ -222,9 +222,8 @@ described with two parameters, the mean (:math:`\mu`) and the variance
f(x, \mu, \sigma) = \frac{1}{\sigma\sqrt{2\pi}} \exp\big [{-\frac{(x-\mu)^2}{2\sigma^2} }\big ]
Range is
.. math:: [-\inf,\inf]
Range is :math:`[-\inf,\inf]`
This is just a function of mean(\ :math:`\mu`) and standard deviation
(:math:`\sigma`) and what gives the normal distribution the
@@ -279,7 +278,8 @@ New mean is
.. math:: \mu_\mathtt{new} = \frac{\sigma_z^2\bar\mu + \bar\sigma^2z}{\bar\sigma^2+\sigma_z^2}
New variance is
New variance is
.. math::
@@ -336,7 +336,7 @@ of the two.
.. math::
\begin{gathered}\mu_x = \mu_p + \mu_z \\
\sigma_x^2 = \sigma_z^2+\sigma_p^2\, \square\end{gathered}
\sigma_x^2 = \sigma_z^2+\sigma_p^2\, \end{gathered}
.. code-block:: ipython3

View File

@@ -2,14 +2,6 @@
Extended Kalman Filter Localization
-----------------------------------
.. code-block:: ipython3
from IPython.display import Image
Image(filename="ekf.png",width=600)
.. image:: extended_kalman_filter_localization_files/extended_kalman_filter_localization_1_0.png
:width: 600px
@@ -18,8 +10,6 @@ Extended Kalman Filter Localization
.. figure:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/extended_kalman_filter/animation.gif
:alt: EKF
EKF
This is a sensor fusion localization with Extended Kalman Filter(EKF).
The blue line is true trajectory, the black line is dead reckoning
@@ -127,7 +117,7 @@ The observation function states that
Its Jacobian matrix is
:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partialv}\\ \end{bmatrix} \end{equation*}`
:math:`\begin{equation*} J_g = \begin{bmatrix} \frac{\partial x'}{\partial x} & \frac{\partial x'}{\partial y} & \frac{\partial x'}{\partial \phi} & \frac{\partial x'}{\partial v}\\ \frac{\partial y'}{\partial x}& \frac{\partial y'}{\partial y} & \frac{\partial y'}{\partial \phi} & \frac{\partial y'}{ \partial v}\\ \end{bmatrix} \end{equation*}`
:math:`\begin{equation*}  = \begin{bmatrix} 1& 0 & 0 & 0\\ 0 & 1 & 0 & 0\\ \end{bmatrix} \end{equation*}`

View File

@@ -15,7 +15,8 @@ This is a sensor fusion localization with Unscented Kalman Filter(UKF).
The lines and points are same meaning of the EKF simulation.
Ref:
References:
~~~~~~~~~~~
- `Discriminatively Trained Unscented Kalman Filter for Mobile Robot
Localization`_
@@ -37,9 +38,26 @@ It is assumed that the robot can measure a distance from landmarks
This measurements are used for PF localization.
Ref:
How to calculate covariance matrix from particles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The covariance matrix :math:`\Xi` from particle information is calculated by the following equation:
.. math:: \Xi_{j,k}=\frac{1}{1-\sum^N_{i=1}(w^i)^2}\sum^N_{i=1}w^i(x^i_j-\mu_j)(x^i_k-\mu_k)
- :math:`\Xi_{j,k}` is covariance matrix element at row :math:`i` and column :math:`k`.
- :math:`w^i` is the weight of the :math:`i` th particle.
- :math:`x^i_j` is the :math:`j` th state of the :math:`i` th particle.
- :math:`\mu_j` is the :math:`j` th mean state of particles.
References:
~~~~~~~~~~~
- `PROBABILISTIC ROBOTICS`_
- `Improving the particle filter in high dimensions using conjugate artificial process noise`_
Histogram filter localization
-----------------------------
@@ -59,12 +77,14 @@ localization.
Initial position is not needed.
Ref:
References:
~~~~~~~~~~~
- `PROBABILISTIC ROBOTICS`_
.. _PROBABILISTIC ROBOTICS: http://www.probabilistic-robotics.org/
.. _Discriminatively Trained Unscented Kalman Filter for Mobile Robot Localization: https://www.researchgate.net/publication/267963417_Discriminatively_Trained_Unscented_Kalman_Filter_for_Mobile_Robot_Localization
.. _Improving the particle filter in high dimensions using conjugate artificial process noise: https://arxiv.org/pdf/1801.07000.pdf
.. |2| image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/unscented_kalman_filter/animation.gif
.. |3| image:: https://github.com/AtsushiSakai/PythonRoboticsGifs/raw/master/Localization/particle_filter/animation.gif