Commit Graph

917 Commits (dce713b442bdf540e742a332ff9c1edd10b0b8fb)

Author SHA1 Message Date
Damon Kohler 015519cf23 Adds support for inverted LaserScan messages. (#138) 2016-11-21 17:28:50 +01:00
Damon Kohler a39bbff70c Removes odometer covariance from public API. (#137) 2016-11-21 12:34:52 +01:00
Damon Kohler 5136a3a81e Removes LaserFan from public API. (#136) 2016-11-21 10:30:57 +01:00
Damon Kohler c386bf050d Renames Odometry to Odometer. (#135) 2016-11-21 08:27:19 +01:00
Wolfgang Hess 7dc3ab1e9e Change dropping data before start to be idempotent. (#133)
We drop as much data from each queue as possible without changing the
start time that would be determined if we only saw the dispatched
data, i.e. we retain one piece of data not beyond the common start time.
This makes the process idempotent.
2016-11-18 12:49:33 +01:00
Wolfgang Hess e703b1cea3 Fix multi-trajectory loop closure attempts. (#131)
Before, old scans with new submaps were always matched as if they
belong to connected trajectories.
2016-11-18 10:36:30 +01:00
Damon Kohler 3f0eeec429 Adds configuration files test. (#129) 2016-11-18 09:48:54 +01:00
Holger Rapp 4522fc49ad Simplify LuaParameterDictionary. (#132) 2016-11-17 17:58:51 +01:00
Wolfgang Hess 8f58efe79b Formatting fixes. (#130) 2016-11-17 15:46:29 +01:00
Damon Kohler 03c8e8d195 Replace USES_ROS through Catkin auto-detection. (#128) 2016-11-17 11:01:46 +01:00
Holger Rapp ac92dd8cbf Support by-floor XRay generation. (#126) 2016-11-17 01:49:17 -08:00
Damon Kohler c8f33ee853 Drop sensor data until progress can be made. (#124)
The sensor collator now finds a common starting time for all sensor
data. For example, this prevents us from processing arbitrarily many IMU
packets before our first scan match and makes it possible to auto pause
and resume a trajectory in the event of sensor data interruption.
2016-11-17 09:11:00 +01:00
Holger Rapp 6777654202 Adds a heuristic to detect floors in a trajectory. (#125) 2016-11-16 05:16:40 -08:00
Damon Kohler a74319cf1a Pulls out collator.cc. (#123) 2016-11-15 14:17:23 +01:00
Damon Kohler 8cd3178c69 Moves 2D laser options into 2D trajectory builder. (#114) 2016-11-15 13:24:58 +01:00
Wolfgang Hess 1de387cba9 Improvement of 2D/3D consistency and cleanup. (#122) 2016-11-11 14:33:06 +01:00
Wolfgang Hess 97d5cb2a8b Remove unused Imu proto message. (#121) 2016-11-11 12:22:41 +01:00
Wolfgang Hess a6aacd0647 Fix and add CHECKs when writing X-ray output. (#120)
Before the allocation was too large which resulted in excessive memory
consumption. Also adds CHECKs for the stride size and the success of the Cairo
writer function.
2016-11-08 16:14:35 +01:00
Wolfgang Hess c80c2eaa40 Unify 2D/3D constraints. (#119)
This removes Constraint2D and instead embeds 2D constraints in a
Constraint3D which is renamed to Constraint.
2016-11-08 14:47:03 +01:00
Wolfgang Hess 3e64a803a4 Consistently name weight parameter. (#116)
All parameters scaling optimization residuals to determine relative
importance are now consistently named.
2016-10-28 16:39:45 +02:00
Damon Kohler 32b5beb225 Move single caller function to call site. (#113) 2016-10-28 16:27:06 +02:00
Wolfgang Hess 1081473be9 Fix FindGMock.cmake and the CMake modules installation. (#112) 2016-10-28 15:43:13 +02:00
Damon Kohler b94880c56e Improves parameter names. (#111) 2016-10-28 13:26:13 +02:00
Atsushi Watanabe f45eaa9c67 Supports system-wide installed GMock (#105)
This commit fixes #73.
Tested using docker ubuntu:trusty and native Fedora 24 with gmock 1.8.
2016-10-28 12:23:21 +02:00
Wolfgang Hess 404bbfcc2b Add SubmapToProto to the map builder. (#110) 2016-10-27 16:20:58 +02:00
Wolfgang Hess a5b81ff159 Allow continuing after running a "final" optimization. (#109)
And a tiny cleanup of the submap visualization query.
2016-10-27 15:25:57 +02:00
Damon Kohler a33bddd4cd Removes unneccessary num_available_packets() API. (#108) 2016-10-27 13:06:49 +02:00
Damon Kohler 224b068fe9 CHECKs that all queues are finished on destruction. (#106) 2016-10-27 11:45:27 +02:00
Damon Kohler 15f9244577 Removes sensor packet period histogram. (#104) 2016-10-26 15:23:37 +02:00
Holger Rapp 6e6d2decaa Fixes for Xenial. (#103)
- Remove use of get_property(LOCATION in cmake where this is easy. This
  reduces build warnings sufficiently to not drown out other important
  information.
- Mark cairo a dependency in package.xml so rosdep pulls it in.

Tested using docker -t ros:kinetic, which is based on Xenial.
2016-10-26 14:23:00 +02:00
Wolfgang Hess 651a7a23e7 Rename trajectory and submap visualization protos. (#101) 2016-10-26 08:45:52 +02:00
Wolfgang Hess 4917dd65ce Add serialization of the sparse pose graph. (#97) 2016-10-25 16:56:26 +02:00
Holger Rapp a3157239b7 Adds a voxel filtering and moving objects removing points processor. (#99) 2016-10-25 16:36:56 +02:00
Holger Rapp 915dbd1894 Adds a CountingPointsProcessor. (#98)
It outputs the number of points processed at its stage in the pipeline
and is useful for understanding how many points a filter removed.
2016-10-25 16:09:47 +02:00
Holger Rapp 2f42c990f6 Adds a fixed sampling points processor. (#96) 2016-10-25 15:37:47 +02:00
Holger Rapp 46f8883d6a Make all 'PointProcessor's registerable with the PipelineBuilder. (#95)
Also the default instance has now knowledge of all of Cartographer's
'PointsProcessor's by default.
2016-10-25 15:18:32 +02:00
Holger Rapp 188dcb57e5 Adds a class that can build a points processing pipeline out of a Lua configuration. (#94) 2016-10-25 12:27:58 +02:00
Atsushi Watanabe 90e2f02e9d Add a PCD writing points processor. (#92) 2016-10-25 12:11:44 +02:00
Damon Kohler 05adba7c51 Improves sensor data queue logging. (#93) 2016-10-25 11:09:08 +02:00
Holger Rapp 3986ad5328 Moving a temporary prevents copy elision. (#91) 2016-10-20 19:11:29 +02:00
Holger Rapp 695c303c56 Fix layering check for headers. (#90) 2016-10-20 18:48:52 +02:00
Wolfgang Hess 4d81b58a39 Remove unused code. (#89) 2016-10-20 13:54:12 +02:00
Wolfgang Hess 5b16f4bcb6 Simplify 3D visualization code. (#88)
Removes the non-const Submaps accessor.
Adds -Werror=missing-braces.
2016-10-20 11:29:12 +02:00
Holger Rapp 4b7e2efbd9 Add code to serialize a trajectory to proto. (#87) 2016-10-20 10:53:43 +02:00
Holger Rapp f2916143ef Adds a PointProcessor that writes ASCII files. (#86)
The files will just contain XYZ points in a file of their own. This is
useful for example as interop with AutoCAD.
2016-10-20 09:28:18 +02:00
Wolfgang Hess 3cf59a0266 Collate sensor data in the MapBuilder. (#85) 2016-10-19 17:25:44 +02:00
Holger Rapp 15b58766f5 Use pkg-config variables for yaml-cpp. (#84)
Related to googlecartographer/cartographer_ros#117.
2016-10-19 17:11:31 +02:00
Damon Kohler a560c97c2b Adds Docker caching to Travis. (#83) 2016-10-19 16:50:20 +02:00
Wolfgang Hess e566bb73f5 Adds CollatedTrajectoryBuilder. (#82) 2016-10-19 16:29:26 +02:00
Wolfgang Hess d4e04a3cda Unify to AddLaserFan for both 2D and 3D. (#81) 2016-10-19 15:02:31 +02:00