Giter Site home page Giter Site logo

sina-baharlou / pose-estimation-ekf Goto Github PK

View Code? Open in Web Editor NEW
44.0 1.0 12.0 19.21 MB

3D Pose Estimation of the Planar Robot Using Extended Kalman Filter

Python 100.00%
pose-estimation extended-kalman-filter machine-learning kalman-filter planar-robot rosbag ros python ekf-localization

pose-estimation-ekf's Introduction

3D Pose Estimation of the Planar Robot Using Extended Kalman Filter

Introduction

This project focuses on the navigation and path estimation of a 2D planar robot (tank- threaded robot), in 3D space. The project refers to the classical dead reckoning problem, where there is no accurate information available about the position of the robot and the robot is not equipped with a GPS sensor, the only provided information is the change in position and orientation over time (Odometry , which is not robust against drifting), and a more accurate orientation of the robot provided by IMU device. The aim here, is to use those data coming from the Odometry and IMU devices to design an extended kalman filter in order to estimate the position and the orientation of the robot. The position of the 2D planar robot has been assumed to be 3D, then the kalman filter can also estimate the robot path when the surface is not totally flat. One may also use the linear acceleration and angular velocity provided by IMU, but in this project they are skipped because of the high noise and the sudden changes in the information caused by a bumpy road or other elements.

Demonstration

The results of the default sample are illustrated in the following figure. On the left, you can see the comparison between the odometric path estimation and EKF. The rest of the figures show the 3D path estimated using EKF. The starting and ending point of the actual path traversed by the robot is the same, but in the odometric estimation, there is a big displacement between these two points. After correcting the angles using the extended kalman filter, the displacement significantly decreased.

Adviser

Prof. Giorgio Grisetti

Code

Please make sure you have the the following requirements installed:

Requirements

  • Python >= 3.6
  • RosBag (sudo apt-get install python-rosbag)
  • NumPy
  • MatplotLib

To run the code, set your parameters in main.py file, then run python main.py.

pose-estimation-ekf's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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.