Commit Graph

745 Commits (e48e21849a643d50ec5125a5f8cdb3e09b0aeb66)

Author SHA1 Message Date
Alexander Belyaev e48e21849a
Acquire mutex before copying landmark poses. () 2018-03-19 16:16:46 +01:00
Alexander Belyaev 4cc758e830
Serialize landmark observations. () 2018-03-19 15:12:47 +01:00
gaschler 7a7908ebb9 Test PureLocalizationTrimmer with actual pose graph () 2018-03-19 11:43:19 +01:00
gaschler b23ec8ce4e
Fix PureLocalizationTrimmer ()
Remove the wrong assumption that submap index is sequential from 0.
2018-03-19 10:35:35 +01:00
Juraj Oršulić ee530d2423 Purge some additional jets () 2018-03-16 19:12:56 +01:00
Alexander Belyaev 1f9c78a82b
Remove float-to-jet casts where possible. () 2018-03-16 14:53:10 +01:00
Alexander Belyaev 6102f374b1
Build Ceres with C++11. () 2018-03-16 13:03:57 +01:00
Alexander Belyaev 06a9d3544d
Interpolate trajectory node to compute starting point for landmarks. ()
[Landmarks RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-03-16 12:01:55 +01:00
gaschler 37a68cd7f4 LocalTrajectoryBuilder uses RangeDataCollator ()
Local SLAM accepts and unwarps time-overlapping range data from multiple sensors.

[RFC=0017](https://github.com/googlecartographer/rfcs/blob/master/text/0017-synchronize-points.md)
FIXES=#910
2018-03-15 16:34:51 +01:00
gaschler 55065a2108 Mockable optimization () 2018-03-15 14:13:59 +01:00
gaschler bd7d7202bf Filter RangeMeasurement ()
[RFC=0017](https://github.com/googlecartographer/rfcs/blob/master/text/0017-synchronize-points.md)
2018-03-15 12:31:08 +01:00
gaschler 067d01a364 Test PoseGraph3D () 2018-03-15 11:44:47 +01:00
gaschler ed47f9d8f8 OptimizationProblemInterface ()
Derive optimization problems from a new OptimizationProblemInterface.
Move fix_z into OptimizationProblemOptions.
Move trivial getters to header files.
This will allow mocking the optimization problems.
2018-03-15 11:12:26 +01:00
Alexander Belyaev e6c4ee4b8b Move interpolation of poses to 'cost_helpers'. () 2018-03-15 10:33:02 +01:00
Alexander Belyaev 1e4d558ac4
Add landmarks to the state and deserialize them. () 2018-03-14 21:36:15 +01:00
gaschler 36df3eec19
Instrument metrics in GlobalTrajectoryBuilder. ()
RFC=[0014](https://github.com/googlecartographer/rfcs/blob/master/text/0014-monitoring.md)
2018-03-14 14:51:40 +01:00
Alexander Belyaev 0190e7cd99 Clean-up dependencies of map_builder and put getters to the header. () 2018-03-14 13:33:44 +01:00
Alexander Belyaev c060a15670
Remove dead code: fast_global_localizer. () 2018-03-13 16:23:27 +01:00
Alexander Belyaev 4d52c46629
Clean-up dependencies and move real_time_correlative_scan_matcher. ()
[Internal headers RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2018-03-13 15:18:05 +01:00
Wolfgang Hess c09b643d8d Synchronize correctly in FinishTrajectory(). ()
PoseGraph{2D,3D}::FinishTrajectory() calls AddWorkItem() which
requires the mutex to be held. This adds code to do this.
2018-03-13 14:10:51 +01:00
Alexander Belyaev 525f7afe7e
Move sensor-related stuff to internal/. ()
[Internal headers RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2018-03-13 13:36:45 +01:00
gaschler 1187480fe6 Introduce RangeDataCollator ()
Synchronizes and merge-sorts TimedPointCloudData by per-point timestamps from
multiple sensors.

[RFC=0017](https://github.com/googlecartographer/rfcs/blob/master/text/0017-synchronize-points.md)
2018-03-13 11:08:01 +01:00
Alexander Belyaev 976736051c
Move scan matchers to internal/. () 2018-03-13 10:21:27 +01:00
Alexander Belyaev 70c7660348
Move even more stuff to internal/. ()
[Internal headers RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2018-03-12 17:46:31 +01:00
Alexander Belyaev bfbf29dcd6
Move mapping/pose_graph/ to internal/. ()
[Internal headers RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2018-03-12 14:00:18 +01:00
Alexander Belyaev 418e0964bf
Move pose_graph_*d related files to internal/. ()
[Internal headers RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)
2018-03-12 12:42:52 +01:00
Juraj Oršulić 091a4f852d Update descriptions in pose_graph.h ()
Remove "frozen", since deserialized trajectories can be unfrozen since .
2018-03-10 23:50:31 +01:00
Alexander Belyaev def4048e95
Make the cloud_uplink address empty by default. () 2018-03-09 16:57:58 +01:00
Alexander Belyaev 2fe1867221
Fix writing the pbstream via gRPC. () 2018-03-09 16:26:03 +01:00
Alexander Belyaev daa35d3bc8
Move in_memory_proto_stream.* to internal. ()
Internal Headers RFC
2018-03-09 15:24:07 +01:00
Juraj Oršulić e1109356cf Require Ceres built against SuiteSparse ()
Fixes .
2018-03-09 10:24:19 +01:00
Alexander Belyaev bb4ba8b319
Split local_slam_result_data.h into base and 2d/3d parts. () 2018-03-08 15:17:31 +01:00
Alexander Belyaev b29986f297
Remove the pointers to the derived PoseGraph*D classes from map_builder. () 2018-03-08 14:49:41 +01:00
Alexander Belyaev 20a980aade
Remove 'pose_graph_*d.h' from local_slam_result_data.h. () 2018-03-08 13:09:43 +01:00
Alexander Belyaev 256b5a6ff0
Remove '2d/probability_grid.h' include from 'submaps.h'. () 2018-03-08 11:56:42 +01:00
Kevin Daun 82a491181d Add IsTrajectoryFrozen to PoseGraph ()
Adds IsTrajectoryFrozen to the PoseGraph interface
2018-03-08 11:18:08 +01:00
gaschler ec078c7e1c Pin gRPC version ()
Fixes build failure on trusty
2018-03-08 10:18:28 +01:00
Michael Grupp 7e05daa8ca Remove dotfiles from build files in CMakeLists.txt ()
Avoids including unwanted files that could appear in a developer
workspace (e.g. auto-generated files in "dot" folders).
2018-03-06 18:39:46 +01:00
Alexander Belyaev f34df22a24
Update header guards. () 2018-03-05 14:55:51 +01:00
Alexander Belyaev cf180a0b19
Move mapping:: related mocks to cartographer/internal/testing. () 2018-03-05 14:09:04 +01:00
Alexander Belyaev f76d8a8a0d
Move cartographer_grpc/ to cartographer/cloud. ()
[Code structure RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0016-code-structure.md)
2018-03-05 12:41:38 +01:00
Alexander Belyaev 93c450bf6c
Change R"PROTO raw strings to just R". ()
That is actually why Wally was pushing these changes to everyone: clang-format is ignoring these raw strings and does some weird formatting.
2018-03-05 11:47:00 +01:00
Alexander Belyaev 61552314a0
Rename cartographer_grpc:: namespace as cartographer:☁️:. ()
[Code structure RFC](e11bca586f/text/0000-code-structure.md)

also
`cartographer_grpc::mapping::` ->  `cartographer:☁️:`.
`cartographer_grpc::sensor::` ->  `cartographer:☁️:`.
2018-03-02 23:21:28 +01:00
Alexander Belyaev b79e5b8e29
Move framework/, sensor/, testing/ to internal/. ()
[Internal hdrs RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)

Added `map_builder_server_interface.h/cc` to hide `framework/*.h`.
2018-03-02 14:16:49 +01:00
Rodrigo Queiro b51bf3dd6d Fix warning about incorrect workspace name ()
The workspace name for prometheus-cpp has been updated to the correct
canonical name.
2018-03-02 13:32:58 +01:00
Alexander Belyaev d05e5d99f4
Hide 'handlers' to internal/. ()
[Internal hdrs RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)

`LocalTrajectoryUploader` implementation was hidden in the anonymous namespace in `local_trajectory_uploader.cc` to remove dependency from handlers/ in the header. The follow-up PR will include splitting the files into `local_trajectory_uploader_interface.h` & `internal/local_trajectory_uploader.*`
2018-03-02 11:38:35 +01:00
gaschler a2219cb2fc
Correct comment () 2018-03-02 10:25:23 +01:00
Alexander Belyaev 97c039bab2
Move pose_graph_stub/trajectory_builder_stub to internal. ()
[Internal hdrs RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0003-internal-headers.md)

Also moved /mapping to /client. Namespace changes will follow.
2018-03-01 18:30:30 +01:00
gaschler 0156e6b8ce Instrument metrics in local trajectory builders. ()
RFC=[0014](https://github.com/googlecartographer/rfcs/blob/master/text/0014-monitoring.md)
2018-02-28 16:32:40 +01:00
gaschler df1ee4bb29 Fix metric label. ()
This makes metrics_test in debug mode happy.
2018-02-28 14:46:26 +01:00