CVPR2019:Meta-SR: A Magnification-Arbitrary Network for Super-Resolution 任意尺度的图像超分辨率

论文:Meta-SR: A Magnification-Arbitrary Network for Super-Resolution 任意尺度的超分辨率
代码:https://github.com/XuecaiHu/Meta-SR-Pytorch.git

简介

随着深度卷积神经网络(DCNNs)的发展,近年来对超分辨率的研究取得了巨大的成功。然而,任意尺度因子的超分辨率长期以来一直被忽视。以往的研究大多将不同尺度因子的超分辨视为独立的任务。他们针对每个尺度因子训练一个特定的模型,计算效率较低,且只考虑了几个整数尺度因子的超分辨率。
本文提出了一种称为Meta-SR的新方法,第一个使用单一模型求解任意尺度因子(包括非整数尺度因子)的超分辨率。在Meta-SR中,提出了Meta-Upscale模块来替代传统的上采样(Upscale)模块。对于任意尺度因子,MetaUpscale模块通过将尺度因子作为输入,动态预测高级滤波器的权重,并使用这些权重生成任意大小的HR图像。对于任何低分辨率的图像,Meta-SR仅使用一个单一的模型就可以用任意的比例因子持续地放大它。
本文通过在广泛使用的单图像超分辨率基准数据集上的大量实验来评估该方法。实验结果表明了本模型的优越性。

从固定尺度因子的Upsacle到Meta-Upscale

目前比较先进的SISR方法,如ESPCNN, EDSR , RDN, RCAN,这些方法都是通过亚像素卷积对网络末端的feature map进行放大。不幸的是,这些方法必须为每个比例因素设计一个特定的高档模块。每个上采样模块只能放大固定整数比例因子的图像。超像素卷积只适用于整数尺度因子。这些缺点限制了SISR在真实场景中的使用。但是,我们可以通过适当的放大输入图像来实现非整数尺度因子的超分辨率。但由于计算量的重复和投入量的增大,使得这些方法费时费力,难以投入实际应用。

回忆上面提到的这些SISR的上采样方法:ESPCN,EDSR,RCAN 的不同之处在于它们的Feature Learning Module设计,而相同之处在于都通过网络后面的Upscale Module,以PixelShuffle的方式进行图像的上采样。
RCAN的网络结构和Pytorch代码为例:

其中深蓝色的为RCAN的Upscale Module,在它后面一般只有负责将feature map的channel变为3的卷积核。

class RCAN(nn.Module):
    def __init__(self, args):
        super(RCAN, self).__init__()
        scale = args.scale
        num_features = args.num_features
        num_rg = args.num_rg
        num_rcab = args.num_rcab
        reduction = args.reduction

        self.sf = nn.Conv2d(3, num_features, kernel_size=3, padding=1)
        self.rgs = nn.Sequential(*[RG(num_features, num_rcab, reduction) for _ in range(num_rg)])
        self.conv1 = nn.Conv2d(num_features, num_features, kernel_size=3, padding=1)
        self.upscale = nn.Sequential(
            nn.Conv2d(num_features, num_features * (scale ** 2), kernel_size=3, padding=1),
            nn.PixelShuffle(scale)
        )
        self.conv2 = nn.Conv2d(num_features, 3, kernel_size=3, padding=1)

PixelShuffle的实现方式如下图所示,它 ( r 2 C , H ,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值