Comments (9)
Actually, I had to change to VanillaMLP instead of FullyFusedMLP in the colmap config, as tiny-cuda-nn errored at my V100.
from instant-nsr-pl.
Hi! The choice of the MLP network does not make much difference. The key here should be to use a background model. You could wait for my implementation, which is expected to come out in a few days.
from instant-nsr-pl.
I see. Great! Looking forward to it. Thanks for the reply.
from instant-nsr-pl.
@kelvincai522 I've just pushed a new branch that supports NeuS training with a background model. I'm still testing this feature on different scenes. Welcome to try it out!
from instant-nsr-pl.
@bennyguo Thank you for the new branch! I tested it with my own dataset and found the following in my Fedora with a V100 GPU (16GB vram):
- train/inv_s in the log never change (increase/decrease) while the loss is decreasing but dropped down to nan though
- I had to change model.texture.mlp_network_config.otype from FullyFusedMLP to VanillaMLP. Otherwise, tcnn would have Internal Error (I had to do that in previous versions as well).
- I had to disable lambda_distortion(_bg) by changing it to 0. Otherwise, it would error with "RuntimeError: max(): Expected reduction dim to be specified for input.numel() == 0. Specify the reduction dim with the 'dim' argument."
- I had to change occupancy_grid_bg resolution from 256 to 128. Otherwise, Cuda is OOM.
- Had a warning during validation: data/users/kcai/instant-nsr-pl/utils/mixins.py:90: RuntimeWarning: invalid value encountered in true_divide | 0/2 [00:00<?, ?it/s]
img = (img - img.min()) / (img.max() - img.min()) - While the img converge okay (not as good as nerf unbounded), it couldn't extract a mesh with the following error: File "/data/users/kcai/instant-nsr-pl/models/geometry.py", line 107, in isosurface
vmin, vmax = mesh_coarse['v_pos'].amin(dim=0), mesh_coarse['v_pos'].amax(dim=0)
IndexError: amin(): Expected reduction dim 0 to have non-zero size.
from instant-nsr-pl.
Thanks for the detailed information about your experiment! Is it possible to provide the dataset you used so that I could try it on my side? It would be very valuable!
from instant-nsr-pl.
That would be great. Here is the dataset https://drive.google.com/file/d/1EPhaA7vg9P3neH-T7MiVUIKE9nwgU04T/view?usp=sharing
from instant-nsr-pl.
It seems like most of the errors were caused by divergence. By setting model.radius=1.5
and turning off all the regularizations, i.e. system.loss.lambda_distortion=0. system.loss.lambda_distortion_bg=0. system.loss.lambda_sparsity=0.
, I was able to fairly reconstruct the scene:
I'll come up with an automatic strategy to determine model.radius
and try to fix the stuffed area below the table.
from instant-nsr-pl.
About the error using FullyFusedMLP
, you may have to run tiny-cuda-nn samples to see if the installation works.
from instant-nsr-pl.
Related Issues (20)
- Can't get deterministic behavior with fixed seed HOT 2
- NeuS: Why approximate alpha value instead of compute it as in paper? HOT 1
- Do you have a plan to support dmtet to refine nerf model?
- Results for training on DTU HOT 3
- Poor mesh reconstruction when using volume-color on neus-colmap
- GPU Speed up
- mesh resolution
- Math behind the color network.
- Advice for large indoor scenes
- ZeroDivisionError: division by zero
- Different Results When testing On NeuS. HOT 2
- vram issue !
- Runtime error HOT 3
- Result on DTU without mask is poor
- why dont you use sigma_fn or alpha fn HOT 1
- ZeroDivisionError: division by zero error
- extract DTU mesh from NeRF model is so bad
- Can I use this repo to replace NeuS2
- ZeroDivisionError: division by zero HOT 1
- Empty extracted obj
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from instant-nsr-pl.