xinntao / EDVR

Winning Solution in NTIRE19 Challenges on Video Restoration and Enhancement (CVPR19 Workshops) - Video Restoration with Enhanced Deformable Convolutional Networks. EDVR has been merged into BasicSR and this repo is a mirror of BasicSR.
https://github.com/xinntao/BasicSR
1.48k stars 320 forks source link

Poor Generalization of Deblurring Model #60

Closed TouqeerAhmad closed 5 years ago

TouqeerAhmad commented 5 years ago

Hi Xinntao,

I was curious if you have compared the trained deblurred model on GOPRO [1] or DVD [2] datasets? -- previously established benchmarks for deblurring. I was running the inference for EDVR on DVD dataset and comparing it against [2] and it feels EDVR has very poor generalization. I am yet to run it for GOPRO dataset.

Do you have any comments or insights on the generalization capability of EDVR specifically the deblurring model? To me, EDVR seems to be overfitted on REDS dataset and lacking generalization.

[1] Nah et al.: “Deep Multi-scale Convolutional Neural Network for Dynamic Scene Deblurring”, CVPR 2017. [2] Su et al. “Deep Vide Deblurring for Hand-Held Cameras”, CVPR 2017.

xinntao commented 5 years ago

We have conducted such comparisons and have also observed the overfitting problem in both the SR and deblurring tasks. (The deblurring tasks have a more severe overfitting problem than SR. )

We have mentioned the data bias in our EDVR paper (Dataset Bias. Sec 4.3, using the SR task as an example).

It is a common problem for lots of (almost all) deep-learning-based methods for deblurring. You can also use the models trained on other datasets such as GOPRP or DVD and test them on the REDS datasets. You can also observe a poor generalization.

There are so many types of blur kernels. Deep-learning-based methods are data-driven. If the model has not seen the blur kernel in the training, then its inference performance is poor. We are also very surprising that in most of the cases, the model cannot handle the blurs at all for those unseen blur kernels.

It is in a great demand to develop REALLY blind-deblur models. Most of the models including EDVR cannot handle the REAL blind blurs. They perform well when the test data distributions are the same as the training data distributions. But they all fail for unseen kernels.

TouqeerAhmad commented 5 years ago

Thank you for your response Xinntao! Yes, I checked the response of [1] on REDS4 dataset which was originally trained on GOPRO and it is not even close to the performance of EDVR on REDS4 whereas performing well on GOPRO's test split.

Hopefully the next wave of deblurring methods would try to address the generalization problem!

[1] Tao et al.: “Scale-recurrent Network for Deep Image Deblurring”, CVPR 2018.