使用GAN做图像超分——SRGAN,ESRGAN

在GAN出现之前,使用的更多是MSE,PSNR,SSIM来衡量图像相似度,同时也使用他们作为损失函数。

但是这些引以为傲的指标,有时候也不是那么靠谱:

MSE对于大的误差更敏感,所以结果就是会倾向于收敛到期望附近,表现为丢失高频信息。同时根据实验,MSE的收敛效果也差于L1:

但是只使用L1也有问题,现在通常的做法是多种损失混合使用,比如MS-SSIM+L1,还有基于DCT的loss。

在目前超分辨率的论文中不使用MSE,而使用L1或者Perceptual loss的原因是什么? - 知乎

SRGAN,ESRGAN,Real ESRGAN,一步步演化,对比着看才更容易理解。

SRGAN

SRGAN主要从损失函数的角度优化。因为发现一MSE为损失函数时,网络会倾向于平均的结果,表现在图像上就是过于平滑,丢失细节。https://arxiv.org/pdf/1609.04802.pdf

SRGAN使用了两个损失函数,一个是使用VGG的特征图,在特征图上计算欧式距离。第二个损失函数是使用对抗网络中的鉴别器,判断当前输出结果是否是真实的HR数据。

ESRGAN

ESRGAN在损失函数上继续优化。特征图损失部分,使用的是激活前的而不是激活后的,因为激活后的未免太抽象;

鉴别器损失部分,借鉴relativistic GAN,使用相对损失而不是绝对损失。

除了损失函数,网络结构方面也是把残差,dense net组合成更复杂的RRDB:

首先是构建Dense Block,卷积越往后,接受的通道数越多(因为是之前所有的输出和最开始的输入)。Dense Block把输出和输入线性组合,就是RDB。RRDB就是把三个RDB串起来,再把输出和输入做线性组合。组合的时候,输出只占0.2.

最终以PSNR和GAN为目标,作者训练了两套模型参数,对两套参数加权融合,可以互补二者的优缺点。

Real ESRGAN

Real ESRGAN主要的贡献是数据对的生成。通过模糊,下采样,加噪声,压缩,模拟振铃效应等得到了更接近真实退化的图像对:

SRGAN、ESRGAN与Real ESRGAN方法介绍 - 知乎

ESRGAN原理分析和代码解读 - 知乎

超分之ESRGAN官方代码解读_residual-in-residual dense block、-CSDN博客

相关推荐
白熊18817 分钟前
【计算机视觉】CV实战项目 - 基于YOLOv5的人脸检测与关键点定位系统深度解析
人工智能·yolo·计算机视觉
nenchoumi311920 分钟前
VLA 论文精读(十六)FP3: A 3D Foundation Policy for Robotic Manipulation
论文阅读·人工智能·笔记·学习·vln
后端小肥肠30 分钟前
文案号搞钱潜规则:日入四位数的Coze工作流我跑通了
人工智能·coze
LCHub低代码社区31 分钟前
钧瓷产业原始创新的许昌共识:技术破壁·产业再造·生态重构(一)
大数据·人工智能·维格云·ai智能体·ai自动化·大禹智库·钧瓷码
-曾牛31 分钟前
Spring AI 快速入门:从环境搭建到核心组件集成
java·人工智能·spring·ai·大模型·spring ai·开发环境搭建
阿川201535 分钟前
云智融合普惠大模型AI,政务服务重构数智化路径
人工智能·华为云·政务·deepseek
自由鬼1 小时前
开源AI开发工具:OpenAI Codex CLI
人工智能·ai·开源·软件构建·开源软件·个人开发
生信碱移1 小时前
大语言模型时代,单细胞注释也需要集思广益(mLLMCelltype)
人工智能·经验分享·深度学习·语言模型·自然语言处理·数据挖掘·数据可视化
一个数据大开发1 小时前
解读《数据资产质量评估实施规则》:企业数据资产认证落地的关键指南
大数据·数据库·人工智能
云卓SKYDROID2 小时前
无人机环境适应性与稳定性技术要点!
人工智能·无人机·科普·高科技·云卓科技