LCDNet: Deep Loop Closure Detection and Point Cloud Registration for LiDAR SLAM

Loop closure detection is an essential component of Simultaneous Localization and Mapping (SLAM) systems, which reduces the drift accumulated over time. Over the years, several deep learning approaches have been proposed to address this task, however their performance has been subpar compared to handcrafted techniques, especially while dealing with reverse loops. In this paper, we introduce the novel LCDNet that effectively detects loop closures in LiDAR point clouds by simultaneously identifying previously visited places and estimating the 6-DoF relative transformation between the current scan and the map. LCDNet is composed of a shared encoder, a place recognition head that extracts global descriptors, and a relative pose head that estimates the transformation between two point clouds. We introduce a novel relative pose head based on the unbalanced optimal transport theory that we implement in a differentiable manner to allow for end-to-end training. Extensive evaluations of LCDNet on multiple real-world autonomous driving datasets show that our approach outperforms state-of-the-art loop closure detection and point cloud registration techniques by a large margin, especially while dealing with reverse loops. Moreover, we integrate our proposed loop closure detection approach into a LiDAR SLAM library to provide a complete mapping system and demonstrate the generalization ability using different sensor setup in an unseen city.

[1]  Richard Sinkhorn A Relationship Between Arbitrary Positive Matrices and Doubly Stochastic Matrices , 1964 .

[2]  Maosheng Ye,et al.  GOSMatch: Graph-of-Semantics Matching for Detecting Loop Closures in 3D LiDAR data , 2020, 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[3]  Prasanna Velagapudi,et al.  Development of a Low Cost Multi-Robot Autonomous Marine Surface Platform , 2012, FSR.

[4]  Javier Civera,et al.  S-PTAM: Stereo Parallel Tracking and Mapping , 2017, Robotics Auton. Syst..

[5]  Alexandre Boulch,et al.  FLOT: Scene Flow on Point Clouds Guided by Optimal Transport , 2020, ECCV.

[6]  Nico Blodow,et al.  Fast Point Feature Histograms (FPFH) for 3D registration , 2009, 2009 IEEE International Conference on Robotics and Automation.

[7]  Jiaolong Yang,et al.  Go-ICP: A Globally Optimal Solution to 3D ICP Point-Set Registration , 2016, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[8]  Andreas Geiger,et al.  Are we ready for autonomous driving? The KITTI vision benchmark suite , 2012, 2012 IEEE Conference on Computer Vision and Pattern Recognition.

[9]  Ayoung Kim,et al.  Scan Context: Egocentric Spatial Descriptor for Place Recognition Within 3D Point Cloud Map , 2018, 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[10]  Vladlen Koltun,et al.  Fully Convolutional Geometric Features , 2019, 2019 IEEE/CVF International Conference on Computer Vision (ICCV).

[11]  Paul J. Besl,et al.  A Method for Registration of 3-D Shapes , 1992, IEEE Trans. Pattern Anal. Mach. Intell..

[12]  Wei Wang,et al.  LIO-SAM: Tightly-coupled Lidar Inertial Odometry via Smoothing and Mapping , 2020, 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[13]  Yong Liu,et al.  Semantic Graph Based Place Recognition for 3D Point Clouds , 2020, 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[14]  G LoweDavid,et al.  Distinctive Image Features from Scale-Invariant Keypoints , 2004 .

[15]  Roland Siegwart,et al.  Comparing ICP variants on real-world data sets , 2013, Auton. Robots.

[16]  Yasushi Makihara,et al.  Object recognition supported by user interaction for service robots , 2002, Object recognition supported by user interaction for service robots.

[17]  Yan Su,et al.  Loop closure detection for visual SLAM systems using convolutional neural network , 2017, 2017 23rd International Conference on Automation and Computing (ICAC).

[18]  Leonidas J. Guibas,et al.  PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation , 2016, 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[19]  Vladlen Koltun,et al.  Fast Global Registration , 2016, ECCV.

[20]  Teofilo F. GONZALEZ,et al.  Clustering to Minimize the Maximum Intercluster Distance , 1985, Theor. Comput. Sci..

[21]  Yue Wang,et al.  Dynamic Graph CNN for Learning on Point Clouds , 2018, ACM Trans. Graph..

[22]  Xiaogang Wang,et al.  PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection , 2019, 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[23]  Yu Zhong,et al.  Intrinsic shape signatures: A shape descriptor for 3D object recognition , 2009, 2009 IEEE 12th International Conference on Computer Vision Workshops, ICCV Workshops.

[24]  Howie Choset,et al.  PCRNet: Point Cloud Registration Network using PointNet Encoding , 2019, ArXiv.

[25]  Nicolas Courty,et al.  Unbalanced minibatch Optimal Transport; applications to Domain Adaptation , 2021, ICML.

[26]  Aleksandr V. Segal,et al.  Generalized-ICP , 2009, Robotics: Science and Systems.

[27]  Wolfram Burgard,et al.  Place recognition in 3D scans using a combination of bag of words and point feature based relative pose estimation , 2011, 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[28]  Paul Newman,et al.  FAB-MAP: Probabilistic Localization and Mapping in the Space of Appearance , 2008, Int. J. Robotics Res..

[29]  Abhinav Valada,et al.  Automation of hydroponic installations using a robot with Position Based Visual Feedback. , 2012 .

[30]  Leonidas J. Guibas,et al.  One Point Isometric Matching with the Heat Kernel , 2010, Comput. Graph. Forum.

[31]  Yasuhiro Aoki,et al.  PointNetLK: Robust & Efficient Point Cloud Registration Using PointNet , 2019, 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[32]  Vladlen Koltun,et al.  Deep Global Registration , 2020, 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[33]  Christopher Hunt,et al.  Notes on the OpenSURF Library , 2009 .

[34]  W. Burgard,et al.  Vision-Based Autonomous UAV Navigation and Landing for Urban Search and Rescue , 2019, ISRR.

[35]  Alexandre Boulch,et al.  PCAM: Product of Cross-Attention Matrices for Rigid Registration of Point Clouds , 2021, 2021 IEEE/CVF International Conference on Computer Vision (ICCV).

[36]  Leonidas J. Guibas,et al.  PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space , 2017, NIPS.

[37]  Pavel Krsek,et al.  The Trimmed Iterative Closest Point algorithm , 2002, Object recognition supported by user interaction for service robots.

[38]  Zhengyou Zhang,et al.  Iterative point matching for registration of free-form curves and surfaces , 1994, International Journal of Computer Vision.

[39]  Cyrill Stachniss,et al.  OverlapNet: Loop Closing for LiDAR-based SLAM , 2020, Robotics: Science and Systems.

[40]  Cordelia Schmid,et al.  Aggregating local descriptors into a compact image representation , 2010, 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.

[41]  Qiang Liu,et al.  Loop closure detection using CNN words , 2019, Intelligent Service Robotics.

[42]  Gregory Shakhnarovich,et al.  Style Transfer by Relaxed Optimal Transport and Self-Similarity , 2019, 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[43]  Jeff Johnson,et al.  Billion-Scale Similarity Search with GPUs , 2017, IEEE Transactions on Big Data.

[44]  Hao Zhang,et al.  Voxel-Based Representation Learning for Place Recognition Based on 3D Point Clouds , 2020, IEEE/RJS International Conference on Intelligent RObots and Systems.

[45]  Ying Wang,et al.  LiDAR Iris for Loop-Closure Detection , 2019, 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[46]  Luc Van Gool,et al.  Hough Transform and 3D SURF for Robust Three Dimensional Classification , 2010, ECCV.

[47]  Vladlen Koltun,et al.  Open3D: A Modern Library for 3D Data Processing , 2018, ArXiv.

[48]  J. M. M. Montiel,et al.  ORB-SLAM: A Versatile and Accurate Monocular SLAM System , 2015, IEEE Transactions on Robotics.

[49]  Gim Hee Lee,et al.  PointNetVLAD: Deep Point Cloud Based Retrieval for Large-Scale Place Recognition , 2018, 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition.

[50]  Jinyong Jeong,et al.  MulRan: Multimodal Range Dataset for Urban Place Recognition , 2020, 2020 IEEE International Conference on Robotics and Automation (ICRA).

[51]  Ivan Laptev,et al.  Learnable pooling with Context Gating for video classification , 2017, ArXiv.

[52]  Mubarak Shah,et al.  A 3-dimensional sift descriptor and its application to action recognition , 2007, ACM Multimedia.

[53]  Roland Siegwart,et al.  Point Clouds Registration with Probabilistic Data Association , 2016, 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[54]  Tomasz Malisiewicz,et al.  SuperGlue: Learning Feature Matching With Graph Neural Networks , 2019, 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[55]  Heng Yang,et al.  TEASER: Fast and Certifiable Point Cloud Registration , 2021, IEEE Transactions on Robotics.

[56]  Bo Yang,et al.  RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds , 2020, 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[57]  Cyrill Stachniss,et al.  SemanticKITTI: A Dataset for Semantic Scene Understanding of LiDAR Sequences , 2019, 2019 IEEE/CVF International Conference on Computer Vision (ICCV).

[58]  Renaud Dubé,et al.  SegMatch: Segment based place recognition in 3D point clouds , 2016, 2017 IEEE International Conference on Robotics and Automation (ICRA).

[59]  François-Xavier Vialard,et al.  Scaling algorithms for unbalanced optimal transport problems , 2017, Math. Comput..

[60]  Zi Jian Yew,et al.  RPM-Net: Robust Point Matching Using Learned Features , 2020, 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR).

[61]  Takeo Kanade,et al.  An Iterative Image Registration Technique with an Application to Stereo Vision , 1981, IJCAI.

[62]  Leonidas J. Guibas,et al.  Robust global registration , 2005, SGP '05.

[63]  Ming-Ting Sun,et al.  Semantic Instance Annotation of Street Scenes by 3D to 2D Label Transfer , 2015, 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[64]  Robert C. Bolles,et al.  Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography , 1981, CACM.

[65]  Renaud Dubé,et al.  SegMap: 3D Segment Mapping using Data-Driven Descriptors , 2018, Robotics: Science and Systems.

[66]  Hugh F. Durrant-Whyte,et al.  Data association for mobile robot navigation: a graph theoretic approach , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[67]  Renaud Dubé,et al.  OREOS: Oriented Recognition of 3D Point Clouds in Outdoor Scenarios , 2019, 2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[68]  James Philbin,et al.  FaceNet: A unified embedding for face recognition and clustering , 2015, 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR).

[69]  Michael Bosse,et al.  Place recognition using keypoint voting in large 3D lidar datasets , 2013, 2013 IEEE International Conference on Robotics and Automation.

[70]  D. Sorrenti,et al.  CMRNet++: Map and Camera Agnostic Monocular Visual Localization in LiDAR Maps , 2020, ArXiv.

[71]  Daniel Cremers,et al.  Deep Shells: Unsupervised Shape Correspondence with Optimal Transport , 2020, NeurIPS.

[72]  Lihua Xie,et al.  Intensity Scan Context: Coding Intensity and Geometry Relations for Loop Closure Detection , 2020, 2020 IEEE International Conference on Robotics and Automation (ICRA).

[73]  Li He,et al.  M2DP: A novel 3D point cloud descriptor and its application in loop closure detection , 2016, 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[74]  Yue Wang,et al.  Deep Closest Point: Learning Representations for Point Cloud Registration , 2019, 2019 IEEE/CVF International Conference on Computer Vision (ICCV).