Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved depth estimation of mono features #1460

Merged

Conversation

matlabbe
Copy link
Member

@matlabbe matlabbe commented Mar 4, 2025

Added parameters:

  • OdomF2M/BundleUpdateFeatureMapOnAllFrames: Update 3D local feature map on every frame with bundle adjustment. Recommended if Vis/DepthAsMask=false and Mem/UseOdomFeatures=true so that features without depth are better triangulated on every frame (not only on keyframes). If disabled, the feature map is updated only when a new keyframe is added (legacy approach).
  • OdomF2M/FloorThreshold: Only track features in 3D feature map that are over this threshold (height in base frame). Can be useful to ignore reflections on the floor. 0 means disabled.
  • OdomF2M/InitDepthFactor: Depth factor used to initialize depth of features without depth. Depth = Factor * fx.

TODO: Re-run vslam benchmark datasets with and without OdomF2M/BundleUpdateFeatureMapOnAllFrames to see if it doesn't affect too negatively the results. Ideally, we would want OdomF2M/BundleUpdateFeatureMapOnAllFrames to be true by default so that depth of mono features can be correctly estimated all the time.

@matlabbe
Copy link
Member Author

matlabbe commented Mar 6, 2025

Euroc datasets are the more negatively impacted by OdomF2M/BundleUpdateFeatureMapOnAllFrames=true, we should keep it to false by default.

@matlabbe matlabbe marked this pull request as ready for review March 9, 2025 00:56
@matlabbe
Copy link
Member Author

matlabbe commented Mar 9, 2025

I tested again Euroc with live visualization and the results at 1 Hz are pretty close to original results. It seems that a not so accurate loop closure "sometimes" happens, which add significant error, though if I remove that link, the results are close to paper.

I'll still keep OdomF2M/BundleUpdateFeatureMapOnAllFrames=false by default till I have more real experiments with OdomF2M/BundleUpdateFeatureMapOnAllFrames=true.

@matlabbe matlabbe merged commit 6eebca8 into master Mar 9, 2025
5 of 6 checks passed
@matlabbe matlabbe deleted the odom_f2m_improved_depth_estimation_of_mono_features branch March 9, 2025 04:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant