Skip to content

Visual Odometry Pipeline for 2D-2D, 3D-2D with bundle adjustment and 3D reconstruction

Notifications You must be signed in to change notification settings

prostoiChelovek/VisualOdometry

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Requirement

  • OpenCV 3.0
  • Kitti data or you own data
  • Tested with Cmake on my mac

Introduction

This implementation is for 3D-2D visual odometry, you need to have stereo image pairs to generate 3D points for feature points, and then track the feature points to the new coming frame, and then recover the pose of the newly joined frame as the current pose for the new frame.

The feature points becomes less as tracking processing going on forward. Here, my strategy is quite simple. Drop all the feature points from the old frame and extract new frames for the new image pair and 3D points. Since the transformation matrix R is available and now you can make simple transformation to transform the new 3D points back to the coordinate frame based on the initial frame 0. In this way, all the 3D point coordinates are based on the frame 0 and all poses are according to frame 0.

This source code is easy to understand and follows the steps:

Initialize feature points, 3D points --> Track feature points and recover pose --> create new feature points, 3D points --> go back to track again!.

If you wan to know how to add bundle adjustment for optimization of poses, please refer to the version 2 on how to add bundle adjustment.

This tutorial and This blog for explanation.

About

Visual Odometry Pipeline for 2D-2D, 3D-2D with bundle adjustment and 3D reconstruction

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 97.2%
  • CMake 2.8%