@afdrus
I believe that both logDepthBootstrap and logCameraHeightBootstrap are approaches to initialize the depth of new features, not only during initialization. However, the effect of these values is the greatest during initialization because the VIO state is not fully converged and it is difficult to triangulate the feature depths without a good VIO solution.
If VIO is fully initialized and tracking well, the effect of these values will be minimal because feature depth can be very quickly resolved even if there is a little motion (so in that case the initial depth of feature does not matter much).
However, if VIO is not working very well in a case of distant features, then initializing the feature depth to a larger value could help not only during initialization of VIO but also during normal tracking. The farther the features are, the more difficult it is to determine their depth without significant motion, so a good prior on the feature depth could help.
The logic behind using useLogCameraHeight is the following: if your vehicle has a camera pointing significantly down, lets say 45 degrees or even more, then a large part of majority of features that it sees will likely be on the floor during initialization. So if the camera is looking at a flat floor, the features on the floor will be arranged according to the flat plane geometry and if you know the camera height above the ground, which is easy to measure, that parameter is specified in logCameraHeightBootstrap (well log of that actual height). So, using this approach to initialize the feature depth, the depths will be initialized assuming the features in the image are on the ground plane, so the depth is calculated based on where the pixel appears in the image (it can be projected onto a ground plane).
If the camera is not looking sufficiently downward, an assumption that features are on the ground plane will not be very helpful, so it is better to just use an expected average feature depth during initialization.
In the past, we have pretty much always set useLogCameraHeight to true and logCameraHeightBootstrap according to the camera height above ground for best initialization results because majority of the vehicles have the tracking cameras pointing down at least 30 or 45 degrees. this helps during initialization because when the vehicle takes off, the feature motion is very significant during initial moments and knowing that the features are on the ground plane significantly helps with tracking during take-off. After take off, as I mentioned before, a good prior for feature depths is no longer needed.
Regarding using dual cameras, QVIO does not support using two cameras in one VIO instance. We are working on another solution that will support multiple cameras, but we are not ready to share the details yet, hopefully in about 2 months.