Skip to content

annt3k/CppRobotics

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

70 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CppRobotics

This is the cpp implementation of the PythonRobotics

Requirment

  • cmake
  • opencv 3.3
  • Eigen 3
  • ROS (To make the repo lightweight :))

Build

 $ mkdir build
 $ cd build
 $ cmake ../
 $ make -j 8

Find all the executable files in build/bin.

Table of Contents

Localization

Extended Kalman Filter Localization

  • green line: the groundtruth trajectory
  • black line: dead reckoning
  • red points: observations (e.g. GPS)
  • blue line: estimated positions

ekf

Probabilistic Robotics

Particle Filter Localization

  • green line: the groundtruth trajectory
  • black line: dead reckoning
  • red points: landmarks
  • blue line: estimated positions

pf

Probabilistic Robotics

Path Planning

Dynamic Window Approach

  • blue circle: the target point
  • red circle: the robot

dwa

The dynamic window approach to collision avoidance

Model Predictive Trajectory Generator

This part is based on the bicycle motion model.

  • blue circle: the target point
  • red circle: the initial point

mptg

Cubic Spline Planner

csp

State Lattice Planner

  • blue circle: the target point
  • red circle: the initial point

slp

State Space Sampling of Feasible Motions for High-Performance Mobile Robot Navigation in Complex Environments

Frenet Frame Trajectory

  • black line: the planned spline path
  • red circle: the obstacle
  • blue circle: the planned trajectory
  • green circle: the real-time position of robot

frenet

Optimal Trajectory Generation for Dynamic Street Scenarios in a Frenet Frame

About

cpp implementation of robotics algorithms including localization, mapping, SLAM and path planning

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • C++ 97.9%
  • CMake 2.1%