Image Super-Resolution via Attention based Back Projection Networks

这篇文章对反馈链接进行了一些改进,针对sr无法在较大的上采样倍数时无法表现出很好的图像效果的问题,Deep Back-Projection Networks for Single Image Super-resolution这篇文章提出了反馈链接思想,本文对反馈链接进行了部分改进,上采样的反馈链接输入为32 * 32 * 32的图像,先经过deconv上采样后通过conv进行下采样会原来的大小,此时会有像素损失,用原本的低分辨率特征图减经过上下采样后的特征图得到的残差图文章中认定为只经过一次上采样而丢失的信息(其实下采样的过程也会丢失信息,不过反馈链接将这个问题理想化了将丢失的信息认定为上采样过程中丢失的信息),后将丢失的这部分信息再次经过一次反卷积补充回上采样后的图像,下采样反馈过程与上采样类似,输入为128 * 128 * 32的图像先经过conv进行下采样在经过上采样会原来的分辨率,此时将原高分辨率特征图与经过上下采样后的特征图的差值作为下采样过程中丢失的信息(与上面所说存在相同的问题,将问题理想化了),后将丢失的这部分信息通过conv卷积进行下采样加到下采样的图像上进行信息补全
在这里插入图片描述
这篇文章提出了一种增强的方式其实就是通过在跳转链接上增添了卷积层,增强了非线性映射能力
在这里插入图片描述
这篇文章的主要的创新点在于接下来的注意力机制,因为这篇文章写的以及图像太乱了。。。。我找到了代码从代码的角度分析,首先提出了一个自注意力机制加在特征提取层后反馈链接前,首先将提取到的浅层特征输入三个1*1的卷积层中分别提取特征 后将提取到的特征分别view成b * c * ( h * w)(这里图上写的不对应该是三维不是二维),后通过矩阵相乘,这里具体说明下pytorch中的相乘,和torch.mul都是矩阵的逐元素相乘,必须满足行列数相等,torch.mm、torch.matmul、numpy.dot是矩阵乘法必须满足(m * n)×(n * m),此处为矩阵相乘,设三个1 * 1卷积分别为V、Q、K,通过permute函数将V和K的第二维度与第三维度调换(permute与view最大的区别在于permute实现的是矩阵转置,而view会将图像矩阵强制转换成想要的形状),将V与Q进行矩阵相乘,这里举个例子假设三个1 * 1卷积输出都为1 * 2 * 64即有两个通道,一个batch有一张图片,一张图像里有64个像素点即88,将V与K得到的矩阵转置,首先V与Q进行矩阵相乘,即一个64行两列和一个2行64列的矩阵相乘得到的结果为一张64 * 64的特征图,64行2列的矩阵的行为一个通道上的相同位置的像素点列为一个通道上的特征图,2行64列的矩阵的行为一个通道上的特征图,列为一个通道上相同位置的像素点,这样进行矩阵相乘得到的矩阵行可以理解为V的在两个通道上的第一个像素值(此后统称为第×个通道向量),与Q的所有通道向量的相似度,第二行为V的第二个通道向量与Q的所有通道向量的相似度,而得到的64 * 64矩阵的列可以理解为V的所有通道向量与Q的第一个通道向量的相似度,后利用softmax对64 * 64的行进行归一化,这样就能很好的用这个64 * 64的矩阵度量两个矩阵之间的相似性。后利用第三个1 * 1卷积Q提取出的特征图与64 * 64的矩阵做矩阵相乘即(2 * 64)×(64 * 64)用特征图的64个像素点分别乘64列,列代表V的每个通道向量与Q的第一个通道向量的相似性,这样相乘可以得到一个最终的相似度权值,代表第一个像素与总体像素的相关性,得到的相关性图像加到输入的浅层特征上起到了让特征关注到相关性强的信息的作用(该文章有一个大前提就是相关性强的信息为特征图主要信息,通过使网络关注到相关性强的信息,来增强网络提取特征图主要信息的能力)。

在这里插入图片描述
在这里插入图片描述
还有一个空间注意力机制加载下采样反馈模块后与自注意力机制差不多不过多了一个输入y(补全信息后的低分辨率图像),通过注意力机制对y进行相关性增强
在这里插入图片描述
网络架构最后一部分写的也比较乱,这里也通过代码解释,通过将前面所有的上采样反馈层和下采样反馈层(经过插值上采样)得到的特征图进行分别进行拼接后经过卷积,得到两组特征图,后直接相加并进一步做卷积操作,进一步提取特征作为残差,后将残差下采样,并用初始x减掉残差作为信息丢失的部分上采样后加回原SR(这一部分完全不知道在干嘛,感觉就是单纯为了增加工作量),大家自己看代码吧。。。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值