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
Juraj Oršulić
cb0d1a6d5a
Remove inclination warning ( #231 )
...
Resolves #194 .
2017-03-30 16:39:53 +02:00
Juraj Oršulić
28da207c4d
Sphinx build fix ( #229 )
...
This was missed in #203 , where uses of absolute CMAKE_BINARY_DIR were
changed to PROJECT_BINARY_DIR.
2017-03-30 16:23:19 +02:00
William Woodall
bda68c33d9
Fix warning about struct being redefined as class ( #228 )
2017-03-28 08:57:13 +02:00
Mac Mason
1e5b49ce62
Minor sparse_pose_graph.proto improvement ( #226 )
2017-03-24 09:03:36 +01:00
Wolfgang Hess
4fa190d316
Rename LaserFan to RangeData. ( #224 )
...
LaserFan is misleading since range data can come from
various sensor types.
2017-03-23 14:56:18 +01:00
Wolfgang Hess
a2abe45542
Rename CompressedLaserFan to CompressedRangeData. ( #223 )
...
CompressedLaserFan is misleading since data can come from a
different type of sensor, e.g. a depth camera.
2017-03-22 13:06:41 +01:00
William Woodall
c78f29fdac
Adds #include <array> in files that use std::array ( #222 )
2017-03-20 08:37:47 +01:00
Mac Mason
76868b7edb
Adds HybridGrid proto serialization ( #220 )
2017-03-14 11:44:19 +01:00
Mac Mason
8bf6f101c5
Adds probability grid serialization to proto ( #208 )
2017-03-09 09:01:10 +01:00
Mac Mason
30b9fcce34
Claim an old TODO. ( #209 )
2017-03-01 10:26:48 +01:00
Juraj Oršulić
370e1e52df
Enable adding as a CMake subproject ( #203 )
...
This is done by replacing CMAKE_*_DIR variables with PROJECT_*_ variables so
that CMake uses correct paths when libcartographer is a subproject
Move AllFiles.cmake into the project binary dir instead of the root CMake binary dir,
use a project-dependent detect_changes target name
This makes overriding it from an upper level CMakeLists.txt possible, which is required
when doing a super-build which doesn't require installing libcartographer.
2017-02-09 15:57:54 +01:00
Wolfgang Hess
b2175f0d93
Remove covariance from the 3D Ceres scan matcher. ( #200 )
...
Instead of passing around fake covariances generated by the scan matcher,
we introduce appropriate values where they are needed.
2017-02-08 15:22:28 +01:00
Wolfgang Hess
b4a1021538
Formatting changes. ( #199 )
2017-02-08 14:30:38 +01:00
Holger Rapp
ddb3c890a6
Actually check that all points are colored or none. ( #192 )
2017-01-26 16:49:25 +01:00
Wolfgang Hess
97bb74157f
Remove redundant "virtual". ( #191 )
2017-01-26 13:37:02 +01:00
Holger Rapp
2dd912f5e7
Always take std::function<> by value. ( #188 )
...
Taking it by reference increases the chance of dangling references
without a significant performance gain.
2017-01-26 11:35:09 +01:00
Juraj Oršulić
f047ad35c1
Add Ceres sparse linear algebra library dependency ( #189 )
...
Ceres can be built without linking against a sparse linear algebra library
such as SuiteSparse or Eigen-sparse. This can happen if the user does not
have all the dependencies, which normally get installed when following
the Cartographer installation guide. In this case, Cartographer will
work, but without loop closures, because Ceres is not working fast enough
(the loop closure optimization without a sparse linear algebra library
is a few orders of magnitude slower). Another bad side effect of this is
that Cartographer will hang when finalizing the trajectory or on exit,
because all loop closing optimizations will be waiting in a queue which
can take hours to process.
When Ceres is regularly built against a sparse linear algebra library, as it
is supposed to be, it declares a component named SparseLinearAlgebraLibrary.
Because normal functioning of Cartographer seemingly depends on this being
present, it is introduced here in Cartographer as a required Ceres component
dependency.
2017-01-26 11:14:58 +01:00
Holger Rapp
965caf7470
Make intensities a separate channel in PointsBatch. ( #187 )
...
And add a PointsProcessor that translates from intensities to RGB.
Fixes #171 .
2017-01-24 15:08:41 +01:00
Holger Rapp
0fe51185be
Color X-Rays using the color of points. ( #185 )
...
Colorless points are considered to be black. Creating assets with
intensities will give now brighter X-Rays. I plan to fix this by adding
intensities besides colors into PointBatch and having a PointsProcessor
that converts intensities into colors.
2017-01-23 14:18:08 +01:00
Holger Rapp
92b89d12c8
Adds a PointCloudProcessor that colors points by frame_id. ( #184 )
2017-01-17 17:21:05 +01:00
Holger Rapp
99f79e3f69
Adds a FileWriter abstraction ( #182 )
2017-01-17 12:29:11 +01:00
Wolfgang Hess
1f27268664
Add resolution of option types to the documentation script. ( #180 )
2017-01-10 12:23:10 +01:00
Wolfgang Hess
1c433e6f3a
Refactor the documentation update script. ( #179 )
2017-01-10 10:43:16 +01:00
Damon Kohler
99f449543f
CMake fixes. ( #178 )
...
* Export/import targets.
* Stop linking GMock main into everything.
2017-01-09 13:49:21 +01:00
Holger Rapp
22a344b946
More linking dependencies fixing
2016-12-22 15:02:28 +01:00
Wolfgang Hess
cd0ebbf536
Add the configuration doc and an update script. ( #172 )
2016-12-21 16:21:43 +01:00
Damon Kohler
5d56b3190e
Rerun CMake when files are added/removed. ( #170 )
2016-12-21 12:05:15 +01:00
Wolfgang Hess
1477a81bfa
Tiny sparse pose graph cleanup. ( #169 )
2016-12-20 16:43:58 +01:00
Holger Rapp
628b9da6d2
Extract intensities for 2D lasers on conversion. ( #167 )
2016-12-20 16:20:00 +01:00
Damon Kohler
4e9c3d69b5
Build all our source files into a single library. ( #164 )
2016-12-20 11:24:08 +01:00
Wolfgang Hess
71c951b370
Remove the 'log_residual_histograms' option. ( #166 )
...
This option only existed in 2D. Also other refactoring to make the 2D
sparse pose graph optimization more similar to 3D.
2016-12-19 17:57:12 +01:00