SpectacularAI / HybVIO

HybVIO visual-inertial odometry and SLAM system

Home Page:https://arxiv.org/abs/2106.11857

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Question about parameter visualR

fushi219 opened this issue · comments

In filter update, we have: https://github.com/SpectacularAI/HybVIO/blob/e325353846d9026de6001f593134bed77824469d/src/odometry/backend.cpp#L997 . In my understanding, the visualR is pixel standard error in image plane, then it is transfered to normalized plane, is this correct? Then, I wonder why the parameter is so small(0.05 by default), as in OpenVins It is set as 1 by default. When I try to set it as 1, the system performs quite bad.

Thanks!

Sorry for the late reply. In theory, if all the noise parameters in the EKF are scaled by the same positive number, the state means produced by the EKF do not change, i.e. VIO produces the same poses but with scaled covariances. Often the covariances are scaled up to increase numerical stability, which in HybVIO can be done via the parameter noiseScale. Further, the noise parameters in EKF are often not "physical" because of linearization errors and non-Gaussian noise. So basically, although the visualR is measured in normalized coordinates there is an arbitrary scale multiplied into it. You can tweak the parameters relative to their current values, eg decreasing visualR to half will increase weight of visual updates compared to inertial inputs and other types of EKF updates.