复现DASR代码

复现DASR代码,第1张

目录

配置环境--准备工作:

训练:

更改文件:

开始训练:

测试:

由于个人精力有限,本篇文章知识简明扼要的根据自己踩过的坑进行总结复盘,内容中,我会阐述正确的做法,有问题可以留言欢迎一起讨论,但是踩过的坑在debug的时候就没有截图保存,所以不会图文并茂。

由于利用Anaconda安装环境时,实在是冗余的升级步骤太多(比如这个环境需要的python时3.6,但是在安装pytorch1.1.0时就会强制要求升级到3.7,不然就安装不了,二者不可兼得的状态),所以我舍弃了Anaconda,直接用virtualenv虚拟环境。

我用的是实验室服务器的虚拟环境(virtualenv),根据源代码的实验环境要求,自己在虚拟环境中按照需要进行安装。该实验源码中写的是用GPU双卡训练,其中所需要的文件都是通过FileZilla上传的。

配置环境--准备工作:

首先利用virtualenv创建dasr文件夹,输入命令:virtualenv dasr

根据需要的python创建对应的虚拟环境:virtualenv -p /usr/bin/python3.6 dasr

激活环境:source dasr/bin/activate

此时已经进入环境,如果像判断python是否符合要求,可以命令行输入python查看其版本。

接下来安装其他所需要的包。

由于使用官网提供的pip3安装torch命令,会安装和cuda匹配版本的torch,所以此处不用此方式,(服务器的cuda=11.1,一般可以向下兼容,所以我安装了符合环境需要的10.0,具体根据下边链接自行查找)

而是通过https://download.pytorch.org/whl/torch_stable.html安装对应版本的whl文件,注意,以cu开头的是针对GPU的,有700多M,需要等待一会。

下载完文件之后就传到服务器上,之后进行安装:pip install xxx.whl

其余的包利用pip就轻松加愉快的很快装完,一般都是requirement already satisfied。

训练: 更改文件:

首先按照readme所说创建数据集:

dasr是我的虚拟环境文件夹,训练时在此环境下进行。DASR-main时源码,datasets时数据集,三个同级。

DF2K中原本是没有这个bin文件的,根据源码做法,

没有也会自动给你创建,不过在训练的导入工作时,可能需要点时间。

接下来更改main.sh、main.py和train.py文件。

main.sh:(注意这里只写到datasets即可,后边的DF2K/HR源码会自动给你补齐)

在Linux环境下,执行.sh文件时,#cmd /k需要删掉,否则会报错。

main.py和train.py:

由于是多卡训练,所以在这两个文件中都加上这样两句话:

import os

os.environ['CUDA_VISIBLE_DEVICES'] = "2,3"

注:2、3是我的服务器卡号

将 python3.6/lib/site-packages/numpy/lib/npyio.py 文件中的allow_pickle=False改成True,至于为什么默认会从True设置成False,个人想是安全性和跨平台存储的原因。为了加载对象数组,改为true。

开始训练:

在训练前,创建一个session对话,这样防止在关闭终端或者意外情况下终止训练。

 进入所创建的session后想要返回主终端,命令:CTRL+A+D

如果要杀掉session,则进入当前session后,执行exit命令。

在所创建的session中,激活dasr环境,进入到DASR-main目录下,执行:sh main.sh

测试:

实验进行了两个600epoch训练,一次是x2、x3、x4的超分,只用了各向同性高斯模糊核,没有叠加噪声,另一次是x4的超分,用各向异性高斯模糊核、噪声。跑了差不多四天。

训练的结果都保存在了experiment目录中,训练时没有PSNR、SSIM,测试的时候会保存。

没改实验默认的设置,一个测试是在大小为1.2的各向同性的高斯模糊上,set14,x2:32.374(论文:32.78).另一个是在噪声为10的x4,各向异性高斯模糊上:25.395

以下是数据图:

 在quick_test上的测试:

原图:

X2 :

X4:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/904698.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-15
下一篇 2022-05-15

发表评论

登录后才能评论

评论列表(0条)

保存