Real-ESRGAN:Training Real-World Blind Super-Resolution with Pure Synthetic Data

https://github.com/NightmareAI/Real-ESRGAN/tree/masterhttps://github.com/NightmareAI/Real-ESRGAN/tree/master从SRCNN到EDSR,总结深度学习端到端超分辨率方法发展历程 - 知乎超分辨率技术(Super-Resolution, SR)是指从观测到的低分辨率图像重建出相应的高分辨率图像,在监控设备、卫星图像和医学影像等领域都有重要的应用价值。 本文针对端到端的基于深度学习的单张图像超分辨率方法(Si…https://zhuanlan.zhihu.com/p/31664818Real-ESRGAN超分辨网络 - 知乎对超分有兴趣的同学们可直接关注微信公众号,这个号的定位就是针对图像超分辨的,会不断更新最新的超分算法解读。 正文开始论文: Real-ESRGAN: TrainingReal-World Blind Super-Resolution with Pure Synthetic D…https://zhuanlan.zhihu.com/p/393350811一.esrgan

srcnn->srgan->esrgan->realesrgan

esrgan主要是从3个方面对srgan进行改进,网络结构,对抗损失,感知损失。

a.网络结构:

1.移除了BN层,BN很多时候是伪影产生的原因,因为训练时是批数的均值方差,但是推理是全数据集的均值方差;2.将原始的resblock替换为residual-in-residual dense block.

b.对抗损失:

第一张图是sigmoid,第二张图是esrgan的relativistic discriminator,segma是sigmoid,标准的Gan是为了让真是图像的判别结果的概率更趋近于1,生成图像的判别结果概率更趋向于0,改进后的relativistic average discriminator,判别器对真实数据判别的原始值大于对生成数据判别的原始值,则第一个等式左侧,有C(REAL)-E(C(FAKE))>0,C是判别器结果,E是均值期望,且差值越大,表明两者距离越远,也就是该值经过sigmoid后的值越接近1,因此D的目的就是该值越接近1,real和fake直接的差距足够大,这就能将真实图片和生成图片很好的区分开。第二个等式,C(FAKE)-E(C(REAL))<0,差值越小,负值越多,表明两者距离越远,经过sigmoid后值越接近0。

生成器的目标函数如下:

判别器是为了更好的区分真实和生成,生成器是为了更难区分真实和生成。

c.Perceptual loss

提出了一种再vgg激活层钱获取感知损失(通过计算sr和hr的特征图之间的距离),而非传统srgan在激活层后计算感知损失,再激活层后计算感知损失有2个缺点,

1.激活层后的特征是已经稀疏化的,越深的网络越明显,稀疏的特征会导致更弱的监督,从而导致网络性能变差。

2. 使用激活层后的特征图计算感知损失会使得重建图像的亮度和gt不一致。

二、real-esrgan

real-esrgan和esrgan是同一个作者,esrgan提出的方法和思路被后续的很多论文借鉴。real-esrgan提出了四点对esrgan的改进,1.新的数据集构建方法,增强降阶图像的复杂度,2.构造数据集时引入sinc filter,解决了图像中的伪影,3.替换esrgan中的vgg-discriminator,使用unet-discriminator,4.引入spectral normalization以稳定复杂数据集和unet-discriminator带来的训练不稳定。

a.数据集构建

造成图像模糊的原因,包括,拍摄的手机,传感器噪声,相机模糊,图像编辑,图像在网络中的传输,JPEG压缩以及各种各样的噪声。

First-order:

first-order降级模型其实就是常规的降级模型,x表示降级后的图像,D表示降级函数,y代表原始图像,k代表模糊核,r代表缩小比例,n代表加入的噪声,JPEG代表进行压缩,每一种降级方法有多重方案可以选择

high-order由于使用相对简单的降级方法,很难模仿真实世界中的图像低分辨率情况,high-order是为了使用更复杂的降级方法 

上式就是对first-order进行多次重复操作,也就是每一个D都是执行一次完整的first-order降级,作者通过实验得出,当执行2次first-order时生成的数据集效果最好,因此上图就是high-order的流程图。

为了解决超分图像中的ring和overshoot现象,在构建降级模型时引入了sinc filter,

上图表示实际中的振铃和折冲伪影现象,下图表示通过sinc filter设置不同的因子人工模仿的振铃和折冲现象,sinc filter在两个位置进行设置,一是每一阶的模糊核k的处理中,也就是在高斯模糊之后,设置sinc filter,二是在最后一阶JEPG压缩时,设置sinc filter。

b.网络结构

生成器还是esrgan,对于x1和x2的超分时先进性pixel-unshuffle(pixel-shuffle的反操作,pixel-shuffle可理解为通过图像的通道而对图像尺寸进行放大),以降低图像分辨率为前提,对图像通道数进行扩充,然后对处理后的图像输入网络进行超分重建,对于一幅图像,若只想x2放大变清晰,需先通过pixel-unshuffle进行2被缩小,通过网络进行4倍放大。

c.unet-dscriminator

 将vgg换成了unet,并且加入了谱归一化。

d.训练

1.先通过l1 loss,训练以PSRN为导向的网络,获得模型成为real-esrnet,

2.以real-esrnet的网络进行网络初始化,损失函数设置为l1 loss,perceptual loss和gan loss,训练得到real-esrgan.

三、install

basicsr==1.4.2

python setup.py develop

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Real-ESRGAN是一个用于图像超分辨率的算法和网络。它的目标是通过训练使用纯合成数据的网络来实现真实世界的盲目超分辨率。论文标题为《Real-ESRGAN: Training Real-World Blind Super-Resolution with Pure Synthetic Data》。这个算法是基于ESRGAN(Enhanced Super-Resolution Generative Adversarial Networks)超分辨率网络的改进版本。实际上,Real-ESRGAN的NCNN实现也可以在GitHub上找到。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [AI数字人:让图片变清晰的图像超分辨率模型 Real-ESRGAN](https://blog.csdn.net/lsb2002/article/details/131724463)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Real-ESRGAN超分辨网络](https://blog.csdn.net/weixin_46515047/article/details/119829454)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [【论文阅读+测试】Real-Esrgan超分辨率算法](https://blog.csdn.net/qq_46258063/article/details/126266621)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值