自己做公司网站难吗,服装网站建设美丽,福建省建设厅网站建造师证转出,网页浏览器的英文缩写文章目录 什么是point nerf 和Nerf 有什么区别Point Nerf 核心结构有哪些#xff1f;什么是point-based radiance field? 点云位置以及置信度是怎么来Point pruning 和 Point Growing 什么是point nerf 和Nerf 有什么区别
基本的nerf 是通过过拟合MLP来完成任意视角场景的重… 文章目录 什么是point nerf 和Nerf 有什么区别Point Nerf 核心结构有哪些什么是point-based radiance field? 点云位置以及置信度是怎么来Point pruning 和 Point Growing 什么是point nerf 和Nerf 有什么区别
基本的nerf 是通过过拟合MLP来完成任意视角场景的重建这有什么问题呢? 这样会导致模型的训练很慢且完全没有泛化能力。训练出来模型只能用于一个场景的重建。 且Nerf的输入只能是 照片以及相机位姿。但是point nerf 可以使用点云作为输入并且考虑到了每一个点对应的2D features。这个有什么好处呢。他可以省去大量sample的过程。因为在原始的nerf中我们是不知道场景到底在3D空间中的什么地方所以我们需要使用对光线进行大量的采样来大致理解3D场景的位置而point nerf 因为可以使用点云作为输入点云中的每一个点都可以理解成场景的一部分所以我们可以对这些点周围的点进行采样。point nerf 使用相对位置计算特征比起nerf完全使用绝对位置来说繁华能力有所提高。
Point Nerf 核心结构有哪些
什么是point-based radiance field?
和nerf相似的点是他们的目的都是要去计算 view-dependent volume density。Nerf 直接使用mlp 进行硬拟合但是point nerf 使用了neural point来计算这个东西。 neural point 包含三个东西点的空间位置点对应的特征以及它的置信度。 特征是怎么来的。因为知道相机位姿所以我们可以把3D 点投射到2D feature plane去然后取得每一个点的特征这就是pixel-aligned features。置信度代表着什么 置信度表示的是当前这个点在场景表面的可能性有多大。
point-based radiance field怎么获得 给到任意的一个3D点的位置我们在这个点的R半径范围内进行K最近邻采样,然后把这K个点的位置view direction, 2D features, confidence 一起输入到 point nerf 中去获得 volume density 以及 radiance。 简单来说就是先处理每一个点然后再把每一个点相邻的信息整合起来。 为了提高泛化能力每一个点的特征是需要重新根据相对位置来计算的。之前的点特征是使用的绝对位置没有 point translation invariant。具体就是使用另一个MLP把特征和相对位置一起做计算即可。 然后需要使用点与shading location的距离来对这些点进行权重的计算如果说一个点离shading location特别远那么它对于重建的贡献也就很小所以它的权重相对就比较低。volume density 和 radiance的计算首先都要使用方法来对点进行权重计算。
点云位置以及置信度是怎么来
点云的位置其实是通过深度的unprojection得到的。那么深度是怎么来的呢 使用MVSnet或者类似的网络。具体怎么做深度可以表示成物体离相机的距离或者是两张照片的视差。MVSnet 使用两张或多张相邻的照片用2D CNN来提取每一张照片的2D特征 然后和传统MVS算法一样使用plane sweeping 的方式将相邻照片的特征图sweep到 reference image 的 plane上面。这样就可以比较两个feature maps之间到底差了多少这种差值就是cost volume它已经包括了视差信息所以用这个cost volume就可以预测深度信息。文中是用的depth probablity volume用于表示point confidence。这个过程可以表示成
Point pruning 和 Point Growing
这两个方法主要是用于点的处理。前者会根据点的权重来筛选点也就是说如果点的距离离场景的距离特别的远那么对于场景的贡献就会变低。这时候就可以将这个点删去来完成剪枝。此外输入的点云有可能会出现不完整的情况这个时候就需要将点云补全。通过一条光线上点的可见度来判断这个位置需不需要增加点。判断的条件就是一个点确实是在surface 周边的但是离其他的点很远。