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

Inconsistency between the paper and the implementation #4

Closed
naoto0804 opened this issue Jan 5, 2020 · 10 comments
Closed

Inconsistency between the paper and the implementation #4

naoto0804 opened this issue Jan 5, 2020 · 10 comments

Comments

@naoto0804
Copy link

I'm trying to re-implement your model on PyTorch and I have a few questions about details.

  • Feature aggregation
    In Fig. 2, netaggi_0 / netaggm_0 seems to be concatenated. In the code, it is not concatenated. Which should I follow?

  • Missing 1x1 conv?
    In Fig. 2, 1x1 conv. layer is inserted before SPP module. In the code, it's not. Should I add it?

@naoto0804 naoto0804 changed the title Missing details Inconsistency between the paper and the implementation Jan 5, 2020
@vinthony
Copy link
Owner

vinthony commented Jan 5, 2020

Thanks for your useful help.

You can follow the model from the code. The results are based on the model in this repo.

It seems that there are some small mistakes in the figure although it might not highly influence the performance.

I will try to retrain the model based on the model from paper.
and add some Introduction in the README about these inconsistencies.

Thanks a lot!

@naoto0804
Copy link
Author

Sorry to ask you one more;

Can you elaborate a bit more about why you divide the losses by some magic numbers?
(here)

@vinthony
Copy link
Owner

vinthony commented Jan 5, 2020

These numbers are following the setting of the framework of our baseline code in reflection removal here

@vinthony
Copy link
Owner

vinthony commented Jan 8, 2020

@naoto0804
I re-train the model with the model in the paper (Fig.2) on the SRD dataset without data augmentation for a quick experiment.
The performance improves a bit on the Non-Shadowed Region (NS in the following Table), while the performance in the shadowed region is the same. However, the setting from the paper uses more parameters. Here is the RMSE report:

Method S NS ALL
Figure.2 8.94 4.40 5.35
This repo 8.94 4.80 5.67

So I suggest you use the model from the paper.

@naoto0804
Copy link
Author

Wow, thank you so much!

@naoto0804
Copy link
Author

naoto0804 commented Jan 10, 2020

Why do you initialize almost all the convolutional layers by identity_initializer?

@vinthony
Copy link
Owner

Other initializers might also work.
We follow the baseline of CAN in fast image processing: https://github.com/CQFIO/FastImageProcessing

@naoto0804
Copy link
Author

Is it possible to share the masks that you used for the SRD dataset, which is essential for evaluation? I'm trying to extract it, but my result looks too noisy to be a ground truth;

@vinthony
Copy link
Owner

Hi, we also use a simple rule to extract the mask from the image pair.
Although it is not totally correct, we found it still helps for shadow removal.
Here is the link of the mask of SRD dataset. OneDrive

@naoto0804
Copy link
Author

naoto0804 commented Feb 10, 2020

I really really appreciate it;

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