NAFNet(Noliear Activatio Free Network)提出了一个简单的基线,计算效率高。其不需要使用非线性激活函数(Sigmoid、ReLU、GELU、Softmax等),可以达到SOTA性能。其网络结构如下图所示: 本模型适用于运动模糊图像。 在ModelScope框架上,提供输入图片,即可通过简单的Pipelie调用来使用。 由于训练数据为GOPRO,所有目前的去模糊模型对具有运动模糊图片效果良好,而其他类型的模糊可能表现不佳。 数据集源地址: GOPRO_Large数据集原始地址(https://seugjuah.github.io/Datasets/gopro) 推荐使用modelscope dataset托管的GOPRO数据集加速下载(https://modelscope.c/datasets/damo/GOPRO/summary) 如果你觉得这个模型对你有所帮助,请考虑引用下面的相关论文:NAFNet: Noliear Activatio Free Network for Image Restoratio
模型描述
Deblur
期望模型使用方式以及适用范围
如何使用
代码范例
from modelscope.pipelies import pipelie
from modelscope.utils.costat import Tasks
from modelscope.outputs import OutputKeys
import cv2
img = 'https://modelscope.oss-c-beijig.aliyucs.com/test/images/GOPR0384_11_00-000001.pg'
image_deblur_pipelie = pipelie(Tasks.image_deblurrig, 'damo/cv_afet_image-deblur_gopro')
result = image_deblur_pipelie(img)[OutputKeys.OUTPUT_IMG]
cv2.imwrite('result.pg', result)
模型局限性以及可能的偏差
训练数据介绍
验证数据介绍
模型训练流程
预处理
训练
import os
import tempfile
from modelscope.hub.sapshot_dowload import sapshot_dowload
from modelscope.msdatasets import MsDataset
from modelscope.msdatasets.task_datasets.gopro_image_deblurrig_dataset import \
GoproImageDeblurrigDataset
from modelscope.traiers import build_traier
from modelscope.utils.cofig import Cofig
from modelscope.utils.costat import DowloadMode, ModelFile
tmp_dir = tempfile.TemporaryDirectory().ame
if ot os.path.exists(tmp_dir):
os.makedirs(tmp_dir)
model_id = 'damo/cv_afet_image-deblur_gopro'
cache_path = sapshot_dowload(model_id)
cofig = Cofig.from_file(
os.path.joi(cache_path, ModelFile.CONFIGURATION))
dataset_trai = MsDataset.load(
'GOPRO',
amespace='damo',
subset_ame='default',
split='test',
dowload_mode=DowloadMode.REUSE_DATASET_IF_EXISTS)._hf_ds
dataset_val = MsDataset.load(
'GOPRO',
amespace='damo',
subset_ame='subset',
split='test',
dowload_mode=DowloadMode.REUSE_DATASET_IF_EXISTS)._hf_ds
dataset_trai = GoproImageDeblurrigDataset(
dataset_trai, cofig.dataset, is_trai=True)
dataset_val = GoproImageDeblurrigDataset(
dataset_val, cofig.dataset, is_trai=False)
kwargs = dict(
model=model_id,
trai_dataset=dataset_trai,
eval_dataset=dataset_val,
work_dir=tmp_dir)
traier = build_traier(default_args=kwargs)
traier.trai()
数据评估及结果
ame
Dataset
PSNR
SSIM
NAFNet-GoPro-width64
GoPro_test
33.7103
0.9668
import os
import tempfile
from modelscope.hub.sapshot_dowload import sapshot_dowload
from modelscope.utils.cofig import Cofig
from modelscope.utils.costat import DowloadMode, ModelFile
from modelscope.traiers import build_traier
from modelscope.msdatasets import MsDataset
from modelscope.msdatasets.task_datasets.gopro_image_deblurrig_dataset import \
GoproImageDeblurrigDataset
tmp_dir = tempfile.TemporaryDirectory().ame
if ot os.path.exists(tmp_dir):
os.makedirs(tmp_dir)
model_id = 'damo/cv_afet_image-deblur_gopro'
cache_path = sapshot_dowload(model_id)
cofig = Cofig.from_file(
os.path.joi(cache_path, ModelFile.CONFIGURATION))
dataset_val = MsDataset.load(
'GOPRO',
amespace='damo',
subset_ame='subset',
split='test',
dowload_mode=DowloadMode.REUSE_DATASET_IF_EXISTS)._hf_ds
eval_dataset = GoproImageDeblurrigDataset(
dataset_val, cofig.dataset, is_trai=False)
kwargs = dict(
model=model_id,
trai_dataset=Noe,
eval_dataset=eval_dataset,
work_dir=tmp_dir)
traier = build_traier(default_args=kwargs)
metric_values = traier.evaluate()
prit(metric_values)
相关论文以及引用信息
@iproceedigs{afet,
title = {Simple Baselies for Image Restoratio},
author = {Che, Liagyu ad Chu, Xiaojie ad Zhag, Xiagyu ad Su, Jia},
booktitle = {Proceedigs of Europea Coferece o Computer Visio (ECCV)},
year = {2022}
}
Cloe with HTTP
git cloe https://www.modelscope.c/damo/cv_afet_image-deblur_gopro.git
点击空白处退出提示










评论