Commit Graph

961 Commits (d4193d4a2ae1ba41dc82c349ea2b27144b5763e7)

Author SHA1 Message Date
gaschler 0118531659
correct bazel define ()
This is required by map_builder_server_main.cc
2018-04-25 13:56:34 +02:00
Michael Grupp 3d2ca564b6 Fix some Clang warnings. ()
task.cc: -Wparentheses
task_test.cc: -Winconsistent-missing-override
2018-04-25 12:22:11 +02:00
Martin Schwörer d9ada58710 Removed check for existence of first submap of first trajectory in pose graph optimization ()
Removed check for existence of first submap of first trajectory.

This check is equivalent to the original implementation which got changed in [](https://github.com/googlecartographer/cartographer/pull/584/files)
2018-04-24 16:32:31 +02:00
Christoph Schütte f51e4f4f05 Introduce Task ()
This introduces the new class common::Task. A Task can have dependencies to other tasks, notify ThreadPoolInterface when all its dependencies are fulfilled, and can be executed in the background.
2018-04-24 15:57:44 +02:00
Alexander Belyaev 3dd37da51b
Move constraint_builders together. () 2018-04-23 13:49:25 +02:00
gaschler 3b5830745e Test ConstraintBuilder2D/3D () 2018-04-23 12:52:20 +02:00
Kevin Daun d29153a744 Replace ProbabilityGrid in Submap2D by Grid2D () 2018-04-20 22:58:46 +02:00
Alexander Belyaev e2623991da Return only optimized & finished submaps for trimmer. () 2018-04-20 22:19:16 +02:00
Alexander Belyaev 4aa2af23de Move files related to optimization to optimization/. () 2018-04-20 20:52:17 +02:00
Alexander Belyaev eebced5e16
Clean-up colliding 'SubmapData' names. () 2018-04-20 18:15:37 +02:00
gaschler 643bc825e9 ThreadPoolForTesting ()
Necessary to test ConstraintBuilder.
2018-04-20 13:12:52 +02:00
Alexander Belyaev 8816d5710c
Invoke trimmer only when there are enough added submaps. () 2018-04-20 09:05:05 +02:00
Holger Rapp 29c3e056ed Next Open house and switch CET to CEST. () 2018-04-20 00:30:12 +02:00
Rodrigo Queiro 7f67f074a1 Limit `bazel test` parallelism more precisely ()
Since it is only the tests in cartographer/cloud that cannot run
concurrently with each other, use `tags = ["exclusive"]` to say that
they should not be run at the same time as other tests.

This works locally, not just in CI, and should speed up the CI job by
2-3 minutes.
2018-04-19 18:51:20 +02:00
Alexander Belyaev ab7402ffbb Use references for constraints & nodes in TrimmingHandle. () 2018-04-19 17:09:16 +02:00
Kevin Daun 20c80068b2 Base ConstraintBuilder2D on correspondence cost function ()
- Base `ConstraintBuilder2D` and `FastCorrelativeScanMatcher2D` on correspondence cost function instead of probabilities
- No changes in the options of `ConstraintBuilder2D` and `FastCorrelativeScanMatcher2D`
- Add properties `min/max_correspondence_cost` to `Grid2D` and `proto::Grid2D`
- Provide backwards compatibility for `proto::Grid2D`
 - Step towards [RFC 0019](https://github.com/googlecartographer/rfcs/blob/master/text/0019-probability-grid-and-submap2d-restructuring.md)
2018-04-19 11:59:28 +02:00
Kevin Daun f4937b5cc6 Base ceres scan matcher on correspondence cost function ()
- Base ceres scan matcher on correspondence cost function instead of probabilities
 - Step towards [RFC 0019](https://github.com/googlecartographer/rfcs/blob/master/text/0019-probability-grid-and-submap2d-restructuring.md)
2018-04-19 10:24:16 +02:00
Rodrigo Queiro 9b3606b7c0 Fix glog warning ()
by updating to a version that properly enables __attribute__. This is
the last warning in the Bazel build.
2018-04-18 21:04:11 +02:00
Christoph Schütte 337e594662 Introduce option to enable SSL encryption for LocalTrajectoryUploader () 2018-04-18 16:47:03 +02:00
Rodrigo Queiro 3383643627 Add configuration for Bazel CI ()
This builds and tests on Ubuntu 16.
2018-04-18 15:43:39 +02:00
Kevin Daun 03d56871c1 Correspondence cost based probability grid ()
- Store probabilities as correspondence costs
- Add conversion functions for correspondence cost values
- Step towards [RFC 0019](https://github.com/googlecartographer/rfcs/blob/master/text/0019-probability-grid-and-submap2d-restructuring.md)
2018-04-18 14:46:38 +02:00
Christoph Schütte 214606457c Switch to batch uploading for cloud based mapping and add retries () 2018-04-18 14:02:43 +02:00
Alexander Belyaev 23f6de46b0 Use area instead of cells count for overlapping trimmer options. () 2018-04-17 18:22:38 +02:00
Julius Kammerl 26e8ce63ba Add async_grpc dependency to cartographer_grpc ()
The map_builder_server target requires async_grpc.
2018-04-17 17:25:18 +02:00
gaschler 4278dbb7ea Speed up slow tests ()
Same checks, half the time.
2018-04-17 15:41:09 +02:00
Kevin Daun ed0a8846f1 Allow execution of Submap2D::ToResponseProto without a grid ()
- related to https://github.com/googlecartographer/cartographer_ros/issues/819
2018-04-17 14:27:09 +02:00
Alexander Belyaev 74970be757
Add overlapping trimmer params to TrajectoryBuilderOptions. () 2018-04-17 13:00:04 +02:00
Alexander Belyaev e215c170e7 Remove redundant function declaration. ()
Makes clang happy again.
2018-04-17 10:22:00 +02:00
Christoph Schütte 2be3c1f636 Add sparse Eigen support to Bazel build. () 2018-04-17 09:46:51 +02:00
Kevin Daun a82a62f8a0 Replace Submap2D grid member by unique_ptr ()
- replace the `ProbabilityGrid` member of `Submap2D` by  `unique_ptr<ProbabilityGrid>`
- allow `Submap2D` to handle `proto::Submap2D` without a defined grid field
- resolve https://github.com/googlecartographer/cartographer/issues/1071
2018-04-16 18:19:59 +02:00
Rodrigo Queiro c20f22e986 Suppress warnings for Bazel third_party deps ()
These warnings occur when building with gcc 7.3.0.
2018-04-16 17:48:18 +02:00
Rodrigo Queiro 911c9ab920 Update Prometheus to avoid warning ()
This pulls in https://github.com/jupp0r/prometheus-cpp/pull/103 (fix
warning) and https://github.com/jupp0r/prometheus-cpp/pull/98 (add
missing header).
2018-04-16 17:15:10 +02:00
Christoph Schütte ce71273737 Add error messages for gRPC connection failures ()
Fixes https://github.com/googlecartographer/cartographer_ros/issues/825.
2018-04-16 16:40:03 +02:00
Alexander Belyaev 7b68844937
Add a gRPC version of SetLandmarkPose(). () 2018-04-16 15:49:08 +02:00
Alexander Belyaev 75f899117a Move to testing/. () 2018-04-16 12:47:11 +02:00
gaschler 663e135426 add check () 2018-04-16 12:01:09 +02:00
Alexander Belyaev 74f74c4b61 Deserialize landmark poses. () 2018-04-13 16:38:45 +02:00
Kevin Daun 46d3a9443a Introduce Grid2D as base class for 2D grids ()
This is a first step towards generalizing submaps (see [ongoing RFC discussion](https://github.com/googlecartographer/rfcs/pull/30)).
Although this PR already introduces a correspondence cost grid, the grid is still used as probability grid.
2018-04-13 13:43:09 +02:00
Christoph Schütte b4c4ae6ea9 Update unfinished submap list on SLAM thread ()
Fixes 
2018-04-13 12:15:26 +02:00
Michael Grupp b5e5477f75 Fix Sphinx build warning. ()
Removes 'WARNING: html_static_path entry [...] does not exist'.
2018-04-12 16:33:38 +02:00
Michael Grupp d2f29d04b9 Improve pose terminology of 2D optimization problem. ()
Removes the confusing term `initial_pose` from global 2D optimization.
It makes sense in other areas like scan matching, but has a completely
different meaning there. Also matches the 3D equivalents better.

- `local_pose_2d` replaces `initial_pose` as the name for the
   non-gravity-aligned, local 2D pose in the submap
- `global_pose_2d` replaces `pose` as the name for the
   non-gravity-aligned, global 2D pose that is optimized

See the comment in the PR for how this improves readability.
2018-04-12 16:00:56 +02:00
Christoph Schütte 14465aa23e Refactor MapBuilderContext to reduce code duplication. () 2018-04-12 15:27:24 +02:00
Alexander Belyaev a4346337bc
Address the comments for the overlapping submaps trimmer. () 2018-04-12 14:28:33 +02:00
Christoph Schütte f83d0a6ed6 Implement IsTrajectory{Finished,Frozen} in cloud mapping () 2018-04-12 12:37:04 +02:00
Alexander Belyaev 771336b3c9
Add overlapping submaps trimmer. ()
Trims submaps that have less than 'min_covered_cells_count' cells not overlapped by at least 'fresh_submaps_count` submaps.
2018-04-12 11:53:56 +02:00
gaschler e2966ca156 Do not install gmock ()
Fixes the issue described in https://github.com/googlecartographer/cartographer/pull/1041.

The docker file is not to be merged, it is only here to help reproducing the issue and fix.
2018-04-11 13:48:03 +02:00
Alexander Belyaev 7286415e27 Remove unused variable. () 2018-04-11 13:15:09 +02:00
jie d1161b5f8e Internal cleanup ()
Fix lint errors.
2018-04-11 09:56:22 +02:00
Alexander Belyaev 7b0963216f
Move FakeTrimmable implementation to internal/testing. ()
* Move FakeTrimmable implementation to internal/testing.

* Address the comments.
2018-04-10 18:05:03 +02:00
gaschler 895f1d61b4 Glob only files in cartographer/ ()
FIXES=#1044
2018-04-10 15:14:59 +02:00