Comments (8)
We did plane visualization by averaging over the feature dimension, and plotting as a grayscale image. This is sufficient for figuring out the right dimensions for the bbox (and how to allocate resolution among the planes).
from k-planes.
You can set the bbox by changing it in the config file you're using, but the best values depend on the data. If you have an unbounded scene where you are using scene contraction (e.g. our Phototourism configs), then the bbox should be -2 to 2 in each dimension. If you have a bounded scene or forward-facing scene then there is some manual tuning to choose a bounding box; making it tighter will increase effective resolution, but too tight and you'll cut something off. One way you can do the tuning is to train for a bit and then visualize the planes, and then you can tell if you are using the dimensions effectively and make any adjustments. Note also that even for a scene with contraction, you'll get the best performance if you make sure the scene is centered and scaled so that it uses most of the planes; you can tune these with "global_scale" and "global_translation" parameters in the config.
from k-planes.
Hi, how did you visualize the planes? I'm thinking of how TensoRF visualized its planes. What approach did you use?
from k-planes.
Thanks for the answers!
But I'm quite confused by what you mean by "how to allocate resolution among the planes". Can you explain what you meant?
from k-planes.
Normally you should see recognizable parts of your scene on the planes. If a large part of the plotted planes (say the left half) appears to be noise instead of parts of the scene, then you can reduce the bbox in the relevant dimension.
So you can start with a large bbox, then plot and noting which parts of the planes are just noise, you can find out how to reduce the bbox size.
from k-planes.
Right, so you can adjust the bbox based on which parts of the planes are used, and you can separately adjust the resolution in each dimension to match the desired aspect ratio. For example, the Trevi fountain scene is wider than it is tall, so you can adjust the x resolution to be higher than the y resolution.
from k-planes.
I am facing a similar problem with my own data, but I am not sure whether the scene_bbox is the problem. Could scaling problems also result from x,y,z coordinates that are not centered or not properly normalized? Is there an easy way to check for this?
from k-planes.
Yes, it does help if the scene is centered around the origin in the world coordinates (corresponding to the center of the planes). For example, for the Phototourism dataset we manually found a global translation and scaling in x, y, z for each scene (e.g. https://github.com/sarafridov/K-Planes/blob/main/plenoxels/configs/final/Phototourism/trevi_explicit.py#L11) based on visualizing the planes and adjusting until the scene is centered and roughly fills the planes.
from k-planes.
Related Issues (20)
- OOM issue HOT 3
- Question about result of DyNeRF dataset : a difference between the results in the paper and my results HOT 6
- Bad performance on other dataset. HOT 4
- Questions about planes HOT 1
- Performance on TanksandTemple dataset HOT 2
- Model size HOT 5
- Replicating Fig 8 from the paper HOT 2
- IndexError at "video_datasets.py" HOT 1
- why is ndc_far=2.6 and not 1?
- About average_poses function?
- Query Regarding 'bds.npy' File in K-Planes Dataset HOT 1
- Temporal difference (IST) strategy HOT 4
- About Bilinear interpolation?
- Inconsistent Results Despite Setting Random Seed HOT 2
- used coordinate system in Phototourism
- Image Height and Width Flipped for D-NeRF scenes
- Can you provide `transforms_train.json` ?
- Bug in depth rendering?
- Why translations are divided by the scaling factor?
- 1
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 k-planes.