poetrywanderer / cf-nerf Goto Github PK
View Code? Open in Web Editor NEW[ECCV 2022] Official code release of Conditional-Flow NeRF: Accurate 3D Modelling with Reliable Uncertainty Quantification
License: MIT License
[ECCV 2022] Official code release of Conditional-Flow NeRF: Accurate 3D Modelling with Reliable Uncertainty Quantification
License: MIT License
Hello,
Thank you again for posting the code.
The following lines of code in run_nerf_uncertainty_NF.py
refer to the key 'network_fine' in the dictionary render_kwargs_train
, even though this key is never created resulting in a KeyError
.
if i%args.i_weights==0:
path = os.path.join(args.basedir, args.dataname, args.type_flows, args.expname, '{:06d}_{:02d}.tar'.format(i, args.index_ensembles))
if args.N_importance > 0:
torch.save({
'global_step': global_step,
'network_fn_state_dict': render_kwargs_train['network_fn'].state_dict(),
'network_fine_state_dict': render_kwargs_train['network_fine'].state_dict(),
'optimizer_state_dict': optimizer.state_dict(),
}, path)
else:
torch.save({
'global_step': global_step,
'network_fn_state_dict': render_kwargs_train['network_fn'].state_dict(),
'optimizer_state_dict': optimizer.state_dict(),
}, path)
print('Saved checkpoints at', path)
Note that this key is explicitly created in the run_nerf.py
file here: https://github.com/yenchenlin/nerf-pytorch/blob/master/run_nerf.py from the original nerf-pytorch repository as shown below:
'network_query_fn' : network_query_fn,
'perturb' : args.perturb,
'N_importance' : args.N_importance,
'network_fine' : model_fine,
'N_samples' : args.N_samples,
'network_fn' : model,
'use_viewdirs' : args.use_viewdirs,
'white_bkgd' : args.white_bkgd,
'raw_noise_std' : args.raw_noise_std,
}```
Hello,
Thanks for sharing the work. We are trying to follow your work in our paper.
However, I am a little puzzled by the calculation here
The expression is corresponding to the following code.
CF-NeRF/run_nerf_uncertainty_NF.py
Line 1036 in 5e5a583
Could you elaborate more?
Thank you.
Best,
I was wondering how you performed the 20% train - 80% test split in LLFF dataset? I cannot find a direct code line that does this for LLFF dataset in the repo. I can see that for the LF dataset about 4 views are chosen as training, but I was wondering how you do it for LLFF? If possible could you share the code for this split (training indices)?
I noticed that S-NeRF has this 20-80% split for train/test, but you say in the paper that for test set you use the the last adjacent views.
we use a sparse number of scene views (โผ4) for training and the last adjacent views for testing.
What is meant by 'the last adjacent views'? Is it the remaining 80% of the data or something else? @poetrywanderer
Would you be able to upload the pre-trained models? There is a section in the main page for it but it is empty. Thanks!
Hi,
I'm trying to reproduce the results from table 2 without success. The code seems to no longer have a test function, which should be executed without passing --is_train as an argument. In fact, the test script test_NF.sh does not perform any computation and exits immediately. Additionally, the model weights mentioned in the Pre-trained Models section in the README.md seem to be point clouds rather than the weights of the NeRF networks.
How can I reproduce the results from table 2?
This is a very good job. Thank you for sharing. But I have two questions, one is how to visualize image results like your paper.
An other question is when I run the test_NF.sh, it seems that there is no output
Hi,
In the code, in line the errors are not normalized (commented out). I was wondering why this is and if the metrics reported in the paper were reported without normalization.
Thank you!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.