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

Concerning the overfitting problem in PCNet-M and PCNet-C #14

Closed
sydney0zq opened this issue Jul 10, 2020 · 5 comments
Closed

Concerning the overfitting problem in PCNet-M and PCNet-C #14

sydney0zq opened this issue Jul 10, 2020 · 5 comments

Comments

@sydney0zq
Copy link

Hi Xiaohang,

Thanks for your releasing code and the demo is really amazing. Recently I test few images on COCO validation set based on your pre-train models, also I use the demo images you used. However the results are frustrated and far satisfied, could you please check it?

This is COCOA/2.jpg and COCOA/2.json ground-truth annotation.
image

This is COCOA/2.jpg and CenterMask instance segmentation results.
image

The output segmentation result is slightly different with the ground-truth, but, as we can see, the instance is not completed well.

@sydney0zq
Copy link
Author

@XiaohangZhan
Copy link
Owner

Hi, the reason is, when you use predicted masks, there will be slight margins between the target object to complete and the occluders. Recall that in training, we use surrogate objects as occluders, thus the trimmed modal mask and the surrogate occluder fit each other tightly. This gap results in this situation. It is easy to fix. You need to adjust the dilate_kernel in both ordering recovery and amodal completion as 3,5,7, or larger, respectively in infer.infer_order and infer.infer_amodal. It expands the occluder masks to fill in the margins. Moreover, you may also want to adjust the th in these two functions to control the response level.

@sydney0zq
Copy link
Author

sydney0zq commented Jul 12, 2020

Hi Xiaohang,
Thanks for your quick reply. I have changed to infer.infer_order (in get order_matrix), infer.infer_amodal (in get amodal prediction)'s dilate_kernels to 7, and rerun the program again. Could you please check the results are obtained correctly or not?

02_COCO_val2014_000000052425
03_COCO_val2014_000000063650
05_COCO_val2014_000000542960

Thanks again.

@XiaohangZhan
Copy link
Owner

Yes they are almost correct. In the first case, the modal mask is not so fine-grained, the upper part in the left is missing, while is also not included in the occluder, hence the upper-left corner of the car cannot be completed. I guess it will be better with a more accurate modal mask. You can try dense crf to refine the modal mask. In the second case, the person in front of the car is not detected, and not included as an occluder, hence the part of the car occluded by this person cannot be completed. The third one is almost as what we expect.

@sydney0zq
Copy link
Author

Thanks for your detailed reply. I will make more exploration on this interesting task. :)

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