Open JulienStanguennec-Leddartech opened 1 week ago
Hi,
Thanks for bringing this up! As I remember it, we used the squared distance to have the same unit as for our depth metric (median squared depth error). We used median squared depth error mainly to have comparable numbers to UniSim. However, this should probably be clarified.
As for the normalization not having an impact when not chunking, that indeed looks like a bug. I'll fix it as soon as I have some spare time.
Given the squared median depth error and similarly for Chamfer distance, the numbers reported would be in square meters, and not in meters(as reported in the paper), right?
@anishmadan23 yes, I think our table caption might be missing a ^2 in that case
Congrats on your SplatAD work, the results look great. I wanted to confirm if the SplatAD metrics (chamfer distance and median depth) are also computed using the squared term?
Thank you @anishmadan23! Yes, we use the same code to calculate the metrics so the numbers are comparable.
gotcha! Thanks for the prompt response. When can we expect the code release for SplatAD btw?
@georghess, thanks for the clarification, it make sens. As anishmadan23 mentionned, congratulation for SplatAD ! A great contribution once again. Do you plan to release the code at some point ? Maybe we could add support for wod dataset :)
@JulienStanguennec-Leddartech All CUDA-code will be released in our gsplat-fork once the paper has been peer reviewed and published. The model itself will likely be released either as a model in neurad-studio, or as an external method (like we did with unisim).
Very good news ! Is it possible to know which conference it is ? As said above, if you want us to do the evaluation on waymo dataset, do not hesitate. As the rolling shutter direction is different in waymo dataset, it could be interesting to see if it has an impact.
Unfortunately, the conference has some policies regarding that. That would be interesting, we will reach out once the code is released :)
Hi,
When I compare with other definition and results provided by other implementation it seems that chamfer_distance does not seems to use .pow(2) while it does in Neurad implementation. Maybe it's more a question than a bug...
In the code for chamfer distance, when I replace the calculation for dist in _chamfer_dist to remove pow(2) (https://github.com/georghess/neurad-studio/blob/main/nerfstudio/utils/math.py#L770C1-L771C107)
This:
Becomes this:
I get results that are inline with for example the point_cloud_utils (https://fwillims.info/point-cloud-utils/sections/shape_metrics/)
Gives: original_chamfer distance without normalization: 269.503662109375 original_chamfer distance with normalization: 0.0026950370520353317 modified chamfer distance without normalization: 5048.60107421875 modified chamfer distance with normalization: 0.050485990941524506 point_cloud_utils chamfer distance: 0.05048602819442749
Question: is there a choice that drove you to use the square value of dist for chamfer distance calculation ?
Also, if chamfer distance is provided without chunk, normalization has no effect:- https://github.com/georghess/neurad-studio/blob/main/nerfstudio/utils/math.py#L777
The chamfer distance function is "partialled" with chunk_size=1000 and normalization=True so this function is never called without chunk_size=None. So probably that's why it did not came out.