Wolfgang Hess
a2e52f81cf
Remove 2D scan matcher covariances. ( #307 )
...
This replaces the scaled covariances derived from the Ceres
scan matcher by directly configurable weights. Using covariances
did not provide the expected benefit, and replacing the scaling
matrix by two values will allow a faster evaluation of the cost
function in the future.
2017-05-31 11:56:32 +02:00
Wolfgang Hess
4bb02c7240
Add XRayPointsProcessor::bounding_box(). ( #306 )
...
Changes XRayPointsProcessor to use one bounding box for all floors.
Makes the bounding box accessible via a public member function.
2017-05-24 14:46:17 +02:00
Wolfgang Hess
3d0d1e46b5
Remove unused code. ( #304 )
2017-05-23 14:17:20 +02:00
Wolfgang Hess
515db3b4a9
Minor fixes. ( #303 )
...
Extract mapping_2d::CreateLocalTrajectoryBuilderOptions() into its own file.
Loop initialization fix in the trajectory_connectivity_test.
Thread safety fixes in sparse_pose_graph.
2017-05-22 14:55:05 +02:00
Wolfgang Hess
2d416589a7
Adds a NestedVectorsById<> class template. ( #300 )
2017-05-19 16:58:21 +02:00
Wolfgang Hess
0bba56428f
Remove flat indices. ( #299 )
...
This cleans up scan_index_to_node_id_, num_nodes_in_trajectory_,
scan_index. Related to #256 .
2017-05-19 14:01:59 +02:00
Damon Kohler
34b750977b
Do not ignore docker history command errors. ( #298 )
2017-05-19 08:29:09 +02:00
Wolfgang Hess
56fc2a9a92
Fix 3D SLAM loop closure issues. ( #296 )
...
3D submaps are now oriented approximately gravity aligned.
This is so that accumulating error in the local SLAM frame is
no longer a problem for finding loop closures. It also ensures
that the z search window size is approximately in the gravity
direction.
We now also pass an estimate of gravity orientation when doing
multi-trajectory matches. Otherwise trajectories starting with
different orientation relative to gravity could not be connected.
The gravity alignment is currently derived from the ImuTracker.
It might be possible to further improve on this by using the
latest gravity direction from the optimized poses.
2017-05-18 16:55:11 +02:00
Damon Kohler
22f673655f
First unstable development release ( #295 )
2017-05-18 13:32:08 +02:00
Wolfgang Hess
9033fad1ab
Always use the origin as the origin for grids. ( #294 )
...
Also removes convenience functions from mapping_3d::Submap.
PAIR=SirVer
2017-05-18 12:00:45 +02:00
Wolfgang Hess
33ce5dee37
Improve debug output and tiny bug fix. ( #293 )
...
The full submap search window in 3D SLAM was
not calculated correctly.
2017-05-17 15:21:39 +02:00
Wolfgang Hess
6c9e24d7c5
Keep 'trajectory_nodes_' per trajectory. ( #291 )
...
Fixes #256 .
PAIR=SirVer
2017-05-17 11:15:34 +02:00
Holger Rapp
5aa968748e
Sparse pose graph no longer uses Submaps* for trajectory identification. ( #290 )
...
Related to #256 .
PAIR=wohe
2017-05-16 14:24:49 +02:00
Holger Rapp
8612f5e6e5
ConstantData now has a trajectory_id. ( #289 )
...
Related to #256 .
PAIR=wohe
2017-05-16 11:42:18 +02:00
Wolfgang Hess
5effc4dac7
Remove flat indices from SparsePoseGraph::GetTrajectoryNodes(). ( #288 )
...
Related to #256 .
Also removes ComputeMapLimits with is moved to Cartographer ROS.
PAIR=SirVer
2017-05-16 10:51:08 +02:00
Wolfgang Hess
690d1893a7
Remove unused code. ( #287 )
2017-05-15 16:57:02 +02:00
Holger Rapp
8392a7e62c
Change SubmapState.scan_indices -> node_ids ( #286 )
...
Related to #256 .
PAIR=wohe
2017-05-15 16:31:59 +02:00
Jihoon Lee
f26e4366c9
Make SparsePoseGraph::constraints() public. ( #284 )
2017-05-15 16:06:20 +02:00
Wolfgang Hess
7d43eaa08c
Keep node data per trajectory in the optimization problem. ( #282 )
...
Related to #256 .
PAIR=SirVer
2017-05-15 14:09:45 +02:00
Holger Rapp
c084624958
Turn submap state into a per trajectory list. ( #281 )
...
Related to #256 .
2017-05-15 12:12:30 +02:00
Wolfgang Hess
fde9272533
Adds mapping:NodeId for Constraint. ( #279 )
...
Also extracted mapping::SubmapId into an id.h file.
Related to #256 .
PAIR=SirVer
2017-05-11 17:17:12 +02:00
Wolfgang Hess
32583e0c5d
Use trajectory IDs for global samplers. ( #278 )
...
Related to #256 .
PAIR=SirVer
2017-05-11 15:08:27 +02:00
Holger Rapp
1a9b18db69
Change num_submaps_in_trajectory to using trajectory IDs. ( #277 )
...
Related to #256 .
2017-05-11 14:32:55 +02:00
Holger Rapp
7b1915b906
Fix bug in ToProto introduced in #275 .
2017-05-11 14:02:04 +02:00
Holger Rapp
e6a6bab351
Make TrajectoryConnectivity use trajectory IDs. ( #275 )
...
Related to #256 .
2017-05-11 13:36:12 +02:00
Holger Rapp
95f0d013c6
Rename Constraint::i -> submap_id. ( #274 )
...
Related to #256 .
2017-05-11 11:43:47 +02:00
Holger Rapp
660eb341ff
Optimization problem only deals with trajectory IDs now. ( #273 )
...
Related to #256 .
PAIR=wohe
2017-05-10 17:12:38 +02:00
Wolfgang Hess
926b0320cb
Use per-trajectory SubmapData in OptimizationProblem. ( #272 )
2017-05-10 16:28:58 +02:00
Holger Rapp
94e8eec41d
Use (trajectory_id, submap_index) as submap IDs in places. ( #271 )
...
Replace flat submap index through (trajectory_id, submap_index) in Constraints.
Related to #256 .
PAIR=wohe
2017-05-10 12:26:58 +02:00
Holger Rapp
45de59b116
Move trajectory id mapping into the SparsePoseGraph. ( #270 )
2017-05-10 08:23:57 +02:00
Holger Rapp
524b613f2c
`submap_pose`s are now owned by the OptimizationProblem. ( #269 )
2017-05-09 17:24:48 +02:00
Holger Rapp
20e9cde53d
Fix race condition in extrapolation of submap poses. ( #268 )
...
PAIR=wohe
2017-05-09 15:21:30 +02:00
Wolfgang Hess
c664d7b966
Comply to CMake's CMP0037. ( #267 )
...
Test target names are generated from the directory and
source filename. Now "/"s are replaced by "."s which are
allowed by CMP0037.
2017-05-08 18:09:39 +02:00
Holger Rapp
772d02c00e
Move ConstantData into the SPG ( #263 )
2017-05-08 17:10:07 +02:00
Wolfgang Hess
9194c8679b
Clean up. ( #266 )
...
Move trajectory builder options.
Remove the barely used Interval template.
Inline the remaining CMakeLists.txt subdirectories.
2017-05-08 15:29:13 +02:00
Yutaka Takaoka
522b37979a
Enable multiple configuration for multi-trajectory ( #248 )
2017-05-08 11:58:53 +02:00
Holger Rapp
e2de27cded
Remove dead code. ( #262 )
2017-05-08 11:06:33 +02:00
Wolfgang Hess
79dc1f848f
Remove 'laser' references from parameter names. ( #259 )
...
Related to #250 .
2017-05-04 15:38:41 +02:00
Jochen Sprickerhof
12b3cc0d7b
Support new Debian version of gmock and add testing for debian systems ( #236 )
2017-05-04 12:47:12 +02:00
Wolfgang Hess
6d2feaa8c7
Build and run all tests found by the glob. ( #258 )
2017-05-03 16:55:13 +02:00
Wolfgang Hess
ff06e37579
Remove the LaserScan proto. ( #257 )
2017-05-03 16:20:04 +02:00
Holger Rapp
cdd366bab4
Remove intensities - they are unused in SLAM. ( #247 )
2017-05-03 13:44:15 +02:00
Holger Rapp
1cdcd12a8b
Make missing case statements an error. ( #245 )
2017-05-02 16:56:10 +02:00
Wolfgang Hess
2f3a9f4dcc
Add support for files containing multiple protos. ( #241 )
...
This adds code for reading and writing files that contain
sequences of compressed protocol buffer messages.
2017-04-28 15:05:42 +02:00
Holger Rapp
b4b83405ce
Fix divison by zero. ( #240 )
...
If mapping_2d::LocalTrajectoryBuilder::AddHorizontalRangeData is called
twice in a row with the same `time`, the `velocity_estimate_` becomes
`inf` which led to `inf`s in the optimization problem, which led to
failures inside Ceres.
Fixes #233 .
2017-04-26 14:14:24 +02:00
catskul
245e356449
Const-ify ProbabilityGrid::ToProto ( #238 )
2017-04-25 09:34:17 +02:00
Wolfgang Hess
af22dc6fe1
Simplify submap versions. ( #235 )
...
We now only keep track of the number of inserted range data.
2017-04-21 14:12:08 +02:00
Mac Mason
92d360a8f2
Multi-trajectory SparsePoseGraph::ToProto. ( #227 )
...
Multi-trajectory SparsePoseGraph::ToProto.
Remove obsolete TrajectoryNode::ToProto.
Add GetSubmapStates.
2017-04-19 17:01:03 +02:00
Mac Mason
4f1914b2b4
Remove extraneous Eigen/Geometry include ( #232 )
2017-03-31 08:46:48 +02:00
Juraj Oršulić
2854c485ef
Enable building in Debug mode if the user really wants this ( #230 )
...
Also inform the user about slow performance if they do this.
2017-03-30 17:00:50 +02:00