Skip to content

😎 A curated list of awesome mobile robots study resources based on ROS (including SLAM, odometry and navigation, manipulation)

Notifications You must be signed in to change notification settings

shannon112/awesome-ros-mobile-robot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 

Repository files navigation

awesome-ros-mobile-robot Awesome

This repository provides some useful resources and informations about autonomous mobile robots (AMR) research based on ROS. It would mainly focus on basic function of mobile robots(like odometry, SLAM, navigation and manipulation).
(including both Chinese and English materials)

Index:

0_Robotics

📚 Books

  • "Introduction to Algorithms", Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein
  • "Multiple View Geometry in Computer Vision", Richard Hartley, Andrew Zisserman
  • "Probabilistic Robotics", Sebastian Thrun
  • "Introduction to Linear Algebra", Five Edition, Gilbert Strang
  • "Pattern Recognition and Machine Learning", Christopher M. Bishop
  • "Introduction to autonomous mobile robots" Siegwart, Roland, Illah Reza Nourbakhsh, and Davide Scaramuzza
  • "視覺 SLAM 十四講:從理論到實踐", 高翔

📖 Courses

📜 Paper Libraries

1_Robot_Operating_System

👾 ROS Official Website

🗣 ROS Related Blogs & Channels & Forums

📚 Books

  • "C++ Primer", Stanley B. Lippman, Josée Lajoie, Barbara E. Moo
  • "C++ Concurrency in Action, 2nd Edition", Anthony Williams
  • "Design Patterns: Elements of Reusable Object-Oriented Software", The "Gang of Four": Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides
  • "Head First Design Patterns, 2nd Edition", Eric Freeman, Elisabeth Robson
  • "Clean Code: A Handbook of Agile Software Craftsmanship", Robert C. Martin
  • "ROS by Example", python, Patrick Goebel
  • "Mastering ROS for Robotics Programming", Lentin Joseph
  • "Learning ROS for Robotics Programming", Enrique Fernandez et al.
  • "Programming Robots with ROS: A Practical Introduction to the Robot Operating System", Morgan Quigley et al.
  • "機器人作業系統ROS 淺析", Jason M. O'Kane, 肖軍浩譯
  • "機器人作業系統ROS 史話36篇", 張新宇, http://www.roseducation.org/docs/ROS_history.pdf

🤝 System Integration Tool

2_Robotic_Platform

🤖 ROS Robot Overview

🚘 Wheel Robot Configurations

(ref: Siegwart, Roland, Illah Reza Nourbakhsh, and Davide Scaramuzza. Introduction to autonomous mobile robots. MIT press, 2011, Table 2.1, p.34~36)

🚗 Race Car Projects

🤖 ROS Mobile Robot Github

🤖 ROS Mobile Manipulator Github

🤖 ROS Manipulator Github

💻 Processing Unit (SBC/IPC)

  • Raspberry Pi(RPI), BeagleBone Black(BBB), Odroid XU4, Odroid N2, Asus Tinker Board
  • NVIDIA Jetson TX1, NVIDIA Jetson TX2, NVIDIA Jetson NANO, NVIDIA Jetson Xavier
  • ADLINK Neuron,

🕹 Motor & Controller & Encoder

  • Elmo Motion Control Ltd
  • RLS d.o.o. (Rotary and Linear Motion Sensors)
  • Dr. Fritz Faulhaber GmbH & Co. KG
  • Maxon group motors & drivers
  • Dexmart motors & drivers (Trumman Technology Corp)

3_Robotic_Sensing

📷 RGB Camera

📸 RGB-D Camera

🎥 Stereo Camera

🔦 Laser Rangefinder [laser scanners] [scanning rangefinder]
– often represent 2D laser scanning

💡 LIDAR [light detection and ranging] [light imaging, detection, and ranging] [3D laser scanning ]
– often represent 3D laser scanning

🍎 IMU [inertial measurement unit]

🚨 3D Scanning & Novel Sensing Device

🎙 Microphone Array

🔊 Text To Speech (TTS)

🗣 Speech Recognition / Speech To Text (STT)

🚀 Vocal Assistant

👾 Matrix Barcode (Fiducial Marker Systems, or ARTag, or Auxiliary marker)

🔅 Learning-Based Feature Extractor

🔅 Learning-Based Object Detection

  • "Faster R-CNN"

    Ren, Shaoqing, et al. "Faster r-cnn: Towards real-time object detection with region proposal networks." Advances in neural information processing systems. 2015.

  • "SSD"

    Liu, Wei, et al. "Ssd: Single shot multibox detector." European conference on computer vision. Springer, Cham, 2016.

  • "YOLOv3": https://github.com/leggedrobotics/darknet_ros

    (v4) Bochkovskiy, Alexey, Chien-Yao Wang, and Hong-Yuan Mark Liao. "YOLOv4: Optimal Speed and Accuracy of Object Detection." arXiv preprint arXiv:2004.10934 (2020).
    (v3) Redmon, Joseph, and Ali Farhadi. "Yolov3: An incremental improvement." arXiv preprint arXiv:1804.02767 (2018).
    (v2) Redmon, Joseph, and Ali Farhadi. "YOLO9000: better, faster, stronger." Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
    (v1) Redmon, Joseph, et al. "You only look once: Unified, real-time object detection." Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.

🔅 Learning-Based Human Pose Estimation

4_Calibration

📷 Camera Calibration (Intrinsic and Extrinsic parameters)

👁 Hand-Eye Calibration

🍎 IMU (Sparkfun Razer 9dof-razor-imu-m0) Calibration

5_Odometry

☠︎ Visual Based Ego-Motion Backbone

  • Components
    • Feature Keypoint & Desciptor - SURF, SIFT, ORB
    • Feature Matching - Brute-Force, FLANN
    • Optical Flow - Lucas-Kanade (LK)
    • Motion Estimation:
      • 2D-2D: Epipolar Geometry & Triangulation
      • 2D-3D: Perspective-n-Point (PnP) - P3P, DLT, EPnP, UPnP, BA
      • 3D-3D: Iterative Closest Point (ICP) - ICP(SVD), GICP, NDT, IPDA, Non-LinearOpt, point2point, point2plane
    • Direct Method - Dense, Semi-Dense, Sparse
  • Solutions
    • Extract Feature Keypoint -> Desciptor -> Matching -> Motion Estimation
    • Extract Feature Keypoint -> Optical Flow -> Motion Estimation
    • Extract Feature Keypoint -> Sparse Direct Method
    • Semi-Dense/Dense Direct Method

📚 Odometry Survey Paper

  • Delmerico, Jeffrey, and Davide Scaramuzza. "A benchmark comparison of monocular visual-inertial odometry algorithms for flying robots." 2018 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2018.
  • G. Huang, "Visual-Inertial Navigation: A Concise Review," 2019 International Conference on Robotics and Automation (ICRA), Montreal, QC, Canada, 2019, pp. 9572-9582.

🏆 Odometry Algorithm Ranking

🚖 Wheel Odometry

💡 2D Laser Based Odometry

  • "rf2o": https://github.com/MAPIRlab/rf2o_laser_odometry

    M. Jaimez, J. Monroy, J. Gonzalez-Jimenez, Planar Odometry from a Radial Laser Scanner. A Range Flow-based Approach, IEEE International Conference on Robotics and Automation (ICRA), Stockholm, Sweden, pp. 4479-4485, 2016.

📷 3D Visual Based Odometry (Mono)

  • "VINS-Mono": https://github.com/HKUST-Aerial-Robotics/VINS-Mono

    Qin, Tong, Peiliang Li, and Shaojie Shen. "Vins-mono: A robust and versatile monocular visual-inertial state estimator." IEEE Transactions on Robotics 34.4 (2018): 1004-1020.

  • "SVO": https://github.com/uzh-rpg/rpg_svo | http://rpg.ifi.uzh.ch/svo2.html Sparse Direct Method

    Forster, Christian, Matia Pizzoli, and Davide Scaramuzza. "SVO: Fast semi-direct monocular visual odometry." 2014 IEEE international conference on robotics and automation (ICRA). IEEE, 2014.

  • "DSO": https://github.com/JakobEngel/dso Sparse Direct Method

    Engel, Jakob, Vladlen Koltun, and Daniel Cremers. "Direct sparse odometry." IEEE transactions on pattern analysis and machine intelligence 40.3 (2017): 611-625.

  • "VISO2": http://wiki.ros.org/viso2_ros | http://www.cvlibs.net/software/libviso/

    Geiger, Andreas, Julius Ziegler, and Christoph Stiller. "Stereoscan: Dense 3d reconstruction in real-time." 2011 IEEE Intelligent Vehicles Symposium (IV). Ieee, 2011.
    Kitt, Bernd, Andreas Geiger, and Henning Lategahn. "Visual odometry based on stereo image sequences with ransac-based outlier rejection scheme." 2010 ieee intelligent vehicles symposium. IEEE, 2010.

  • "OKVIS": https://github.com/ethz-asl/okvis | https://github.com/ethz-asl/okvis_ros

    Leutenegger, Stefan, et al. "Keyframe-based visual–inertial odometry using nonlinear optimization." The International Journal of Robotics Research 34.3 (2015): 314-334.

  • "ROVIO": https://github.com/ethz-asl/rovio

    Bloesch, Michael, et al. "Robust visual inertial odometry using a direct EKF-based approach." 2015 IEEE/RSJ international conference on intelligent robots and systems (IROS). IEEE, 2015.
    Bloesch, Michael, et al. "Iterated extended Kalman filter based visual-inertial odometry using direct photometric feedback." The International Journal of Robotics Research 36.10 (2017): 1053-1072.

  • "RotRocc+, RotRocc, ROCC, MonoROCC"

    M. Buczko and V. Willert: Flow-Decoupled Normalized Reprojection Error for Visual Odometry. 19th IEEE Intelligent Transportation Systems Conference (ITSC) 2016.
    M. Buczko, V. Willert, J. Schwehr and J. Adamy: Self-Validation for Automotive Visual Odometry. IEEE Intelligent Vehicles Symposium (IV) 2018.
    M. Buczko and V. Willert: Monocular Outlier Detection for Visual Odometry. IEEE Intelligent Vehicles Symposium (IV) 2017.
    M. Buczko and V. Willert: How to Distinguish Inliers from Outliers in Visual Odometry for High-speed Automotive Applications. IEEE Intelligent Vehicles Symposium (IV) 2016.

📸 3D RGB-D/Stereo Based Odometry

  • "VINS-Fusion": https://github.com/HKUST-Aerial-Robotics/VINS-Fusion

    Qin, Tong, and Shaojie Shen. "Online temporal calibration for monocular visual-inertial systems." 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2018.

  • "DVO": https://github.com/tum-vision/dvo

    Kerl, Christian, Jürgen Sturm, and Daniel Cremers. "Robust odometry estimation for RGB-D cameras." 2013 IEEE International Conference on Robotics and Automation. IEEE, 2013. Steinbrücker, Frank, Jürgen Sturm, and Daniel Cremers. "Real-time visual odometry from dense RGB-D images." 2011 IEEE international conference on computer vision workshops (ICCV Workshops). IEEE, 2011.

  • "SOFT": https://github.com/Mayankm96/Stereo-Odometry-SOFT

    Cvišic, Igor, et al. "Soft-slam: Computationally efficient stereo visual slam for autonomous uavs." Journal of field robotics (2017).
    Cvišić, Igor, and Ivan Petrović. "Stereo odometry based on careful feature selection and tracking." 2015 European Conference on Mobile Robots (ECMR). IEEE, 2015.

  • "VISO2": http://wiki.ros.org/viso2_ros | http://www.cvlibs.net/software/libviso/

    Geiger, Andreas, Julius Ziegler, and Christoph Stiller. "Stereoscan: Dense 3d reconstruction in real-time." 2011 IEEE Intelligent Vehicles Symposium (IV). Ieee, 2011.
    Kitt, Bernd, Andreas Geiger, and Henning Lategahn. "Visual odometry based on stereo image sequences with ransac-based outlier rejection scheme." 2010 ieee intelligent vehicles symposium. IEEE, 2010.

🔅 3D LiDAR Based Odometry

  • "LOAM & V-LOAM": https://github.com/laboshinl/loam_velodyne

    J Zhang, S Singh, "LOAM: Lidar Odometry and Mapping in Real-time", Robotics: Science and Systems Conference (RSS 2014)
    J Zhang, S Singh, "Visual-lidar Odometry and Mapping: Low-drift, Robust, and Fast", IEEE International Conference on Robotics and Automation (ICRA)
    J. Zhang, M. Kaess and S. Singh: Real-time Depth Enhanced Monocular Odometry. IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2014.

  • "LIMO": https://github.com/johannes-graeter/limo

    Graeter, Johannes, Alexander Wilczynski, and Martin Lauer. "Limo: Lidar-monocular visual odometry." 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2018.

🤖 Learning Based Odometry

🍥 Odometry Fusion

6_SLAM

🏛 SLAM Theorem & Tutorial

  • T. Bailey and H. F. Durrant-Whyte, “Simultaneous localisation and map- ping (SLAM): Part II”, IEEE Robot. Auton. Syst., vol. 13, no. 3, pp. 108–117, 2006.
  • H. F. Durrant-Whyte and T. Bailey, “Simultaneous localisation and map- ping (SLAM): Part I”, IEEE Robot. Autom. Mag., vol. 13, no. 2, pp. 99–110, Jun. 2006
  • Strasdat, Hauke, José MM Montiel, and Andrew J. Davison. "Visual SLAM: why filter?." Image and Vision Computing 30.2 (2012): 65-77. (comparison between filter and graph)
  • Grisetti, Giorgio, et al. "A tutorial on graph-based SLAM." IEEE Intelligent Transportation Systems Magazine 2.4 (2010): 31-43.

📚 SLAM Survey Paper

  • Cesar Cadena ; Luca Carlone ; Henry Carrillo ; Yasir Latif ; Davide Scaramuzza ; José Neira ; Ian Reid ; John J. Leonard, “Past, Present, and Future of Simultaneous Localization And Mapping: Towards the Robust-Perception Age”, IEEE Transactions on RoboticsYear: 2016, Volume: 32, Issue: 6Pages: 1309 - 1332
  • Jamiruddin, Redhwan, et al. "Rgb-depth slam review." arXiv preprint arXiv:1805.07696 (2018).
  • Zollhöfer, Michael, et al. "State of the Art on 3D Reconstruction with RGB‐D Cameras." Computer graphics forum. Vol. 37. No. 2. 2018.

☠︎ SLAM Backbone (Back-End)

  • Kalman Filter Based
    • Kalman Filter (KF), Extend Kalman Filte (EKF), Unscented Kalman Filte (UKF)
    • Extended Information Filter (EIF), Sparse Extended Information Filter (SEIF)
  • Particle Filter Based
    • Gmapping, FastSLAM, FastSLAM2.0
  • Graph Optimization Based
    • Method: Bundle Adjustment(BA), Pose Graph, Factor Graph
    • Regression Solution: Gaussian Netwon (GN), Leverberg Marquert(LM)
    • Efficiently Solving: Cholesky Factorization, QR Decomposition, Conjugate Gradients
    • Ceres Solver Library: S. Agarwal and M. Keir. "Ceres solver." [online]. Available: http://ceres-solver.org/
    • g2o Library: Kümmerle, Rainer, et al. "g 2 o: A general framework for graph optimization." 2011 IEEE International Conference on Robotics and Automation. IEEE, 2011.
    • GTSAM: Dellaert, Frank. Factor graphs and GTSAM: A hands-on introduction. Georgia Institute of Technology, 2012.
    • iSAM: (1)Kaess, M., Ranganathan, A., and Dellaert, F. (2008). iSAM: Incremental smoothing and mapping.IEEE Trans. Robotics, 24(6):1365–1378. (2)Kaess, M., Johannsson, H., Roberts, R., Ila, V., Leonard, J., and Dellaert, F. (2012). iSAM2:Incremental smoothing and mapping using the Bayes tree.Intl. J. of Robotics Research, 31:217–236. (iSAM2 is available as part of the GTSAM)
    • SLAM++: Ila, Viorela, et al. "SLAM++-A highly efficient and temporally scalable incremental SLAM framework." The International Journal of Robotics Research 36.2 (2017): 210-230.
  • Learning Based

📐 SLAM Benchmark (Dataset)

  • "The KITTI Vision Benchmark & Dataset": http://www.cvlibs.net/datasets/kitti/

    Geiger, Andreas, Philip Lenz, and Raquel Urtasun. "Are we ready for autonomous driving? the kitti vision benchmark suite." 2012 IEEE Conference on Computer Vision and Pattern Recognition. IEEE, 2012.

  • "MIT Stata Center Dataset": https://projects.csail.mit.edu/stata/#

    Fallon, Maurice, et al. "The mit stata center dataset." The International Journal of Robotics Research 32.14 (2013): 1695-1699.

  • "Radish Dataset": http://ais.informatik.uni-freiburg.de/slamevaluation/datasets.php

    Howard and N. Roy, “The robotics data set repository (Radish),”2003. [Online]. Available: http://radish.sourceforge.net/

  • "TUM RGB-D SLAM Benchmark & Dataset": https://vision.in.tum.de/data/datasets/rgbd-dataset

    Sturm, Jürgen, et al. "A benchmark for the evaluation of RGB-D SLAM systems." 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2012.

  • "ICL-NUIM RGB-D Benchmark & Dataset": https://www.doc.ic.ac.uk/~ahanda/VaFRIC/iclnuim.html

    A. Handa, T. Whelan, J. McDonald, and A. J. Davison, “A bench-mark for rgb-d visual odometry, 3d reconstruction and slam,” inRobotics and automation (ICRA), 2014 IEEE international conferenceon. IEEE, 2014, pp. 1524–1531.

  • "EuRoC MAV Dataset": https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets

    Burri, Michael, et al. "The EuRoC micro aerial vehicle datasets." The International Journal of Robotics Research 35.10 (2016): 1157-1163.

  • "Benchmark"

    R.K ̈ummerle, B.Steder, C.Dornhege, M.Ruhnke, G.Grisetti, C.Stachniss, and A.Kleiner, "On measuring the accuracy of SLAM algorithms," Autonomous Robots, vol. 27, no. 4, pp. 387–407, 2009.

  • "Survey Paper"

    Cai, Ziyun, et al. "RGB-D datasets using microsoft kinect or similar sensors: a survey." Multimedia Tools and Applications 76.3 (2017): 4313-4355.

💡 2D Laser Based SLAM

  • "Cartographer": https://google-cartographer-ros.readthedocs.io/en/latest/

    Wolfgang Hess ; Damon Kohler ; Holger Rapp ; Daniel Andor, “Real-time loop closure in 2D LIDAR SLAM ”, 2016 IEEE International Conference on Robotics and Automation (ICRA), Stockholm, 2016, pp. 1271-1278.

  • "Gmapping": http://wiki.ros.org/gmapping

    G. Grisetti, C. Stachniss and W. Burgard, "Improved Techniques for Grid Mapping With Rao-Blackwellized Particle Filters," IEEE Transactions on Robotics, vol. 23, no. 1, pp. 34-46, Feb. 2007.

  • "Hector": http://wiki.ros.org/hector_slam

    S. Kohlbrecher, O. von Stryk, J. Meyer and U. Klingauf, "A flexible and scalable SLAM system with full 3D motion estimation," 2011 IEEE International Symposium on Safety, Security, and Rescue Robotics, Kyoto, 2011, pp. 155-160.

  • "Karto": http://wiki.ros.org/slam_karto

    Vincent, R., Limketkai, B., & Eriksen, M. (2010, April). Comparison of indoor robot localization techniques in the absence of GPS. In Detection and Sensing of Mines, Explosive Objects, and Obscured Targets XV (Vol. 7664, p. 76641Z). International Society for Optics and Photonics.

  • "FastSLAM":

    Montemerlo, Michael, et al. "FastSLAM: A factored solution to the simultaneous localization and mapping problem." Aaai/iaai 593598 (2002).
    Montemerlo, Michael, et al. "FastSLAM 2.0: An improved particle filtering algorithm for simultaneous localization and mapping that provably converges." IJCAI. 2003.

📷 3D Visual Based SLAM (Mono)

  • "MonoSLAM": https://github.com/hanmekim/SceneLib2 Feature + EKF

    Davison, Andrew J., et al. "MonoSLAM: Real-time single camera SLAM." IEEE transactions on pattern analysis and machine intelligence 29.6 (2007): 1052-1067.

  • "PTAM": http://www.robots.ox.ac.uk/~gk/PTAM/ Feature + BA

    Klein, Georg, and David Murray. "Parallel tracking and mapping for small AR workspaces." 2007 6th IEEE and ACM international symposium on mixed and augmented reality. IEEE, 2007.

  • "ORB-SLAM": https://github.com/raulmur/ORB_SLAM2 Feature + (BA + Pose-Graph)

    Raúl Mur-Artal, J. M. M. Montiel and Juan D. Tardós. ORB-SLAM: A Versatile and Accurate Monocular SLAM System. IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147-1163, 2015.
    Dorian Gálvez-López and Juan D. Tardós. Bags of Binary Words for Fast Place Recognition in Image Sequences. IEEE Transactions on Robotics, vol. 28, no. 5, pp. 1188-1197, 2012.

  • "LSD-SLAM": Semi-dense Direct Method + Pose-Graph

    Engel, Jakob, Thomas Schöps, and Daniel Cremers. "LSD-SLAM: Large-scale direct monocular SLAM." European conference on computer vision. Springer, Cham, 2014.

📸 3D RGB-D/Stereo Based SLAM

  • "DTAM": https://github.com/anuranbaka/OpenDTAM

    Newcombe, Richard A., Steven J. Lovegrove, and Andrew J. Davison. "DTAM: Dense tracking and mapping in real-time." 2011 international conference on computer vision. IEEE, 2011.

  • "ORB-SLAM2": https://github.com/raulmur/ORB_SLAM2

    Raúl Mur-Artal and Juan D. Tardós. ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras. IEEE Transactions on Robotics, vol. 33, no. 5, pp. 1255-1262, 2017.

  • "ORB-SLAM3": https://github.com/UZ-SLAMLab/ORB_SLAM3

    [ORB-SLAM3] Carlos Campos, Richard Elvira, Juan J. Gómez Rodríguez, José M. M. Montiel and Juan D. Tardós, ORB-SLAM3: An Accurate Open-Source Library for Visual, Visual-Inertial and Multi-Map SLAM, Under review.
    [IMU-Initialization] Carlos Campos, J. M. M. Montiel and Juan D. Tardós, Inertial-Only Optimization for Visual-Inertial Initialization, ICRA 2020.
    [ORBSLAM-Atlas] Richard Elvira, J. M. M. Montiel and Juan D. Tardós, ORBSLAM-Atlas: a robust and accurate multi-map system, IROS 2019.
    [ORBSLAM-VI] Raúl Mur-Artal, and Juan D. Tardós, Visual-inertial monocular SLAM with map reuse, IEEE Robotics and Automation Letters, vol. 2 no. 2, pp. 796-803, 2017.

  • "DVO-SLAM": https://github.com/tum-vision/dvo_slam

    Kerl, Christian, Jürgen Sturm, and Daniel Cremers. "Dense visual SLAM for RGB-D cameras." 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2013.

  • "RGBDSLAMv2": https://felixendres.github.io/rgbdslam_v2/

    Endres, Felix, et al. "3-D mapping with an RGB-D camera." IEEE transactions on robotics 30.1 (2013): 177-187.

  • "RTAB-Map": http://introlab.github.io/rtabmap/ | https://github.com/introlab/rtabmap_ros

    M. Labbé and F. Michaud, “RTAB-Map as an Open-Source Lidar and Visual SLAM Library for Large-Scale and Long-Term Online Operation,” in Journal of Field Robotics, vol. 36, no. 2, pp. 416–446, 2019. (Wiley) Universit ́e de Sherbrooke
    M. Labbé and F. Michaud, “Long-term online multi-session graph-based SPLAM with memory management,” in Autonomous Robots, vol. 42, no. 6, pp. 1133-1150, 2018.
    M. Labbé and F. Michaud, “Online Global Loop Closure Detection for Large-Scale Multi-Session Graph-Based SLAM,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2014.
    M. Labbé and F. Michaud, “Appearance-Based Loop Closure Detection for Online Large-Scale and Long-Term Operation,” in IEEE Transactions on Robotics, vol. 29, no. 3, pp. 734-745, 2013.
    M. Labbé and F. Michaud, “Memory management for real-time appearance-based loop closure detection,” in Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2011, pp. 1271–1276.

  • "KinectFusion": https://www.microsoft.com/en-us/research/project/kinectfusion-project-page/

    Izadi, Shahram, et al. "KinectFusion: real-time 3D reconstruction and interaction using a moving depth camera." Proceedings of the 24th annual ACM symposium on User interface software and technology. ACM, 2011. Newcombe, Richard A., et al. "Kinectfusion: Real-time dense surface mapping and tracking." ISMAR. Vol. 11. No. 2011. 2011.

  • "ElasticFusion": https://github.com/mp3guy/ElasticFusion

    Whelan, Thomas, et al. "ElasticFusion: Dense SLAM without a pose graph." Robotics: Science and Systems, 2015.

  • "BundleFusion": http://graphics.stanford.edu/projects/bundlefusion/

    Dai, Angela, et al. "Bundlefusion: Real-time globally consistent 3d reconstruction using on-the-fly surface reintegration." ACM Transactions on Graphics (ToG) 36.3 (2017): 24.

  • "KO-Fusion": https://www.youtube.com/watch?v=yigoIYoY7Wg (mobile manipulator)

    Houseago, Charlie, Michael Bloesch, and Stefan Leutenegger. "KO-Fusion: Dense Visual SLAM with Tightly-Coupled Kinematic and Odometric Tracking." 2019 International Conference on Robotics and Automation (ICRA). IEEE, 2019.

  • "arm-slam": https://www.youtube.com/watch?v=QrFyaxFUs9w (manipulator)

    M. Klingensmith, S. S. Sirinivasa and M. Kaess, "Articulated Robot Motion for Simultaneous Localization and Mapping (ARM-SLAM)," in IEEE Robotics and Automation Letters, vol. 1, no. 2, pp. 1156-1163, July 2016.

🔅 3D LiDAR Based SLAM

  • "Zebedee": https://research.csiro.au/robotics/zebedee/ (handheld device)

    M. Bosse, R. Zlot and P. Flick, "Zebedee: Design of a Spring-Mounted 3-D Range Sensor with Application to Mobile Mapping," in IEEE Transactions on Robotics, vol. 28, no. 5, pp. 1104-1119, Oct. 2012.

  • "Kaarta": https://www.kaarta.com/ (handheld device)

    Zhang, Ji, and Sanjiv Singh. "Laser–visual–inertial odometry and mapping with high robustness and low drift." Journal of Field Robotics 35.8 (2018): 1242-1264.

  • "LIO-SAM": https://github.com/TixiaoShan/LIO-SAM (handheld device)

    Shan, Tixiao and Englot, Brendan and Meyers, Drew and Wang, Wei and Ratti, Carlo and Rus Daniela, "LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping," 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Las Vegas, 2020

  • "hdl_graph_slam": https://github.com/koide3/hdl_graph_slam

    Kenji Koide, Jun Miura, and Emanuele Menegatti, A Portable 3D LIDAR-based System for Long-term and Wide-area People Behavior Measurement, Advanced Robotic Systems, 2019

  • "BLAM": https://github.com/erik-nelson/blam

    E. Nelson, BLAM: berkeley localization and mapping, [online]. Available: https://github.com/erik-nelson/blam.

  • "Lego-LOAM": https://github.com/RobustFieldAutonomyLab/LeGO-LOAM

    T. Shan and B. Englot, "LeGO-LOAM: Lightweight and Ground- Optimized Lidar Odometry and Mapping on Variable Terrain," 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, 2018, pp. 4758- 4765.

  • "Cartographer": https://google-cartographer-ros.readthedocs.io/en/latest/

    Wolfgang Hess ; Damon Kohler ; Holger Rapp ; Daniel Andor, “Real-time loop closure in 2D LIDAR SLAM ”, 2016 IEEE International Conference on Robotics and Automation (ICRA), Stockholm, 2016, pp. 1271-1278.

  • "IMLS-SLAM"

    Deschaud, Jean-Emmanuel. "IMLS-SLAM: scan-to-model matching based on 3D data." 2018 IEEE International Conference on Robotics and Automation (ICRA). IEEE, 2018.

🐭 Cognitive Related SLAM

🏷 Semantic Related SLAM

7_Localization

📌 Localization on 2D Occupancy Grid Map

  • AMCL: Adaptive (or KLD-sampling) Monte Carlo Localization: http://wiki.ros.org/amcl

    S. Thrun, W. Burgard, and D. Fox. Probabilistic Robotics. MIT Press, 2005.

  • mrpt_localization: http://wiki.ros.org/mrpt_localization

    J.L. Blanco, J. Gonzalez-Jimenez, J.A. Fernandez-Madrigal, "Optimal Filtering for Non-Parametric Observation Models: Applications to Localization and SLAM", The International Journal of Robotics Research (IJRR), vol. 29, no. 14, 2010.
    J. Gonzalez-Jimenez, J.L. Blanco, C. Galindo, A. Ortiz-de-Galisteo, J.A. Fernandez-Madrigal, F.A. Moreno, J. Martinez, "Mobile Robot Localization based on Ultra-Wide-Band Ranging: A Particle Filter Approach", Robotics and Autonomous Systems, vol. 57, no. 5, pp. 496--507, 2009.

🌲 SLAM Algorithms Support Pure Localization:

  • Cartographer, ORB_SLAM2, RTAB-Map

8_Mapping

📍 Basic Mapping Backbones

  • "2D Occupancy Grid Map" (Binary or Probability)
  • "3D Occupancy Grid Map" (Binary or Probability)
  • "Octomap": https://octomap.github.io/ (for collision checking)
    • An Efficient Probabilistic 3D Mapping Framework Based on Octrees / 3D Probability Occupancy Grid Map

    Hornung, Armin & Wurm, Kai & Bennewitz, Maren & Stachniss, Cyrill & Burgard, Wolfram, "OctoMap: An efficient probabilistic 3D mapping framework based on octrees. Autonomous Robots.", Autonomous Robots Journal (2013). 34. 10.1007/s10514-012-9321-0.

🗺 Basic Mapping Methods

📍 Advanced 3D Mapping Backbones

  • "Surfels"

    Pfister, Hanspeter, et al. "Surfels: Surface elements as rendering primitives." Proceedings of the 27th annual conference on Computer graphics and interactive techniques. 2000.

  • "Truncated Signed Distance Function (SDF)"

    Curless, Brian, and Marc Levoy. "A volumetric method for building complex models from range images." Proceedings of the 23rd annual conference on Computer graphics and interactive techniques. 1996.

  • "Truncated Signed Distance Function (TSDF)"

    R. A. Newcombe, S. Izadi, O. Hilliges, D. Molyneaux, D. Kim, A. J.Davison, P. Kohi, J. Shotton, S. Hodges, and A. Fitzgibbon, “Kinect-fusion: Real-time dense surface mapping and tracking,” in Mixed and augmented reality (ISMAR), 2011 10th IEEE international symposiumon, pp. 127–136, IEEE, 2011

  • "Euclidean Signed Distance Fields (ESDF)" (for collision checking)

    Ratliff, Nathan, et al. "CHOMP: Gradient optimization techniques for efficient motion planning." 2009 IEEE International Conference on Robotics and Automation. IEEE, 2009.

🗺 Advanced 3D Mapping Methods

9_Navigation

🚗 ROS Navigation Stack (move_base architecture) https://github.com/ros-planning/navigation

🚘 Global Planner

  • global_planner, carrot_planner, navfn, sbpl_lattice_planner, srl_global_planner, voronoi_planner
  • "A* (A Star)"

    Hart, Peter E., Nils J. Nilsson, and Bertram Raphael. "A formal basis for the heuristic determination of minimum cost paths." IEEE transactions on Systems Science and Cybernetics 4.2 (1968): 100-107.

  • "Dijkstra's"

    Dijkstra, Edsger W. "A note on two problems in connexion with graphs." Numerische mathematik 1.1 (1959): 269-271.

🚘 Local Planner

  • dwa_local_planner, teb_local_planner, base_local_planner, eband_local_planner, robotino_local_planner, asr_ftc_local_planner, simple_local_planner
  • "Timed Elastic Band (TEB)": http://wiki.ros.org/teb_local_planner

    C. Rösmann, W. Feiten, T. Wösch, F. Hoffmann and T. Bertram: Efficient trajectory optimization using a sparse model. Proc. IEEE European Conference on Mobile Robots, Spain, Barcelona, Sept. 2013, pp. 138–143.
    C. Rösmann, F. Hoffmann and T. Bertram: Integrated online trajectory planning and optimization in distinctive topologies, Robotics and Autonomous Systems, Vol. 88, 2017, pp. 142–153.
    C. Rösmann, F. Hoffmann and T. Bertram: Kinodynamic Trajectory Optimization and Control for Car-Like Robots, IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vancouver, BC, Canada, Sept. 2017.

  • "Dynamic Window Approach (DWA)": http://wiki.ros.org/dwa_local_planner

    D. Fox, W. Burgard and S. Thrun, "The dynamic window approach to collision avoidance," in IEEE Robotics & Automation Magazine, vol. 4, no. 1, pp. 23-33, March 1997.

🚘 Advanced Local Planner

  • Velocity Obstacle (VO)

    Fiorini, Paolo, and Zvi Shiller. "Motion planning in dynamic environments using velocity obstacles." The International Journal of Robotics Research 17.7 (1998): 760-772.

  • Reciprocal Velocity Obstacle (RVO) http://gamma.cs.unc.edu/RVO2/ | https://github.com/daenny/collvoid

    Van den Berg, Jur, Ming Lin, and Dinesh Manocha. "Reciprocal velocity obstacles for real-time multi-agent navigation." 2008 IEEE International Conference on Robotics and Automation. IEEE, 2008.

  • Optimal Reciprocal Collision Avoidance (ORCA) http://gamma.cs.unc.edu/ORCA/

    Van Den Berg, Jur, et al. "Reciprocal n-body collision avoidance." Robotics research. Springer, Berlin, Heidelberg, 2011. 3-19.

🚘 Recovery Behavior

  • rotate_recovery, move_slow_and_clear, stepback_and_steerturn_recovery

🏎️ Novel Navigation Strategy

  • "MIT AerospaceControlsLab DRL navigation": http://acl.mit.edu/projects/socially-acceptable-navigation
    1. Chen, Y. F., Liu, S.-Y., Liu, M., Miller, J., and How, J. P., “Motion Planning with Diffusion Maps,” IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, Korea: 2016.
    2. Chen, Yu Fan, et al. "Decentralized non-communicating multiagent collision avoidance with deep reinforcement learning." 2017 IEEE international conference on robotics and automation (ICRA). IEEE, 2017.
    3. Chen, Yu Fan, et al. "Socially aware motion planning with deep reinforcement learning." 2017 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2017.
    4. M. Everett, et al. "Motion Planning Among Dynamic, Decision-Making Agents with Deep Reinforcement Learning," 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Madrid, Spain, 2018
  • "Google AI Research PRM-RL navigation": https://ai.googleblog.com/2019/02/long-range-robotic-navigation-via.html
    1. A. Faust et al. "PRM-RL: Long-range Robotic Navigation Tasks by Combining Reinforcement Learning and Sampling-Based Planning," 2018 IEEE International Conference on Robotics and Automation (ICRA), Brisbane, QLD, 2018, pp. 5113-5120.
    2. H. L. Chiang, et al. "Learning Navigation Behaviors End-to-End With AutoRL," in IEEE Robotics and Automation Letters, vol. 4, no. 2, pp. 2007-2014, April 2019.
    3. Francis, Anthony, et al. "Long-range indoor navigation with PRM-RL." IEEE Transactions on Robotics (2020).
  • "ETHz Autonomous System Lab navigation": https://www.youtube.com/watch?v=GPp5mnybm8g | https://www.youtube.com/watch?v=h1rm0BW3eVE | https://www.youtube.com/watch?v=ZedKmXzwdgI
    1. Pfeiffer, Mark, et al. "Predicting actions to act predictably: Cooperative partial motion planning with maximum entropy models." 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2016.
    2. Pfeiffer, Mark, et al. "From perception to decision: A data-driven approach to end-to-end motion planning for autonomous ground robots." 2017 ieee international conference on robotics and automation (ICRA). IEEE, 2017.

🛀 Coverage Navigation (cleaning or weeding robot)

  • "Survey Paper":

    Galceran, Enric, and Marc Carreras. "A survey on coverage path planning for robotics." Robotics and Autonomous systems 61.12 (2013): 1258-1276.

10_Manipulation

🖐️ ROS Moveit (move_group architecture) https://github.com/ros-planning/moveit.git

📚 Planner Library

11_Others_Non_Tech_Part

11-1_Famous Robotics Related Company

🏬 Robotic Companies

categories companies
Research center Toyota_Research_Institute(TRI), Microsoft_Research, Google_AI, DeepMind, Facebook_Artificial_Intelligence_Research(FAIR), Berkeley_Artificial_Intelligence_Research (BAIR), Nvidia_Research
Manipulator ABB, FANUC, KUKA, YASKAWA, Techman_Robot, HIWIN, Universal_Robots, Innfos
Mobile Robot(AGV, base only) Omron_Robotics, Clearpath_Robotics&OTTO_Motors, Amazon_Robotics(Kiva_System/Canvas_Tech), Yujin_Robotics, ROBOTIS, Fetch_Robotics, GreenTrans, KUKA, iRobot, Pal_Robotics, Robotnik
Service robot(with torso) Willow_Garage, Softbank_Robotics, Fetch_Robotics, Pal_Robotics, Innfos, Robotnik
Dual Arms ABB, Rethink_Robotics
Humanoid Boston_Dynamics, Softbank_Robotics, Pal_Robotics, UBTECH_Robotics
Quadruped Boston_Dynamics, Unitree_Robotics, MIT_Cheetah, ANYrobotics(ANYmal), Standford_Doggo, Innfos
Research Robot Willow_Garage(Pr2), Facebook(pyrobot), ROBOTIS(turtlebot3), Fetch_Robotics, Robotnik(RB-1)
Educational Robot Kit Trossen_Robotics, Niryo, Oz_Robotics
Drone Dji, Tello
ROS2.0 ADLINK(DDS), ROBOTIS(Turtlebot3)
CleaningBot iRobot, Xiaomi
Gripper ROBOTIQ, TOYO
Self-Driving Cars Alphabet_Waymo, Uber_ATG, Apple_Project_Titan, Tesla, Toyota_Research_Institute(TRI), Baidu_Apollo, AutoX
Delivery Robots Starship, Amazon_Robotics_Scout(Dispatch)

11-2_Famous Robotics Publications

📝 Top conferences:

  • IEEE International Conference on Robotics and Automation (ICRA)
  • IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)

🏠 Related Societies:

Society Website Conferences / Transactions
IEEE Robotics and Automation Society (RAS) https://www.ieee-ras.org/ https://ras.papercept.net/conferences/scripts/start.pl
IEEE Industrial Electronics Society (IES) http://www.ieee-ies.org/ http://www.ieee-ies.org/conferences
IEEE Control System Society (CSS) http://ieeecss.org/ http://ieeecss.org/conferences/general-information
IEEE Systems, Man and Cybernetics (SMC) https://www.ieeesmc.org/ https://www.ieeesmc.org/conferences/calendar/
AAAS Science Robotics https://robotics.sciencemag.org/ https://www.sciencemag.org/journals/robotics/call-for-papers
Conference on Robot Learning (CoRL) https://www.robot-learning.org https://www.robot-learning.org/program/paper-explorer

🛠 Tools:

11-3_Famous Robotics Competition

🌎 Global:

🇹🇼 Taiwan:

11-4_Famous ROS Organizations & Activities

🚀 ROS Related Work:

🏢 Organizations/Communities:

🎪 Activities:


License

CC0

About

😎 A curated list of awesome mobile robots study resources based on ROS (including SLAM, odometry and navigation, manipulation)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published