| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 53、CodeNeRF:Disentangled Neural Radiance Fields for Object Categories -> 正文阅读 |
|
[人工智能]53、CodeNeRF:Disentangled Neural Radiance Fields for Object Categories |
简介主页:https://github.com/wayne1123/code-nerf CodeNeRF是一个新颖的三维感知的对象类别表示,它学会了分离形状和纹理。 在训练过程中,CodeNeRF采用一组姿势输入图像,同时学习形状和纹理的不同潜在嵌入,以及多层感知器的权重,通过加强多视图光度一致性来预测每个3D点的体积密度和视相关亮度 在推断过程中,给定一个看不见的物体的未摆姿参考图像,CodeNeRF优化形状和纹理代码以及相机姿势,并通过修改各自的潜在代码就可以显式编辑对象的形状和纹理 总结 不同于NeRF,CodeNeRF不是特定于场景的,可以在对象类中建模形状和外观的变化 不同于SRN,CodeNeRF分离了几何和外观,为合成任务提供了对形状和纹理的显式控制 同时,CodeNeRF在测试时不需要相机姿势的知识,通过优化来估计它 CodeNeRF与DeepSDF一样采用了自动解码器架构,但与之有很大的不同,因为只需要2D监督,可以在对象类别中分离出形状和纹理变化 实现流程
给定跨语义类描述 M 个对象的 N 个图像的训练集,以及它们各自的相机本征和位姿参数
V
=
I
i
,
K
i
,
T
i
i
N
=
1
V = {I_i, K_i, T_i}^N_i=1
V=Ii?,Ki?,Ti?iN?=1, CodeNeRF联合学习封装了跨观察对象的几何和外观的多层感知器
F
Θ
F_Θ
FΘ? 的权值,以及分别分离出形状和外观分离的潜在嵌入
{
z
s
j
,
z
t
j
}
j
=
1
M
∈
R
256
\{z_s^j, z_t^j\}^M_{j=1}∈R^{256}
{zsj?,ztj?}j=1M?∈R256,
F
Θ
F_Θ
FΘ?是一个解耦的神经辐射场,以形状和纹理代码为输入,将场景坐标 x 和观看方向 d 映射到相应的体积密度 σ 和RGB颜色值 c 形状/纹理嵌入和解码器网络 F θ F_θ Fθ? 共同充当学习先验,模拟跨语义类别的形状变形和纹理变化,一旦训练了模型,给定一个单一的输入图像,它就可以用于一个看不见的物体的一次重建,通过测试时间优化,估计相应的形状和纹理代码 { z s j , z t j } \{z_s^j, z_t^j\} {zsj?,ztj?},甚至相机姿势 体渲染部分与NeRF一致 Training CodeNeRF对于训练集
V
=
{
I
i
,
K
i
,
T
i
}
i
=
1
N
V = \{I_i, K_i, T_i\}^N_{i=1}
V={Ii?,Ki?,Ti?}i=1N? 中的每个图像,在每次训练迭代中,使用内部参数和外部参数对一批4094条射线进行采样。然后, 沿着每条射线采样64个点,并将它们连同形状和纹理代码的当前估计一起发送到 MLP
F
Θ
F_Θ
FΘ?。
F
Θ
F_Θ
FΘ?提供了占用密度 σ 和 RGB 颜色 c,使用体渲染来沿着每条射线聚合颜色。训练使用光度损失和正则化损失作为潜在向量的先验(见公式(4))进行监督。用AdamW优化器训练模型,网络参数的初始学习率为1e-4,潜在向量的初始学习率为1e-3。 Inference Optimization在推理时,给定一个看不见的物体的单一输入图像,训练过的模型可用于优化潜在向量,通过最小化渲染像素和观察像素之间的光度损失(Eq. 5,下面介绍),同时保持神经网络的权重固定。此外,CodeNeRF不需要已知的摄像机姿态,它的参数也可以与潜码联合优化。 Camera Pose OptimizationCodeNeRF使用相机到世界的转换矩阵将像素投影到3D射线中,需要已知的摄像机矩阵来训练模型,一旦学习了模型,在推理时,与其他方法不同,不需要已知的摄像机视点,通过获取输入点和射线方向上的梯度,以类似于可微渲染器的方式,与潜在嵌入向量联合优化旋转和平移参数,与其他物体类别的3D重建方法类似,假设一个简化的相机模型,其中世界坐标系以 3D 物体为中心,相机面对其原点,向上向量与z轴对齐。在这种情况下,R 和 t 可以通过方位角 φ、仰角 θ 和与相机的距离 ρ 来参数化,如图所示 相机到世界的变换矩阵可以写成
T
c
w
=
(
R
T
p
0
1
?
)
T_{cw} = \left( \begin{matrix} R^T & p \\ 0 & 1 \ \end{matrix} \right)
Tcw?=(RT0?p1??) Test time optimization使用AdamW优化器将光度损失与形状和纹理代码以及相机参数(固定解码器参数Θ)联合最小化 Enforcing disentanglement为了说明良好的体系结构选择和解纠缠之间的联系,训练了两个可选模型(M1/M2)。在 M1 中,已知
γ
d
(
d
)
γ_d(d)
γd?(d)与 3D 点位置
γ
x
(
x
)
γ_x(x)
γx?(x)一起作为 KaTeX parse error: Double subscript at position 6: F^s_θ_?s 第一层的输入(类似于PixelNeRF)。在M2中,
z
s
z_s
zs? 和
z
t
z_t
zt? 被给定为 KaTeX parse error: Double subscript at position 6: F^s_θ_?s 的输入,这相当于使用单一的嵌入。然后执行纹理编辑,保持形状代码固定。下图显示了CodeNeRF如何完全消除形状和纹理的歧义。M1无法合成正确的纹理,而M2的形状发生了不必要的变化。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 22:33:10- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |