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

Why do you use nearest method for matching the resolution of (LR, HR) due to CutBlur ? #19

Open
star4s opened this issue Jul 8, 2021 · 7 comments

Comments

@star4s
Copy link

star4s commented Jul 8, 2021

I have a question about how to match he resolution of (LR, HR) due to CutBlur.

When I check the code about matching the resolution of (LR, HR) due to CutBlur,
I found using nearest.

match the resolution of (LR, HR) due to CutBlur

        if HR.size() != LR.size():
            scale = HR.size(2) // LR.size(2)
            LR = F.interpolate(LR, scale_factor=scale, mode="nearest")

Why don't you use bicubic?

Most people use bicubic in super resolution.
Do you have some special things?

I am interest in your CutBlur.
Thank you for your attention.

@nmhkahn
Copy link
Collaborator

nmhkahn commented Jul 9, 2021

First of all, in our internal analysis, we have found that the nn-based upsample is better than the bicubic (although it's marginal).
Unlike the early-upsample SR methods which mostly upsample via bicubic (e.g. VDSR, SRCNN), our intention of upsampling is not to reconstruct the image in high-res space, rather match the resolution to perform CutBlur.
In this respect, we have decided to provide the raw signal (pixel) itself by not using any high-level interpolation methods.

@LoveU3tHousand2
Copy link

So, the LR input , SR output and HR GT have same size ?
it's not for post-upsample SR methods? eg: LR.shape:120, SR.shape:480, gt.shape:480

@LoveU3tHousand2
Copy link

If LR and HR have same size at begin , after net.apply SR_size == 4 x LR.size, then how to calculate loss between SR and HR ? downscale HR or what ? Or just down(CutBlur(up(LR))) ?

@LoveU3tHousand2
Copy link

Umm, so the method is Cutblur(HR, LR) to replace HR rather LR ?

@LoveU3tHousand2
Copy link

... Forget it ... I just saw the first layer of these networks ...

@KaishanLam
Copy link

首先,在我们的内部分析中,我们发现基于 nn 的上采样优于双三次(尽管它是边际的)。 与主要通过双三次上采样的早期上采样 SR 方法(例如 VDSR、SRCNN)不同,我们上采样的目的不是在高分辨率空间中重建图像,而是匹配分辨率以执行 CutBlur。 在这方面,我们决定不使用任何高级插值方法来提供原始信号(像素)本身。

After cutblur, LR is now the same size as GT, do you want to downsample it by a factor of 4, f.object (LR, scale_factor=0.25, mode="nearest"), and bring it back to the small size?

@KaishanLam
Copy link

After cutblur, LR is now the same size as GT, do you want to downsample it by a factor of 4, F.interpolate(LR, scale_factor=0.25, mode="nearest"), and bring it back to the small size?

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

4 participants