Commit Graph

1002 Commits (b6b41e9b173ea2e49e606f1e0d54d6d57ed421e3)

Author SHA1 Message Date
Alexander Belyaev b6b41e9b17
[GenericPoseGraph] Add a macro to find nodes. (#1382) 2018-08-10 18:55:43 +02:00
gaschler 3877f97b23
Bump async_grpc (#1380)
Specify timeouts where RetryStrategy is used.
2018-08-10 09:30:54 +02:00
Rodrigo Queiro 8d0457d1d8 Move tools/bazel.rc to prepare for bazel 0.17 (#1375)
* Move tools/bazel.rc to prepare for bazel 0.17

Bazel 0.17 will no longer import the legacy "tools/bazel.rc" config
file. This change ensures compatibility with the new versions.

For users on bazel 0.16 and earlier who have a ~/.bazelrc, this change
will cause bazel to ignore their ~/.bazelrc and load this one instead.
Hopefully this won't break anyone. (famous last words)
2018-08-09 17:08:38 +02:00
Michael Grupp 4d6120d2cb Use Huber loss for landmark cost functions. (#1377) 2018-08-09 10:30:41 +02:00
Alexander Belyaev d5840e960a [GenericPoseGraph] Move functions that add param blocks to constraint_utils. (#1374)
Also call `ceres_loss()` instead of passing `nullptr`.
2018-08-07 14:48:39 +02:00
Alexander Belyaev 6274fc1558 [ABSL] Use absl::Substitute in rigid_transform debug messages. (#1373)
it is at least readable.
2018-08-07 12:50:37 +02:00
Alexander Belyaev 8d5bf2a5dd
[ABSL] Purge common/mutex.h. (#1369) 2018-08-07 10:43:38 +02:00
gaschler 54f7f4f969 Skip constraint search against unfinished submaps. (#1362)
The uplink server only receives the grid content of a submap after
that submap is finished for efficiency. Therefore, constraint
searches against that submap need to be skipped.
Also add checks to avoid this in the future.

FIXES=#1360
2018-08-06 17:34:40 +02:00
Christoph Schütte 3f3428e8d4 Remove noisy loggin from AddSensorDataBatchHandler (#1366)
See discussion in https://github.com/googlecartographer/cartographer/pull/1338
2018-08-03 14:10:52 +02:00
Kevin Daun 77886cb53b Integrate TSDF components into SLAM pipeline. (#1361)
[RFC=0019](https://github.com/googlecartographer/rfcs/blob/master/text/0019-probability-grid-and-submap2d-restructuring.md)
2018-08-03 11:56:35 +02:00
Arno Fleck 12e11856af Use absl::Mutex instead of custom implementation (#1356)
Makes `common::Mutex` an alias for `absl::Mutex` and replaces the logic inside `common::MutexLocker` with `absl::MutexLock`.

A future PR can then remove these classes entirely and replace references to it across the Cartographer code base with the Abseil classes directly.
2018-08-03 11:15:50 +02:00
Michael Grupp b841ebf170 Fix typo in last commit (negate condition). (#1365) 2018-08-02 20:59:23 +02:00
Michael Grupp 4cd1528ffb Replace CHECK() by a warning in MapBuilderStub::SerializeState() (#1364)
See discussion in https://github.com/googlecartographer/cartographer_ros/pull/966
2018-08-02 19:35:19 +02:00
gaschler 39e5943abc Add slides (#1363) 2018-08-02 11:13:07 +02:00
Kevin Daun 748deb910a Add TSDF match cost function. (#1359) 2018-08-01 23:46:33 +02:00
Kevin Daun 6c070acff5 Introduce GridType for Grid2D (#1355) 2018-07-31 15:13:37 +02:00
gaschler c1fbb6bb07
Fill submaps slices (#1353)
This implements a frequently used function (two times in cartographer_ros).
Also, it corrects a wrong repeated proto field access,
so we can fix cartographer_ros/issues/944.
2018-07-31 11:48:04 +02:00
Julius Kammerl c041635fb5 Add sensor counter metrics to TrajectoryCollator class (#1342)
Adds metrics to monitor the incoming sensor messages processed by the TrajectoryCollator class.
2018-07-31 10:06:54 +02:00
Julius Kammerl 537b2d6762 Add metric counters to track sensor data in the AddSensorDataBatchHandler class (#1338)
Adds additional metrics to track incoming sensor and local slam result data in Prometheus.
2018-07-30 19:42:08 +02:00
Christoph Schütte a3c9e9f1ca Add argument to SerializeState for excluding unfinished submaps (#1352)
Adds a boolean argument to MapBuilderInterface::SerializeState() to indicate whether the caller wants to include unfinished submaps in the serialized state.

For cartographer_grpc this argument will be set to false since unfinished submaps do not have a Grid which would lead to a crash in the Submap::ToProto() function.
2018-07-30 17:27:54 +02:00
Alexander Belyaev 5c61148f26 [ABSL] Remove common/optional.h. (#1349) 2018-07-30 13:44:55 +02:00
Juraj Oršulić 0a10bc3a15 Make standalone_absl imported target global. (#1351) 2018-07-30 13:06:15 +02:00
Juraj Oršulić b1855d0d06 Fix Abseil build command (#1350)
@pifon2a I've noticed the `BUILD_COMMAND` is broken. You're setting `ABSL_BUILD_COMMAND`, but using `ABSEIL_BUILD_COMMAND` (effectively empty). Somehow this doesn't confuse newer CMakes, but the one you install on Trusty gets confused and interprets this as a no-op build step. This causes the indigo pipeline in cartographer_ros to fail.

Use the cross-platform build command instead: 
https://cmake.org/cmake/help/latest/module/ExternalProject.html#obtaining-project-properties (just above the linked paragraph)
2018-07-28 17:42:09 +02:00
Juraj Oršulić 27a7a3dbdf FindAbseil.cmake: cross-platform library names (#1348)
Fixes #1347
2018-07-27 23:41:25 +02:00
Alexander Belyaev 3c5f2cd154
[GenericPoseGraph] Add PoseGraphController. (#1335) 2018-07-27 20:35:27 +02:00
Alexander Belyaev 5b44305ea3
[ABSL] Purge common::make_unique. (#1340) 2018-07-27 19:43:35 +02:00
Alexander Belyaev 4990d4d5e9
[ABSL] Purge common::optional. (#1339) 2018-07-27 19:05:45 +02:00
Christoph Schütte dafb4149ed Revert: Fix writing state of trajectories with unfinished submaps. #1286 (#1346)
Reason: Break rviz visualization for submaps loaded from pbstreams.
2018-07-27 17:20:42 +02:00
Martin Schwörer 3af5086dc7 removed redundant condition (#1344)
Removes an additional condition that is not required.
2018-07-27 13:45:59 +02:00
Wolfgang Hess 8b329efc8e Don't process PoseGraph2D work items in foreground. (#1341)
This is #1285 for 2D.
Fixes #1250.
2018-07-26 17:05:23 +02:00
Alexander Belyaev c2c341397f [GenericPoseGraph] Add InterpolatedRelativePose2D constraint. (#1337) 2018-07-26 15:00:13 +02:00
Wolfgang Hess e87100a3ad Introduce separate mutex for PoseGraph2D work queue access. (#1333)
This is #1284 for 2D.
2018-07-26 11:15:56 +02:00
Arno Fleck 9a2df068ed Check for collated_fixed_frame_ for AddSensorData(FixedFramePoseData). (#1331)
PR #1224 introduced checks for `collate_landmarks` and `collate_fixed_frame` in the `CollatedTrajectoryBuilder`. However, it falsely checks for `collate_landmarks` in the `AddSensorData(FixedFramePoseData)` function. This PR fixes that.
2018-07-26 10:36:17 +02:00
Alexander Belyaev e3a7f39889
Add absl to CMake and Bazel builds. (#1301) 2018-07-26 06:49:37 +02:00
Alexander Belyaev 926b8540f6
Use CMake 3.2. (#1332) 2018-07-25 21:40:06 +02:00
Wolfgang Hess f61a944938 Fine-grained locking for PoseGraph2D constraints. (#1327)
This is #1279 for 2D.
2018-07-25 15:26:29 +02:00
Michael Grupp 4ba9d9168b Migrate pbstream files with old probability grid format. (#1314) 2018-07-25 13:06:58 +02:00
Arno Fleck 52804df988 Remove warning at the beginning of localization. (#1329)
* Remove warning.

* Remove warning from 2D as well.
2018-07-25 11:02:52 +02:00
Sebastian Klose 2b042311d8
Unified pbstream tool (#1326)
Consolidating pbstream tools into a single tool

* adds two subcommands for now (info and migrate)
* removes commandline flags for filenames in favor of commandline args
* updates documentation for migration tool
2018-07-24 15:48:34 +02:00
Martin Bokeloh 8219117a17
[GenericPoseGraph] Add serialization tests for constraints. (#1318)
* [GenericPoseGraph] Add rotation 3d constraint.

* [GenericPoseGraph] Add serialization tests for constraints.

* Remove files from other branch

* Updated include paths.
2018-07-24 14:32:38 +02:00
Martin Bokeloh f7b3d34ae5
[GenericPoseGraph] Add interpolated constraint/cost 3d. (#1325)
* [GenericPoseGraph] Add interpolated rotation constraint/cost 3d.

* Rename tests

* Update include paths.
2018-07-24 13:24:11 +02:00
Alexander Belyaev d4193d4a2a
[GenericPoseGraph] Add acceleration constraint. (#1319) 2018-07-24 06:36:24 +02:00
Alexander Belyaev 8250264441
Move test_helpers to testing/. (#1321) 2018-07-23 21:18:32 +02:00
Martin Schwörer a42fd47146 Preparation for #1277: refactor rotation scan matcher (#1316)
Added new constructor for `RotationalScanMatcher` and exposed `RotateHistogram`.

This PR prepares for PR #1277 where the constructor 
`RotationalScanMatcher(const std::vector<std::pair<Eigen::VectorXf, float>>& histograms_at_angles)`
will be removed and only the new constructor
`RotationalScanMatcher(const Eigen::VectorXf& histogram)`
will remain. The unit tests will be updated to use the new constructor in #1277.
2018-07-23 19:02:17 +02:00
Susanne Pielawa 25f79cb6eb Added metrics RealTimeRatio and CpuRealTimeRatio to 2d. (#1324)
Added the metrics RealTimeRatio and CpuRealTimeRatio also to local_trajectory_builder_2d.

This is similar to[ PR 1275](https://github.com/googlecartographer/cartographer/pull/1275) and resolves a TODO.
2018-07-23 18:23:41 +02:00
Martin Schwörer fc78288ef8 remove duplicate code for deserialization of Submap3D from proto (#1322)
This PR removes the duplicate code for deserialization/updating Submap3Ds from a proto.
2018-07-23 17:38:48 +02:00
gaschler 33fcc1a3de
Set client_id in LoadState(FromFile) (#1320) 2018-07-23 16:42:44 +02:00
Juraj Oršulić 5b35641881 Small readability improvement (#1304) 2018-07-23 16:21:45 +02:00
Martin Bokeloh 29420b1912
[GenericPoseGraph] Remove unused declarations. (#1323) 2018-07-23 15:10:16 +02:00
Martin Bokeloh bc8a7d7c00
[GenericPoseGraph] Add rotation 3d constraint. (#1317) 2018-07-23 13:43:26 +02:00