https://google-cartographer.readthedocs.io/en/latest/
来源出处:
Cartographer的Github: https://github.com/googlecartographer
Google的Paper:http://download.csdn.net/detail/jsgaobiao/9678941
Cartographer的官方文档:https://google-cartographer-ros.readthedocs.io/en/latest/
---------------------
- Docs »
- Cartographer
- Edit on GitHub
Cartographer
Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations.
Technical Overview
- High level system overview of Cartographer
Getting started
Cartographer is a standalone C++ library. To get started quickly, use our ROS integration.
Getting started with ROS
ROS integration is provided by the Cartographer ROS repository. You will find complete documentation for using Cartographer with ROS at the Cartographer ROS Read the Docs site.
Getting started without ROS
Please see our ROS integration as a starting point for integrating your system with the standalone library. Currently, it is the best available reference.
On Ubuntu 14.04 (Trusty):
# Install the required libraries that are available as debs. sudo apt-get update # Install CMake 3.2 for Ubuntu Trusty and Debian Jessie. sudo apt-get install lsb-release -y if [[ "$(lsb_release -sc)" = "trusty" ]] then sudo apt-get install cmake3 -y elif [[ "$(lsb_release -sc)" = "jessie" ]] then sudo sh -c "echo 'deb http://ftp.debian.org/debian jessie-backports main' >> /etc/apt/sources.list" sudo apt-get update sudo apt-get -t jessie-backports install cmake -y else sudo apt-get install cmake -y fi sudo apt-get install -y \ clang \ g++ \ git \ google-mock \ libboost-all-dev \ libcairo2-dev \ libcurl4-openssl-dev \ libeigen3-dev \ libgflags-dev \ libgoogle-glog-dev \ liblua5.2-dev \ libsuitesparse-dev \ ninja-build \ python-sphinx
VERSION="1.13.0" # Build and install Ceres. git clone https://ceres-solver.googlesource.com/ceres-solver cd ceres-solver git checkout tags/${VERSION} mkdir build cd build cmake .. -G Ninja -DCXX11=ON ninja CTEST_OUTPUT_ON_FAILURE=1 ninja test sudo ninja install
VERSION="v3.4.1" # Build and install proto3. git clone https://github.com/google/protobuf.git cd protobuf git checkout tags/${VERSION} mkdir build cd build cmake -G Ninja \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ -DCMAKE_BUILD_TYPE=Release \ -Dprotobuf_BUILD_TESTS=OFF \ ../cmake ninja sudo ninja install
# Build and install Cartographer. cd cartographer mkdir build cd build cmake .. -G Ninja ninja CTEST_OUTPUT_ON_FAILURE=1 ninja test sudo ninja install
System Requirements
Although Cartographer may run on other systems, it is confirmed to be working on systems that meet the following requirements:
- 64-bit, modern CPU (e.g. 3rd generation i7)
- 16 GB RAM
- Ubuntu 14.04 (Trusty) and 16.04 (Xenial)
- gcc version 4.8.4 and 5.4.0
Known Issues
- 32-bit builds have libeigen alignment problems which cause crashes and/or memory corruptions.
How to cite us
Background about the algorithms developed for Cartographer can be found in the following publication. If you use Cartographer for your research, we would appreciate it if you cite our paper.
W. Hess, D. Kohler, H. Rapp, and D. Andor, Real-Time Loop Closure in 2D LIDAR SLAM, in Robotics and Automation (ICRA), 2016 IEEE International Conference on. IEEE, 2016. pp. 1271–1278.