Giter Club home page Giter Club logo

orb-ygz-slam's Introduction

ORB-YGZ-SLAM

This is YGZ SLAM, a faster version folked from ORB-SLAM2 (see https://github.com/raulmur/ORB_SLAM2 and the README-ORB-SLAM2.md in this repo). We put the direct tracking in SVO to accelerate the feature matching in ORB-SLAM2. We can get an average 3x speed up and keep almost same accuracy. In addition we also support monocular Visual-Inertial SLAM (VI-SLAM), following idea proposed in Raul's paper.

Dependency

If you are using ubuntu, just type "./install_dependency.sh" to install all the dependencies except pangolin.

  • Pangolin (for visualization): https://github.com/stevenlovegrove/Pangolin
  • Eigen3: sudo apt-get install libeigen3-dev
  • g2o: sudo apt-get install libcxsparse-dev libqt4-dev libcholmod3.0.6 libsuitesparse-dev qt4-qmake
  • OpenCV: sudo apt-get install libopencv-dev
  • glog (for logging): sudo apt-get install libgoogle-glog-dev

Compile

run "./generate.sh" to compile all the things, or follow the steps in generate.sh

Examples

We support all the examples in the original ORB-SLAM2, and also the monocular-inertial examples. You can try the EUROC dataset (http://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets) and run the monocular/mono-inertial examples by typing:

./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.bin Examples/Monocular/EuRoC.yaml PATH_TO_SEQUENCE_FOLDER/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/SEQUENCE.txt 

just like in ORB-SLAM2. For VIO examples, try:

 ./Examples/Monocular/mono_euroc_vins ./Vocabulary/ORBvoc.bin ./Examples/Monocular/EuRoC.yaml /var/dataset/euroc/V1_01_easy/cam0/data ./Examples/Monocular/EuRoC_TimeStamps/V101.txt /var/dataset/euroc/V1_01_easy/imu0/data.csv

to run the VIO case.

Other things

We follow SVO when writing direct tracking, whose speed is very fast but robustness is not very good. In EUROC it can pass the test of MH01, MH02, MH03 and V101, V201. For difficult cases it may still fail. We are still improving it and writing a better solution for stereo-inertial case.

YGZ stands for Yi-Guo-Zhou (a port of porridge, a group of mess) because it contains feature method, direct method and imu things.

The Note.md is a file of develop records.

Contact me ([email protected]) or Wang Jing (https://github.com/jingpang) for commercial use.

in "scirpts" you can find some pythons to evalute the keyframe trajectory (6DoF or 7DoF in monocular case).

Thanks the following companies/people for finantial support:

  • Usens凌感科技
  • Hyperception 远形时空
  • Qfeeltech 速感科技
  • 天之博特
  • 视辰信息科技

orb-ygz-slam's People

Watchers

Li Meng 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.