Commit Graph

967 Commits (f61a944938ca55a010128f09c24e7e9d6123b25b)

Author SHA1 Message Date
Juraj Oršulić fb631ac9e6 Landmark improvements (#901) 2018-02-14 15:39:43 +01:00
gaschler cf01184114 Fix leak in LandmarkCostFunctionTest. (#902) 2018-02-14 12:38:01 +01:00
gaschler 9793542957 Add 3D global SLAM grpc test. (#904) 2018-02-14 12:04:52 +01:00
gaschler 244cf615f5 Make clang compile without warnings. (#903)
Rule out accidental usage of integer-only ::abs.
Correct static, override and protected annotations.
2018-02-14 11:06:46 +01:00
gaschler b2581b0d58 Make comparison operator const. (#898) 2018-02-13 13:03:26 +01:00
gaschler 7448f93b50 Avoid auto for Eigen expressions. (#899)
While harmless in most cases, auto can delay evaluation
of expressions in unexpected ways.
So it is better to avoid auto for Eigen expressions.
https://eigen.tuxfamily.org/dox/TopicPitfalls.html
2018-02-13 12:34:43 +01:00
Christoph Schütte 2a74484be1 Add slides from yesterday (#894) 2018-02-13 10:17:45 +01:00
Alexander Belyaev ac79f0c034
Save landmark poses after optimization run. (#896)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-12 13:15:16 +01:00
Alexander Belyaev b72bbb20c3
Fix the size of residuals, add test for jacobians. (#895)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-09 13:13:17 +01:00
Christoph Schütte ba113e4e05 Add slides from 180125. (#893) 2018-02-08 10:06:27 +01:00
Christoph Schütte 39f140da66 Follow googlecartographer/cartographer#859 (#892) 2018-02-07 16:35:44 +01:00
Alexander Belyaev 95dbcfdf9e Serialize landmarks. (#889)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-07 10:47:39 +01:00
Alexander Belyaev 7762087edf Fix some styling issues. (#890) 2018-02-07 10:14:59 +01:00
Alexander Belyaev 58bc1ced68
Implement GetLandmarkPoses method. (#888)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-06 18:13:31 +01:00
Christoph Schütte 9e977daf1d Remove gRPC compiler invocation from Bazel build (#887) 2018-02-05 16:28:36 +01:00
Christoph Schütte b0945e4a4d Implement AddTrajectoryHandlerTest. (#886) 2018-02-05 14:50:43 +01:00
Alexander Belyaev 28993a8963
Use landmarks in optimization (both 2D & 3D). (#884)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-05 13:23:00 +01:00
Juraj Oršulić 9bebeea742 Serialize and deserialize trajectory builder options (#859) 2018-02-05 09:45:43 +01:00
Christoph Schütte df518b80c8 Remove gRPC proto compiler invocation from CMakeLists.txt (#878) 2018-02-02 21:04:34 +01:00
Holger Rapp c212bbb698 Hand through intensities into the generated PLY - if they exist. (#885) 2018-02-02 18:29:18 +01:00
Michael Grupp 655bd65abc Fix sphinx-build errors in evaluation.rst (#883)
Adds language arguments that are required for code blocks in newer Sphinx versions.

Resolves the missing code blocks in the HTML output.
2018-02-02 15:13:23 +01:00
Christoph Schütte 86a8944589 Implement tests for various data adding handlers (#881) 2018-02-02 01:16:14 +01:00
Christoph Schütte 92fa1782f3 Implement RetryStrategies and use for AddTrajectory (#880) 2018-02-01 22:31:33 +01:00
gaschler 9eaf960936 Configure remaining tests in bazel (#879) 2018-02-01 21:58:59 +01:00
Alexander Belyaev eed51b8bb6 Cleaning up dependencies for constraint builder & optimization problem. (#877) 2018-02-01 20:59:22 +01:00
Michael Grupp 9ca06bd06b Add ground truth documentation. (#853)
See [RFC 10](https://github.com/googlecartographer/rfcs/blob/master/text/0010-document-groundtruth-features.md)

[Rendered version](https://github.com/magazino/cartographer/blob/doc-groundtruth/docs/source/evaluation.rst)
2018-02-01 18:53:43 +01:00
Christoph Schütte 302320b1a9 Use framework::Client everywhere. (#875)
This switches all gRPC method invocation to using framework::Client. After this change we can remove the gRPC proto compiler from the build files.

[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-02-01 17:19:15 +01:00
Alexander Belyaev 8ea46857ac
Move cerec_pose.* to mapping/pose_graph. (#874) 2018-02-01 15:16:50 +01:00
gaschler 731bc89f22 Move handlers to cc, use MapBuilderContextInterface (#873)
This is to avoid a circular dependency with LocalTrajectoryUploader and to clean up.
2018-02-01 14:34:41 +01:00
Alexander Belyaev d195c77ebc
Add a 2D landmark cost function. (#868)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-01 13:39:24 +01:00
Christoph Schütte 60e9fa59fe
Implement AddImuDataHandlerTest (#872)
This PR introduces first gRPC handler test that takes advantage of new RpcHandlerTestServer.
2018-02-01 13:05:08 +01:00
Alexander Belyaev e735203a05
Extend MapById::lower_bound() to support structs with 'time' field. (#871)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-02-01 11:58:13 +01:00
Christoph Schütte eb3e63bad6 Implement WriteMapHandler. (#851) 2018-02-01 11:21:50 +01:00
Christoph Schütte 27e8c84f2e Introduce MapBuilderContextInterface (#869) 2018-01-31 19:22:08 +01:00
Alexander Belyaev ab890a8e15
Move 3D landmark cost function to mapping_3d/. (#870)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-01-31 18:40:10 +01:00
Christoph Schütte a749d28a67 Introduce framework::Client (#867)
Introduces a framework::Client class that makes it more convenient to call gRPC methods.

[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
2018-01-31 17:45:57 +01:00
Alexander Belyaev 0440761474
Move slerp and scaling of error to 'cost_helpers'. (#864)
[RFC=0011](https://github.com/googlecartographer/rfcs/blob/master/text/0011-landmarks.md)
2018-01-31 17:06:49 +01:00
Rodrigo Queiro ad4dc3c4d3 Bazel: build with -Wno-sign-compare (#863)
This avoids warnings for code like:

```
  CHECK_EQ(local_to_cloud_trajectory_id_map_.count(local_trajectory_id), 0);
```
2018-01-31 15:19:36 +01:00
Christoph Schütte 855743cac4 Check handler signature (#866) 2018-01-31 14:46:59 +01:00
Christoph Schütte 9aecf23a37 Simplify Handler registration. (#865) 2018-01-31 12:26:56 +01:00
Alexander Belyaev 708e7fc57d
Add a 'cost_helpers' library. (#862)
* Add a 'cost_helpers' library.

* Change naming and add comments.
2018-01-30 22:12:25 +01:00
Alexander Belyaev 93568641f9
Implement LandmarkCostFunction 3D. (#860) 2018-01-30 15:18:13 +01:00
gaschler a7ed7e224f Upload LocalSlamResultData (#858)
[RFC=0002](https://github.com/googlecartographer/rfcs/blob/master/text/0002-cloud-based-mapping-1.md)
PAIR=cschuet
2018-01-29 14:02:33 +01:00
Christoph Schütte 7d2e39af4b gRPC handler testing (#857) 2018-01-29 12:01:17 +01:00
Alexander Belyaev 8316444319
Store landmark observations as LandmarkNodes in PoseGraph. (#850) 2018-01-29 10:17:05 +01:00
Christoph Schütte 49d89d0759 Move mocks out of client_test.cc into testing/ folder. (#854) 2018-01-26 17:56:36 +01:00
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