GithubHelp home page GithubHelp logo

rslim97 / kalman-filter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from jacobsayono/kalman-filter

0.0 0.0 0.0 431 KB

A Kalman Filter smooths out noisy sensor data to make more accurate predictions for object tracking

Python 100.00%

kalman-filter's Introduction

Kalman Filtering

The demonstration has two different sections. The first section creates simulated data. The second section runs a Kalman filter on the data and visualizes the results.

Kalman Filters - Why are they useful?

Kalman filters are really good at taking noisy sensor data and smoothing out the data to make more accurate predictions. For autonomous vehicles, Kalman filters can be used in object tracking.

Kalman Filters and Sensors

Object tracking is often done with radar and lidar sensors placed around the vehicle. A radar sensor can directly measure the distance and velocity of objects moving around the vehicle. A lidar sensor only measures distance.

Put aside a Kalman filter for a minute and think about how we could use lidar data to track an object. Let's say there is a bicyclist riding around in front of us. We send out a lidar signal and receive the signal back. The lidar sensor tells us that the bicycle is 10 meters directly ahead of us but gives no velocity information.

By the time our lidar device sends out another signal, maybe 0.05 seconds will have passed. But during those 0.05 seconds, our vehicle still needs to keep track of the bicycle. So our vehicle will predict where it thinks the bycicle will be. But our vehicle has no bicycle velocity information.

After 0.05 seconds, the lidar device sends out and receives another signal. This time, the bicycle is 9.95 meters ahead of us. Now we know that the bicycle is traveling -1 meter per second towards us. For the next 0.05 seconds, our vehicle will assume the bicycle is traveling -1 m/s towards us. Then another lidar signal goes out and comes back, and we can update the position and velocity again.

Sensor Noise

Unfortunately, lidar and radar signals are noisy. In other words, they are somewhat inacurrate. A Kalman filter helps to smooth out the noise so that we get a better fix on the bicycle's true position and velocity.

A Kalman filter does this by weighing the uncertainty in our belief about the location versus the uncertainty in the lidar or radar measurement. If our belief is very uncertain, the Kalman filter gives more weight to the sensor. If the sensor measurement has more uncertainty, our belief about the location gets more weight than the sensor measurement.

kalman-filter's People

Contributors

jacobsayono avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.