Wolfgang Hess
c8de50bd2b
Add 'gravity_alignment' rotation to each node. ( #500 )
...
In 2D this replaces the 'tracking_to_tracking_2d' transform.
Also changes the 2D SparsePoseGraph to get the full 3D pose.
2017-09-04 16:24:26 +02:00
Wolfgang Hess
3948943b64
Use EstimateGravityOrientation() in 2D SLAM. ( #499 )
2017-09-04 11:14:51 +02:00
Wolfgang Hess
e3b6f0afc5
Expose complete poses in 2D SLAM. ( #498 )
...
This changes the trajectory nodes to contain the complete 'pose'
including 'tracking_to_tracking_2d' applied already. Similar for
the 'zbar_ij' as it is returned by 'constraints()'. This allows
2D and 3D to be handled in the same way.
2017-09-01 15:40:21 +02:00
Wolfgang Hess
5673334f0e
Tiny improvement of the gravity estimation. ( #494 )
2017-09-01 10:22:13 +02:00
Wolfgang Hess
d3c49c8585
Pass odometry data to the 3D optimization problem. ( #495 )
...
Not yet used.
2017-09-01 09:58:24 +02:00
Wolfgang Hess
72bb24e362
Pass initial pose of nodes to the 3D optimization problem. ( #496 )
...
Also drops 'point_cloud' from the name since the pose is also
relevant to other sensor data.
2017-09-01 09:34:48 +02:00
Christoph Schütte
982f2bd2e0
Use TrajectoryNode::Data in FastCorrelativeMatcher. ( #493 )
...
* Use TrajectoryNode::Data in FastCorrelativeMatcher.
2017-08-31 15:10:48 +02:00
jie
e2c67a7bde
Fix Lint and ClangTidy warnings. ( #485 )
2017-08-31 13:39:47 +02:00
Wolfgang Hess
3215035c1c
Add thread annotation to LogResidualHistograms(). ( #492 )
2017-08-31 12:26:31 +02:00
Mac Mason
b54ca0cca6
Fix Rigid2 and Rigid3 to default to an identity transform. ( #491 )
2017-08-31 11:32:04 +02:00
Christoph Schütte
06e9112bc8
Unify GlobalTrajectoryBuilder across 2D and 3D ( #489 )
...
This PR unifies GlobalTrajectoryBuilder across 2D and 3D by templating
it with the LocalTrajectoryBuilder and the SparsePoseGraph. It thus
includes small changes to interfaces in LocalTrajectoryBuilder and
SparsePoseGraph.
2017-08-30 16:34:26 +02:00
Wolfgang Hess
3c22c8253a
Refactoring: Do not pass 'constant_data' in pieces. ( #488 )
...
Also removes the no longer used range data from trajectory nodes
in 2D.
2017-08-30 14:22:12 +02:00
Wolfgang Hess
094b5a4d93
Template dispatching of sensor data. ( #484 )
...
This reduces the amount of code that needs to be written when a
new type of sensor data is introduced by a tiny bit.
Rangefinder data is not yet following this pattern.
2017-08-28 15:43:26 +02:00
Wolfgang Hess
a7fe8bd2ab
Add filtered point cloud to TrajectoryNode::Data for 2D. ( #483 )
2017-08-28 11:17:53 +02:00
jie
42d8a8f005
Add filtered point clouds to TrajectoryNode::Data for 3D. ( #482 )
2017-08-25 16:56:50 +02:00
jie
0837d4b228
Add fixed frame pose constraints to 3D problem. ( #480 )
2017-08-25 15:26:19 +02:00
jie
449799719f
Extract rotation parameterization to a separate file. ( #479 )
2017-08-25 12:06:22 +02:00
Christoph Schütte
96b71e227f
Add histograms for pose residuals ( #478 )
...
* WIP Add histograms for pose residuals
* Address reviewers comments
* Address more comments.
2017-08-25 11:39:56 +02:00
jie
2fd2e86351
Add fixed frame pose weight into optimization problem options. ( #477 )
2017-08-24 15:40:48 +02:00
jie
14977f73f1
Add fixed frame pose data to the 3D optimization problem. ( #476 )
2017-08-24 15:02:23 +02:00
Wolfgang Hess
a239b71a6e
Dynamic dispatch of sensor::Data. ( #475 )
...
This ensures at compile time that all types of data are handled,
and only keeps the data needed for each individual type.
2017-08-24 14:17:51 +02:00
jie
0671e8835e
Add interface to process fixed frame pose, e.g. GPS. ( #471 )
2017-08-24 12:49:03 +02:00
Wolfgang Hess
e78e2cb5ad
Extract PoseEstimate into its own file. ( #474 )
...
This is to remove the dependency of GlobalTrajectoryBuilderInterface
on the TrajectoryBuilder.
2017-08-24 12:04:39 +02:00
Wolfgang Hess
f0e1dab031
Add a histogram of low resolution scores for 3D. ( #473 )
2017-08-24 09:28:12 +02:00
Wolfgang Hess
4d11a226ff
Expose low resolution matching scores. ( #470 )
...
This is needed in preparation of adding a low resolution score histogram.
2017-08-23 17:48:49 +02:00
Jihoon Lee
2dd2d6f448
Use vector<map<>> instead of vector<deque> for submap_data. ( #422 )
2017-08-23 12:16:42 +02:00
zjwoody
2e53586818
Also check low resolution match for 3D loop closure. ( #468 )
...
Related to #369 .
2017-08-22 17:29:20 +02:00
Wolfgang Hess
297e9cc02d
Remove unused argument. ( #466 )
2017-08-22 12:22:41 +02:00
zjwoody
ac693f3e04
Use separate voxel filter options for 3D loop closure. ( #465 )
2017-08-21 18:01:23 +02:00
Damon Kohler
edfd6ac8d7
Also log the IMU correction as a quaternion. ( #463 )
2017-08-21 17:26:48 +02:00
Moritz Münst
0ef372d584
Use odometry in 2D pose graph optimization. ( #456 )
2017-08-21 15:12:00 +02:00
Wolfgang Hess
bcde3b45b0
Tiny cleanup of TransformInterpolationBuffer. ( #462 )
2017-08-18 16:19:50 +02:00
Wolfgang Hess
14d868869f
Add slides from yesterday and next date. ( #461 )
2017-08-18 12:06:53 +02:00
Wolfgang Hess
c29fec3dd0
Fix colors in the X-ray points processor. ( #460 )
...
mean_..._in_column was broken in #423 .
2017-08-17 18:07:33 +02:00
Wolfgang Hess
9498cc90ca
Estimate angular velocities from odometry. ( #458 )
...
If no IMU is available we will now use odometry to estimate
angular velocities if available instead of the last poses.
Fixes #453 .
2017-08-16 16:55:39 +02:00
Wolfgang Hess
0c6d6979c4
Fix header. ( #457 )
...
RegisterBuiltInPointsProcessors() declaration was broken in #455 .
2017-08-16 16:22:42 +02:00
zjwoody
ba6f782949
Fix ClangTidy warnings. ( #455 )
2017-08-16 15:21:04 +02:00
Wolfgang Hess
11dbdf91b9
Remove unused code and option for odometry states. ( #451 )
2017-08-11 17:38:48 +02:00
Wolfgang Hess
e79a918989
Use PoseExtrapolator in the 3D trajectory builder. ( #450 )
...
This replaces the Predict() logic in the 3D trajectory builder.
2017-08-11 17:13:28 +02:00
Wolfgang Hess
73b0e5e20a
Use PoseExtrapolator in the 2D trajectory builder. ( #448 )
...
This replaces the Predict() logic in the 2D trajectory builder.
2017-08-11 12:38:34 +02:00
Wolfgang Hess
6ebfa50291
Use odometry to extrapolate linear motion. ( #443 )
2017-08-08 16:30:53 +02:00
Wolfgang Hess
8732e43f16
Add sensor::OdometryData. ( #442 )
2017-08-08 14:52:47 +02:00
Wolfgang Hess
f60b2cbb16
Pass IMU data as sensor::ImuData. ( #441 )
2017-08-08 14:27:08 +02:00
Wolfgang Hess
eb53b70fec
Towards localization in 3D. ( #438 )
...
Adds loading maps to 3D, deserializes submaps and supports trajectories
without any node. Still no trimming support.
2017-08-02 14:17:50 +02:00
Wolfgang Hess
5369c3ced1
Use the ImuTracker in the PoseExtrapolator. ( #436 )
2017-08-01 10:44:32 +02:00
Wolfgang Hess
b28bc3bc9e
Extract velocity estimation from poses into a function. ( #435 )
2017-07-31 12:31:28 +02:00
Wolfgang Hess
a6d94c07cf
Use IMU data when extrapolating poses if available. ( #434 )
2017-07-28 17:12:12 +02:00
Andrew Hundt
d22402bdfa
color.cc constexpr std::sqrt is not ISO C++ ( #432 )
2017-07-28 12:11:57 +02:00
damienrg
46c7ce886d
Change Color to Uint8Color and FloatColor ( #423 )
...
As almost all computations for color are done in float, use FloatColor
format by default and convert to Uint8Color only when needed.
2017-07-27 11:03:55 +02:00
Wolfgang Hess
6035f63860
Add a extrapolator for poses. ( #430 )
...
This will be used in Cartographer ROS to extrapolate poses for tf.
PAIR=damonkohler
2017-07-26 15:21:05 +02:00