graphdeco-inria / gaussian-splatting

Original reference implementation of "3D Gaussian Splatting for Real-Time Radiance Field Rendering"
https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/
Other
14.92k stars 1.96k forks source link

Calrification on derivative variable names #670

Closed VladimirYugay closed 7 months ago

VladimirYugay commented 9 months ago

Hey there,

  1. In backward.cu dL_dtx, dL_dty, dL_dtz are derivatives w.r.t. Gaussian means in the camera space?
  2. In backward.cu when I run glm::mat3 T = W * J; with the debugger, it gives me the same result if I'd do T = J @ W in numpy. I read that in opengl matrices I column-major, but still it's a bit unclear.
  3. In backward.cu dL_dTij are derivatives w.r.t. T = W * J or T = J * W in "mathematical"/"theoretical" sense?
yyzzyy78 commented 7 months ago

Hi, have you figured it out? I found the same result about: glm::mat3 T = W * J; In fact, I have the result of T=J@W, corresponding to the matmul.

VladimirYugay commented 7 months ago

@yyzzyy78 check out this repo, they actually implemented it if the gaussians are frozen!

qpc001 commented 3 months ago

Hey there,

  1. In backward.cu dL_dtx, dL_dty, dL_dtz are derivatives w.r.t. Gaussian means in the camera space?
  2. In backward.cu when I run glm::mat3 T = W * J; with the debugger, it gives me the same result if I'd do T = J @ W in numpy. I read that in opengl matrices I column-major, but still it's a bit unclear.
  3. In backward.cu dL_dTij are derivatives w.r.t. T = W * J or T = J * W in "mathematical"/"theoretical" sense?

嘿,这里,

  1. backward.cu``dL_dtx, dL_dty, dL_dtz中是w.r.t.的导数。高斯意味着在相机空间中? 在
  2. backward.cu中,当我用调试器运行glm::mat3 T = W * J;时,如果我在numpy中运行T = J @ W,它会给我同样的结果。我在opengl matrices中读到过,但还是有点不清楚。 在
  3. backward.cu``dL_dTij中,是关于t的导数。T = W * JT = J * W在“数学”/“理论”意义上?

The glm::mat is a transpose for mat input, which is store in col.