目录

  • 1. 简介
    • 1.1 motivation
    • 1.2 本文关键点
    • 1.3 本文参考使用的相关技术
  • 2. 本文方法
    • 2.1 流程
    • 2.2 损失函数

1. 简介

文章全称《Towards High-Fidelity 3D Face Reconstruction from In-the-Wild Images Using Graph Convolutional Networks》出自CVPR2020,将图卷积网络应用在了三维人脸重建的纹理优化上。

1.1 motivation

  • 一般的3DMM方法生成的面部纹理(也就是让面部纹理由3DMM系数控制)缺乏保真度、精确性(fidelity)
  • 而如果是想生成高保真的人脸纹理图,那得需要高分辨率的人脸纹理图数据,而这样的数据却是难以准备的,比如2019年的GANFit方法,第一次使用了GAN网络(具体是PGGAN)去生成高保真的人脸纹理图,训练好GAN之后,通过可微渲染去优化latent code,让GAN网络生成我们需要的三维重建的人脸纹理图,虽然是个开创性的方法,缺点便是训练GAN网络需要大量的人脸纹理图,而这些图像获取是很困难的。

1.2 本文关键点

  1. 提出了一个由粗到细的框架,重建高保真的面部纹理图,解决了之前方法的需要大量纹理图数据的问题,也就是说不用获取大量的UV纹理图就能重建高质量的纹理
  2. 第一次将图卷积网络(GCN)应用在高保真面部纹理重建上,取得较好的效果

1.3 本文参考使用的相关技术

  • 可微分渲染: 《Unsupervised training for 3d morphable model regression》CVPR2018,也就是开源的tf-mesh-renderer:http://github.com/google/tf_mesh_renderer
  • 3DMM系数预测:《Accurate 3d face reconstruction with weakly-supervised learning: From single image to image set》CVPR2019 Workshop,可以同时预测表情与形状系数,代码已开源:https://github.com/Microsoft/Deep3DFaceReconstruction
  • 图卷积网络:《Generating 3d faces using convolutional mesh autoencoders》ECCV2018,用图卷积进行三维人脸重建,代码已开源:http://coma.is.tue.mpg.de/.
  • 人脸面部遮挡剔除:《Face-to-parameter translation for game character auto-creation》ICCV2019
  • 对抗训练方式:《Improved training of wasserstein gans》NIPS2017,代码已开源:https://github.com/igul222/improved_wga
  • 面部特征提取与人脸身份鉴别:FaceNet CVPR2015,已开源

2. 本文方法

2.1 流程


核心方法看流程图即可大致理解:

  1. 先用开源的3DMM方法重建好三维人脸形状和纹理,后面再着重将纹理给优化好
  2. 用FaceNet提取出原图片的人脸特征,提取出的特征将来有两个作用:衡量身份损失;把特征加在图卷积网络,用于优化纹理
  3. 如绿色框所示,将3DMM建模的纹理与FaceNet提取出的人脸特征借助图卷积网络进行结合,得到精细的纹理,这里注意:本文没有使用纹理图的方式进行人脸纹理的优化,而是在每个顶点对应颜色层级上进行优化!
  4. 整个流程下来,比较原图与渲染图的差异进行优化,具体优化的部分就是那个图卷积网络

2.2 损失函数

设计了四个损失函数

  1. Pixel-wise Loss

    渲染图像与输入图像的像素差异自然而然应当成为损失函数,但是人脸的有些部分是被遮挡的!所以比较的应该是那些未被遮挡部分。
  2. Identity-Preserving Loss

    从更高层次来看,渲染图像与输入图像的人应该是同一个身份的,这时就轮到FaceNet发挥作用了,图中的式子类似于比较两个向量的夹角,夹角越小的话向量越接近,自然就意味着身份越相同了
  3. Vertex-wise Loss

    第一个损失比较的是未被遮挡的地方,没有指导GCN该如何生成遮挡地方的纹理,这里就让它尽量去生成和原先一样的纹理(也就是3DMM重建后在本该被遮挡地方的纹理)
  4. Adversarial Loss

    应该是类似与GAN的鉴别器,判断渲染图像与生成图像是否相同,本文这里是参考了WasserGAN

Towards High-Fidelity 3D Face Reconstruction from In-the-Wild Images Using GCN相关推荐

  1. CVPR_2021_Fast-GANFIT: Generative Adversarial Networkfor High Fidelity 3D Face Reconstruction

    摘要 在本文中,我们采用了一种完全不同的方法,利用生成对抗网络(GANs)和DCNNs的能力,从单幅图像中重建面部纹理和形状. 即利用GANS从一个大规模的三维纹理数据集中训练出一个非常强大的人脸纹理 ...

  2. Towards High-Fidelity 3D Face Reconstruction from In-the-Wild Images

    论文链接:https://arxiv.org/pdf/2003.05653.pdf Abstract 首先肯定了3DMM 从单视图图片重建人脸的巨大成功,然后点出了存在的不足--面部纹理失真,然后介绍 ...

  3. [论文阅读][深度学习-三维重建]Single-Shot 3D Shape Reconstruction Using Structured Light and CNN

    Single-Shot 3D Shape Reconstruction Using Structured Light and Deep Convolutional Neural Networks 文章 ...

  4. 人脸对齐(十八)--Joint Face Alignment and 3D Face Reconstruction

    Joint Face Alignment and 3D Face Reconstruction(2016) 本文主要提出了一种新的方法来解决任意姿态和表情的2D人脸图片的特征点定位和3D人脸重构.该方 ...

  5. [读论文]弱监督学习的精确 3D 人脸重建:从单个图像到图像集-Accurate 3D Face Reconstruction with Weakly-Supervised Learning:From

    论文地址:Accurate 3D Face Reconstruction with Weakly-Supervised Learning:From Single Image to Image Set ...

  6. 论文阅读(3):Image-Based 3D Object Reconstruction:State-of-the-Art and Trends in the Deep Learning Era

    论文标题:Image-Based 3D Object Reconstruction:State-of-the-Art and Trends in the Deep Learning Era 论文类型: ...

  7. 【论文阅读】A Point Set Generation Network for 3D Object Reconstruction from a Single Image

    论文题目: A Point Set Generation Network for 3D Object Reconstruction from a Single Image (由单张图像进行三维物体重建 ...

  8. 论文阅读--Sensorless Freehand 3D Ultrasound Reconstruction via Deep Contextual Learning

    Sensorless Freehand 3D Ultrasound Reconstruction via Deep Contextual Learning 基于深度上下文学习的无传感器徒手三维超声重建 ...

  9. Large Pose 3D Face Reconstruction 文章理解

    Large Pose 3D Face Reconstruction from a Single Image via Direct Volumetric 文章的一点点理解梳理 写在前面 因为我比较弱,在 ...

最新文章

  1. php对称算法_php里简单的对称加密算法
  2. python 二维数组长度_谈一谈多维数组
  3. .net ef 字段不区分大小写_第六节:框架搭建之EF的Fluent Api模式的使用流程
  4. 浏览器同源与跨域问题总结
  5. python小程序100题-Python 练习册,每天一个小程序 -- 0000题
  6. Go slice切片的“陷阱”和本质
  7. 2017iOS开发最新的打包测试步骤(亲测)
  8. IDEA 代码格式化插件Save Actions
  9. 博弈论分析题_博弈论习题及参考答案
  10. 新店铺怎么做?淘宝店铺如何引流做好基础销量?
  11. 优秀后端架构师必会知识:史上最全MySQL大表优化方案总结...
  12. 【更新中】SmartGit 注册码 算法注册机
  13. 博弈论:子博弈精炼均衡(子博弈都是纳什均衡,比纳什均衡更强的概念)
  14. 阶段1 - 03. 常用API第一部分 - 04. ArrayList集合
  15. arcgis如何将16bit栅格数据转换为8bit栅格数据
  16. ui设计现状与意义_对于ui设计行业来说,用户界面设计的发展现状是什么?
  17. php代码审计靶场,RIPS --代码审计靶场(第一关)-华盟网
  18. 农银e管家怎么显示服务器不对,农银e管家APP
  19. LaSO: Label-Set Operations networks for multi-label few-shot learning 论文笔记
  20. sendto recvfrom 详解

热门文章

  1. RadioButton控件的使用方式
  2. 操作系统:生产者消费者问题
  3. 求数组长度的几个函数
  4. 爬虫笔记——多线程爬取斗图网表情包(threading)
  5. Android Studio中Android Device Monitor的file explorer不显示问题
  6. 交换机通过console线连接pc
  7. php think migrate,thinkphp5 migrate数据库迁移使用详解
  8. thinkpad e40 4sc安装windows7的一点感受
  9. 积分签到mysql_积分获取和消费的存储过程
  10. Nokia 5220体会