cartographer/cartographer
Martin Schwörer 3b511aa1ba Store histogram in submap (#1277)
The histogram of a submap is now stored in the submap (class and proto) itself. This change allows to accumulate the histogram of a submap in local SLAM by adding up the histogram of each new scan.

The main advantage is that the background thread doesn't have to loop over all `TrajectoryNode`s of a finished submap to compute the submap histogram for the `RotationalScanMatcher`. Instead this chunk of work is moved to the local SLAM thread but is split up into a few computations for each new scan. When running localization, the histogram of a submap can just be read from a map pbstream and does not have to be computed from the nodes.

In summary:
- This change improved the CPU time of offline SLAM by ~7%.
- Increases the readability of the code and performance of the background thread. (see `PoseGraph3D::ComputeConstraint`)
- No negative performance impacts on accuracy or finding loop-closures

However:
- With this change to the submap proto, old maps (pbstreams) are no longer supported and need to be re-created by running offline slam
2018-09-04 12:02:57 +02:00
..
cloud Recover gRPC channel from connection dropouts. (#1406) 2018-09-04 11:17:51 +02:00
common [GenericPoseGraph] Add parameterization. (#1385) 2018-08-14 14:37:27 +02:00
ground_truth Extract ground truth generation into a library. (#1215) 2018-06-29 12:48:29 +02:00
io Store histogram in submap (#1277) 2018-09-04 12:02:57 +02:00
mapping Store histogram in submap (#1277) 2018-09-04 12:02:57 +02:00
metrics Add sensor counter metrics to TrajectoryCollator class (#1342) 2018-07-31 10:06:54 +02:00
pose_graph [GenericPoseGraph] Add parameterization. (#1385) 2018-08-14 14:37:27 +02:00
sensor Introduce [Timed]RangefinderPoint. (#1357) 2018-08-10 22:36:37 +02:00
testing Move test_helpers to testing/. (#1321) 2018-07-23 21:18:32 +02:00
transform [ABSL] Use absl::Substitute in rigid_transform debug messages. (#1373) 2018-08-07 12:50:37 +02:00
.clang-format Add .clang-format file. (#1249) 2018-07-11 12:28:53 +02:00
BUILD.bazel [ABSL] Use absl::Substitute in rigid_transform debug messages. (#1373) 2018-08-07 12:50:37 +02:00