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

[ICCV-23] DeformToon3D: Deformable Neural Radiance Fields for 3D Toonification

pdf | code

  • 将3D人脸风格化问题拆分为几何风格化与纹理风格化。
  • 提出StyleField,学习以风格/ID为控制信号的几何形变残差,实现几何风格化。通过对超分网络引入AdaIN,实现纹理风格化。
  • 由于没有修改3D GAN空间,因此可以便捷实现Editing和Animation。

目录

摘要

方法

Geometry Toonification with StyleField

Texture Transfer with Adaptive Style Mixing

Training

实验

实验设置

Comparisons with Baselines

Applications

Inversion and Editing

Animatable Toonification

Toonification Style Control


摘要

  • 3D人脸风格化;
  • 3D GAN直接在艺术域(artistic domain)上fine-tuning,效果不错。但存在两个问题:1)会破坏3D GAN原有的隐空间,影响后续的语义编辑;2) 每种新风格需要额外训练,限制了部署。
  • 为了解决上述两个问题,本文提出DeformToon3D。本文方法将3D卡通化(toonification)问题,分解为几何与纹理风格化。
  • 本文提出StyleField,预测条件控制的3D形变(conditional 3D deformation),实现几何风格化;通过3D GAN的decoder实现纹理风格化。

方法

  • DeformToon3D是一个堆叠模型 G = G1 o G0,其中G1是3D生成器,G2是2D超分解码器。G0输入instance code w和相机位姿\xi,和体渲染输出为中间特征图F。G1将F超分得到高分辨率图片I
  • 在考虑3D人脸卡通化时,现有方法将G视作一个整体进行fine-tune。DeformToon3D用StyleField作为几何风格化,fine-tune体渲染器实现纹理风格化。

Geometry Toonification with StyleField

直接用跨域数据fine-tune G0,计算开销大且会破坏GAN的隐空间。

假设风格化NeRF是\mathcal{N}_S,真实域NeRF是\mathcal{N}_R。本文冻结G0参数,并提出StyleField模块学习\mathcal{N}_S\mathcal{N}_R的映射关系。

具体来说,假设\mathcal{N}_S中的任意3维点x_S,StyleField学习x_S\mathcal{N}_Rx_R的映射关系:

其中,H_D是StyleField,受style code w_S和instance code w_R控制,前者决定风格,后者决定3D face的ID。

H_D由4层SIREN组成,支持多种风格变换。相较于直接fine-tune G0,优化参数量减少了50%,同时还保留了3D GAN原有隐空间。在10种风格情况下,相较每种风格fine-tune一个G0,节省了98.5%的存储空间。

Texture Transfer with Adaptive Style Mixing

G0和StyleField实现了风格的几何变换。在此基础上,本文在超分网络G1实现风格的纹理变换。

G1是2D style-based architecture。本文通过AdaIN来逐步调整图片风格。

受style mixing启发,通过混合G1网络参数和目标风格w_S,实现纹理信息的注入。

本文同时添加了一个轻量级MLP T,输入为w_Sw_R和w,调整风格强度。

Training

本文通过DualStyleGAN产生2D风格图像;

训练中,使用LPIPS loss作为重建损失;使用smoothness,确保H_D是物理平滑的;同时,使用了GAN的对抗训练损失。

实验

实验设置

  • Datasets:测试了10种风格:Pixar, Comic, Slam Dunk, The Croods, Fiona (Shrek), Rapunzel (Disney Princess), Hiccup Horrendous Haddock III (How To Train Your Dragon), and three different carica-ture styles;在CelebA-HQ上测试;
  • Model:使用在FFHQ上预训练的StyleSDF作为3D GAN;
  • Training:在8张V100上训练了24小时,bs=16;
  • Baselines:和CIPS-3D、E3DGE、StyleGAN-NADA进行比较

Comparisons with Baselines

 

Applications

Inversion and Editing

使用E3DGE实现3D GAN inversion

Animatable Toonification

学习3DMM参数和3D GAN隐空间的双向映射关系。通过驱动视频拿到3DMM参数的变化,并映射回3D GAN中

Toonification Style Control

相关文章:

[ICCV-23] DeformToon3D: Deformable Neural Radiance Fields for 3D Toonification

pdf | code 将3D人脸风格化问题拆分为几何风格化与纹理风格化。提出StyleField,学习以风格/ID为控制信号的几何形变残差,实现几何风格化。通过对超分网络引入AdaIN,实现纹理风格化。由于没有修改3D GAN空间,因此可以便捷实现Edit…...

配置Hive使用Spark执行引擎

配置Hive使用Spark执行引擎 Hive引擎概述兼容问题安装SparkSpark配置Hive配置HDFS上传Spark的jar包执行测试速度对比 Hive引擎 概述 在Hive中,可以通过配置来指定使用不同的执行引擎。Hive执行引擎包括:默认MR、tez、spark MapReduce引擎: 早…...

基于FPGA的视频接口之千兆网口(五应用)

简介 相信网络上对于FPGA驱动网口的开发板、博客、论坛数不胜数,为何博主需要重新手敲一遍呢,而不是做一个文抄君呢!因为目前博主感觉网络上描述的多为应用层上的开发,非从底层开始说明,本博主的思虑还是按照老规矩,按照硬件、底层、应用等关系,使用三~四篇文章,来详细…...

车载开发所学内容,有哪些?程序员的转岗位需求

一、高速发展的行业前景 随着全球智能汽车市场的飞速发展,车载开发行业的前景可谓一片光明。各国政府对于自动驾驶和智能交通系统的政策支持,为行业带来了前所未有的机遇。此外,人工智能、大数据、云计算等前沿技术的不断突破,为…...

VSCode Intellij IDEA CE 数据库连接

VSCode & Intellij IDEA CE 数据库连接 大概记一下现在正在用的几个工具/插件 VSCode VSCode 里面的工具我下载了很多,如果只是链接 MySQL 的话,可能用 Jun Han 这位大佬的 MySQL 就好了: 使用这个插件直接打开 .sql 文件单击运行就能…...

直流无刷电机开发应用

下面的链接是笔者在研究无刷电机的过程中,找到的业内无刷电机驱动龙头企业,峰岹科技的各类无刷电机应用设计参考,比较有学习和借鉴意义。 应用手册 - 峰岹科技...

c 语言基础题目:PTA L1-030 一帮一

“一帮一学习小组”是中小学中常见的学习组织方式,老师把学习成绩靠前的学生跟学习成绩靠后的学生排在一组。本题就请你编写程序帮助老师自动完成这个分配工作,即在得到全班学生的排名后,在当前尚未分组的学生中,将名次最靠前的学…...

网工内推 | base郑州,上市公司,最高15薪,五险一金全额缴

01 四方达 招聘岗位:网络工程师 职责描述: 1、负责公司数据中心(机房)的管理与运维工作。 2、负责公司服务器、路由器、防火墙、交换机等设备的管理、以及网络平台的运行监控和维护; 3、负责公司服务器运维管理工作、…...

求后缀表达式的值

后缀表达式的值 【题目描述】 从键盘读入一个后缀表达式(字符串),只含有0-9组成的运算数及加()、减(—)、乘(*)、除(/)四种运算符。每个运算数之间…...

【FISCO-BCOS】十七、角色的权限控制

目录 一、角色定义 二、账户权限控制 1.委员新增、撤销与查询 2.委员权重修改 3.委员投票生效阈值修改 4. 运维新增、撤销与查询 一、角色定义 分为治理方、运维方、监管方和业务方。考虑到权责分离,治理方、运维方和开发方权责分离,角色互斥。 治理…...

vue怎样封装接口

Vue可以使用axios来发送HTTP请求,通过封装axios可以实现接口的统一管理和调用。下面是一个简单的封装接口的示例。 安装axios 在项目中安装axios依赖,可以使用npm或者yarn命令进行安装。 npm install axios --save创建api.js文件 在项目中创建一个ap…...

Typescript 笔记:函数

1 函数定义 function function_name() {// 执行代码 }2 函数返回值 function function_name():return_type { // 语句return value; } return_type 是返回值的类型。 return 关键词后跟着要返回的结果。 返回值的类型需要与函数定义的返回类型(return_type)一致。 3 函数…...

Axios 封装

请注意以下文件夹: utils下的setToken.js 是token封装(封装 Token-CSDN博客),service.js 是axios封装。 Axios封装: 1.安装axios 在项目终端下 输入: npm install axios --save 2.在main.js全局引入axios import axios from axiosVue.prototype.$axios =axios //挂…...

CocosCreator 面试题(一)Javascript的垃圾回收机制

JavaScript的垃圾回收机制是一种自动管理内存的机制,它负责检测和回收不再使用的内存,以便释放资源并提高性能。 标记清除(Mark and Sweep):这是JavaScript最常用的垃圾回收算法。它的工作原理是通过标记活动对象&…...

【计算机网络】UDP协议编写群聊天室----附代码

UDP构建服务器 x 预备知识 认识UDP协议 此处我们也是对UDP(User Datagram Protocol 用户数据报协议)有一个直观的认识; 后面再详细讨论. 传输层协议无连接不可靠传输面向数据报 网络字节序 我们已经知道,内存中的多字节数据相对于内存地址有大端和小端之分, 磁盘文件中的…...

Java架构师高并发架构设计

目录 1 导学2 什么是高并发问题3 高并发处理之道4 akf扩展立方体5 细化理念应对高并发5 总结1 导学 本章的主要内容是大型系统架构设计的难点之一,高并发架构设计相关的知识落到实际项目上,就是订单系统的高并发架构设计。我们首先会去学习到底何为高并发问题,先把问题搞清楚…...

【客观赋权法1】熵权法(MATLAB全代码)

熵权法(entropy weight method, EWM) 1 原理2 MATLAB代码3 案例参考赋权法(Weighting Method) 是一种常用的数据处理方法,它可以将不同变量之间的重要性进行区分,并赋予它们不同的权重,以反映它们对整体的贡献程度。 指标在评估体系中的重要程度可以用 指标权重系数表示…...

“注释: 爱恨交织的双重标准?解析注释在代码开发中的作用。”

文章目录 每日一句正能量前言观点和故事程序员不写注释的原因是什么如何才能写出漂亮的注释后记 每日一句正能量 水与水之间有距离,但地心下直相牵,人与人之间有距离,但心里时刻挂念,发条短信道声晚安,梦里我们相见。 …...

一种基于局部适应度景观的进化规划的混合策略

文章目录 标题摘要结论研究背景研究内容、成果常用基础理论知识潜在研究点文献链接标题 A Mixed Strategy for Evolutionary Programming Based on Local Fitness Landscape 摘要 进化规划(EP)的性能受到许多因素的影响(如突变操作符和选择策略)。虽然传统的高斯突变算子…...

Python数据攻略-Mongodb数仓无法写入方法汇总

Mongodb作为一个非结构化的NoSQL数据库,能存储各种复杂和多变的数据格式,如JSON。这使得Mongodb在实时数据分析和高性能查询中具有优势。 在使用Mongodb的过程中,可能会遇到写入失败的问题。常见的几种情况包括无法建立连接、认证失败和存储限制。 文章目录 诊断问题日志分…...

用什么工具来画UML?

2023年10月9日,周一晚上 目录 我的决定 关于rational rose UML工具有哪些 相关资料 我的决定 我决定用plantUML、draw.io或starUML就可以了 其实没必要在意工具, 重要的是能把图画出来、把图画好画规范, 重要的是知道怎么去画图、把意…...

SQLite3数据类型

存储类与数据类型 NULLINTEGER 有符号整数类型,存储为0,1,2,3,4,6或8个字节,取决于值的大小。REAL 浮点类型,存储为8字节的IEEE浮点数。TEXT 文本类型,将使用数据库指定的编码格式存储(UTF-8,UTF-16BE,UTF-16LE)BLOB …...

K8S:K8S对外服务之Ingress

文章目录 一.Ingress基础介绍1.Ingress概念2.K8S对外暴露服务(service)主要方式(1)NodePort(2)LoadBalancer(3)externalIPs(4)Ingress 3.Ingress 组成&#x…...

flask入门

第一个Flask项目 创建后项目如下图 static存放静态文件,templates存放Jinja2模板,app.py是整个项目的入口文件 我们略微理解下app.py这里的代码 # 从flask这个包中导入Flask类 from flask import Flask#使用Flask类创建一个app对象 #__name__:代表当前…...

掌动智能:性能测试工具优势有哪些

由于应用程序的性能直接影响用户体验和满意度。而性能问题可能会导致应用响应缓慢、崩溃或无法处理大量用户请求。为了确保应用程序的高性能和可靠性,开发团队需要对应用程序进行性能测试。性能测试工具能够模拟真实场景下的负载并监测应用程序的性能表现&#xff0…...

实现一个简单的线性回归和多项式回归(2)

对于多项式回归,可以同样使用前面线性回归中定义的LinearRegression算子、训练函数train、均方误差函数mean_squared_error,生成数据集create_toy_data,这里就不多做赘述咯~ 拟合的函数为 def sin(x):y torch.sin(2 * math.pi * x)return y1.数据集的建…...

云原生Kubernetes:K8S集群kubectl命令汇总

目录 一、理论 1.概念 2. kubectl 帮助方法 3.kubectl 子命令使用分类 4.使用kubectl 命令的必要环境 5.kubectl 详细命令 一、理论 1.概念 kubectl是一个命令行工具,通过跟 K8S 集群的 API Server 通信,来执行集群的管理工作。 kubectl命令是操…...

Java使用模板导出word、pdf

使用deepoove根据模板导出word文档&#xff0c;包括文本、表格、图表、图片&#xff0c;使用WordConvertPdf可将word文档转换为pdf导出 模板样例&#xff1a; 导出结果&#xff1a; 一、引入相关依赖 <!-- 工具类--><dependency><groupId>cn.hutool&…...

速通Redis基础(二):掌握Redis的哈希类型和命令

目录 Redis 哈希类型简介 Redis 哈希命令 HSET HGET HEXISTS HDEL HKEYS HVALS HGETALL HMGET HLEN HSETNX ​编辑 HINCRBY HINCRBYFLOAT Redis的哈希类型命令小结 Redis 是一种高性能的键值存储数据库&#xff0c;支持多种数据类型&#xff0c;其中之…...

WebDAV之π-Disk派盘 + 书藏家

书藏家是一款书籍收藏的软件,对于喜欢阅读书籍的用户来说非常友好,记录你所阅读的书籍内容,对你所阅读的书籍内容进行全方位的管理,并且支持多种录入的方式,不管是实体书籍还是网络书籍都能够进行更为有效的管理;内置WebDAV 模块,更加便利的整理自己的文件资源;书藏家的…...