[CVPR‘22] EG3D: Efficient Geometry-aware 3D Generative Adversarial Networks
- paper: https://nvlabs.github.io/eg3d/media/eg3d.pdf
- project: EG3D: Efficient Geometry-aware 3D GANs
- code: GitHub - NVlabs/eg3d
总结:
- 本文提出一种hybrid explicit-implicit 3D representation: tri-plane hybrid 3D representation,该方法不仅有更强的表达能力,速度更快,内存开销更小。
- 同时,为解决多视角不一致问题,引入相机参数矩阵作为StyleGANv2生成器、超分模型、Volume Rendering的控制条件。
- 最后,为解决超分模型导致的信息丢失问题,本文提出dual discrimination strategy,使得超分前后图像保持一致。
skirt the cimputational constraints
inherit their efficiency and expressiveness
xx has started to gain momentum as well
目录
摘要
引言
贡献
近期工作
Neural scene representation and rendering.
Generative 3D-aware image synthesis.
Tri-plane hybrid 3D representation
3D GAN framework
CNN generator backbone and rendering
Dual discrimination
Experiments and results
Ablation study
Application
摘要
- 研究如何基于单视角2D图片,通过无监督方法,生成高质量、多视角一致的3D形状;
- 现有3D GAN存在问题:1)计算开销大;2)不具有3D一致性(3D-consistent);
- 本文提出:1)expressive hybrid explicit-implicit network architecture:提速、减小计算开销;2)decoupling feature generation and neural rendering:可以借助sota 2D GAN,例如:StyleGAN2。
- 在FFHQ和AFHQ Cats的3D-aware synthesis任务上达到sota。
引言
- 现有2D GAN无法显式地建模潜在的3D场景;
- 近期3D GAN,开始解决:1)多视角一致的图片生成;2)无需多视角图片和几何监督,提取3D形状。但是3D GAN生成的图片质量和分辨率仍然远逊于2D GAN。还有一个问题是,目前3D GAN和Neural Rendering方法计算开销大。
- 3D GAN通常由两部分组成:1)生成网络中的3D结构化归纳偏置;2)neural rendering engine提供视角一致性结果。其中,归纳偏置可以被建模为:显式的体素网格或隐式的神经表达。但受限于计算开销,这两种表达方式都不适用于训练高分辨率的3D GAN。目前常用的方法是超分,但超分又会牺牲视觉连续性和3D形状的质量。
- 本文提出:1)hybrid explicit-implicit 3D representation由于提速、减小计算开销;2)dual discrimination strategy由于保留输出和neural rendering的一致性;3)对生成器引入pose-based conditioning,解耦pose相关属性,例如人脸表情系数;4)本文框架将特征生成从neural rendering中解耦出来,使得框架可以受益于sota 2D GAN,例如:StyleGAN2。
贡献
- 提出一种tri-plane-based 3D GAN框架。在保持效果的情况下,提速明显;
- 提出一种3D GAN训练策略dual discrimination,用于保持多视角一致性;
- 提出generator pose conditioning,建模pose相关的属性,例如:表情。
- 在FFHQ和AFHQ Cats的3D-aware图片生成中取得sota结果。
近期工作
Neural scene representation and rendering.
- 显示表达(图b),例如:discrete voxel grids。优点是fast to evaluate,缺点是需要大量的内存开销大;
- 隐式表达(图a):例如:neural rendering。优点是内存使用高效,缺点是slow to evaluate。
- 局部隐式表达和混合显-隐式表达,则兼具了两者优点。
- 受此启发,本文设计了hybrid explicit-implicit 3D-aware network(图c):用tri-plane representation去显示存储沿坐标轴对齐的特征,而特征则是被通过特征解码器隐式的渲染为体素。

Generative 3D-aware image synthesis.
- Mesh-based approaches;Voxel-based GANs,内存开销大,通常需要使用超分,但超分会导致视角不一致;Block-based sparse volume representations:泛化性不好。Fully implicit representation networks,但测试很慢。
- 和StyleGAN2-based 2.5D GAN的区别:他们生成图片和深度图,而我们不需要;
- 和3D GAN,例如StyleNeRF和CIPS-3D的区别:他们在3D形状上表现不佳。
Tri-plane hybrid 3D representation
- 建立xyz三个相互垂直的特征平面,每个特征平面为N x N x C,其中N为平面分辨率,C为特征维度。对于任意一个3D位置,通过双线性插值,可索引到3个特征向量(F_xy, F_xz, F_yz),最终特征F为3个特征向量之和。
- 通过一个轻量级MLP解码网络,将特征F映射为颜色和强度,最后通过neural volume rendering将他们渲染为RGB图片。下图和下表显示,所提出的Tri-plane在具有更强表现能力的同时,内存开销更小,计算速度更快。


3D GAN framework
对每张训练图片,本文使用离线pose检测器计算其相机内外参数。算法整体pipeline如下: 
训练方法1:随机初始化,使用non-saturating GAN loss with R1 regularization,训练方法跟随StyleGAN2;训练方法2:两阶段训练策略,先训64 x 64的neural rendering,然后接128 x 128的fine-tune。实验显示,正则化有助于减少3D形状的失真。
CNN generator backbone and rendering
- decoder:MLP,每层包含64个神经元和softplus activation functions。MLP的输入可以是连续坐标,输出是scalar density和32维的特征
- Volume rendering:输入feature images,而不是RGB图片。因为,feature images包含更多可在超分中使用的信息。
Dual discrimination
- 鉴别器输入为6通道。本文认为feature image I_F的前三个通道是低分辨率RGB图片I_RGB。dual discrimination首先要求I_RGB和超分图片I_RGB^+保持一致(?),这一步通过双线性上采样得到。然后将超分超分图片和上采样图片拼接在一起送入鉴别器。对于真实图片,则是将真实图片和经过blur处理的真实图片拼接在一起送入鉴别器。
- 将相机内外参数送入鉴别器,作为条件标签。
Modeling pose-correlated attributes
- 大多数现实世界数据集包含偏置,例如在FFHQ中,人脸表情和相机位置相关,通常来说,当相机正对人脸时,人是在笑的。本文提出generator pose conditioning,用于解耦训练图片中位姿和其他属性(可以理解为想要去除什么bias,就以bias为条件作为输入?)。
- 为增强模型对输入位姿的鲁棒性,在训练中,会以50%概率将相机参数矩阵P中的位姿替换为随机位姿。
- 消融实验发现,在训练时加入位姿作为条件很重要。未来的工作会考虑去除它。

Experiments and results
- Datasets:FFHQ真实人脸数据集,AFHQv2 Cats,真实猫脸数据集。
- Baselines:3个3D-aware image synthesis领域的sota方法:pi-GAN、GIRAFFE和Lifting StyleGAN。
- Qualitative results:

- Quantitative evaluations:
- Runtime:

Ablation study

Application
- Style mixing:

- Single-view 3D reconstruction:使用pivotal tuning inversion (PTI)

相关文章:
[CVPR‘22] EG3D: Efficient Geometry-aware 3D Generative Adversarial Networks
paper: https://nvlabs.github.io/eg3d/media/eg3d.pdfproject: EG3D: Efficient Geometry-aware 3D GANscode: GitHub - NVlabs/eg3d总结: 本文提出一种hybrid explicit-implicit 3D representation: tri-plane hybrid 3D representation,该方法不仅有…...
Learning C++ No.9【STL No.1】
引言: 北京时间:2023/2/13/18:29,开学正式上课第一天,直接上午一节思想政治,下午一节思想政治,生怕我们……,但,我深知该课的无聊,所以充分利用时间,把我的小…...
Apifox推荐-django后台验证token配置
最近事情很多,但是我还是想写一片推荐apifox的文章。 优秀的UI,清晰地逻辑,丰富的功能。对于我们这种业余选手来说,他真的很便利。 更新新版后有了更多贴心的功能,让你感觉他是一个有温度的工具。 最重要的是…...
SAS应用入门学习笔记6
SQL (SAS): Features: 1)不需要在每个query中重复调用每个SQL; 2)每个statement都是独立去完成的; 3)我们是没有proc print和proc sort语句的;(order by) key synta…...
【3D目标检测】Pseudo-Stereo for Monocular 3D Object Detection in Autonomous Driving
目录概述细节背景与整体流程图像级别生成特征级别生成损失函数学习深度感知的特征概述 本文是基于单目图像的3D目标检测方法。 【2021】【MonoDLE】 研究的问题: 能否借助立体图像检测算法提高单目图像检测的效果如何实现右侧图像的生成 解决的方法: 受启发于伪…...
git 常用命令之 git branch
大家好,我是 17。 新建 git 分支 分支是并行开发的基础。分支名称的本质是对分支最后一个提交的引用。分支有多个,但 HEAD 只有一个,可以认为 HEAD 是"current branch"(当下的分支)。当你用git switch切换分支的时候,…...
Oracle数据泵
Oracle 数据泵:概览 作为一个基于服务器的用于高速移动数据与元数据的工具, Oracle 数据泵具有以下特点: •可通过 DBMS_DATAPUMP 调用 •可提供以下工具: – expdp – impdp – 基于 Web 的界面 •提供四种数据移动方法ÿ…...
ACWING寒假每日一题python
ACWING寒假每日一题 一、孤独的照片 一个点一个点的来看,比如对于GHGHG中间的G,找到他的左边的G,以及右边的G的位置,l,r分别等于1,答案就要多加上11 但是如果对于 GHHGHHG 中间的G,我们可以看到l,r等于2&a…...
御黑行动来袭--助力三月重保,构筑安全防线!
三月重保在即,重要网站及业务系统“零风险 零事故”是终极目标,作为业界网络安全实战派“老兵”--知道创宇将一如既往,为您提供重保期间“万无一失”的重要网站及业务系统防护。 值此三月重保的重要备战期,知道创宇推出由主力产品…...
JavaScript HTML DOM 元素 (节点)
HTML DOM 是指 HTML 文档对象模型,它是一种用于创建和处理 HTML 页面的标准 API。在 JavaScript 中,HTML DOM 可以被用来操作和修改网页的内容和结构。在本篇文章中,我们将详细探讨 JavaScript HTML DOM 元素 (节点)的作用以及在实际工作中的…...
mybatis-plus ---2
mybatis-plus插件 官网地址 分页插件 MyBatis Plus自带分页插件,只要简单的配置即可实现分页功能 配置并使用自带分页插件 Configuration MapperScan("com.itzhh.mapper")//可以将主类中的注解移到此处 public class MybatisPlusConfig {Beanpublic …...
如何在Qt中设置背景图片,且不覆盖其它控件
正常情况,我们直接通过在样式表里设置背景图片会出现背景图片覆盖其它控件的情况,比如下面操作: 首先右击空白处,点击改变样式表。 然后选择background-image 然后点击铅笔图标 之后我们要先添加前缀,也就是我们…...
PMP考前冲刺2.14 | 2023新征程,一举拿证
承载2023新一年的好运让我们迈向PMP终点一起冲刺!一起拿证!每日5道PMP习题助大家上岸PMP!!!PMP项目管理题目1-2:1.公司了解到一个项目机会,领导让之前做过类似项目的项目经理报告一个粗略的成本…...
feign进行文件上传报错解决方案及有多个入参时的注意事项
一、情景回顾1、简单的文件上传的接口/*** 文件上传MultipartFile格式** param multipartFile 源文件* param filename 自定义文件名称,允许为空,为空时直接从源文件中拿* return*/RequestMapping("/uploadFileForMultipartFile")LogModuleAnn…...
java 枚举类型enum的用法详解
Java Enum原理 public enum Size{ SMALL, MEDIUM, LARGE, EXTRA_LARGE }; 实际上,这个声明定义的类型是一个类,它刚好有四个实例,在此尽量不要构造新对象。 因此,在比较两个枚举类型的值时,永远不需要调用equals方法…...
Java 基础面试题——关键字
目录1.Java 中的关键字是指什么?有哪些关键字?2.instanceof 关键字的作用是什么?3.访问修饰符 public、private、protected、以及不写(default)时的区别?4.Java 中有没有 goto 关键字?5.在 Java 中&#x…...
C++——运算符重载
1、运算符重载的概念 运算符重载,就是对已有的运算符重新进行定义,赋予其另一种功能,以适应不同的数据类型。运算符重载的目的是让语法更加简洁运算符重载不能改变本来寓意,不能改变基础类型寓意运算符重载的本质是另一种函数调用…...
前端食堂技术周刊第 70 期:Volar 的新开端、Lighthouse 10、良好的组件设计、React 纪录片、2022 大前端总结
美味值:🌟🌟🌟🌟🌟 口味:黑巧克力 食堂技术周刊仓库地址:https://github.com/Geekhyt/weekly 本期摘要 Volar 的新开端Chrome 110 的新功能Lighthouse 10Nuxt v3.2.0加速 JavaSc…...
react路由详解
在学习react路由之前,我们肯定需要安装路由。大家先运行如下命令安装路由。安装之后随我一起探索react路由。 安装 版本v6 npm i react-router-dom -S 页面准备 创建两个文件夹 pages和 router pages文件夹里面放的是页面 router文件夹里面是进行路由配置 路由…...
mysql数据库完全备份和增量备份与恢复
mysql数据备份: 数据备份方式 物理备份: 冷备:.冷备份指在数据库关闭后,进行备份,适用于所有模式的数据库热备:一般用于保证服务正常不间断运行,用两台机器作为服务机器,一台用于实际数据库操作应用,另外…...
给嵌入式新手的Cortex-M0内核超详细图解:从寄存器到中断,一篇搞定STM32/GD32入门
给嵌入式新手的Cortex-M0内核超详细图解:从寄存器到中断,一篇搞定STM32/GD32入门 刚拿到STM32开发板时,看着密密麻麻的引脚和上百页的芯片手册,我完全不知道从哪里开始。直到导师指着原理图说:"把芯片想象成一个忙…...
C++ sort函数进阶指南:如何优雅地自定义结构体排序规则
C sort函数进阶指南:如何优雅地自定义结构体排序规则 在C开发中,数据排序是一个永恒的话题。当我们需要处理复杂数据结构时,标准库提供的默认排序方式往往无法满足需求。这时,掌握sort函数的高级用法就显得尤为重要。本文将深入探…...
快速体验Qwen3-0.6B-FP8:无需下载模型,开箱即用的AI文本生成服务
快速体验Qwen3-0.6B-FP8:无需下载模型,开箱即用的AI文本生成服务 1. 为什么选择Qwen3-0.6B-FP8? Qwen3-0.6B-FP8是Qwen系列最新推出的轻量级语言模型,采用FP8量化技术大幅降低了显存需求。相比传统模型,它具有以下突…...
1Panel v2.0.5及以下版本紧急加固指南:除了升级,这3个临时措施也能防住RCE
1Panel高危漏洞应急防护实战:3种临时方案守护服务器安全 当安全警报拉响时,运维团队往往面临两难选择:立即升级可能影响业务连续性,不升级则暴露在严重威胁之下。针对近期曝光的1Panel远程代码执行漏洞(CVE-2025-54424…...
RWKV7-1.5B-g1a参数详解教程:max_new_tokens/temperature/top_p调优实操手册
RWKV7-1.5B-g1a参数详解教程:max_new_tokens/temperature/top_p调优实操手册 1. 模型简介 rwkv7-1.5B-g1a 是基于新一代 RWKV-7 架构的多语言文本生成模型,特别适合中文场景下的基础问答、文案创作和简短总结任务。作为轻量级模型,它在保持良…...
LFM2.5-1.2B-Thinking-GGUF实操手册:自定义system prompt提升领域适配性
LFM2.5-1.2B-Thinking-GGUF实操手册:自定义system prompt提升领域适配性 1. 模型简介与核心优势 LFM2.5-1.2B-Thinking-GGUF是Liquid AI推出的轻量级文本生成模型,专为低资源环境优化设计。该模型采用GGUF格式和llama.cpp运行时,在保持高性…...
AI大模型入门指南:泛化、通用、涌现三大特征解析,小白也能学会收藏!
本文深入浅出地介绍了AI大模型的主要特征,包括泛化性、通用性和涌现性,并以ChatGPT为例,阐述了其如何通过巨量参数和深度网络结构展现强大的自然语言理解和生成能力。文章还详细分类并介绍了云侧大模型(如通用大模型和行业大模型&…...
5分钟搞定!Fun-ASR-MLT-Nano-2512多语言语音识别一键部署指南
5分钟搞定!Fun-ASR-MLT-Nano-2512多语言语音识别一键部署指南 1. 快速了解Fun-ASR-MLT-Nano-2512 Fun-ASR-MLT-Nano-2512是阿里通义实验室推出的轻量级多语言语音识别模型,特别适合需要本地化部署的场景。这个800M参数的模型虽然小巧,但功能…...
资源捕获高效解决方案:猫抓浏览器扩展让媒体提取更简单
资源捕获高效解决方案:猫抓浏览器扩展让媒体提取更简单 【免费下载链接】cat-catch 猫抓 chrome资源嗅探扩展 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 在当今数字时代,我们每天都在网页上浏览大量的媒体内容,从精…...
Scala入门必修课:val与var的深度对比与选择指南
Scala入门必修课:val与var的深度对比与选择指南1. 引言:变量定义的灵魂拷问2. 基础概念:val与var的定义2.1 直观区别2.2 类型推导3. 深入理解:从编译到执行3.1 编译后的字节码差异3.2 内存与性能考量4. 实际应用:选择指…...
