深度学习基于GAN实现人脸图像超分辨率重建实战task1

简介: 天池龙珠计划深度学习训练营学习笔记

天池龙珠计划深度学习训练营学习笔记


超分辨的概念与应用

图像分辨率指的是图像长边像素数与图像短边像素数的乘积,比如iPhoneX手机拍摄照片的分辨率为 4032px×3024px,为1200万像素。

显然,越高的分辨率能获得更清晰的成像。与之同时,分辨率越高也意味着更大的存储空间,对于空间非常有限的移动设备来说,需要考虑分辨率与存储空间的平衡。

图像超分,就是要从低分辨率的图像恢复为高分辨率的图像,它在日常的图像和视频存储与浏览中都有广泛的应用。

10年前手机中320px×240px分辨率的图像是主流,其视觉美感相对如今随处可见的4K分辨率来说是无法比拟的。我们可以使用超分技术来恢复当年拍摄的低分辨率图像。手机图片浏览中也有超分算法的努力,即同一张图片在不同手机上的显示效果不一样,是因为显示分辨率越高的手机可以使用更清晰的分辨率进行展示。


超分辨的典型模型

近年来CNN等深度学习模型在图像超分任务中取得了非常大的进展,使得超分算法得以真正在产品中落地,目前根据上采样(upsampling)在网络结构中的位置和使用方式不同,最主流的超分网络架构有两种。

1. 前上采样(pre-upsampling)

即在网络一开始的时候就完成上采样过程。

SRCNN框架首先使用双线性插值等上采样方法进行初始化,得到想要恢复的分辨率,这一步也可以使用反卷积来完成。 然后使用卷积层对输入的局部图像块进行特征提取,得到一系列特征图,这相当于完成了稀疏编码中重叠的图像块的构建,这一步骤可以表达如下:

F1(Y)=max(W1Y+B1)F1(Y)=max(W1∗Y+B1)

其中 W1W1B1B1 分别表示卷积核和偏置, 表示卷积操作,YY 就是输入。W1W1 的尺寸为 c×n1×f1×f1c×n1×f1×f1 ,其中 cc 就是输入图的通道数量,n1n1 是输出特征通道数,f1×f1f1×f1是卷积核大小。

早期的超分算法常常只对亮度通道进行超分,颜色通道则进行双线性上采样。SRCNN算法则同时对RGB通道进行了学习,因为这三个通道之间存在较强的灰度耦合性。

接着,使用 1×1 卷积进行维度变换,即将 n1n1 个特征通道转换为 n2n2 个特征通道,这就是相当于稀疏编码中低分辨率字典到高分辨率字典的映射,这一步骤可以表达如下:

F2(Y)=max(W2F1(Y)+B2)F2(Y)=max(W2∗F1(Y)+B2)

W2W2 的尺寸为 n1×n2×f2×f2n1×n2×f2×f2 ,其中 n1n1 就是输入特征的通道数量,n2n2 是输出特征通道数,f2×f2f2×f2 是卷积核大小,实际上 f2=1f2=1

最后就是将高分辨率的图像块重新拼接成完整的图像,这一步骤可以表达如下:

F3(Y)=max(W3F2(Y)+B3)F3(Y)=max(W3∗F2(Y)+B3)

W3W3 的尺寸为 n2×c×f3×f3n2×c×f3×f3 ,其中 n2n2 就是输入特征的通道数量,c 是输出特征通道数,它等于输入图像的通道数,f3×f3f3×f3 是卷积核大小。

f2=1f2=1 时,对于输出图像中的每一个像素,它在原图中的感受野大小为(f3+f11)2(f3+f1−1)2,一个典型的设定是f1=9f1=9f3=5f3=5,此时输出像素与输出的 132=169132=169 个像素有关,相比于传统方法具有较大的感受野,因此SRCNN具有较大的优势。

SRCNN框架可以适用于任意分辨率的提升,因为在输入网络之前,上采样过程已经对输出分辨率做了初始化,所以CNN模型要学习的是由粗到精的改进,学习过程比较简单。不过由于整个网络在高分辨率空间进行计算,因此计算量大,而且噪声容易被放大。

SRCNN的整个流程与稀疏编码方法相同,因此它也被看作是使用CNN实现了稀疏编码的方案。

2. 后上采样(post-upsampling)

即在网络的最后才开始进行上采样。

在前上采样框架中首先使用反卷积来完成上采样是一种很自然的操作,但是它计算复杂度较大,因此SRCNN的作者后来将该上采样过程放置在网络最后端,通过一个反卷积来学习该上采样过程,将其命名为FSRCNN框架。而Twitter图片与视频压缩研究组则采用了与反卷积完全不同的上采样思路,提出了ESPCN模型,其中核心思想是亚像素卷积(sub-pixel convolution)

对于维度为H×W×C的图像,标准反卷积操作输出的特征图维度为rH×rW×C,其中r就是需要放大的倍数,而从上图可以看出,亚像素卷积层的输出特征图维度为H×W×C×r2,即特征图与输入图片的尺寸保持一致,但是通道数被扩充为原来的r2倍,然后再进行重新排列得到高分辨率的结果。

整个流程因为使用了更小的图像输入,从而可以使用更小的卷积核获取较大的感受野,这既使得输入图片中邻域像素点的信息得到有效利用,还避免了计算复杂度的增加,是一种将空间上采样问题转换为通道上采样问题的思路。

相比于前上采样中在开始就进行单一的一次上采样,后采样策略能更好地利用模型的表达能力,学习更加复杂的低分辩率到高分辨率的转换,因此ESPCN模型被验证为更加有效,后续的超分模型基本沿用了该思路。


相关文章
|
30天前
|
机器学习/深度学习 人工智能 TensorFlow
利用深度学习实现图像风格迁移
【8月更文挑战第73天】本文通过深入浅出的方式,介绍了一种使用深度学习技术进行图像风格迁移的方法。我们将探讨如何将一张普通照片转化为具有著名画作风格的艺术作品。文章不仅解释了背后的技术原理,还提供了一个实际的代码示例,帮助读者理解如何实现这一过程。
|
4天前
|
机器学习/深度学习 编解码 算法
什么是超分辨率?浅谈一下基于深度学习的图像超分辨率技术
超分辨率技术旨在提升图像或视频的清晰度,通过增加单位长度内的采样点数量来提高空间分辨率。基于深度学习的方法,如SRCNN、VDSR、SRResNet等,通过卷积神经网络和残差学习等技术,显著提升了图像重建的质量。此外,基于参考图像的超分辨率技术通过利用高分辨率参考图像,进一步提高了重建图像的真实感和细节。
|
1月前
|
机器学习/深度学习 PyTorch 算法框架/工具
揭秘深度学习中的微调难题:如何运用弹性权重巩固(EWC)策略巧妙应对灾难性遗忘,附带实战代码详解助你轻松掌握技巧
【10月更文挑战第1天】深度学习中,模型微调虽能提升性能,但常导致“灾难性遗忘”,即模型在新任务上训练后遗忘旧知识。本文介绍弹性权重巩固(EWC)方法,通过在损失函数中加入正则项来惩罚对重要参数的更改,从而缓解此问题。提供了一个基于PyTorch的实现示例,展示如何在训练过程中引入EWC损失,适用于终身学习和在线学习等场景。
44 4
揭秘深度学习中的微调难题:如何运用弹性权重巩固(EWC)策略巧妙应对灾难性遗忘,附带实战代码详解助你轻松掌握技巧
|
21天前
|
机器学习/深度学习 人工智能 算法
揭开深度学习与传统机器学习的神秘面纱:从理论差异到实战代码详解两者间的选择与应用策略全面解析
【10月更文挑战第10天】本文探讨了深度学习与传统机器学习的区别,通过图像识别和语音处理等领域的应用案例,展示了深度学习在自动特征学习和处理大规模数据方面的优势。文中还提供了一个Python代码示例,使用TensorFlow构建多层感知器(MLP)并与Scikit-learn中的逻辑回归模型进行对比,进一步说明了两者的不同特点。
52 2
|
20天前
|
机器学习/深度学习 数据挖掘 数据处理
深度学习之卫星图像中的环境监测
基于深度学习的卫星图像环境监测是指通过使用深度学习模型处理和分析来自卫星的遥感数据,以实现对地球环境的自动化监测和分析。这项技术极大提升了环境监测的效率、精度和规模,应用于气候变化研究、生态保护、自然灾害监测、城市扩张评估等多个领域。
50 0
|
1月前
|
机器学习/深度学习 PyTorch API
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
深度学习入门:卷积神经网络 | CNN概述,图像基础知识,卷积层,池化层(超详解!!!)
|
6天前
|
机器学习/深度学习 数据采集 人工智能
AI赋能教育:深度学习在个性化学习系统中的应用
【10月更文挑战第26天】随着人工智能的发展,深度学习技术正逐步应用于教育领域,特别是个性化学习系统中。通过分析学生的学习数据,深度学习模型能够精准预测学生的学习表现,并为其推荐合适的学习资源和规划学习路径,从而提供更加高效、有趣和个性化的学习体验。
40 9
|
3天前
|
机器学习/深度学习 人工智能 监控
深度学习在图像识别中的应用与挑战
本文探讨了深度学习技术在图像识别领域的应用,并分析了当前面临的主要挑战。随着卷积神经网络(CNN)的发展,图像识别的准确性和效率得到了显著提升。然而,数据不平衡、模型泛化能力、计算资源消耗等问题仍然是制约深度学习在图像识别领域进一步发展的关键因素。本文将详细介绍深度学习在图像识别中的应用案例,并讨论解决现有挑战的可能策略。
|
5天前
|
机器学习/深度学习 监控 自动驾驶
深度学习在图像识别中的应用与挑战
本文探讨了深度学习在图像识别领域的应用现状,分析了其面临的主要技术挑战和解决方案。通过对比传统方法和深度学习模型的优势,揭示了深度学习如何推动图像识别技术的发展,并展望了未来的研究方向。
|
2天前
|
机器学习/深度学习 分布式计算 自动驾驶
深度学习在图像识别中的革命性应用####
【10月更文挑战第29天】 本文深入探讨了深度学习技术如何彻底革新图像识别领域,通过卷积神经网络(CNN)的架构优化、数据集增强策略及迁移学习的应用,显著提升了图像分类与目标检测的准确率。文章概述了深度学习模型训练的关键挑战,如过拟合、计算资源依赖性,并提出了创新性解决方案,包括正则化技术、分布式计算框架及自适应学习率调整策略。强调了深度学习在自动驾驶、医疗影像分析等领域的广阔应用前景,同时指出了隐私保护、模型可解释性等伦理法律问题的重要性,为未来研究提供了方向。 ####
18 5