47 Commits

Author SHA1 Message Date
Nikolaus Demmel
700376d846 Make default config suitable for float. Implement better handling of non-finite increments. 2021-12-10 11:03:49 +01:00
Nikolaus Demmel
ec48ff22e5 vo: crash earlier for duplicate timestamps or numeric failure 2021-12-10 02:27:35 +01:00
Vladyslav Usenko
6df075a1f7 Added assert 2021-12-06 21:57:17 +01:00
Nikolaus Demmel
24325f2a06 ICCV'21 square root marginalization paper code release
Major changes:

- New square-root implementation for optimization and
  marginalization, giving faster optimization and numerically
  more stable marginalization. The square root solver is the new
  default, but the Schur complement based implementation is still
  available. (Implements the ICCV'21 paper.)

- The odometry estimator is now fully templetized and you can run
  in float or double. Default is float, which works well with the
  new square-root implementation and gives best runtimes.

- Batch evaluation scripts and documentation to reproduce the
  ICCV'21 experiments.

Additional changes:

- New options in VIO to marginalize lost landmark right away and
  not only when the frame is marginalized (enabled by default).

- small bugfix for keypoint patch extraction bounds

- basalt_vio: more logging for batch evaluation

- basalt_vio: better handling of closing the GUI while estimator is still running

- basalt_vio: new command line argument to limit the number of frames processed

- basalt_vio: new command line argument to save ground truth trajectory

- added unit tests for square root marginalization

- update basalt-headers

- new submodules: gmt, nlohmann/json, magic_enum
2021-10-15 15:09:15 +02:00
Vladyslav Usenko
c7ceee72c0 Switched to templated version of IMU types 2021-04-17 18:41:42 +02:00
Vladyslav Usenko
8d2da587cf varialble renaming 2019-10-04 15:38:04 +02:00
Vladyslav Usenko
77100b99f2 Added initialization parameters to config files 2019-08-27 15:52:19 +02:00
Vladyslav Usenko
402228d52e small changes to mapping 2019-08-23 14:02:55 +02:00
Vladyslav Usenko
d4da96119f added pure stereo to simulator 2019-08-23 12:01:40 +02:00
Vladyslav Usenko
18fe854d88 Added stereo (no IMU) odometry and KITTI evaluation 2019-08-23 08:01:40 +00:00
Vladyslav Usenko
fc0800514b Added pure BA option 2019-08-14 11:31:12 +02:00
Vladyslav Usenko
77142f0c2a small fixes LM 2019-08-14 10:57:48 +02:00
Vladyslav Usenko
397ddc159c Merge branch 'LM' into 'master'
Added Levengert-Marquadt support

See merge request basalt/basalt!32
2019-08-13 10:03:14 +00:00
Vladyslav Usenko
f4f16ddc56 small fix 2019-08-12 19:33:00 +02:00
Vladyslav Usenko
7ebb7baf7c update mapper 2019-08-12 19:24:25 +02:00
Vladyslav Usenko
aaa82fba3c Added LM options 2019-08-12 19:14:47 +02:00
Vladyslav Usenko
4099457045 small fixes 2019-08-11 12:23:23 +02:00
Vladyslav Usenko
f6a33469f5 Added skipping IMU measurements before the first image. 2019-08-09 19:34:11 +02:00
Vladyslav Usenko
4e4901dfa4 update config 2019-08-09 11:51:04 +02:00
Vladyslav Usenko
be249f6354 non-parallel compute_error 2019-08-08 18:45:39 +02:00
Vladyslav Usenko
3d6a4099cf Added LM to mapping 2019-08-08 18:02:21 +02:00
Vladyslav Usenko
43c9914592 parallel version of compute error 2019-08-08 14:56:51 +02:00
Vladyslav Usenko
29ed498aa0 new param 2019-08-08 14:37:07 +02:00
Vladyslav Usenko
8ffa903eb2 Added LM to VIO 2019-08-07 17:21:52 +02:00
Vladyslav Usenko
f8285ccc64 Added LM to VIO 2019-08-07 17:19:27 +02:00
Vladyslav Usenko
227694d572 added restore and backup functions 2019-08-07 16:54:35 +02:00
Vladyslav Usenko
56cad21c6f added enforce_realtime option 2019-08-04 22:54:22 +02:00
Vladyslav Usenko
b9a2931468 small changes 2019-08-01 12:59:50 +02:00
Pablo Rodriguez Palafox
ef5b1ed528 Fix typos 2019-07-30 20:14:03 +00:00
Vladyslav Usenko
5bb572cdeb Added Landmark database 2019-07-26 16:50:15 +00:00
Vladyslav Usenko
c4d73787f0 added more config options 2019-07-25 14:25:47 +02:00
Vladyslav Usenko
5b01a126b7 small changes 2019-07-23 17:25:45 +02:00
Vladyslav Usenko
725b965bb3 small fix 2019-07-23 15:47:14 +02:00
Vladyslav Usenko
2f18e1d333 new triangulation method 2019-07-23 15:21:39 +02:00
Vladyslav Usenko
843942bf44 small fix 2019-07-19 23:22:38 +02:00
Vladyslav Usenko
1d10c35731 Use Vec3 for IMU noise. Moved noise parameters from IMU data to calibration. 2019-07-19 19:00:57 +02:00
Vladyslav Usenko
538d021ae1 Small changes to accumulator class 2019-07-19 16:28:42 +02:00
Vladyslav Usenko
e2e1ff0c70 fix compile 2019-07-16 13:55:16 +02:00
Vladyslav Usenko
86f2e4807f small fix 2019-07-12 14:05:07 +02:00
Vladyslav Usenko
9b705e1c3c converted TimeCamId to struct 2019-07-12 13:26:10 +02:00
Vladyslav Usenko
b3e0a101d2 Changes to LM 2019-06-27 15:56:55 +02:00
Vladyslav Usenko
077af5937f small fix 2019-06-19 11:44:25 +02:00
Vladyslav Usenko
6cd8058a33 small fixes after merge 2019-06-13 13:51:10 +02:00
Vladyslav Usenko
c888aa65bb Added Realsense live VIO 2019-06-13 11:37:17 +00:00
Vladyslav Usenko
0e073978b9 Switched to HashBow instead of DBoW3 2019-06-07 12:42:18 +00:00
Nikolaus Demmel
9624f6b391 add ./scripts/clang-format-all.sh and fix formatting 2019-04-24 13:16:06 +02:00
Vladyslav Usenko
0cef943b16 Initial commit 2019-04-14 21:08:32 +02:00