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

Fidelity and MMD metrics #106

Open
sand2sand opened this issue Apr 23, 2023 · 12 comments
Open

Fidelity and MMD metrics #106

sand2sand opened this issue Apr 23, 2023 · 12 comments

Comments

@sand2sand
Copy link

Thanks for you good work! And I look forward to receiving your answer about my some question on metrics.
Both PF-Net and PoinTr concat input and prediction as output, so it looks like using asymmetric Chamer_distance when calculate Fidelity, but why PF-Net on that metric greater than 0.
Whether to use symmetric CD and whether select the object with the minimal value of the prediction on CD from the PCNCars test dataset when calcaulate MMD.
Could you please descript the more detail of caculation on Fidelity and MMD metrics.

@yuxumin
Copy link
Owner

yuxumin commented Apr 24, 2023

Hi, sorry for the late reply.

Both PF-Net and PoinTr concat input and prediction as output, so it looks like using asymmetric Chamer_distance when calculate Fidelity, but why PF-Net on that metric greater than 0.

We make a mistake. We directly cited the metric from "ASHF-Net: Adaptive Sampling and Hierarchical Folding Network for Robust Point Cloud Completion" during our submission for CVPR 2021, and when we recycled the paper for ICCV 2022, this mistake was neglected.

Whether to use symmetric CD and whether select the object with the minimal value of the prediction on CD from the PCNCars test dataset when calcaulate MMD.

Yes, please ref to https://github.com/yuxumin/PoinTr/blob/master/KITTI_metric.py for detailed calcuation process for these two metrics.

@sand2sand
Copy link
Author

Thanks for your reply very much.
I have resolved it according to your code, and that's a perfect project.

@sand2sand
Copy link
Author

Hi, I'm sorry to bother you again.
We have trained PoinTr on PCN dataset with two 3090 from scratch currently, but the performance of l1 cd is 7.79 compared to your pretrained model.Have you fixed the bug in datasets/PCNDataset.py in your latest project and what's the difference between PCN and PCNv2?

@sand2sand
Copy link
Author

@yuxumin Hi, bro. I am still waiting for your reply.

@yuxumin
Copy link
Owner

yuxumin commented May 12, 2023

I missed this issue and feel sorry for the late reply.
Yes, in fact, PoinTr can achieve CD 7.26 on PCN after fixing the bug ( while we report CD 8.38 in ICCV paper).

@yuxumin
Copy link
Owner

yuxumin commented May 12, 2023

The difference is only the bug in dataloader as you mentioned.

@sand2sand
Copy link
Author

But after comparing the code line by line, I found that there is only a difference in the naming of the function for upsample input points. So could you specifically point out the differences between these two paragraphs at the mentioned bugs. I'm sorry to trouble you.

@yuxumin
Copy link
Owner

yuxumin commented May 12, 2023

see hzxie/GRNet#27.

@yuxumin
Copy link
Owner

yuxumin commented May 12, 2023

The PCN.pth is trained on the GRNet codebase. PoinTr codebase is made after the paper accepted by ICCV. So you can not find this bug and the modification history here :)

@sand2sand
Copy link
Author

I can understand what you mean about the bug now. So the current difference between them is the way to upsample inputs, and is 7.26 based on PCNV2 or PCN?

@yuxumin
Copy link
Owner

yuxumin commented May 12, 2023

That is. PCNv2 is for snowflakeNet ... I find SnowflakeNet perform not well with default PCN dataset.

@mbingo224
Copy link

Hi, I also trained PoinTr on the PCN dataset, but the performance of L1 is still around 7.79, unable to reach 7.26. Have you solved this issue?

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

3 participants