sanghyun-son / EDSR-PyTorch

PyTorch version of the paper 'Enhanced Deep Residual Networks for Single Image Super-Resolution' (CVPRW 2017)
MIT License
2.43k stars 670 forks source link

why the reconstruction image is too poor? #34

Open stojakovic312636841 opened 6 years ago

stojakovic312636841 commented 6 years ago

excuse me! I recently train the EDSR_baseline_x2.pt model that used your pytorch code. the reconstruction image is too poor. So I want to request for you, thank you! I used cmd is that --> python3 main.py --data_test Demo --scale 2 --pre_train ../experiment/model/EDSR_baseline_x2.pt --test_only --save_results

and got the reconstruction image is too poor: img034_x2_sr

the input image is img034

sanghyun-son commented 6 years ago

Hello.

It seems that your input image is not downsampled by bicubic interpolation method. (I guess you used nearest-neighbor, since there are many aliasing artifacts.)

Since our model mainly handles bicubic-downsampled input images, we cannot guarantee the super-resolution result from your input. (It seems weird, I know. This situation is a common problem in recent deep super-resolution models.)

If you are trying to apply our method to that kind of images, I recommend you to train (or fine-tune) our model with nearest-neighbor downsampling method.

Thank you.

stojakovic312636841 commented 6 years ago

thank you very much. i have solved this problem when i used your suggest.

suke27 commented 6 years ago

@thstkdgus35 do you mean EDSR is just suit for bicubic downsampleed images, if we get a input images, we can not know whether it is downsample or just noise images

stojakovic312636841 commented 6 years ago

@suke27 个人认为EDSR的input和target之间是bicubicu的放大关系,因此EDSR学习的就是bicubic放大功能。 在running的时候,input任何形式的图片都可以,input的图片通过EDSR之后,等效bicubic放大。

而我出现的问题在于,我将原始图片target,没有通过bicubic方式缩小成input。而后,将input通过EDSR后得到的output与target进行对比。此时的target != output 是合理的

suke27 commented 6 years ago

只有bicubic 方式缩写的input 放大才会有比较好的效果, 是这个意思么,如果通过其他方式(压缩降质) 之类的就会效果很差?

stojakovic312636841 commented 6 years ago

@suke27 你可以随便使用自己的原始图片(从网络上随便找)不通过bicubic缩小,直接进行EDSR,看一看效果。

suke27 commented 6 years ago

不是

splinter21 commented 6 years ago

@stojakovic312636841 所以你试过用预训练的EDSR模型继续用非双立方缩小的input-GT pairs,训练出针对不同缩小方式的模型吗,这种思路是否可行,还是说EDSR这种结构就只能训练双立方缩小的input-GT pairs

splinter21 commented 6 years ago

或者基于预训练的ESDR模型,喂各种缩小方法的input-GT pairs,可能双立方测试跑分会下降,但是可以或多或少学习到各种缩小方式的超分重建?

stojakovic312636841 commented 6 years ago

@splinter22 我想你应该阅读一下这篇简报《Ntire 2017 challenge on single image superresolution_ Methods and results-CVPRW-2017》,明确说明了如何比赛。EDSR总共训练了6个模型,3个模型参加bicubic downscaling。又有3个模型参加unknown downscaling http://www.vision.ee.ethz.ch/~timofter/publications/Timofte-CVPRW-2017.pdf

image

ShiinaMitsuki commented 6 years ago

@suke27 你好,请问你试过直接将原始低分辨率的图片作为input然后用网络进行放大吗?我这边测试发现效果很不好。

stojakovic312636841 commented 6 years ago

@ShiinaMitsuki GT(LR):1920*1080 gt_020

SR:7680*4320 tfx4

suke27 commented 6 years ago

@ShiinaMitsuki , 如果原图就很糟糕,放大后别指望多好

ghost commented 6 years ago

@thstkdgus35 I can't understand. can you explain more how we can use it for other images??

yu4u commented 6 years ago

Please check the following nice post: https://stackoverflow.com/questions/26812289/matlab-vs-c-vs-opencv-imresize

HuangBiaoVivo commented 6 years ago

你好,如果我用大赛第二赛道的图片进行ESDR训练,得出的模型能否有效消除输入图片的一些噪声和模糊呢?