Adjusted to use upper case x for filter state.
This commit is contained in:
1 parent
c28582aa71
commit
9262b2796f
12 files changed
+336
-531
No files matched your search
@@ -275,7 +275,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"Now that we understand the histogram filter and Gaussians we are prepared to implement a 1D Kalman filter. We will do this exactly as we did the histogram filter - rather than going into the theory we will just develop the code step by step. But first, let's set the book style."
|
||||
"Now that we understand the histogram filter and Gaussians we are prepared to implement a 1D Kalman filter. We will do this exactly as we did the histogram filter - rather than going into the theory we will just develop the code step by step."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -2331,25 +2331,6 @@
|
||||
"\n",
|
||||
"If you understand this, you will be able to understand multidimensional Kalman filters and the various extensions that have been make on them. If you do not fully understand this, I strongly suggest rereading this chapter. Try implementing the filter from scratch, just by looking at the equations and reading the text. Change the constants. Maybe try to implement a different tracking problem, like tracking stock prices. Experimentation will build your intuition and understanding of how these marvelous filters work."
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"collapsed": false,
|
||||
"input": [],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"prompt_number": 33
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"**author notes**:\n",
|
||||
" clean up the code - same stuff duplicated over and over - write a 'clean implementation' at the end.\n",
|
||||
" \n",
|
||||
" "
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"metadata": {
|
||||
"name": "",
|
||||
"signature": "sha256:11378055d75c3ef8b1a2626c65ada84eefab1a411a1267ea328b2466f389e8e9"
|
||||
"signature": "sha256:08cdb1e902d069b45293bbf627273884dedc0356c9048d8247276cd852dee4c4"
|
||||
},
|
||||
"nbformat": 3,
|
||||
"nbformat_minor": 0,
|
||||
@@ -21,236 +21,22 @@
|
||||
"# use same formatting as rest of book so that the plots are\n",
|
||||
"# consistant with that look and feel.\n",
|
||||
"import book_format\n",
|
||||
"book_format.load_style()"
|
||||
"book_format.load_style()\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"def update(mu1, var1, mu2, var2):\n",
|
||||
" mean = (var1*mu2 + var2*mu1) / (var1+var2)\n",
|
||||
" variance = 1 / (1/var1 + 1/var2)\n",
|
||||
" return (mean, variance)\n",
|
||||
"\n",
|
||||
"def predict(pos, variance, movement, movement_variance):\n",
|
||||
" return (pos + movement, variance + movement_variance)"
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"html": [
|
||||
"<style>\n",
|
||||
"@import url('http://fonts.googleapis.com/css?family=Source+Code+Pro');\n",
|
||||
"\n",
|
||||
" div.cell{\n",
|
||||
" width: 850px;\n",
|
||||
" margin-left: 0% !important;\n",
|
||||
" margin-right: auto;\n",
|
||||
" }\n",
|
||||
" div.text_cell code {\n",
|
||||
" background: transparent;\n",
|
||||
" color: #000000;\n",
|
||||
" font-weight: 600;\n",
|
||||
" font-size: 11pt;\n",
|
||||
" font-style: bold;\n",
|
||||
" font-family: 'Source Code Pro', Consolas, monocco, monospace;\n",
|
||||
" }\n",
|
||||
" h1 {\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
"\t}\n",
|
||||
"\t\n",
|
||||
" div.input_area {\n",
|
||||
" background: #F6F6F9;\n",
|
||||
" border: 1px solid #586e75;\n",
|
||||
" }\n",
|
||||
"\n",
|
||||
" .text_cell_render h1 {\n",
|
||||
" font-weight: 200;\n",
|
||||
" font-size: 30pt;\n",
|
||||
" line-height: 100%;\n",
|
||||
" color:#c76c0c;\n",
|
||||
" margin-bottom: 0.5em;\n",
|
||||
" margin-top: 1em;\n",
|
||||
" display: block;\n",
|
||||
" white-space: wrap;\n",
|
||||
" } \n",
|
||||
" h2 {\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" }\n",
|
||||
" .text_cell_render h2 {\n",
|
||||
" font-weight: 200;\n",
|
||||
" font-size: 20pt;\n",
|
||||
" font-style: italic;\n",
|
||||
" line-height: 100%;\n",
|
||||
" color:#c76c0c;\n",
|
||||
" margin-bottom: 0.5em;\n",
|
||||
" margin-top: 1.5em;\n",
|
||||
" display: block;\n",
|
||||
" white-space: nowrap;\n",
|
||||
" } \n",
|
||||
" h3 {\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" }\n",
|
||||
" .text_cell_render h3 {\n",
|
||||
" font-weight: 300;\n",
|
||||
" font-size: 18pt;\n",
|
||||
" line-height: 100%;\n",
|
||||
" color:#d77c0c;\n",
|
||||
" margin-bottom: 0.5em;\n",
|
||||
" margin-top: 2em;\n",
|
||||
" display: block;\n",
|
||||
" white-space: nowrap;\n",
|
||||
" }\n",
|
||||
" h4 {\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" }\n",
|
||||
" .text_cell_render h4 {\n",
|
||||
" font-weight: 300;\n",
|
||||
" font-size: 16pt;\n",
|
||||
" color:#d77c0c;\n",
|
||||
" margin-bottom: 0.5em;\n",
|
||||
" margin-top: 0.5em;\n",
|
||||
" display: block;\n",
|
||||
" white-space: nowrap;\n",
|
||||
" }\n",
|
||||
" h5 {\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" }\n",
|
||||
" .text_cell_render h5 {\n",
|
||||
" font-weight: 300;\n",
|
||||
" font-style: normal;\n",
|
||||
" color: #1d3b84;\n",
|
||||
" font-size: 16pt;\n",
|
||||
" margin-bottom: 0em;\n",
|
||||
" margin-top: 1.5em;\n",
|
||||
" display: block;\n",
|
||||
" white-space: nowrap;\n",
|
||||
" }\n",
|
||||
" div.text_cell_render{\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" line-height: 135%;\n",
|
||||
" font-size: 110%;\n",
|
||||
" width:750px;\n",
|
||||
" margin-left:auto;\n",
|
||||
" margin-right:auto;\n",
|
||||
" text-align:justify;\n",
|
||||
" text-justify:inter-word;\n",
|
||||
" }\n",
|
||||
" div.output_subarea.output_text.output_pyout {\n",
|
||||
" overflow-x: auto;\n",
|
||||
" overflow-y: scroll;\n",
|
||||
" max-height: 300px;\n",
|
||||
" }\n",
|
||||
" div.output_subarea.output_stream.output_stdout.output_text {\n",
|
||||
" overflow-x: auto;\n",
|
||||
" overflow-y: scroll;\n",
|
||||
" max-height: 300px;\n",
|
||||
" }\n",
|
||||
" code{\n",
|
||||
" font-size: 70%;\n",
|
||||
" }\n",
|
||||
" .rendered_html code{\n",
|
||||
" background-color: transparent;\n",
|
||||
" }\n",
|
||||
" ul{\n",
|
||||
" margin: 2em;\n",
|
||||
" }\n",
|
||||
" ul li{\n",
|
||||
" padding-left: 0.5em; \n",
|
||||
" margin-bottom: 0.5em; \n",
|
||||
" margin-top: 0.5em; \n",
|
||||
" }\n",
|
||||
" ul li li{\n",
|
||||
" padding-left: 0.2em; \n",
|
||||
" margin-bottom: 0.2em; \n",
|
||||
" margin-top: 0.2em; \n",
|
||||
" }\n",
|
||||
" ol{\n",
|
||||
" margin: 2em;\n",
|
||||
" }\n",
|
||||
" ol li{\n",
|
||||
" padding-left: 0.5em; \n",
|
||||
" margin-bottom: 0.5em; \n",
|
||||
" margin-top: 0.5em; \n",
|
||||
" }\n",
|
||||
" ul li{\n",
|
||||
" padding-left: 0.5em; \n",
|
||||
" margin-bottom: 0.5em; \n",
|
||||
" margin-top: 0.2em; \n",
|
||||
" }\n",
|
||||
" a:link{\n",
|
||||
" font-weight: bold;\n",
|
||||
" color:#447adb;\n",
|
||||
" }\n",
|
||||
" a:visited{\n",
|
||||
" font-weight: bold;\n",
|
||||
" color: #1d3b84;\n",
|
||||
" }\n",
|
||||
" a:hover{\n",
|
||||
" font-weight: bold;\n",
|
||||
" color: #1d3b84;\n",
|
||||
" }\n",
|
||||
" a:focus{\n",
|
||||
" font-weight: bold;\n",
|
||||
" color:#447adb;\n",
|
||||
" }\n",
|
||||
" a:active{\n",
|
||||
" font-weight: bold;\n",
|
||||
" color:#447adb;\n",
|
||||
" }\n",
|
||||
" .rendered_html :link {\n",
|
||||
" text-decoration: underline; \n",
|
||||
" }\n",
|
||||
" .rendered_html :hover {\n",
|
||||
" text-decoration: none; \n",
|
||||
" }\n",
|
||||
" .rendered_html :visited {\n",
|
||||
" text-decoration: none;\n",
|
||||
" }\n",
|
||||
" .rendered_html :focus {\n",
|
||||
" text-decoration: none;\n",
|
||||
" }\n",
|
||||
" .rendered_html :active {\n",
|
||||
" text-decoration: none;\n",
|
||||
" }\n",
|
||||
" .warning{\n",
|
||||
" color: rgb( 240, 20, 20 )\n",
|
||||
" } \n",
|
||||
" hr {\n",
|
||||
" color: #f3f3f3;\n",
|
||||
" background-color: #f3f3f3;\n",
|
||||
" height: 1px;\n",
|
||||
" }\n",
|
||||
" blockquote{\n",
|
||||
" display:block;\n",
|
||||
" background: #fcfcfc;\n",
|
||||
" border-left: 5px solid #c76c0c;\n",
|
||||
" font-family: 'Open sans',verdana,arial,sans-serif;\n",
|
||||
" width:680px;\n",
|
||||
" padding: 10px 10px 10px 10px;\n",
|
||||
" text-align:justify;\n",
|
||||
" text-justify:inter-word;\n",
|
||||
" }\n",
|
||||
" blockquote p {\n",
|
||||
" margin-bottom: 0;\n",
|
||||
" line-height: 125%;\n",
|
||||
" font-size: 100%;\n",
|
||||
" }\n",
|
||||
"</style>\n",
|
||||
"<script>\n",
|
||||
" MathJax.Hub.Config({\n",
|
||||
" TeX: {\n",
|
||||
" extensions: [\"AMSmath.js\"]\n",
|
||||
" },\n",
|
||||
" tex2jax: {\n",
|
||||
" inlineMath: [ ['$','$'], [\"\\\\(\",\"\\\\)\"] ],\n",
|
||||
" displayMath: [ ['$$','$$'], [\"\\\\[\",\"\\\\]\"] ]\n",
|
||||
" },\n",
|
||||
" displayAlign: 'center', // Change this to 'center' to center equations.\n",
|
||||
" \"HTML-CSS\": {\n",
|
||||
" styles: {'.MathJax_Display': {\"margin\": 4}}\n",
|
||||
" }\n",
|
||||
" });\n",
|
||||
"</script>\n"
|
||||
],
|
||||
"metadata": {},
|
||||
"output_type": "pyout",
|
||||
"prompt_number": 1,
|
||||
"text": [
|
||||
"<IPython.core.display.HTML at 0x7f829807fa58>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"prompt_number": 1
|
||||
"outputs": [],
|
||||
"prompt_number": 4
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -316,8 +102,7 @@
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"prompt_number": 1
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
@@ -330,13 +115,6 @@
|
||||
"import stats\n",
|
||||
"from gif_animate import animate\n",
|
||||
"\n",
|
||||
"def update(mu1, var1, mu2, var2):\n",
|
||||
" mean = (var1*mu2 + var2*mu1) / (var1+var2)\n",
|
||||
" variance = 1 / (1/var1 + 1/var2)\n",
|
||||
" return (mean, variance)\n",
|
||||
"\n",
|
||||
"def predict(pos, variance, movement, movement_variance):\n",
|
||||
" return (pos + movement, variance + movement_variance)\n",
|
||||
"\n",
|
||||
"\n",
|
||||
"sensor_error = 1.2**2\n",
|
||||
@@ -389,17 +167,7 @@
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"metadata": {},
|
||||
"output_type": "display_data",
|
||||
"png": "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 truncated
|
||||
"text": [
|
||||
"<matplotlib.figure.Figure at 0x7f82796e75c0>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"prompt_number": 2
|
||||
"outputs": []
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
@@ -412,6 +180,13 @@
|
||||
"cell_type": "code",
|
||||
"collapsed": false,
|
||||
"input": [
|
||||
"from __future__ import print_function, division\n",
|
||||
"import matplotlib.pyplot as plt\n",
|
||||
"import numpy.random as random\n",
|
||||
"import math\n",
|
||||
"import stats\n",
|
||||
"from gif_animate import animate\n",
|
||||
"\n",
|
||||
"# assume dog is always moving 1m to the right\n",
|
||||
"movement = 1\n",
|
||||
"movement_error = .05\n",
|
||||
@@ -450,7 +225,7 @@
|
||||
" plt.subplot(212)\n",
|
||||
" plt.cla()\n",
|
||||
" stats.plot_gaussian(pos[0], pos[1], xlim=[0,N*1.2])\n",
|
||||
" plt.ylim([0,1])\n",
|
||||
" plt.ylim(0, 1)\n",
|
||||
" plt.tight_layout()\n",
|
||||
"\n",
|
||||
"\n",
|
||||
@@ -458,7 +233,17 @@
|
||||
],
|
||||
"language": "python",
|
||||
"metadata": {},
|
||||
"outputs": []
|
||||
"outputs": [
|
||||
{
|
||||
"metadata": {},
|
||||
"output_type": "display_data",
|
||||
"png": "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 truncated
|
||||
"text": [
|
||||
"<matplotlib.figure.Figure at 0x7f3d805b4d68>"
|
||||
]
|
||||
}
|
||||
],
|
||||
"prompt_number": 9
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 238 KiB After Width: | Height: | Size: 244 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 481 KiB After Width: | Height: | Size: 465 KiB |
Reference in new issue
Block a user