GithubHelp home page GithubHelp logo

Comments (2)

chenhsuanlin avatar chenhsuanlin commented on June 30, 2024

Hi @dedoogong, from your description I'm guessing there could be several issues:

  1. The most critical is probably the pose initialization. BARF is still a local registration method, which means that the pose initializations have to be close enough to the underlying ground-truth poses. Since your multi-view data is object-centric and captured 360˚ spherically, I don't expect BARF to be able to make the cameras automagically "wrap" around the object from the same (all-identity) pose. Since you already know your capture configuration of the 72 viewpoints, it would be more realistic to initialize from the spherical angles you described. I would suggest using such poses to train a NeRF first to make sure it could at least get you some reasonable results, and then switch to BARF to see if it improves.
  2. It sounds like you're turning the table and capturing the object every 15˚. If it's true, then the background would not be in correspondence, and BARF would have a hard time using the photometric cues for pose optimization. This wouldn't work even for the original NeRF (i.e. even when ground-truth poses are given).
  3. Using camera intrinsics different from your actual sensor could have an impact, but it probably isn't the major issue. You could consider also optimizing the intrinsic parameters (e.g. focal lengths), as in NeRF-- or Self-calibrating NeRF.

Typically if you don't see signs of BARF converging in 20k steps, then it probably won't in the end either.
Hope these help!

from bundle-adjusting-nerf.

dedoogong avatar dedoogong commented on June 30, 2024

Hi @chenhsuanlin ! thanks so much for your kind thoughtful reply!
I tried to use an estimated camera intrinsics(focal length) from colmap but still failed.
Maybe, as you pointed out, it's too hard for Barf to optimize the identical, init pose to all around, spherical posese from scratch.
I agree your opinions(1,3) and I will try to find a better initial pose manually even though is would require a lot of trial and error.
Thank you!

from bundle-adjusting-nerf.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.