Comments (8)
OK, after 50k iterations with the above settings, it is looking pretty reasonable.
from gaussian-splatting.
That makes it hard... I would suggest reducing the scaling, initial, and final position learning rate, e.g., divide them all by a factor 3 for starters.
from gaussian-splatting.
Hi, would it be possible to get access to the dataset (your colmap input) so we can get an idea what's going on?
from gaussian-splatting.
Unfortunately the input dataset contains confidential proprietary data.
from gaussian-splatting.
40
We'd be happy to hear how it goes! There's a few things that could happen at this scale we did not observe, our evaluation was mainly room-sized or smaller outdoor areas. The fact your first run ended in 6 minutes on what seems like an urban data set seems curious.
from gaussian-splatting.
reducing learning rate
Thanks for the pro tip!
Indeed, with the following parameters
--iterations 50000 --scaling_lr 0.0002 --rotation_lr 0.0002 --position_lr_init 0.00003 --opacity_lr 0.01 --feature_lr 0.001
it seems the loss is decreasing healthily. Let's see what it ends up at after 50k iterations!
from gaussian-splatting.
How is it number-wise compared to the taichi implementation? Do you think there is room for improvement considering the hyper-params?
from gaussian-splatting.
OK, after 50k iterations with the above settings, it is looking pretty reasonable.
Great, thanks for letting us know!
A short word on urban data sets (there is also a section on it in the FAQ): The approach considers the distribution of the cameras and scales the learning rate accordingly (spatial_lr_scale
). I.e., Gaussians will move faster if the cameras are 1,000 units apart than if it's only 1, since by default we have no absolute scaling information for how much one unit is. If cameras are distributed over kilometers or on a long straight path, you can therefore mess it up quite a bit, since Gaussians will zip off quickly. If you know the extent of your dataset, then extending the approach such that it sets learning rates from this information should be trivial (constant * spatial_lr_scale / real_extent
). Or, if the coordinates of the point data sets are always at a known size (1unit = 1m), then replacing spatial_lr_scale
by a constant should also do it.
from gaussian-splatting.
Related Issues (20)
- Visualize other features in SIBR
- Failed to reconstruct with SPEED+ dataset. HOT 1
- how to construct our own dataset as input for 3d-GS from images taken by a phone
- Hyperparameter Tuning
- Failed to build diff-gaussian-rasterization HOT 3
- Why do all images have to be on GPU? HOT 4
- Submodules do not compile HOT 1
- I tried to configure a docker env and met cuda memory problem when running train.py HOT 2
- How can I know which gaussians contribute to a certain rendering? HOT 1
- A possible reason why installing submodules diff-gaussian-rasterization and simple-knn failed HOT 1
- Meaning of features_dc and features_rest HOT 3
- Hyperparameter Tuning
- Performance difference without shuffle camera and randomly pop viewpoint_cam
- [SIBR Viewer] GLX: Failed to create context: GLXBadFBConfig HOT 2
- Why the images I generated cannot be reconstructed by colmap (only two out of 21 images were recognized after running)? HOT 5
- RuntimeError: Given groups=3, weight of size [3, 1, 11, 11], expected input[1, 1, 1200, 1920] to have 3 channels, but got 1 channels instead HOT 2
- rendering
- question about color (spherical harmonics)
- how to get the center of model
- Rescaling the images HOT 4
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 gaussian-splatting.