文章目录
- Windows下使用BasicSR测试自定义图像超分模型
- 测试集
- 模型权重
- 定义测试yml文件
- 测试
Windows下使用BasicSR测试自定义图像超分模型
继上一篇博客Windows下使用BasicSR训练自定义图像超分模型,训练模型之后,这篇博客讲解如何测试训练好的模型。
测试集
数据集采用DIV2K验证集。
DIV2K数据集下载地址:https://data.vision.ee.ethz.ch/cvl/DIV2K/
模型权重
上一篇博客训练以后,权重文件保存在experiments/IMDN_x4/models/
当中,这里选取net_g_latest.pth
作为模型权重文件。
定义测试yml文件
在options/test/IMDN/
路径下创建test_IMDN_x4.yml
文件,文件内容参考options/test/EDSR/
中的yml文件。test_IMDN_x4.yml
文件内容如下:
name: IMDN_x4_test_DIV2K
model_type: SRModel
scale: 4
num_gpu: 1 # set num_gpu: 0 for cpu mode
manual_seed: 0datasets:test_1:name: DIV2K100type: PairedImageDatasetdataroot_gt: D:/Datasets/SISR/DIV2K/DIV2K_valid_HRdataroot_lq: D:/Datasets/SISR/DIV2K/DIV2K_valid_LR_bicubic/X4filename_tmpl: '{}x4'io_backend:type: disk# network structures
network_g:type: IMDNin_nc: 3nf: 64num_modules: 6out_nc: 3upscale: 4# path
path:pretrain_network_g: D:/Project/Python/BasicSR/experiments/IMDN_x4/models/net_g_latest.pthstrict_load_g: true# validation settings
val:save_img: truesuffix: ~ # add suffix to saved images, if None, use exp namemetrics:psnr: # metric name, can be arbitrarytype: calculate_psnrcrop_border: 4test_y_channel: falsessim:type: calculate_ssimcrop_border: 4test_y_channel: false
主要注意以下几个参数
name: IMDN_x4_test_DIV2K
,name
可以自定义model_type: SRModel
根据上一篇博客保持默认即可dataroot_gt: D:/Datasets/SISR/DIV2K/DIV2K_valid_HR
和dataroot_lq: D:/Datasets/SISR/DIV2K/DIV2K_valid_LR_bicubic/X4
分别配置验证集HR和LR图像的路径filename_tmpl: '{}x4'
,由于LR图像的文件名和HR图像的文件名不是一致的,LR图像多了’x4’后缀,所以需要添加这个参数(训练的yml文件也可以配置这个参数以使用DIV2K验证集)。pretrain_network_g
配置模型权重的路径,也就是models/net_g_latest.pth
文件的路径
测试
测试前还需要对basicsr/test.py
文件进行修改,与basicsr/train.py
类似,需要添加代码使得以当前BasicSR路径为基准。
import logging
import torch
from os import path as osp# for windows:
import sys
sys.path.extend(['D:/Project/Python/BasicSR'])from basicsr.data import build_dataloader, build_dataset
from basicsr.models import build_model
from basicsr.utils import get_env_info, get_root_logger, get_time_str, make_exp_dirs
from basicsr.utils.options import dict2str, parse_options
在执行测试命令以前,我们需要先cd到BasicSR路径下,确保当前路径是BasicSR,例如我这里
D:\Project\Python\BasicSR>
然后执行测试命令
python basicsr/test.py -opt options/test/IMDN/test_IMDN_x4.yml
测试图片保存在/results/IMDN_x4_test_DIV2K/visualization/DIV2K100/
下。