Image Super-Resolution Using Deep Convolutional Networks图像超分辨----SRCNN

Image Super-Resolution Using Deep Convolutional Networks 图像超分辨----SRCNN测试及训练

本文详细介绍了图像超分辨方法–SRCNN代码测试及训练
论文地址https://ieeexplore.ieee.org/document/7115171?arnumber=7115171
代码地址https://github.com/yjn870/srcnn-pytorch

1、SRCNN测试:

(Window10系统下进行)
(1)创建虚拟环境
(2)安装python3.6pytorch1.7.0cuda11.0以及必要的安装包
h5pytqdm
(3)安装pytorch1.7.0和对应版本的cuda11.0:终端输入如下命令

conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch

(4)将下载的预训练模型拷贝到项目文件model文件夹下。
本次测试使用的模型为srcnn_x3.pth,也可以使用其他模型。

运行测试命令:
python test.py --weights-file model/srcnn_x3.pth --image-file data/butterfly_GT.bmp --scale 3

结果图片和原始图片都保存在data文件夹下,运行结果显示峰值信噪比为27.53

原始图片为:
在这里插入图片描述
下面结果分别为butterfly_GT_bicubic_x3(双三次插值)和butterfly_GT_srcnn_x3(SRCNN)
在这里插入图片描述
可以更改scale参数,改变规模,进行测试以及峰值信噪比的计算。
在这里插入图片描述
改变规模进行测试,scale为2,3,4时对应的PSNR分别为34.69,35.82,38.34
在这里插入图片描述
也可以对自己的数据进行测试,将需要测试的图片放在data文件夹下,运行命令的时候,将图片的名称改为自己测试图片的名称。
在这里插入图片描述
也可以更改相应的参数。

2、SRCNN训练:

(Window10系统下进行)
(1)在代码地址中下载用于训练的数据集,如下:
在这里插入图片描述
(2)在项目工程文件夹下创建数据集文件夹,如下:
文件夹名称分别为train_dataeval_dataoutputs
并将数据集和评估文件放到如下文件夹下,本次训练使用91-image_x3.h5Set5_x3.h5,也可以使用其他数据文件。
在这里插入图片描述
(3)接下来需要设置train.py文件中的参数,如下:
图中①②③分别为训练数据、评估文件、输出模型保存文件夹,可以自己进行创建,修改此处即可。
图中④⑤⑥分别为训练的batch_sizenum_epochsnum_workers,如果显存不够可以适当改小batch_size;需要简单测试,节省时间,可以将num_epochs 减少;windows下训练,需要将num_workers改成0。
在这里插入图片描述
输入命令:python train.py
在这里插入图片描述
开始训练,并同时输出此周期下的psnrloss等指标。(注:本次训练10个周期)
训练结束,模型会保存在outputs文件夹下。同时会生成最好的模型,也就是峰值信噪比最高的模型。之后,可以使用best.pth进行测试。
在这里插入图片描述
在这里插入图片描述
以上就是SRCNN测试及训练的全过程了,希望对大家有所帮助!

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值