Go to file
Juraj Oršulić 58d94aaa68 Refactor calling optimization into DispatchOptimization. (#729)
I noticed that @jihoonl opened the PR #726 which performs a similar thing. As discussed in googlecartographer/cartographer_ros#613 (@cschuet  has already taken a look), I pulled this out of #481 (a really old PR whose merging has been postponed), which is an example where re-running optimization is triggered from elsewhere as well (besides from `ComputeConstraintsForNode`). This refactoring makes libcartographer friendlier for use cases such as that one.

An important detail is that I have changed the condition in `WaitForAllComputations` to also check if the work queue is empty. If there are other things on the worker queue besides `ComputeConstraintsForNode`, currently we will wrongfully conclude that all computations are done. (This detail was merged in #754, so it's no longer in the diff of this PR).

Also missing is the same thing for 3D. I can add that when we settle on this.

Also, I suggest that `run_loop_closure` gets renamed to `run_optimization`.
2018-01-05 10:43:56 +01:00
.github Updated PR template taking wally into account. (#663) 2017-11-14 14:41:48 +01:00
cartographer Refactor calling optimization into DispatchOptimization. (#729) 2018-01-05 10:43:56 +01:00
cartographer_grpc Fix obvious asan warnings. (#787) 2018-01-05 10:18:08 +01:00
cmake Correct cmake install (#739) 2017-12-06 20:34:07 +01:00
configuration_files Define default num_event_threads config. (#785) 2018-01-04 13:51:30 +01:00
docs Make the MotionFilter internal. (#707) 2017-11-24 14:01:07 +01:00
scripts Log output for failed tests (#781) 2017-12-20 16:08:27 +01:00
.dockerignore Add Xenial to build matrix. (#156) 2016-12-09 10:57:41 +01:00
.gitignore Add .gitignore to hide the "build" directory (#40) 2016-10-10 18:07:48 +02:00
.travis.yml Support new Debian version of gmock and add testing for debian systems (#236) 2017-05-04 12:47:12 +02:00
AUTHORS Initial import of Cartographer codebase. 2016-08-02 09:12:42 +02:00
CHANGELOG.rst Prepare 0.3.0 release (#696) 2017-11-23 10:27:08 +01:00
CMakeLists.txt Make CMakeLists.txt install gRPC service headers. (#779) 2017-12-20 14:40:33 +01:00
CONTRIBUTING.md Initial import of Cartographer codebase. 2016-08-02 09:12:42 +02:00
Dockerfile.jessie New proto compiler (#644) 2017-11-10 11:16:44 +01:00
Dockerfile.stretch New proto compiler (#644) 2017-11-10 11:16:44 +01:00
Dockerfile.trusty Update Travis Docker file for Trusty to build gRPC code (#709) 2017-11-24 22:08:51 +01:00
Dockerfile.xenial New proto compiler (#644) 2017-11-10 11:16:44 +01:00
LICENSE Initial import of Cartographer codebase. 2016-08-02 09:12:42 +02:00
README.rst Add slides from 171207. (#753) 2017-12-13 14:51:50 +01:00
RELEASING.rst Add instructions for releasing. (#342) 2017-06-19 12:00:12 +02:00
cartographer-config.cmake.in Mitigate googlecartographer/cartographer_ros#385 (#351) 2017-06-21 15:06:51 +02:00
package.xml Prepare 0.3.0 release (#696) 2017-11-23 10:27:08 +01:00

README.rst

.. Copyright 2016 The Cartographer Authors

.. Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

..      http://www.apache.org/licenses/LICENSE-2.0

.. Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

============
Cartographer
============

|build| |docs| |license|

Purpose
=======

`Cartographer`_ is a system that provides real-time simultaneous localization
and mapping (`SLAM`_) in 2D and 3D across multiple platforms and sensor
configurations.

|video|

.. _Cartographer: https://github.com/googlecartographer/cartographer
.. _SLAM: https://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping

Open house
==========

We regularly meet in an open-for-all Google hangout to discuss progress and plans for Cartographer.

The next Cartographer Open House Hangout is on Thursday, January 11, 5pm CET (8am PT) [`Hangouts link`_].

.. _Hangouts link: https://staging.talkgadget.google.com/hangouts/_/google.com/cartographeropenhouse

- December 7, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/171207/slides.pdf>`_
- November 23, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/171123/slides.pdf>`_
- November 9, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/171109/slides.pdf>`_
- October 26, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/171026/slides.pdf>`_
- October 12, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/171012/slides.pdf>`_
- September 14, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170914/slides.pdf>`_
- August 17, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170817/slides.pdf>`_
- July 20, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170720/slides.pdf>`_
- July 6, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170706/slides.pdf>`_
- June 22, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170622/sildes.pdf>`_
- June 8, 2017: `Slides <https://storage.googleapis.com/cartographer-public-data/cartographer-open-house/170608/slides.pdf>`_

Getting started
===============

* Learn to use Cartographer at `our Read the Docs site`_.
* Please join the `mailing list`_ and ask questions.

.. _our Read the Docs site: https://google-cartographer.readthedocs.io
.. _mailing list: https://groups.google.com/forum/#!forum/google-cartographer

Contributing
============

You can find information about contributing to Cartographer at `our Contribution
page`_.

.. _our Contribution page: https://github.com/googlecartographer/cartographer/blob/master/CONTRIBUTING.md

.. |build| image:: https://travis-ci.org/googlecartographer/cartographer.svg?branch=master
    :alt: Build Status
    :scale: 100%
    :target: https://travis-ci.org/googlecartographer/cartographer
.. |docs| image:: https://readthedocs.org/projects/google-cartographer/badge/?version=latest
    :alt: Documentation Status
    :scale: 100%
    :target: https://google-cartographer.readthedocs.io/en/latest/?badge=latest
.. |license| image:: https://img.shields.io/badge/License-Apache%202.0-blue.svg
     :alt: Apache 2 license.
     :scale: 100%
     :target: https://github.com/googlecartographer/cartographer/blob/master/LICENSE
.. |video| image:: https://j.gifs.com/wp3BJM.gif
    :alt: Cartographer 3D SLAM Demo
    :scale: 100%
    :target: https://youtu.be/DM0dpHLhtX0