Visual Odometry(VO)-SLAM-Review
SLAM is mainly divided into two parts: the front end and the back end. The front end is the visual odometer (VO), which roughly estimates the motion of the camera based on the information of adjacent images and provides a good initial value for the back end.The implementation methods of VO can be divided into two categories according to whether features are extracted or not: feature point-based methods, and direct methods without feature points. VO based on feature points is stable and insensitive to illumination and dynamic objects
=======================================================================
github:https://github.com/MichaelBeechan
CSDN:https://blog.csdn.net/u011344545
=======================================================================
SALM review paper download:
https://download.csdn.net/download/u011344545/10850261
1、Visual Odometry or VSLAM
2、Visual Inertial Odometry or VIO-SLAM
3、Based CNN(Net VO or Net VSLAM)
4、Lidar Visual odometry or Lidar SLAM
5、Semanitc SLAM
6、Datasets
7、Libraries
OF-VO:Robust and Efficient Stereo Visual Odometry Using Points and Feature Optical Flow
Code:https://github.com/MichaelBeechan/MyStereoLibviso2
SLAMBook
Paper:14 Lectures on Visual SLAM: From Theory to Practice,
Code:https://github.com/gaoxiang12/slambook
SLAMBook2
Code:https://github.com/gaoxiang12/slambook2
SVO: Fast Semi-Direct Monocular Visual Odometry
Paper:http://rpg.ifi.uzh.ch/docs/ICRA14_Forster.pdf
Video: http://youtu.be/2YnIMfw6bJY
Code:https://github.com/uzh-rpg/rpg_svo
Robust Odometry Estimation for RGB-D Cameras
Real-Time Visual Odometry from Dense RGB-D Images
Paper:http://www.cs.nuim.ie/research/vision/data/icra2013/Whelan13icra.pdf
Code:https://github.com/tum-vision/dvo
Parallel Tracking and Mapping for Small AR Workspaces
Paper:https://cse.sc.edu/~yiannisr/774/2015/ptam.pdf
http://www.robots.ox.ac.uk/ActiveVision/Papers/klein_murray_ismar2007/klein_murray_ismar2007.pdf
Code:https://github.com/Oxford-PTAM/PTAM-GPL
ORBSLAM
Code3:https://github.com/MichaelBeechan/ORBSLAM3
Paper3:ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM:https://arxiv.org/pdf/2007.11898.pdf
Code2:https://github.com/raulmur/ORB_SLAM2
Paper2:ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras:https://arxiv.org/pdf/1610.06475.pdf
Code1:https://github.com/raulmur/ORB_SLAM
Paper1:ORB-SLAM: A Versatile and Accurate Monocular SLAM System:https://arxiv.org/pdf/1502.00956.pdf
A ROS Implementation of the Mono-Slam Algorithm
Paper:https://www.researchgate.net/publication/269200654_A_ROS_Implementation_of_the_Mono-Slam_Algorithm
Code:https://github.com/rrg-polito/mono-slam
DTAM: Dense tracking and mapping in real-time
Paper:https://ieeexplore.ieee.org/document/6126513
Code:https://github.com/anuranbaka/OpenDTAM
LSD-SLAM: Large-Scale Direct Monocular SLAM
Paper:http://pdfs.semanticscholar.org/c13c/b6dfd26a1b545d50d05b52c99eb87b1c82b2.pdf
https://vision.in.tum.de/research/vslam/lsdslam
Code:https://github.com/tum-vision/lsd_slam
RGBD-Odometry (Visual Odometry based RGB-D images)
Real-Time Visual Odometry from Dense RGB-D Images
Code:https://github.com/tzutalin/OpenCV-RgbdOdometry
Paper:http://www.computer.org/csdl/proceedings/iccvw/2011/0063/00/06130321.pdf
Py-MVO: Monocular Visual Odometry using Python
Code:https://github.com/Transportation-Inspection/visual_odometry
Video:https://www.youtube.com/watch?v=E8JK19TmTL4&feature=youtu.be
Stereo-Odometry-SOFT
MATLAB Implementation of Visual Odometry using SOFT algorithm
Code:https://github.com/Mayankm96/Stereo-Odometry-SOFT
Paper:https://ieeexplore.ieee.org/document/7324219
GF_ORB_SLAM:Good Feature Matching: Towards Accurate, Robust VO/VSLAM with Low Latency
Paper:https://arxiv.org/pdf/2001.00714.pdf
Code:https://github.com/ivalab/GF_ORB_SLAM
monoVO-python
Code1:https://github.com/uoip/monoVO-pythone:https://github.com/uoip/monoVO-python
Code2:https://github.com/yueying/LearningVO
DVO:Robust Odometry Estimation for RGB-D Cameras
Code:https://github.com/tum-vision/dvo
https://vision.in.tum.de/data/software/dvo
Paper:https://www.researchgate.net/publication/221430091_Real-time_visual_odometry_from_dense_RGB-D_images
Dense Visual Odometry and SLAM (dvo_slam)
Code:https://github.com/tum-vision/dvo_slam
https://vision.in.tum.de/data/software/dvo
Paper:https://www.researchgate.net/publication/261353146_Dense_visual_SLAM_for_RGB-D_cameras
REVO:Robust Edge-based Visual Odometry
Combining Edge Images and Depth Maps for Robust Visual Odometry
Robust Edge-based Visual Odometry using Machine-Learned Edges
Code:https://github.com/fabianschenk/REVO
Paper:https://graz.pure.elsevier.com/
xivo
X Inertial-aided Visual Odometry
Code:https://github.com/ucla-vision/xivo
Paper:XIVO: X Inertial-aided Visual Odometry and Sparse Mapping
PaoPaoRobot
Code:https://github.com/PaoPaoRobot
ygz-slam
Code:https://github.com/PaoPaoRobot/ygz-slam
https://github.com/gaoxiang12/ygz-stereo-inertial
https://github.com/gaoxiang12/ORB-YGZ-SLAM
https://www.ctolib.com/generalized-intelligence-GAAS.html#5-ygz-slam
RTAB MAP
- RTAB MAP - Real-Time Appearance-Based Mapping. Available on ROS
Online Global Loop Closure Detection for Large-Scale Multi-Session Graph-Based SLAM, 2014 Appearance-Based Loop Closure Detection for Online Large-Scale and Long-Term Operation, 2013
MYNT-EYE
Code:https://github.com/slightech
Kintinuous
Real-time Large Scale Dense RGB-D SLAM with Volumetric Fusion
Deformation-based Loop Closure for Large Scale Dense RGB-D SLAM
Robust Real-Time Visual Odometry for Dense RGB-D Mapping
Kintinuous: Spatially Extended KinectFusion
A method and system for mapping an environment
Code:https://github.com/mp3guy/Kintinuous
ElasticFusion
ElasticFusion: Dense SLAM Without A Pose Graph
ElasticFusion: Real-Time Dense SLAM and Light Source Estimation
Paper:http://www.thomaswhelan.ie/Whelan16ijrr.pdf http://thomaswhelan.ie/Whelan15rss.pdf
Code:https://github.com/mp3guy/ElasticFusion
Co-Fusion:Real-time Segmentation, Tracking and Fusion of Multiple Objects
Paper:http://visual.cs.ucl.ac.uk/pubs/cofusion/index.html
R-VIO:Robocentric Visual-Inertial Odometry
(Kimera-VIO is a Visual Inertial Odometry pipeline for accurate State Estimation from Stereo + IMU data.)
Code:https://github.com/rpng/R-VIO
Paper:https://arxiv.org/abs/1805.04031
Kimera-VIO: Open-Source Visual Inertial Odometry
Code:https://github.com/MIT-SPARK/Kimera-VIO
Paper:https://arxiv.org/abs/1910.02490
Kimera: an Open-Source Library for Real-Time Metric-Semantic Localization and Mapping
ADVIO: An Authentic Dataset for Visual-Inertial Odometry
Code:https://github.com/AaltoVision/ADVIO
Paper:https://arxiv.org/abs/1807.09828
Data:https://zenodo.org/record/1476931#.XgCvYVIza00
MSCKF_VIO:Robust Stereo Visual Inertial Odometry for Fast Autonomous Flight
Paper:https://arxiv.org/abs/1712.00036
Code:https://github.com/KumarRobotics/msckf_vio
Kimera-VIO: Open-Source Visual Inertial Odometry
Kimera: an Open-Source Library for Real-Time Metric-Semantic Localization and Mapping
Code:https://github.com/MIT-SPARK/Kimera-VIO
Paper:https://arxiv.org/abs/1910.02490
LIBVISO2: C++ Library for Visual Odometry 2
Paper:http://www.cvlibs.net/software/libviso/
Code:https://github.com/srv/viso2
Stereo Visual SLAM for Mobile Robots Navigation
A constant-time SLAM back-end in the continuum between global mapping and submapping: application to visual stereo SLAM
Paper:http://mapir.uma.es/famoreno/papers/thesis/FAMD_thesis.pdf
Code:https://github.com/famoreno/stereo-vo
Combining Edge Images and Depth Maps for Robust Visual Odometry
Robust Edge-based Visual Odometry using Machine-Learned Edges(REVO)
Paper:https://graz.pure.elsevier.com/
Code:https://github.com/fabianschenk/REVO
HKUST Aerial Robotics Group
VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator
Paper:https://arxiv.org/pdf/1708.03852.pdf
Code:https://github.com/HKUST-Aerial-Robotics/VINS-Mono
VINS-Fusion:Online Temporal Calibration for Monocular Visual-Inertial Systems
Paper:https://arxiv.org/pdf/1808.00692.pdf
Code:https://github.com/HKUST-Aerial-Robotics/VINS-Fusion
Monocular Visual-Inertial State Estimation for Mobile Augmented Reality
Paper:https://ieeexplore.ieee.org/document/8115400
Code:https://github.com/HKUST-Aerial-Robotics/VINS-Mobile
Computer Vision Group TUM Department of Informatics Technical University of Munich
DSO: Direct Sparse Odometry
Code:https://github.com/JingeTu/StereoDSO
Visual-Inertial DSOhttps://vision.in.tum.de/research/vslam/vi-dso
https://vision.in.tum.de/research/vslam/dvso
DVSO:https://vision.in.tum.de/research/vslam/ldso
DSO with Loop-closure and Sim(3) pose graph optimization:Stereo odometry based on careful feature selection and tracking
Paper:https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=7324219
Code:https://github.com/Mayankm96/Stereo-Odometry-SOFT
OKVIS: Open Keyframe-based Visual-Inertial SLAM
Code:https://github.com/gaoxiang12/okvis
Trifo-VIO: Robust and Efficient Stereo Visual Inertial Odometry using Points and Lines
Paper:https://arxiv.org/pdf/1803.02403.pdf
Code:https://github.com/UMiNS/Trifocal-tensor-VIO
PL-VIO: Tightly-Coupled Monocular Visual–Inertial Odometry Using Point and Line Features
Paper:https://www.mdpi.com/1424-8220/18/4/1159/html
Overview of visual inertial navigation
A Review of Visual-Inertial Simultaneous Localization and Mapping from Filtering-Based and Optimization-Based Perspectives:
https://ieeexplore.ieee.org/document/5423178
https://www.mdpi.com/2218-6581/7/3/45
VINet: Visual-Inertial Odometry as a Sequence-to-Sequence Learning Problem
Paper:https://arxiv.org/abs/1701.08376
Code:https://github.com/HTLife/VINet
DeepVO: Towards End-to-End Visual Odometry with Deep Recurrent Convolutional Neural Networks
Code:https://github.com/ildoonet/deepvo
https://github.com/sladebot/deepvo
https://github.com/themightyoarfish/deepVO
https://github.com/fshamshirdar/DeepVO (pytorch)
Paper:http://www.cs.ox.ac.uk/files/9026/DeepVO.pdf
UnDeepVO: Implementation of Monocular Visual Odometry through Unsupervised Deep Learning
Code:https://github.com/drmaj/UnDeepVO
Paper:https://arxiv.org/pdf/1709.06841.pdf
SfM-Net: SfM-Net: Learning of Structure and Motion from Video
Code: https://github.com/waxz/sfm_net
Paper: https://arxiv.org/pdf/1704.07804v1.pdf
CNN-SLAM: CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction
Code: https://github.com/iitmcvg/CNN_SLAM
Paper:https://arxiv.org/pdf/1704.03489.pdf
PoseNet: Posenet: A convolutional network for real-time 6-dof camera relocalization(ICCV2015)
Code:https://github.com/alexgkendall/caffe-posenet or https://github.com/kentsommer/tensorflow-posenet
Paper:https://arxiv.org/pdf/1505.07427.pdf or https://arxiv.org/pdf/1509.05909.pdf
VidLoc: VidLoc: 6-doF video-clip relocalization
Code: https://github.com/futurely/deep-camera-relocalization
Paper: https://arxiv.org/pdf/1702.06521.pdf
NetVLAD: NetVLAD: CNN architecture for weakly supervised place recognition(CVPR2016)
Code: https://github.com/Relja/netvlad (Matlab) or https://github.com/lyakaap/NetVLAD-pytorch
Paper: https://arxiv.org/pdf/1511.07247.pdf
DeMoN: Depth and Motion Network for Learning Monocular Stereo(CVPR2017)
Code: https://github.com/lmb-freiburg/demon
Paper: https://arxiv.org/pdf/1612.02401v2.pdf
Learned Stereo Machine
Code: https://github.com/akar43/lsm
Paper: https://arxiv.org/pdf/1708.05375.pdf
SfMLearner: Unsupervised Learning of Depth and Ego-Motion from Video
Code: https://github.com/tinghuiz/SfMLearner
Paper: https://arxiv.org/pdf/1704.07813.pdf
Toward Geometric Deep SLAM
Code: UNopen(https://github.com/mtrasobaresb)
Paper: https://arxiv.org/pdf/1707.07410v1.pdf
Neural SLAM : Learning to Explore with External Memory
Code: UNopen
Paper: https://arxiv.org/pdf/1706.09520.pdf
PoseConvGRU: A Monocular Approach for Visual Ego-motion Estimation by Learning(2019)
Code: UNopen
Paper: https://arxiv.org/pdf/1906.08095.pdf
Semi-Dense 3D Semantic Mapping from Monocular SLAM(2016)
Code: UNopen
Paper: https://arxiv.org/pdf/1611.04144.pdf
Image-based 3D Object Reconstruction: State-of-the-Art and Trends in the Deep Learning Era(2019)
Paper: https://arxiv.org/pdf/1906.06543.pdf
DeepMVS: DeepMVS: Learning Multi-view Stereopsis(CVPR2018)
Code: https://github.com/phuang17/DeepMVS
Paper: https://phuang17.github.io/DeepMVS/index.html
Paper: https://arxiv.org/pdf/1804.00650.pdf
MVSNet: Mvsnet: Depth inference for unstructured multi-view stereo(ECCV2018)
Code1: https://github.com/YoYo000/MVSNet
Code2: https://github.com/YoYo000/BlendedMVS
Paper: https://arxiv.org/pdf/1804.02505.pdf
PointMVSNet:Point-based Multi-view Stereo Network
Code: https://github.com/callmeray/PointMVSNet
Paper: https://arxiv.org/pdf/1908.04422.pdf
Recurrent MVSNet: Recurrent MVSNet for High-resolution Multi-view Stereo Depth Inference(CVPR2019)
Code: https://github.com/YoYo000/MVSNet
Paper: https://arxiv.org/pdf/1902.10556.pdf
(ESP-VO) End-to-End, Sequence-to-Sequence Probabilistic Visual Odometry through Deep Neural Networks
Code: https://github.com/espnet/espnet
https://www.seas.upenn.edu/~meam620/slides/kinematicsI.pdf
Lidar Visual odometry
Lidar-Monocular Visual Odometry
Code:https://github.com/johannes-graeter/limo
Paper:https://arxiv.org/pdf/1807.07524.pdf
RGBD and LIDAR
- Google's cartographer. Available on ROS
CAE-LO: LiDAR Odometry Leveraging Fully Unsupervised Convolutional Auto-Encoder for Interest Point Detection and Feature Description
Paper:https://arxiv.org/ftp/arxiv/papers/2001/2001.01354.pdf
Code:https://github.com/SRainGit/CAE-LO
Other open source projects
DynaSLAM A SLAM system robust in dynamic environments for monocular, stereo and RGB-D setups
openvslam A Versatile Visual SLAM Framework
cartographer
Code:https://github.com/googlecartographer/cartographer
Paper:https://google-cartographer.readthedocs.io/en/latest/
A-LOAM(Advanced implementation of LOAM)
LOAM: Lidar Odometry and Mapping in Real-time
Code1:https://github.com/HKUST-Aerial-Robotics/A-LOAM
Code2:https://github.com/cuitaixiang/LOAM_NOTED
Paper:http://roboticsproceedings.org/rss10/p07.pdf
SemanticFusion: Dense 3D semantic mapping with convolutional neural networks
Code: https://github.com/seaun163/semanticfusion
Paper: https://arxiv.org/pdf/1609.05130v2.pdf
ORB_SLAM2_SSD_Semantic
Code:https://github.com/Ewenwan/ORB_SLAM2_SSD_Semantic
Visual Semantic SLAM with Landmarks for Large-Scale Outdoor Environment
Paper:https://arxiv.org/pdf/2001.01028.pdf
Code:https://github.com/1989Ryan/Semantic_SLAM/
Datasets
- TUM Universtiy
- KITTI Vision benchmark
- UNI-Freiburg
- ADVIO
- Oxford RobotCar Dataset
- HRI (Honda Research Institute) Driving Datasets
- Argoverse
- nuScenes
- Waymo Open Dataset
- Lyft Level 5 AV Dataset 2019
- KAIST Urban Dataset