
本文提出了一种名为RNET(Residual Network with Efficient Transformer)的网络,该网络结合了三种有效的设计元素:
注意力机制通过让模型关注图像关键区域提升了识别精度,而轻量级残差网络通过减少参数和计算量,实现了在低资源消耗下的优秀性能。 结合注意力机制与轻量级残差网络,既能让模型能够更高效地关注输入数据中的关键信息,提升模型处理复杂模式的能力,还通过减少参数和计算复杂度,保持了模型的轻量级特性,达到在有限资源下同时保持高效率和高性能的目标。
这些工作和方法为RNET的提出提供了理论和技术基础,同时也展示了SISR领域内研究的多样性和深度。RNET通过结合这些现有技术和自身的创新设计,旨在实现更高效、更轻量的图像超分辨率处理。
RNET由三个主要部分组成:浅层特征提取模块、深层特征提取模块和图像重建模块。

HFEB包含三个主要部分:局部特征提取模块、混合注意力机制和高效变换器,使用BSConv代替传统的卷积,大大减少了计算量。此外使用局部残余连接代替可分离的蒸馏结构,局部残差结构可以在保持模型能力的同时显著减少推理时间:

BSConv:BSConv将标准卷积分解为点对点1×1卷积和深度卷积,减少计算负担。

ESA和CCA:
ESA使用1×1卷积减少输入通道,并通过步长卷积和步长最大池化减少空间大小,CCA采用标准差和均值的和代替全局池化,增强图像细节和纹理结构信息:

高效变换器(ET):
包括MBTA和GBFN,MBTA通过跨通道自注意力减少计算开销,GBFN通过门控机制和BSConv学习局部信息。

使用DIV2K数据集的800张图像进行训练,使用Set5、Set14、BSD100、Urban100和Manga109数据集进行测试。评价指标包括平均峰值信噪比(PSNR)和结构相似性(SSIM)。
模型在RGB通道上训练,通过随机翻转图像增强训练数据。HFEB的数量设置为8,通道数设置为48。使用Adam优化器,初始学习率设置为5×10^-4,使用余弦衰减策略。在模型优化方面使用均方误差(MAE)损失函数进行优化。
RNET在所有测试集上均实现了最佳性能,特别是在纹理细节增强方面。与现有高效SR方法相比,RNET在参数数量上减少了70K,性能最佳。

与其他方法相比,RNET能够重建更清晰的图像细节,具有更高的视觉质量。

RNET在SR图像重建中利用了最广泛的像素范围,达到了最高的扩散指数(DI)值。

RNET在参数数量、FLOPs和激活数量上均表现出较低的计算复杂性,同时保持了较高的性能。

RNET在Set5数据集上的表现优于ESRT,并且与SwinIR的性能相似,但参数和FLOPs数量最少。通过一系列消融实验,验证了网络深度、宽度、ET模块的有效性以及激活函数的选择对模型性能的影响。
RNET在轻量级单图像超分辨率任务中实现了性能与模型参数之间的良好平衡。通过局部残差连接结构和BSConv,显著提高了推理速度并减少了参数数量。
结合注意力机制与轻量级残差网络,既能让模型能够更高效地关注输入数据中的关键信息,提升模型处理复杂模式的能力,还通过减少参数和计算复杂度,保持了模型的轻量级特性,达到在有限资源下同时保持高效率和高性能的目标。
通过一个全连接层(att_fc)来学习通道间的权重,输入数据首先通过AdaptiveAvgPool2d在模态轴上进行平均池化,然后转换维度,并通过全连接层来获取注意力权重。将原始特征图与注意力权重相乘,实现通道的加权:
class ChannelAttentionModule(nn.Module):
def __init__(self, inchannel):
super().__init__()
self.att_fc = nn.Sequential(
nn.Linear(inchannel, inchannel // 4),
nn.ReLU(),
nn.Linear(inchannel // 4, inchannel),
nn.Sigmoid()
)
def forward(self, x):
'''
x.shape: [b, c, series, modal]
'''
# 传感数据特殊性,固定模态轴,只在时序轴上做GAP或者GMP
att = nn.AdaptiveAvgPool2d((1, x.size(-1)))(x) # [b, c, series, modal] -> [b, c, 1, modal]
att = att.permute(0, 3, 1, 2).squeeze(-1) # [b, c, 1, modal] -> [b, modal, c]
att = self.att_fc(att) # [b, modal, c]
att = att.permute(0, 2, 1).unsqueeze(-2) # [b, modal, c] -> [b, c, modal] -> [b, c, 1, modal]
out = x * att
return out输入数据先在通道维度上进行平均,然后通过卷积层和激活函数得到空间注意力权重,再来将原始特征图与空间注意力权重相乘,实现空间特征的加权。


原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。