论文的贡献(Contributions):
(1)提出了轻量级的信息多重蒸馏网络(IMDN)以及它的基本组成块(IMDB)
(2)提出了基于对比度的通道注意力( Contrast-aware channel attention(CCA) )
(3)提出了自适应裁剪策略( Adaptive cropping strategy(ACS) )
(4)发现了执行速度受网络的深度影响
1、基于对比度的通道注意力(Contrast-aware channel attention)(CCA)
通道注意力机制都差不多,就是调整每个Channel的权重(有用信息多的Channel给更大的权重),(如果对通道注意力机制不太清楚,可以参考我前面的博文),不过这里权重调整的依据是标准差与均值之和,作者认为它更贴近底层的视觉。
2、信息多重蒸馏模块(Information multi-distillation block)(IMDB)
主要思想:模块整体表现为残差结构,每次提取一部分有用的特征,其余特征继续向下通过卷积再进行提取的过程(“多重蒸馏(Multi-distillation)”的体现),完成后,将每一步提取出来的特征连接起来(Concat),再通过一个通道注意力层(CCA),最后利用1*1的卷积降维(调整Channel的数量)。
3、信息多重蒸馏网络(Information Multi-distillation Network)(IMDN)
有了前面1、2,就能搭一个网络了,外面(上面黑线)是一个 skip-connection,中间IMDB的连接也是一些 skip-connection,但是这个网络只能进行一个scale(s)的超分辨率,因此作者后面又稍微修改了下,提出IMDN_AS,能进行任意scale超分辨率。
4、IMDN_AS
前面IMDN的输入与输出的尺寸是不一样的,输出是输入的放大scale倍。
但为了使用一个模型进行多个scale的超分辨率,一般需要先经过插值的方法将输入图像放大到与输出图像一样的尺寸,再将其输入到网络中,同时这个网络中没有下采样的操作,但是这样会增加很大的计算量,因为所有的计算都是在输出尺寸下进行的。同样,为了进行多scale的超分辨率,IMDS_AS的输入和输出也是同尺寸的(输入模糊,输出清晰),但IMDS引入了下采样操作。
IMDN_AS与IMDN的区别,就是将IMDN前面的卷积换成了两个下采样的卷积,作者代码中 s2=2 ,即两个卷积代表(x4)的下采样,这样做的目的是减少参数量(后面的运算都在小尺寸下进行),后面的Upsampler再进行一个(x4)的上采样,这样,输出的尺寸就和输入一样了。
为了确保输入能进行(x4)下采样,需要保证输入的宽高能被4整除,因此IMDN_AS引入了ACS的策略,ACS就是保证了输入的宽高能被4整除。
4、自适应裁剪策略(Adaptive cropping strategy) (ACS)
为了保证IMDN_AS的输入能够顺利地进行(x4)下采样,即长宽能够顺利地被4整除。ACS会将输入图像均分成4块,每一块是,然后将它向外扩展
、
,如上图绿色框,使得扩展后的图像块能够被4整除,即要求满足如下公式:
与
是提前设定好的两个量,通常它们满足
这四个图像块会并行地输入到网络中,然后得到四个同尺寸的输出图像块,将这四个输出图像块再放回到原始的位置,将与
的部分丢弃,组合成一幅完整的图像。
2020补充:
在2020年的 AIM 中,有团队对这个网络进行了一些改进:github 地址
改进主要针对前面的 信息多重蒸馏模块(IMDB),提出RFDB(residual feature distillation block 即残差特征蒸馏模块),如下图:
作者认为 (a)IMDB 中的 Channel Split 的可扩展性不强(inflexibility)和不够高效(not efficient enough),因此将(a)中的结构重新组织成(b);(c)将 (b)中左侧的 3x3 卷积换成了 1x1(更符合常见的降维方法),然后将 (b)中右侧的 3x3 的卷积套了一个如(d)所示的残差结构。