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

intersection of ray and guassians #10

Open
takeshie opened this issue Dec 13, 2024 · 1 comment
Open

intersection of ray and guassians #10

takeshie opened this issue Dec 13, 2024 · 1 comment

Comments

@takeshie
Copy link

Thank you for the great work!
The paper said "it presents per-pixel sorted 3D Gaussian splatting." dose it means that we can get the intersection of ray and guassians for per pixel and render the color of this with these guassian intersections? I'm wonder to know how can we get these intersections and let Rasterizer returns them?
thanks a lot!

@steimich96
Copy link
Collaborator

steimich96 commented Dec 13, 2024

Yes, we intersect the Gaussian with a ray and choose the intersection point to be at the Gaussian's maximum contribution along the ray (see Eq. (4) in the paper). If you want to return the intersection points of each Gaussian a ray intersects, you could pre-allocate a buffer and pass it to sortGaussiansRayHierarchicalCUDA_forward. The blend_function should then already receive all the information you need: depth (intersection point t_opt), id (Gaussian ID), and blend_data.contributor (offset inside this pixel/ray). This way, they are already in order of closest to the camera to furthest away (Note that since our sort is still only approximate, they can potentially be slightly out of order). You just need to calculate an offset for each pixel/ray.

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

No branches or pull requests

2 participants