Commit Graph

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