[NeurIPS-23] GOHA: Generalizable One-shot 3D Neural Head Avatar

[pdf](https://arxiv.org/pdf/2306.08768 "pdf") \| [proj](https://research.nvidia.com/labs/lpr/one-shot-avatar/ "proj") \| [code](https://github.com/NVlabs/GOHA "code")

  • 本文提出一种基于单图的可驱动虚拟人像重建框架。
  • 基于3DMM给粗重建、驱动结果,基于神经辐射场给细粒度平滑结果。

方法

  • 给定源图片I_s和目标图片I_t,希望生成图片I_o具有源图片ID和目标图片表情位姿。本文提出三个分支:
    • 规范分支(canonical branch):生成具有标准表情和位姿的粗3D人像;
    • 外观分支(appearance branch):捕捉源图像中的外观细节;
    • 表情分支(expression branch):建模并迁移目标图像的表情;
  • 整体框架如下:
  • 从消融实验上看,规范tri-plane T_c保留了源图片ID,表情tri-plane T_e保留了目标图像表情,外观tri-plane T_p保留了外观细节。

基于规范分支的粗建模

  • 编码器E_c(Fine-tune SegFormer)将源图片I_s映射为tri-plane T_c。
  • 通过3DMM对源图像建粗模,渲染具有标准表情和姿态的图像I_neu和掩码M_neu;
  • 训练目标是3DMM粗模渲染图像I_neu和T_c渲染图像I_c的L1和LPIPS损失,具体如下:

基于外观分支的细节建模

  • 通过T_c拿到渲染图像对应的深度图;
  • 通过编码器E_p得到源图像的2D特征,每个像素具有32维特征;
  • 升维(Lifting):通过深度图将2D特征反投影至3D;
  • 光栅化(Rasterization):将3D点云转换为tri-plane T_p。对T_p任意平面上的一点,计算其最近的点云,并将该点云特征赋值给平面上一点。

基于表情分支的表情建模

  • 基于源图像的3DMM粗模 + 目标图像的表情,渲染得到正面视角图像I_exp。
  • 通过编码器E_e,得到表情tri-plane T_e

训练

  • 两阶段训练,第一阶段不包括超分模块,使用重建损失训练:
  • 第二阶段冻结其他部分,fine-tune超分模块,使用第一阶段损失和对抗损失。

实验

相关推荐
shayudiandian3 分钟前
用PyTorch训练一个猫狗分类器
人工智能·pytorch·深度学习
这儿有一堆花8 分钟前
把 AI 装进终端:Gemini CLI 上手体验与核心功能解析
人工智能·ai·ai编程
子午20 分钟前
【蘑菇识别系统】Python+TensorFlow+Vue3+Django+人工智能+深度学习+卷积网络+resnet50算法
人工智能·python·深度学习
模型启动机30 分钟前
Langchain正式宣布,Deep Agents全面支持Skills,通用AI代理的新范式?
人工智能·ai·langchain·大模型·agentic ai
Python私教35 分钟前
别让 API Key 裸奔:基于 TRAE SOLO 的大模型安全配置最佳实践
人工智能
Python私教37 分钟前
Vibe Coding 体验报告:我让 TRAE SOLO 替我重构了 2000 行屎山代码,结果...
人工智能
prog_610339 分钟前
【笔记】和各大AI语言模型写项目——手搓SDN后得到的经验
人工智能·笔记·语言模型
zhangfeng11331 小时前
深入剖析Kimi K2 Thinking与其他大规模语言模型(Large Language Models, LLMs)之间的差异
人工智能·语言模型·自然语言处理
paopao_wu1 小时前
人脸检测与识别-InsightFace:特征向量提取与识别
人工智能·目标检测
Aevget1 小时前
MyEclipse全新发布v2025.2——AI + Java 24 +更快的调试
java·ide·人工智能·eclipse·myeclipse