当前位置: 首页 > article >正文

[SIGGRAPH-24] CharacterGen

[pdf | code | proj]

  • LRM能否用于3D数字人重建?问题在于:1)缺少3D数字人数据;2)重建任意姿态的3D数字人不利于后续绑定和驱动。
  • 构建3D数字人数据集:在VRoidHub上采集数据,得到13746个风格化角色,分别渲染固定视角和固定标准姿态下的图片和随机角度和姿态下的图片,用以训练以图片为条件的多角度扩散模型。
  • 映射到标准姿态:输入一张任意姿态的人像图片,首先生成标准姿态下的四角度图片,其次重建3D角色(微调LRM,Large Reconstruction Model),最后通过Auto-Rigging等操作实现3D角色的驱动。

方法

Anime3D Dataset

  • 从VRoidHub上收集了14500动漫角色,去除非人数据,剩下13746个角色模型。
  • 使用threevrm渲染角色。包含:标准姿态(A-pose)和随机姿态。其中,随机姿态包含从Mixamo中获取的10个人体骨架,例如:坐、唱、走等,同时会随机更改嘴巴、眼睛以产生新表情。
  • 训练阶段,使用4个标准姿态图片{0, 90, 180, 270}和1个随机姿态图片{-90, 90}作为训练对。

Multi-view Image Generation and Pose Canonicalization

  • 目标是输入任意姿态下的正面图片,输出标准姿态下的四个正交角度图片。
  • 本文认为IP-Adaptor使用CLIP图片特征,无法细粒度描述人物纹理细节。因此,本文提出IDUNet,将参考图片patch-level的纹理特征嵌入到去噪过程中。
  • 具体来说,Multi-view UNet与MVDream类似,在Multiview SelfAttn中,四个视角特征交互。在CrossAttn中,ID和CLIP-encoded image features合并作为K和V,四个视角作为Q:
  • 同时,本文使用OpenPose,通过Pose Encoder得到的编码直接加到latent noise上。
  • 3D Character Generation

  • 微调LRM。LRM使用NeRF,从NeRF中提取的几何表面噪声多。类似Magic3D,本文使用两阶段微调策略:1)训练triplane-NeRF,生成角色的粗几何和外观。2)更改重建网络的解码器为预测singed distance functions (SDFs)。
  • 除了MSE loss,本文还使用mask loss(BCE损失监督Alpha通道,产生干净背景)和LPIPS loss:
  • Extract Mesh & UV unwrap:使用DMTet从tri-plane中提取mesh和粗UV map。在提取mesh上使用Laplacian Smooth,减少表面噪声。
    • DMTet:使用四面体表征3D。四面体上顶点具有可学习特征,预测偏移量和是否在物体内部。如果四面体所有顶点都不在物体内部则会被去除,如果存在部分顶点在物体内部,则根据规则分裂四面体,以逐步精细化。在构建好DMTet后,则可根据顶点是否在物体内部提取Mesh表面。
    • UV map:对于Mesh,每个顶点都会保存UV map坐标,用于获取颜色。UV unwrap用于将3D模型颜色投影到uv map上。
    • Normal map:对于Mesh,每个顶点会保存三维的法向量值,表征光线的反射,用于在平面上模拟细节纹理。
  • Texture Aggregation:直接提取的UV map效果不佳,本文进一步使用生成的四角度图片改善纹理。本文使用NvDiffRast作为渲染器。将四张图片反投影回纹理空间,使用泊松混合将反投影纹理图和粗纹理图混合得到最终的纹理图。在反投影过程中,使用normal map和相机视角做内积,去除内积大于-0.2的点,即将不合理的反投影点去除掉。

实验

  • 训练时间:多视角扩散模型在8卡A800上训练5天;LRM在8卡A800上微调1天。
  • 数据集划分:训练集测试集50:1。

2D Multi-view Generation

3D Character Generation

Comparision with IP-Adapter

Generation Speed

User Study

Ablation Study

IDUNet是否需要训练?需要

是否需要Pose Embedding Network?需要

是否需要A-pose?需要

应用

  • 使用AccuRig绑定,使用Warudo渲染


http://www.kler.cn/news/309675.html

相关文章:

  • 使用c#制作一个小型桌面程序
  • 彩漩科技亮相第一届人工智能教育应用论坛,入选TOP30榜单,展示创新教育科技产品
  • Snowflake 如何通过 Apache Iceberg 和 Polaris 为大数据的未来提供动力
  • 【JavaEE初阶】多线程6(线程池\定时器)
  • C# 开发教程-入门基础
  • linux 双网卡服务器突然断电后网卡单通故障解决
  • C#通过注册表实现记住上次打开路径
  • 超级简约的B端页面,B端系统就该如此简化设计。
  • JS基础:数组for循环年龄案例
  • sql中的APPLY 和 LATERAL
  • Git 命令详解与项目迁移指南
  • 代码随想录算法训练营第13天|二叉树基础知识、递归遍历、迭代遍历、层序遍历、116. 填充每个节点的下一个右侧节点指针
  • 【计算机网络】TCP的可靠传输机制、标记位以及编程结构
  • vue3透传、注入
  • sqlite在Windows环境下安装、使用、node.js连接
  • URLEncode
  • 力扣之181.超过经理收入的员工
  • 基于C#+SQLServer 2005实现(CS界面)校园卡消费信息系统
  • Redis 篇- 实战项目中使用 Redis 实现经典功能(异步秒杀商品、点赞功能、共同关注的好友、投喂功能)
  • 笔试强训day15
  • Oracle SQL injection(SQL注入)
  • XML映射器-动态sql
  • 51单片机-直流电机(PWM:脉冲宽度调制)实验-会呼吸的灯直流电机调速
  • 通过WinCC在ARMxy边缘计算网关上实现智能制造
  • “杏鲍菇驱动机器人创新前行:康奈尔大学最新研究亮相Science子刊“
  • uniapp 苹果安全域适配
  • 2024.9.14
  • python怎么写csv文件
  • 特效【生日视频制作】小车汽车黄金色版悍马车身AE模板修改文字软件生成器教程特效素材【AE模板】
  • Python | Leetcode Python题解之第406题根据身高重建队列