v2.0 - ROS-Free Building and New Features
Large Breaking changes:
- Moved types into their own namespace
ov_core
->ov_type
- Moved simulator class to ov_msckf
- Simulator and VioManager now share parameter struct
FeatureRepresentation
is moved to ov_msckf since FeatureInitializer is independent of it, and renamed toLandmarkRepresentation
.- Covariance can no longer be accessed non-pragmatically, use the StateHelper for all covariance management!
- Removed unneeded boilerplate access to state elements
Key Changes (in no particular order):
- Removed the need to build the system with ROS (will not have any visualization, but the simulator works without ROS build system and packages)
- Non-ROS builds can use command line to pass arguments to run the system
- Tried to improve KLT stereo tracking by allowing for monocular tracks also (will first try to initialize a stereo track, if it can't it will track the feature as a monocular track).
- Added single inverse depth representation (will have reduced accuracy, but is very fast)
- Updated dataset scripts to be more complete (all eth datasets, vicon room in tumvi, and uzh-fpv support)
- Added example launch file for uzh-fpv dataset
- Added example script on how to run on EurocMav machine hall datasets (need to skip the initial part of each dataset, see this)
- Example tracking main file which uses your webcam
- Added fast odometry output at rate of the IMU (only the mean, the covariance isn't propagated) to support deployment on robots (right now this can't be asynchronously published)
- Support smaller updates by limiting amount of features to be included in msckf/slam updates.
- More timing utilities including flameplots and comparison of total time
- Expanded evaluation documentation on how to perform timing analysis
- Other small formatting changes