+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2020-03(50)

2020-04(67)

2020-05(28)

2020-06(46)

2020-07(42)

EDSR-PyTorch复现

发布于2020-07-28 23:12     阅读(779)     评论(0)     点赞(4)     收藏(4)


0

1

2

3

4

5

6

最终测试命令

python main.py --data_test Demo --scale 4 --n_resblocks 32 --n_feats 256 --res_scale 0.1 --pre_train ..\\models\\EDSR_x4.pt --test_only

首先:需要先下载预训练模型,然后放到相应路径,https://cv.snu.ac.kr/research/EDSR/model_pytorch.tar ,最后在运行命令中的--pre_train指定模型路径。

 

1. Can't pickle local object 'checkpoint.begin_background..bg_target'

解决:去掉命令中的--save_results参数,然后要保存图像处理结果的话,直接写代码,代码(转自https://github.com/thstkdgus35/EDSR-PyTorch/issues/91)如附录图1

2.'checkpoint' object has no attribute 'queue'(注释了程序中--save_results相关代码导致)

解决:把程序src/trainer.py 中和save_results相关的代码全都注释干净如附录二

3. while copying the parameter named head.0.weight, whose dimensions in the model are torch.Size([64,3,3,3]) and whose dimensions in checkpoint is torch.Size([256,3,3,3])

解决:在运行命令中加上 --n_resblocks 32 --n_feats 256 --res_scale 0.1 参数。

4. CUDA:out of memory

解决:图像尺寸太大,加上--chop参数,让程序对图片进行自动分割处理。

 

附录:其它问题解决方案链接

https://github.com/thstkdgus35/EDSR-PyTorch/issues/184

https://github.com/thstkdgus35/EDSR-PyTorch/issues/91

 

附录1

postfix = ('SR', 'LR', 'HR')
for v, p in zip(save_list, postfix):
    normalized = v[0].mul(255 / self.args.rgb_range)
    tensor_cpu = normalized.byte().permute(1, 2, 0).cpu()
    imageio.imwrite(('..\\experiment\\test\\results-{}\\{}_x{}_{}.png'.format(d.dataset.name,filename[0],scale, p)), tensor_cpu.numpy())

 

附录2

#if self.args.save_results: self.ckp.begin_background()



#if self.args.save_results:
#      self.ckp.save_results(d, filename[0], save_list, scale)



#if self.args.save_results:
#     self.ckp.end_background()

 

原文链接:https://blog.csdn.net/yldmkx/article/details/107587034

0

1

2

3

4



所属网站分类: 技术文章 > 博客

作者:天青色等烟雨

链接: https://www.pythonheidong.com/blog/article/466480/eca99312e8eb2ead67a1/

来源: python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0
收藏该文
已收藏

评论内容:(最多支持255个字符)