Open sunshineatnoon opened 1 year ago
Hi,
I am not sure I understand. Both a quaternion and a matrix are representations of a rotation, just expressed differently. If you need e.g. the rotation matrix, the Python code base includes a function to turn it into a matrix!
and here it is
On Sat, Oct 21, 2023 at 4:35 PM Snosixtyboo @.***> wrote:
Hi,
I am not sure I understand. Both a quaternion and a matrix are representations of a rotation, just expressed differently. If you need e.g. the rotation matrix, the Python code base includes a function to turn it into a matrix!
— Reply to this email directly, view it on GitHub https://github.com/graphdeco-inria/gaussian-splatting/issues/352#issuecomment-1773811609, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACGXXYLCN742SSMFLU223QTYAPMTHAVCNFSM6AAAAAA6JSKPSCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONZTHAYTCNRQHE . You are receiving this because you are subscribed to this thread.Message ID: @.***>
@sunshineatnoon
these infomation used in the GaussSplat render: render1: xyz & opacity #shape render-2: get_covariance | scaling, rotation #pose get_features/shs | colors_precomp(feature, xyz, now_sh_degree) #color
Hi, @grgkopanas and @Snosixtyboo Thanks for the quick response. Right, I understand the quaternion represents a rotation matrix. I'm looking for the absolute orientation here. My goal is to extract the normals from the gaussians. So in point cloud, you would compute normal using nearby points, but the Gaussians they already have orientation, so I'm wondering why not just use that as the normals?
If you look closely at effect of work from datatset all surfaces look like this
3D chaotic cloud ;) You probably will get normals from every splat but what algorithm you will use to 'average' normals from this? It can be less chaotic when you get splats from existing 3D objects, but still.
The rotation is not relevant to the normal, is it? Imagine a very thin gaussian, you would image the "orientation" is pointing along the long axis, but that is obviously not the normal
You might want to look into https://slothfulxtx.github.io/TexGS/. They have estimated the normal. It is basically one of the eigenvectors of the covariance matrix.
The rotation is independent of the normal, but the eigenvector corresponding to the smallest scaling can serve as the normal direction. @kwea123
Hi, I have maybe a naive question about the orientations of the Gaussians. If my understanding is correct, the
_rotation
matrix is represented as quaternion, is it possible to get the actually orientation of each Gaussian from this quaternion? I assume there's an oracle orientation?