/Robot-Localization-and-Mapping

Code for implementing State estimation and Mapping algorithms

Primary LanguagePython

Robot Localization and Mapping

Course-assignments for the course ESE 650 - Learning in Robotics (Spring 2022) that involve State Estimation (Kalman Filter and its variants) and Mapping (Occupany Grid). The theory behind these concepts is described in these blog posts: Deriving Kalman Gain, Filtering Algorithm, EKF, UKF, Particle Filter, Mapping.

The problems are described in more detail in Problems.pdf and the solutions in Solutions.pdf.

Problem 1 - Extended Kalman Filter (EKF)

The aim of this problem is to use filtering to estimate an unknown parameter of a non-linear dynamical system. Collected a dataset of observations using the ground truth value of the system parameter and developed the EKF equations that uses this dataset to estimate it.

Problem 2 - Unscented Kalman Filter (UKF)

Implemented a quaternion-based 7-DOF UKF for tracking the orientation of a drone in three-dimensions using 6-axis IMU data. The Vicon data is used as ground truth for calibration and tuning of the filter.

Problem 3 - Simultaneous Localization and Mapping (SLAM) with Particle Filter

Coded a particle filter based SLAM using odometry and lidar data collected on THOR-OP humanoid robot to build a 2D occupancy grid map of indoor environments.