作者 | 黄浴
转载自知乎
导读:近年来,使用深度学习技术的图像超分辨率(SR)取得了显著进步。本文中,奇点汽车自动驾驶首席科学家黄浴对基于深度学习技术的图像超分辨率技术进行了一次全面的总结,分析了这门技术近年来的发展轨迹。
我们一般可以将现有的 SR 技术研究大致分为三大类:监督 SR ,无监督 SR 和特定领域 SR (人脸)。
如今已经有各种深度学习的超分辨率模型。这些模型依赖于有监督的超分辨率,即用LR图像和相应的基础事实( GT )HR 图像训练。 虽然这些模型之间的差异非常大,但它们本质上是一组组件的组合,例如模型框架,上采样方法,网络设计和学习策略等。从这个角度来看,研究人员将这些组件组合起来构建一个用于拟合特定任务的集成 SR 模型。
由于图像超分辨率是一个病态问题,如何进行上采样(即从低分辨率产生高分辨率)是关键问题。基于采用的上采样操作及其在模型中的位置, SR 模型可归因于四种模型框架:预先采样 SR ,后上采样 SR ,渐进上采样 SR 和迭代上下采样 SR ,如图所示。
除了在模型中的位置之外,上采样操作如何实现它们也非常重要。为了克服插值法的缺点,并以端到端的方式学习上采样操作,转置卷积层(Transposed Convolution Layer)和亚像素层(Sub-pixel Layer)可以引入到超分辨率中。
转置卷积层,即反卷积层,基于尺寸类似于卷积层输出的特征图来预测可能的输入。具体地说,它通过插入零值并执行卷积来扩展图像,从而提高了图像分辨率。为了简洁起见,以 3×3 内核执行 2 次上采样为例,如图所示。首先,输入扩展到原始大小的两倍,其中新添加的像素值被设置为 0(b)。然后应用大小为 3×3、步长 1 和填充 1 的内核卷积(c)。这样输入特征图实现因子为2 的上采样,而感受野最多为 2×2 。
由于转置卷积层可以以端到端的方式放大图像大小,同时保持与 vanilla 卷积兼容的连接模式,因此它被广泛用作 SR 模型的上采样层。然而,它很容易在每个轴上产生“不均匀重叠(uneven overlapping)”,并且在两个轴的乘法进一步产生了特有的不同幅度棋盘状图案,从而损害了 SR 性能。
亚像素层也是端到端学习的上采样层,通过卷积生成多个通道然后重新整形,如图所示。首先卷积产生具有 s2 倍通道的输出,其中 s 是上采样因子(b)。假设输入大小为 h×w×c ,则输出大小为 h×w×s2c。之后,执行整形( shuffle )操作产生大小为 sh×sw×c 的输出(c)。感受野大小可以达到 3×3 。
由于端到端的上采样方式,亚像素层也被 SR 模型广泛使用。与转置卷积层相比,亚像素层的最大优势是具有较大的感知场,提供更多的上下文信息,能帮助生成更准确的细节。然而,亚像素层的感受野的分布是不均匀的,块状区域实际上共享相同的感受野,这可能导致在块边界附近的一些畸变。
各种深度学习的模型已经被用于 SR ,如图所示。
ResNet 学习残差而不是彻底的映射,已被 SR 模型广泛采用,如上图(a)所示。其中,残差学习策略可以大致分为两种类型,即全局和局部残差学习。
由于超分辨率是图像到图像的转换任务,其中输入图像与目标图像高度相关,全局残差学习仅学习两个图像之间的残差。在这种情况下,它避免学习从完整图像到另一个图像的复杂转换,而只需要学习残差图来恢复丢失的高频细节。由于大多数区域残差接近于零,模型的复杂性和学习难度都大大降低。这种方法在预上采样的 SR 框架普遍采用。
局部残差学习类似于 ResNet 的残差学习,用于缓解不断增加的网络深度引起的退化问题并提高学习能力。
实践中,上述方法都是通过快捷连接(通常有小常数因子的缩放)和逐元素加法操作实现的。区别在于,前者直接连接输入图像和输出图像,而后者通常在不同深度的网络中层之间添加多个快捷方式。
• 递归学习
递归学习(以递归方式多次应用相同模块)也被超分辨率采用,如上图 (b)所示。在实践中,递归学习固有地带来了消失(vanishing)或爆涨(exploding)梯度问题,因此残差学习和多信号监督等一些技术通常与递归学习相结合,以减轻这些问题。
• 通道关注
考虑到不同通道之间特征表征的相互依赖和作用,一种“挤压-激发(SAE,squeeze-and-excitation)”模块明确对通道相互依赖性建模,来提高表示能力,如上图(c)所示。其中用全局平均池化将每个输入通道压缩到通道描述子(即一个常数)中,然后将这些描述子馈送到两个全连接层产生通道尺度因子。基于通道乘法,用尺度因子重新缩放输入通道得到最终输出。
• 致密连接
致密连接在视觉任务中变得越来越流行。在致密块的每个层,所有前层的特征图用作输入,并且其自身特征图用作所有后续层的输入,在一个有 l 层致密块中带来 l·(l - 1)/ 2 个连接。致密连接,不仅有助于缓解梯度消失问题、增强信号的传播并促进特征重用,而且在连接之后采用小增长率(即致密块的通道数)和通道缩减来大大减少参数量。
为了融合低级和高级特征以提供更丰富的信息来重建高质量的细节,致密连接被引入 SR 领域,如上图(d)所示。
• 多路径学习
多路径学习指模型存在多个路径传递特征,这些路径执行不同的操作以提供更好的建模功能。具体而言,它可以分为三种类型:全局法、局部法和特定尺度法。
全局多路径学习是指用多个路径提取图像不同方面的特征。这些路径可以在传播中相互交叉,从而大大增强了特征提取的能力。
本地多路径学习用新块进行多尺度特征提取,如上图(e)所示。该块采用不同内核大小的卷积同时提取特征,然后将输出连接起来并再次进行相同的操作。快捷方式通过逐元素添加来连接该块的输出和输入。通过这种局部多路径学习,SR 模型可以更好地从多个尺度提取图像特征,进一步提高性能。
特定尺度多路径学习共享模型的主要部分(即特征提取的中间部分),并分别在网络的开头和结尾附加特定尺度的预处理路径和上采样路径,如上图(f)所示。在训练期间,仅启用和更新与所选尺度对应的路径。这样大多数参数在不同尺度上共享。
• 高级卷积
卷积运算是深度神经网络的基础,改进卷积运算可获得更好的性能或更快的速度。这里给出两个方法:扩张卷积( Dilated Convolution )和群卷积( Group Convolution )。 众所周知,上下文信息有助于在图像超分辨率生成逼真的细节。扩张卷积能将感受野增加两倍,最终实现更好的性能。群卷积以很少的性能损失可减少大量的参数和操作,如上图( g )所示。
• 像素递归学习
大多数 SR 模型认为这是一个与像素无关的任务,因此无法正确地确定生成像素之间的相互依赖性。在人注意力转移机制推动下,一种递推网络可依次发现参与的补丁并进行局部增强。以这种方式,模型能够根据每个图像自身特性自适应地个性化最佳搜索路径,从而充分利用图像全局的内依赖性( intra-dependence )。不过,需要长传播路径的递归过程,特别对超分辨率的 HR 图像,大大增加了计算成本和训练难度。
• 金字塔池化
金字塔池化模块更好地利用全局和局部的上下文信息,如上图( h )所示。 具体地,对于尺寸为 h×w×c 的特征图,每个特征图被划分为 M×M 个区间,并经历全局平均池化产生 M×M×c 个输出。 然后,执行 1×1 卷积输出压缩到一个单信道。 之后,通过双线性插值将低维特征图上采样到与原始特征图相同的大小。 使用不同的 M,该模块可以有效地整合全局和局部的上下文信息。
• 小波变换
众所周知,小波变换( WT )是一种高效的图像表示,将图像信号分解为表示纹理细节的高频小波和包含全局拓扑信息的低频小波。将 WT 与基于深度学习的 SR 模型相结合,这样插值 LR 小波的子带作为输入,并预测相应 HR 子带的残差。 WT 和逆 WT 分别用于分解LR输入和重建 HR 输出。
另外学习策略问题,涉及损失函数的设计(包括像素损失,内容损失,纹理损失,对抗损失和周期连续损失)、批处理归一化(BN)、课程学习(Curriculum Learning)和多信号监督( Multi-supervision )等等。
现有的超分辨率工作主要集中在监督学习上,然而难以收集不同分辨率的相同场景的图像,因此通常通过对 HR 图像预定义退化来获得 SR 数据集中的 LR 图像。为了防止预定义退化带来的不利影响,无监督的超分辨率成为选择。在这种情况下,只提供非配对图像( HR 或 LR )用于训练,实际上得到的模型更可能应对实际场景中的 SR 问题。
• 零击(zero shot)超分辨率
单个图像内部的统计数据足以提供超分辨率所需的信息,所以零击超分辨率(ZSSR)在测试时训练小图像特定的 SR 网络进行无监督 SR ,而不是在大数据集上训练通用模型。具体来说,核估计方法直接从单个测试图像估计退化内核,并在测试图像上执行不同尺度因子的退化来构建小数据集。然后在该数据集上训练超分辨率的小 CNN 模型用于最终预测。
ZSSR 利用图像内部特定信息的跨尺度复现这一特点,对非理想条件下(非 bi-cubic 退化核获得的图像,受模糊、噪声和压缩畸变等影响)更接近现实世界场景的图像,比以前的方法性能提高一大截,同时在理想条件下( bi-cubic 插值构建的图像),和以前方法结果差不多。尽管这样,由于需要在测试期间为每个图像训练单个网络,使得其测试时间远比其他 SR 模型长。
• 弱监督 SR
为了在超分辨率中不引入预退化,弱监督学习的 SR 模型,即使用不成对的 LR-HR 图像,是一种方案。一些方法学习 HR-LR 退化模型并用于构建训练 SR 模型的数据集,而另外一些方法设计周期循环( cycle-in-cycle )网络同时学习 LR-HR 和 HR-LR 映射。
由于预退化是次优的,从未配对的 LR-HR 数据集中学习退化是可行的。一种方法称为“两步法”:
◆
精彩推荐
◆
社群福利
扫码添加小助手,回复:大会,加入2019 AI开发者大会福利群,每周一、三、五 更新学习资源、技术福利,还有抽奖活动~
推荐阅读