Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Plenoxels Implementation #28

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

hugoycj
Copy link

@hugoycj hugoycj commented Sep 4, 2023

@theNded Hi, I am trying to implement Plenoxels: Radiance Fields without Neural Networks, which could significantly improve Image quality by Rendering and extend the application of this repo to Novel View Synthesis without adding MLP.

@hugoycj
Copy link
Author

hugoycj commented Sep 4, 2023

The paper uses a 2-level Spherical Harmonic representation for color. This means that each color channel (red, green, and blue) is represented by 9 parameters, for a total of 27 parameters to represent an RGB color, 1 parameter for SDF

One critical issue I encountered is that the total number of parameters per grid is 28, while the current repository only supports a maximum dimension (dim) of 16. I'm wondering if it would be possible to increase the supported dimension from 16 to 32 in order to accommodate the 28 parameters needed for the Spherical Harmonic color representation.

@theNded
Copy link
Owner

theNded commented Sep 4, 2023

Thanks for the contribution!
I think at current the dim (spatial dim) is independent of the embedding_dim (feature dim), so you should not encounter issues extending feature dims.
However, multi-level data structure is still missing in the current torch-ash implementation, which I believe is important for photorealism. I have it in my plan, but unfortunately in the past month I do not have the bandwidth. Please ping me when you need help with that, I can squeeze some time to push it.

@hugoycj
Copy link
Author

hugoycj commented Sep 4, 2023

Don't worry, multi-level is no need for Plenoxels while could achieve photorealism. That's why I choose this work to implement.
image

@hugoycj
Copy link
Author

hugoycj commented Sep 4, 2023

Currently, I store color-related parameters in the embedding dimension, but there's a maximum limit to this.
I'm wondering if it's possible to use multiple grids to store the embedding dimension while sharing the same spatial dimension and occupancy grid, such that we could fix this issue without changing current torch-ash implementation

@theNded
Copy link
Owner

theNded commented Sep 4, 2023

My bad, I think you can simply uncomment this line: https://github.com/theNded/torch-ash/blob/master/ash/grid.py#L76. I checked the low-level implementation and found no such limitations. Don't remember why I put this constraint...
But please ping me when you find issues. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants