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

Questions about the degradation process for BDx4 low-resolution input #551

Closed
yhjoker opened this issue Sep 27, 2021 · 7 comments
Closed

Comments

@yhjoker
Copy link

yhjoker commented Sep 27, 2021

For BIx4, we use MATLAB to resize the images: lq = imresize(gt, 0.25).

For BDx4, you can find the MATLAB script here.

Originally posted by @ckkelvinchan in #487 (comment)

@yhjoker
Copy link
Author

yhjoker commented Sep 27, 2021

Hello there, I am currently trying to train the basicvsr model on Vimeo-90K( BD degradation ) and find that there are slight differences between the downsampling functions used in DUF( BD function in EDVR repo can be found here ) and those used in Basicvsr ( for example, gussian smooth kernel size ). Is there any reason why we choose to use the Matlab version in basicvsr training?

@ckkelvinchan
Copy link
Member

The sigma we used is the same. About the kernel size, I followed previous works (I am not sure whether I copied from RCAN but RCAN uses this setting here).

@yhjoker
Copy link
Author

yhjoker commented Sep 27, 2021

The sigma we used is the same. About the kernel size, I followed previous works (I am not sure whether I copied from RCAN but RCAN uses this setting here).

Thanks for the answer! @ckkelvinchan I am trying to retrain the basicvsr model using the degradation function provided by EDVR ( here is the link ) but find the training process can not convergence. I use the pretrained network-sintel-final.pytorch model for SPynet at here and basicvsr_vimeo90k_bd.py config file( only spynet_pretrained path is modified ), is there any tools to help locate the training problems in mmediting repo?

@ckkelvinchan
Copy link
Member

Could you provide me with more information? For example, the loss curve and how you generate the data.

@yhjoker
Copy link
Author

yhjoker commented Sep 28, 2021

Could you provide me with more information? For example, the loss curve and how you generate the data.

After adjusting the learning rate to 1e-4, things start to get better. I use the degradation function proposed by DUF to generate LR input( the duf_downsample provided in EDVR repo ). Other parameters might influence the training process are:

  • learning rate : 1e-4
  • samples_per_gpu : 2
  • gpus : 4
  • total_iters : 300000

It seems loss is decreasing and validation psnr is increasing( very unstable, though ). The loss curve and validation results for 250000/300000 training process is showed as following. Maybe a larger total_iter setting is required to get a promising result. Thanks again for your kind reply!
Screenshot from 2021-09-28 20-11-53
Screenshot from 2021-09-28 20-12-08

@ckkelvinchan
Copy link
Member

I think a PSNR of about 25 is a bit low. Did you compare this result to the output upsampled by bicubic interpolation?

@ckkelvinchan
Copy link
Member

Closing now due to inactivity. Please reopen if the problem persists.

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