gaschler
dab69e0ca0
Struct SensorId ( #839 )
...
* WIP, started unordered_set<SensorId>
* struct SensorId. Works for cartographer without grpc.
* correct test
* SensorId in cartographer_grpc/
* clean up
* try to fix for trusty
* SensorId::operator==
* Ran clang-format.
2018-01-26 15:07:49 +01:00
Alexander Belyaev
1d2613c8e2
Add gRPC version of RunFinalOptimization(). ( #852 )
2018-01-25 17:31:03 +01:00
Christoph Schütte
edb18231b6
Add ProtoStreamWriterInterface and implement forwarding writer. ( #849 )
2018-01-25 15:27:50 +01:00
Rodrigo Queiro
65889f14a0
Bazel: use cartographer_grpc_server as in CMakeLists.txt ( #848 )
2018-01-25 13:28:31 +01:00
Alexander Belyaev
894bad397d
Rename Landmark->LandmarkObservation. ( #847 )
2018-01-25 12:10:30 +01:00
Alexander Belyaev
37ddf9e550
Add gRPC version of LoadMap(). ( #842 )
...
Later they will be used in map_builder_stub and load_map_handler.
2018-01-25 09:27:42 +01:00
Alexander Belyaev
a103e8f93a
Implement 'num_trajectory_builders' in map_builder_stub. ( #845 )
...
A huuuuuge PR.
2018-01-25 08:59:52 +01:00
Alexander Belyaev
aee1bc46dc
Introduce InMemoryProtoStreamReader. ( #844 )
...
* Introduce InMemoryProtoStreamReader.
* Move inmemory*.* to in_memory*.*.
2018-01-24 13:58:15 +01:00
Rodrigo Queiro
52527ec6d4
Add licenses() declarations to BUILD files ( #843 )
...
These were in some, but not all, of the existing BUILD files. They make
it easier to vendor cartographer, as Bazel complains if a BUILD file in
//third_party is missing a licenses() declaration.
2018-01-24 13:16:25 +01:00
Rodrigo Queiro
1ff4c00d70
Fix the Bazel build when used as an external repo ( #840 )
...
Specifically, the cartographer_repositories() macro must refer to the
BUILD files contained in the cartographer workspace.
2018-01-23 22:00:12 +01:00
Rodrigo Queiro
8e2a017612
Build cartographer_grpc with Bazel ( #841 )
...
This doesn't work when cartographer is an external workspace, due to a
limitation in cc_grpc_library. However, the //cartographer target will
still work it is external, and cartographer_grpc users can vendor the
repository.
2018-01-23 21:29:41 +01:00
Christoph Schütte
f1616e16ec
Introduce bazel docker file ( #838 )
2018-01-23 10:50:51 +01:00
Alexander Belyaev
43008d391d
Introduce a ProtoStreamReaderInterface. ( #837 )
...
* Introduce a ProtoStreamReaderInterface.
* Remove the comments from interface def.
2018-01-23 09:09:37 +01:00
Alexander Belyaev
986ac28ff8
Rename 'tranform' to 'landmark_to_tracking_transform'. ( #836 )
2018-01-22 18:30:14 +01:00
Alexander Belyaev
6d4649857a
Move implementation of ReadProto/WriteProto to .cc ( #835 )
2018-01-22 17:53:31 +01:00
Rodrigo Queiro
0c227097e7
Add a Bazel build for cartographer ( #834 )
...
This does not include cartographer_grpc, nor any of the binaries
(*_main.cc). It has been tested with Bazel 0.9.0 on Ubuntu 14.04 with
the latest (at time of writing) dazel/dazel container, by running:
```
bazel build //...
bazel test //...
```
While this is a large CL, the files under third_party are not new - they have been through internal review, and this is their open-source release. The other files come to 212 lines of code.
2018-01-22 16:47:07 +01:00
Alexander Belyaev
67850d25a0
Replace templates in io/proto_stream.h with upcasting. ( #833 )
2018-01-22 14:12:14 +01:00
Alexander Belyaev
9e30c1e0cd
Send LandmarkData via gRPC. ( #831 )
...
* Send LandmarkData via gRPC.
[RFC PR](https://github.com/googlecartographer/rfcs/pull/18 )
* Fix the nits.
2018-01-19 17:24:30 +01:00
Alexander Belyaev
746c9c83c8
Propagate LandmarksData to the PoseGraph. ( #830 )
...
Propagate LandmarkData to the PoseGraph.
2018-01-19 09:41:24 +01:00
gaschler
de5937856d
Collate_by_trajectory option ( #828 )
...
Adds an option to create a MapBuilder using TrajectoryCollator
(instead of Collator).
[RFC=0008](https://github.com/googlecartographer/rfcs/blob/master/text/0008-collator-interface.md )
2018-01-17 21:15:15 +01:00
gaschler
d92040d0e6
Test Collator for multiple trajectories ( #829 )
2018-01-17 20:43:20 +01:00
gaschler
70e378b7c5
TrajectoryCollator ( #827 )
...
Introduces TrajectorCollator, which collates sensor data ignoring
other trajectories.
Tests the same.
[RFC=0008](https://github.com/googlecartographer/rfcs/blob/master/text/0008-collator-interface.md )
2018-01-17 17:48:20 +01:00
Wolfgang Hess
ffdbf1c161
Fix debug output for 3D loop closure error. ( #826 )
...
PAIR=spielawa
2018-01-17 13:09:48 +01:00
Christoph Schütte
35a9c3d63b
Implement sensor data uploading in LocalTrajectoryUploader. ( #822 )
2018-01-17 12:01:29 +01:00
gaschler
f64eef876a
Optional GetBlockingTrajectoryId ( #820 )
...
[RFC=0008](https://github.com/googlecartographer/rfcs/blob/master/text/0008-collator-interface.md )
2018-01-16 16:21:22 +01:00
Alexander Belyaev
53c2a6b58f
Move 'finished' getter to the base class. ( #803 )
...
* Move 'finished' getter to the base class.
* Ran clang-format.
* Ran clang-format.
2018-01-16 14:20:33 +01:00
Christoph Schütte
712c7e3e39
Fix namespace of serialization functions. ( #825 )
2018-01-16 12:20:15 +01:00
Christoph Schütte
31ec89614c
Add parameter to Submap::ToProto() to determine whether to include loop ( #821 )
2018-01-16 11:23:29 +01:00
Christoph Schütte
3660408ae6
Forward declare unique_ptr<LocalSlamResultData> ( #824 )
2018-01-16 10:20:51 +01:00
Christoph Schütte
c053fc7a2f
Implement sensor data forwarding. ( #818 )
2018-01-15 15:31:33 +01:00
Christoph Schütte
903e6432b9
Add slides from Cartographer Open House. ( #819 )
2018-01-15 12:11:58 +01:00
Christoph Schütte
f49e798ef9
Start DataUploader implementation, implement Add/FinishTrajectory ( #811 )
...
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md )
2018-01-12 23:16:29 +01:00
gaschler
057bd8ce6a
Public SpaCostFunction::Compute* ( #814 )
2018-01-12 21:46:47 +01:00
Wolfgang Hess
19ff047a79
Allow FixedRatioSampler to drop all data. ( #817 )
...
This is useful to disable loop closure by setting
constraint_builder.sampling_ratio = 0.
2018-01-12 18:54:41 +01:00
Christoph Schütte
1de696d45f
Introduce PoseGraphInterface::ToProto() ( #813 )
2018-01-12 13:55:14 +01:00
Christoph Schütte
fee77c8a99
Add LocalSlamResultData retrieval and submap management ( #810 )
...
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md )
2018-01-12 13:00:25 +01:00
gaschler
51ccee3e74
CollatorInterface ( #808 )
...
[RFC=0008](https://github.com/googlecartographer/rfcs/blob/master/text/0008-collator-interface.md )
2018-01-11 16:02:03 +01:00
Christoph Schütte
8fc64fdbb5
Wrap HybridGrid in unique_ptr to make Submap updatable ( #809 )
2018-01-11 14:34:56 +01:00
Christoph Schütte
e1a182d1fa
Implement LocalSlamResult data adding to PoseGraph. ( #804 )
2018-01-11 10:19:37 +01:00
Christoph Schütte
d313af8674
Add InsertionResult to LocalSlamResult. ( #801 )
2018-01-10 17:26:04 +01:00
Susanne Pielawa
c7a8c5fda9
Keep fixed frame across optimizations. ( #807 )
...
PAIR=wohe
2018-01-10 16:01:27 +01:00
Susanne Pielawa
286d16238e
In optimization_problem, use a map instead of vector for trajectory data. ( #805 )
...
PAIR=wohe
2018-01-10 14:30:51 +01:00
Susanne Pielawa
67d26747cc
Implement assignment operator for common::optional. ( #800 )
...
Implement assignment operator for common::optional.
2018-01-09 17:54:53 +01:00
Christoph Schütte
8c7c4e3d2a
Make LocalTrajectoryBuilder optional. ( #799 )
...
This is to prepare for the cloud-based mapping case where the robot is running cartographer in pure-localization mode and the cloud instance only solves the global problem. In that case a `LocalTrajectoryBuilder` need to be instantiated in for the cloud instance.
2018-01-09 16:54:30 +01:00
Christoph Schütte
8165da873f
Add GetConstraints() to gRPC service. ( #798 )
2018-01-09 14:25:28 +01:00
Christoph Schütte
bd2fbbf1a1
Implement GetLocalToGlobalTransform() in gRPC service ( #797 )
2018-01-08 16:28:41 +01:00
Christoph Schütte
d240261701
Add GetAllSubmapPoses to gRPC interface. ( #791 )
2018-01-08 15:34:00 +01:00
Christoph Schütte
78d05bf745
Add GetTrajectoryNodePoses() to gRPC service ( #796 )
2018-01-08 14:19:39 +01:00
Christoph Schütte
d57c2441b8
Implement gRPC submap query. ( #794 )
2018-01-08 13:52:14 +01:00
gaschler
920a34a938
Fix RpcEvent lifetime ( #793 )
...
Fixes #788 .
Uses two different types of events whether the event goes through the CompletionQueue or not.
CompletionQueueRpcEvent is again a member of Rpc.
2018-01-08 12:42:19 +01:00