AAAI 2024 | TEx-Face,5秒内按需生成照片级3D人脸

news2024/12/22 19:18:44

本文介绍一篇来自浙江大学ReLER实验室的工作,"Controllable 3D Face Generation with Conditional Style Code Diffusion",目前该文已被AAAI 2024录用。

image.png

image.png

论文题目: Controllable 3D Face Generation with Conditional Style Code Diffusion

论文链接:https://arxiv.org/abs/2312.13941 

代码链接: https://github.com/sxl142/TEx-Face 

项目主页:TEx-Face

01. 研究动机

本文的核心出发点是,探索一种只需要单次优化多条件控制3D人脸生成模型。

目前的一些经典的Text-to-3D的工作,他们往往针对一个特定的物体(由文本描述的)优化一个随机初始化的3D表征,例如Nerf,从而导致耗费较长的优化时间以及只限于单个物体,无法泛化。此外,目前的这类方法还是没有办法做到真实照片级的效果。对于人脸领域,由于处于一个相似的分布,所以完全可以使用一种只需要训练一次的模型而非依赖单个人脸优化的模式来寻求推理时间的减少以及具有一定的泛化性

另外,虽然目前的无条件3D人脸生成模型已经能够达到照片级的效果了,但是带条件的控制模型还有待探索。考虑到人脸主要由静态的外貌以及动态的表情构成,所以我们以这样的角度切入来设计一种能够受这两种条件控制的3D人脸生成模型。这里我们使用了文本来描述人脸的外貌属性,用3D人脸参数模型FLAME的expression codes来表征动态的表情。

02. 技术构成

基于此,我们将这样的模型解耦成三个部分, 如下图所示,

image.png

2.1 3D GAN Inversion.

GAN Inversion是一种存在已久的技术。在2D领域,依托于StyleGAN,广泛地被用于图像重构和图像编辑中。它是指在训练完成的GAN中,寻找接近于输入图像所对应的style codes的一种技术,即能够用寻找到的style codes还原真实图像,也就是我们能利用这样一组style codes来表征图像。

目前主要分为两种体系:

  1. 基于单个优化的方法,

  2. 基于整体一次优化的方法。

单个优化的方法视觉效果更好,但是需要更长的优化时间,且无法泛化。整体一次优化的方法只消耗很少的推理时间,具有一定的泛化性,适合大量获取style codes。

在3D领域,大多数的Inversion方法是基于单个优化的。由于需要大量地获取style codes为这套框架的下一步的扩散模型提供数据,所以我们需要设计一种整体一次优化的方法。然而,简单地扩展2D的整体优化的方法到3D领域,如Style transformer,会出现槽糕的新视角的合成,尤其是当输入图片的视角不是正面的时候。如下图所示,

image.png

这促使我们去设计一种算法能够避免这样的情况出现。设计主要思想来源于我们希望同一个人的不同视角下的图片经过编码得到的style codes应该具有一致性,是尽量相同的。基于此,我们选取了正面视角下的style codes作为基准,设计了一个由相机参数引导的Inversion模型,能够将不同的视角下的图片特征经过相机参数引导后变换到与正面图像相似的特征进而得到尽量一致的style codes。然而由于缺少大量的多视角的数据集,我们通过训练好的3D人脸生成网络来制造这样的数据用于训练,如下图所示。

image.png

此外,在这样合成的数据集上学习与真实数据集有所差异,所以我们需要进一步在真实数据上finetune模型。这里我们固定住了相机引导模块所学的参数以保留它继续拥有特征映射的能力,只学习调整backbone的参数。最后,我们还设计了提纯模块,将第一阶段的输出与真实图像的差值作为输入,以提高最终的style codes的表征能力。如下图所示。

image.png

2.2 Style Code Diffusion.

目前,扩散模型在各个领域都被证明了其强大的生成能力。鉴于此,我们希望能够利用这样的模型将我们所需的条件即静态的外貌和动态的表情有效地注入上一步所得的style codes中,以此得到一个可控的多条件的生成模型。为此我们设计了style code denoiser,来解耦地注入对应的条件,如下图所示。

image.png

2.3 3D Face Decoding.

这一步,我们需要将注入了条件的style codes解码成3D人脸。这需要用到预训练的无条件的3D人脸模型,由于这套框架的生成能力很大程度上依赖于此,所以选用一种更为强大的模型尤为重要,这里我们选择了EG3D,它拥有和StyleGAN相似的架构,有解耦地更好的表征空间。

03. 实验结果

3.1 在GAN Inversion上的定量结果

如下图所示,我们的方法都取得了更好的性能。Table2的Others,衡量的是新视角生成的效果,结果显示我们的设计能显著地提升性能与简单地扩展2D方法到3D相比。

image.png

image.png

3.2 在有条件生成上的定量结果

如下图所示,我们的模型在FID,和衡量图文匹配的CLIP score上都取得了最优的性能。此外,生成对应表情的分数是由一个表情识别的模型进行打分的,如Table 4所示,结果显示我们能实现一定程度上的表情控制。

image.png

image.png

3.3 可视化结果

由下图所示,我们的效果更接近照片级,并能有效地受到文本的控制。

image.png

04. 结语

我们提出了一种合理可行的框架TEx-Face, 能够多条件地控制生成3D人脸并只需要几秒的时间。从可视化上,能够生成与文本和给定表情相一致的3D人脸。但这里还有许多存在的问题,如如何设计更好的模型获取style codes。更多的细节与结果请阅读我们的论文,感谢阅读。

论文链接: https://arxiv.org/abs/2312.13941


关于TechBeat人工智能社区

TechBeat(www.techbeat.net)隶属于将门创投,是一个荟聚全球华人AI精英的成长社区。

我们希望为AI人才打造更专业的服务和体验,加速并陪伴其学习成长。

期待这里可以成为你学习AI前沿知识的高地,分享自己最新工作的沃土,在AI进阶之路上的升级打怪的根据地!

更多详细介绍>>TechBeat,一个荟聚全球华人AI精英的学习成长社区 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1394453.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(C语言)冒泡排序

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h>//实现buble_sort函数&#xff1b; void buble_sort(int arr[], int sz) {//初始化变量值&#xff1b;int i 0;//嵌套循环冒泡排序&#xff1b;//外层循环&…

adb、monkey的下载和安装

adb下载 官网网址&#xff1a;Downloads - ADB Shell 尽量不要下载最新的ADB Kits&#xff0c;因为兼容性可能不太好。 点击下载 ADB Kits 作者下载的版本是1.0.36 解压adb 到指定的目录即可。 然后把adb配置 环境变量。 检查adb是否安装成功

android 自定义八边形进度条

自定义八边形动画效果图如下 绘制步骤&#xff1a; 1.先绘制橙色底部八边形实心 2.黑色画笔绘制第二层&#xff0c;让最外层显示一条线条宽度即可 3.再用黄色画笔绘制黄色部分 4.使用渐变画笔根据当前进度绘制覆盖黄色部分 5.使用黑色画笔根据当前进度绘制刻度条 6.黑色画笔绘制…

C语言经典练习3——[NOIP2008]ISBN号码与圣诞树

前言 在学习C语言的过程中刷题是很重要的&#xff0c;俗话说眼看千遍不如手动一遍因为在真正动手去刷题的时候会暴露出更多你没有意识到的问题接下来我就为各位奉上两道我认为比较有代表性的题 1. [NOIP2008]ISBN号码 1.1 题目描述 每一本正式出版的图书都有一个ISBN号码与之对…

BKP备份寄存器读取

1.简介&#xff1a; BKP&#xff08;Backup&#xff09;备份寄存器是一种特殊的功能寄存器&#xff0c;用于存储某些设备的备份数据。这些数据通常是非常重要的&#xff0c;因此需要定期备份以防止意外丢失。 具体来说&#xff0c;BKP寄存器可以用于以下几种情况&#xff1a;…

100天精通鸿蒙从入门到跳槽——第6天:TypeScript 知识储备:类

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通Golang》…

保留图片原画质图片无损放大

在数字时代&#xff0c;图片的放大和缩放是常见的操作。然而&#xff0c;传统的图片放大方法往往会导致图片质量的损失&#xff0c;使得图片的细节和清晰度降低。为了解决这个问题&#xff0c;水印云推出了一项新的功能——无损放大&#xff0c;让你可以在不损失图片质量的情况…

精选100 GPTs深度解析专题

精选100 GPTs深度解析专题 背景 1月10日&#xff0c;GPT应用商店&#xff08;GPT Store&#xff09;的正式上线&#xff0c;GPT技术的应用已经呈现爆炸性增长。目前&#xff0c;市场上已经出现了超过300万种GPTs&#xff0c;应用领域涵盖图像生成、写作、效率提升、研究分析、编…

部署Sqli-labs靶场:一篇文章解析全过程

部署Sqli-labs靶场&#xff1a;一篇文章解析全过程 0x01 前言 Sqli-labs是一个在线的SQL注入练习平台&#xff0c;提供了一系列关卡供用户练习SQL注入的技巧和防范方法。在这个平台上&#xff0c;用户可以尝试注入攻击&#xff0c;并测试自己的技能和工具&#xff0c;同时也可…

python数字图像处理基础(六)——模板匹配、直方图

目录 模板匹配概念单对象模板匹配多对象模板匹配 直方图1.查找直方图2.绘制直方图3.掩膜的应用 模板匹配 概念 模板匹配和卷积原理很像&#xff0c;模板在原图像上从原点开始滑动&#xff0c;计算模板与图像被模板覆盖的地方的差别程度&#xff0c;这个差别程度的计算方法在o…

CS8370错误,这是由于使用了C# 7.3中不支持的功能

目录 背景: 第一种方法: 第二种办法: 背景: 在敲代码的时候&#xff0c;程序提示报错消息提示:CS8370错误&#xff0c;那么这是什么原因导致的&#xff0c;这是由于使用了C# 7.3中不支持的功能&#xff0c;不支持该功能&#xff0c;那就是版本太低我们就需要升级更高的版本&…

DAY03_Spring—自动装配注解模式优化XML文件

目录 1 Spring注解模式1.1 自动装配1.1.1 说明1.1.2 配置规则 1.2 注解模式1.2.1 关于注解的说明1.2.2 注解使用原理1.2.3 编辑配置文件1.2.4 属性注解 1.3 实现MVC结构的纯注解开发1.3.1 编写java代码1.3.2 编辑xml配置文件1.3.3 编写测试类1.3.4 关于注解说明1.3.5 关于Sprin…

python对自动驾驶进行模拟

使用了 Pygame 库来创建一个简单的游戏环境,模拟了一辆自动驾驶汽车在道路上行驶。汽车的位置和速度通过键盘控制&#xff0c;可以左右移动和加速减速。道路的宽度和颜色可以根据需要进行调整。 import pygame import random # 游戏窗口大小 WINDOW_WIDTH 800 WINDOW_HEIG…

3dmax中怎么在模型上开洞?

3dmaxS是Autodesk公司开发的基于PC系统的三维动画渲染和制作软件。我们可以使用它来做各种模型。那么怎么在模型上开洞呢&#xff1f;我们一起来看看吧&#xff01; 1、首先我们打开我们的3damx&#xff0c;这里面我使用的版本为3damxs2012,虽然版本可能各不相同。但是功能并没…

原生SSM整合(Spring+SpringMVC+MyBatis)案例

SSM框架是Spring、Spring MVC和MyBatis三个开源框架的整合&#xff0c;常用于构建数据源较简单的web项目。该框架是Java EE企业级开发的主流技术&#xff0c;也是每一个java开发者必备的技能。下面通过查询书籍列表的案例演示SSM整合的过程. 新建项目 创建文件目录 完整文件结…

拼多多无货源中转仓项目真的靠谱吗?发展前景如何?

阿阳最近一直在关注无货源电商这一块&#xff0c;尤其是拼多多无货源中转仓&#xff0c; 现如今也有了自己的运营团队和交付团队&#xff0c;整体来看这个项目还算不错&#xff01; 说实话&#xff0c;在考察这个项目的时候&#xff0c;看到市面上很多人在做&#xff0c;包括我…

JavaScript 类型判断及类型转换规则

文章目录 JavaScript 类型及其判断使用 typeof 判断类型使用 instanceof 判断类型使用 constructor 和 Object.prototype.toString 判断类型JavaScript 类型及其转换JavaScript 函数参数传递cannot read property of undefined 问题解决方案分析一道网红题目JavaScript 类型判断…

【GAMES101】Lecture 08 着色-Blinn-Phong反射模型

目录 Blinn-Phong反射模型-高光 Blinn-Phong反射模型-环境光照 Blinn-Phong反射模型 Blinn-Phong反射模型-高光 我们在lecture7的时候讲了这个Blinn-Phong反射模型的漫反射部分&#xff0c;现在我们继续讲Blinn-Phong反射模型的高光部分 这个高光是怎么产生的呢&#xff0…

} expected.Vetur(1005)

typescript TS 错误码大全&#xff01;收藏了 - 环信 } expected.Vetur(1005) 没有补齐} 虽然他给的是最后代码出错了&#xff0c;但可以看看之前的代码有没有红色的{&#xff0c;补齐即可以

Air780E开发板开发环境搭建

开发板原理图 开发软件 下载网站 https://luatos.com/luatools/download/last 使用教程 烧录教程 - LuatOS 文档 开发流程 首先下载最新版本的Luatools 然后新建一个Luatools文件夹&#xff0c;将下载的exe文件放入其中后&#xff0c;再打开exe文件&#xff08;会生成目…