GCFSR: a Generative and Controllable Face Super Resolution Method Without Facial and GAN Priors 人脸超分

在这里插入图片描述


前言

本文来自2022的CVPR。
这篇论文由字节跳动和中国科学院先进院技术研究院共同完成
图像超分辨率的目的是从相应的低分辨率(low-resolution,LR)输入构建高分辨率(high-resolution,HR)图像。

一、摘要

GCFSR: 不借助人脸先验,一种生成细节可控的人脸超分方法

人脸超分辨通常依靠面部先验来恢复真实细节并保留身份信息。在 GAN piror 的帮助下,最近的进展可以取得令人印象深刻的结果。他们要么设计复杂的模块来修改固定的 GAN prior,要么采用复杂的训练策略来对生成器进行微调。作者提出了一种生成细节可控的人脸超分框架,称为 GCFSR,它可以重建具有真实身份信息的图像,而无需任何额外的先验。
GCFSR 是一个编码器-生成器架构。为了完成多个放大倍率的人脸超分,设计了两个模块:样式调制和特征调制模块。风格调制旨在生成逼真的面部细节;特征调制会根据条件放大倍率对多尺度编码特征和生成特征进行动态融合。该架构简单而优雅,可以用端到端的方式从头开始训练。
对于较小倍率超分(<=8倍),GCFSR 可以在仅有的 GAN loss 的约束下产生令人惊讶的好结果。在添加 L1 loss 和 perceptual loss 后,GCFSR 可以在大倍率超分任务上(16, 32, 64)达到 sota 的结果。而在测试阶段,我们可以通过特征调制来调节生成细节的强度,通过不断改变条件放大倍率来实现各种生成效果。
code: https://github.com/hejingwenhejingwen/GCFSR

二、创新点

1.不使用GAN prior

本文首先比较GLEAN、GFPGAN、GPEN三种有名的人脸超分模型
在这里插入图片描述
GLEAN:GLEAN利用RRDBNet进行特征提取,然后将固定的GAN先验与一个额外的解码器结合起来,生成最终的输出。
GFPGAN:采用额外的UNet,用L1损失训练来去除退化,然后将Unet中的特征转化为缩放和移动操作的参数,这些参数将用于修改固定GAN先验。
GPEN:GPEN直接将编码器和GAN先验的特征连接起来。由于串联操作给GAN先验引入了新的参数,GPEN给GAN先验一个小的学习率以进一步微调。
因为先验,前两者在刚开始训练时就可以达到很好的性能(有点像迁移学习),后者收敛缓慢,性能较差。
绝大多数模型都使用了先验,先验被证明效果非常好,但是是否不用先验也可以效果非常好呢?

2.风格调制+特征调制

在这里插入图片描述
GCFSR的结构。它包含一个编码器(红色)和一个生成器(绿色和蓝色)。编码器网络使用几个分层卷积层来提取多层次的特征和潜伏代码w。
生成器通过一连串的风格调制卷积,即这里的风格调制(绿色),将最上面的编码特征图和潜伏代码w生成现实的面部细节。
而特征调制(蓝色)模块则控制编码和生成的特征在条件上升因子s下的表现程度。我们以端到端方式训练整个网络。(有颜色的块是从头开始训练的,而其他块是固定的或不包含可训练的参数)。

3.上升因子s

在这里插入图片描述
s是如何控制超分的表现程度的
上升因子s首先被MLP转换为一组缩放向量,σ={σ(l) 1,2, σ(l+1) 1,2 , … }.
在这里插入图片描述
输出图像是通过tRGB层从融合后的特征h(i)逐步计算出来的。对所有中间的RGB输出进行升采样和求和,得出最终的输出,即y = ˆy(u)。
在这里插入图片描述

三、训练细节

在这里插入图片描述
在4×和8×的SR任务中,只用对抗性损失训练的GCFSR就打败了其他模型
在这里插入图片描述
为了进一步提高SR的性能,使用常规的组合。L1、感知损失(SRGAN中提出,将生成器生成的图片和真实的HR图像输入VGG19中比较提取后的特征)、和对抗性损失。

实验

在FFHQ数据集上训练GCFSR,对于测试数据集,我们按照GLEAN从CelebA-HQ数据集中提取100张图像
为了评估,采用了广泛使用的非参考感知指标。FID和NIQE。我们还采用了像素级指标(PSNR和SSIM)和知觉指标(LPIPS)
训练的小批量大小被设定为24。用水平翻转来增强训练数据。用Adam优化器训练我们的模型,总共进行了300k次迭代。生成器和鉴别器的学习率都被设置为2×10-3。用PyTorch框架实现我们的模型
在这里插入图片描述
在这里插入图片描述

在CelebA-HQ上与最先进的方法进行16×、32×、64×SR的定量比较。GLEAN使用了三个模型,而其他的则使用一个模型来完成三个SR任务。红色和蓝色表示最佳和次佳性能。
在这里插入图片描述
对s的实验

总结

提出了一个叫做GCFSR的人脸识别框架,没有任何额外的先验,但可以处理非常大的因素的人脸识别(高达64×)。
GCFSR有一个编码生成器的架构,并且是端到端的可训练的快速收敛。
特别是,所提出的风格调制模块有助于生成真实的人脸细节,而特征调制模块则在条件放大系数的控制下动态地融合多级编码的特征和生成的特征。
通过这种方式,我们的GCFSR可以重建具有良好身份信息的忠实图像,并为用户调整提供灵活性。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 人脸识别数据集通常是用于训练和测试人脸识别算法的数据集。Python是一种常用的编程语言,因其易学易用和强大的数据处理能力,广泛应用于数据科学和人工智能领域,也被用于处理人脸识别数据集。 在Python中,有一些常用的人脸识别数据集可以使用,如LFW数据集、CelebA数据集和FERET数据集等。这些数据集包含了很多人脸图像以及相应的标签信息,可以用于训练模型和评估算法性能。 使用Python进行人脸识别数据集的处理可以借助一些开源的库和工具。例如,OpenCV是一个常用的图像处理库,可以用于读取、预处理和显示人脸图像。另外,对于深度学习模型的训练,可以使用TensorFlow或PyTorch等框架,这些框架提供了丰富的函数和接口,方便处理图像数据集。 在处理人脸识别数据集时,常见的任务包括数据预处理、特征提取和模型训练。数据预处理阶段可以包括图像裁剪、大小调整和亮度均衡等操作,以便提高模型性能。特征提取是将图像转换为适合机器学习算法处理的向量表示,可以采用传统的特征提取方法或者使用深度学习模型对图像进行特征编码。模型训练阶段可以使用监督学习算法,如支持向量机、K近邻或者深度神经网络等。 通过Python中的人脸识别数据集处理技术,可以实现人脸识别算法的训练和调优,进而应用于人脸识别、身份验证、安全监控等领域。 ### 回答2: Python人脸识别数据集是一组用于训练和评估人脸识别算法的数据集。这些数据集包含了一系列人脸图像和对应的标签或注释信息。人脸识别数据集是计算机视觉领域的一个重要资源,用于帮助开发人员训练出准确高效的人脸识别模型。 Python人脸识别数据集包含大量的人脸图像,这些图像来自于不同的来源和环境,涵盖了不同的年龄、性别、肤色、表情等因素。数据集中的每个图像都会有对应的标签或注释信息,用于告知计算机哪些图像中的人脸属于同一个人。 使用人脸识别数据集,可以通过使用特定的算法和技术来训练一个模型,使其能够在未来的图像中准确地检测和识别人脸。通过不断改进和优化模型,可以提高人脸识别的准确性和鲁棒性。 Python人脸识别数据集的应用非常广泛。它可以用于安全系统,如人脸识别门禁系统,通过对比图像中的人脸与已知的数据库中的人脸进行匹配来实现安全认证。此外,它还可以用于视频监控和调查犯罪活动。人脸识别数据集还能够用于基于人脸的情绪分析、年龄和性别识别等应用。 总之,Python人脸识别数据集是一个重要的资源,提供了训练和评估人脸识别算法的样本图像和相关标签。通过使用这些数据集,开发者们可以训练出准确和高效的人脸识别模型,实现各种实际应用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值