Git Product home page Git Product logo

segmatch's Introduction

SegMatch

SegMatch is a reliable loop-closure detection algorithm based on the matching of 3D segments. The SegMatch code is open-source (BSD License) and has been tested under Ubuntu 14.04 and ROS Indigo. Please remember that this is on-going research code which is subject to changes in the future. Several new features and demonstrations will be added soon.

Please consult our paper, video and wiki for the algorithm description and for instructions on running demonstrations. We recently uploaded a second video featuring SegMatch in a multi-robot configuration.

Compiling SegMatch

The following configuration was tested under Ubuntu 14.04 and ROS indigo. Please see the final note if you want to compile under ROS Kinetic.

First install the required system packages:

$ sudo apt-get install libopencv-dev python-wstool doxygen

SegMatch can be built using catkin_tools which can be installed from this link.

Then use wstool for installing catkin dependencies:

$ cd ~/catkin_ws/src
$ wstool init
$ wstool merge segmatch/dependencies.rosinstall
$ wstool update

Note: If you are using ROS Kinetic, at this point you should run the following command in your catkin workspace prior to building the packages:

$ catkin config --merge-devel

Finally build the laser_mapper package which will compile all SegMatch modules:

$ cd ~/catkin_ws
$ catkin build -DCMAKE_BUILD_TYPE=Release laser_mapper

Building dependencies will require some time according to which new packages need to be built (eg. Building the pcl_catkin package can take up to two hours). Building pcl_catkin might fail if you do not have sufficient RAM. It can help to add -j2 to catkin build in order to limit the parallel jobs and reduce memory usage.

Consult the wiki for instructions on running the demonstrations.

Contributing to SegMatch

We would be very grateful if you would contribute to the code base by reporting bugs, leaving comments and proposing new features through issues and pull requests. Please see the dedicated wiki page on this topic and feel free to get in touch at rdube(at)ethz.ch. Thank you!

Citing SegMatch

Thank you for citing our SegMatch paper if you use any of this code:

@inproceedings{segmatch2017,
  title={SegMatch: Segment based place recognition in 3D point clouds},
  author={Dub{\'e}, Renaud and Dugas, Daniel and Stumm, Elena and Nieto, Juan and Siegwart, Roland and Cadena, Cesar},
  booktitle={International Conference on Robotics and Automation (ICRA)},
  pages={5266--5272},
  year={2017},
  organization={IEEE}
}

segmatch's People

Contributors

rdube avatar danieldugas avatar cesarcadena avatar dotpiano avatar

Watchers

James Cloos avatar Lei Shanshan 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.