- 图像超分辨率 Super Resolution
- 基于卷积网络的模型 SRCNN 与 FSRCNN
- 损失函数
- 对抗生成网络 GAN 简介
- 基于 GAN 的模型 SRGAN 与 ESRGAN
- 视频超分辨率介绍
- 实践 MMEditing1
什么是超分辨率
图像超分辨率 : 根据从低分辨率图像重构高分辨率图像 。 将图像放大,变清晰
图像分辨率的目标
- 提高图像的分辨率
- 高分图像符合低分图像的内容
- 恢复图像的细节、产生真实的内容
常用的双线性或双立方揷值不能恢复图像的高频细节
应用方向
经典游戏高清重制
动画高清重制
照片修复
节约高清视频传输带宽
民生领域,如:医疗影像,卫星影像,监控系统 (车牌或人脸),空中监察等。
超分的类型
单图超分的解决思路
经典的解决方法:稀疏编码 ,一种无监督的方法。
缺点:即便已经学习出字典,对低分辨率图像块进行系数分解、得到系数仍然是一个相对复杂的优化问题。而且训练和推理都很耗时!
深度学习时代的超分辨率算法
- 基于卷积网络和普通损失函数
使用卷积神经网络,端到端从低分辨率图像恢复高分辨率图像
代表算法 : SRCNN 与 FSRCNN - 使用生成对抗网络
采用生成对抗网络的策略,鼓励产生细节更为真实的高分辨率图像。
代表算法: SRGAN 与 ESRGAN
SRCNN首次使用了端到端的深度学习网络来做超分辨率任务,三层卷积分别提取低层特征,对低层特征进行非线性变换得到高层特征,组合邻域内的高层次特征用以恢复高清图像。
SRCNN的一些网络细节如图所示。
损失函数的选择:逐像素计算的损失函数(MSE Loss)和感知损失(两张图的语义特征,利用预训练好的损失网络来比较二者的差异,计算特征图之间的欧氏距离)。
GAN: 对抗生成网络:无监督学习模型,来建模数据分布,并通过采样生成新模型。
GAN应用于超分辨率:
图像是高位空间中的数据点,由于真实图像中的像素值不能取任意值,这些数据点不会充满整个高维空间,仅分布在一个相对低维的结构中,可以通过数学函数将数据映射到低维空间上,也可以从低维空间逆映射回高维空间,映射函数可以由神经网络构成,其中的参数可以基于数据学习出来。