Commit Graph

986 Commits (c1fbb6bb07e25f0a205371ac5feaa395a8a20a43)

Author SHA1 Message Date
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
Christoph Schütte c8c81dff35 Ignore pure_localization option on server ()
Fixes 
2018-02-28 12:47:19 +01:00
gaschler 363a337e67 Re-implement VoxelFilter with unordered_set ()
Use hashing to filter voxels.
Handles arbitrary grid coordinates up to sizeof(int).

FIXES=#937
2018-02-28 11:12:18 +01:00
Juraj Oršulić 32b8bd3581 Enable loading unfrozen state ()
Enable loading unfrozen state
2018-02-27 20:38:57 +01:00
Alexander Belyaev 29875117b3
Move internal/mapping to mapping/internal. () 2018-02-27 16:25:53 +01:00
gaschler 63fd497e0f Document HybridGrid limits. ()
Adds documentation to avoid issue .
2018-02-27 15:28:35 +01:00
gaschler f606d4b91c Gracefully handle time-overlapping point clouds. ()
Per-point relative times are usually computed by multiplying
a per-point time increment by the number of points.
So it is not uncommon for consecutive point clouds of a single
sensor to overlap in time.
When this happens, we act as if no backward jump in time happened
and warn once per input point cloud.

FIXES=#912
2018-02-26 18:38:00 +01:00
Alexander Belyaev 3ebfa757ef
Move mapping_*d to mapping/*d. ()
[Code structure RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0016-code-structure.md)
2018-02-26 17:40:29 +01:00
Alexander Belyaev e75e023ce2
Purge 'mapping_3d::'. () ()
[Code structure RFC](https://github.com/googlecartographer/rfcs/blob/master/text/0016-code-structure.md)
2018-02-26 14:26:41 +01:00
danielsievers 258aa715ba Move GetTrajectoryData() down to PoseGraphInterface () 2018-02-26 12:45:53 +01:00