3DGS与NeRF的区别

0 论文链接

nerf:https://arxiv.org/abs/2003.08934

3dgs:https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/3d_gaussian_splatting_low.pdf

1 简要

1.1 nerf

neural radiance fields神经辐射场

作者提出了一种优化来自一组输入图像的场景的连续5D神经辐射场表示(空间位置 x y z和视图方向 d θ)的方法。作者使用体绘制的技术来积累这个场景表示沿着射线的样本,以从任何视点渲染场景。作者可视化了在周围半球上随机捕获的合成 鼓场景 的100个输入视图的集合,最后作者显示了从优化的NeRF表示渲染的两个新视图。

1.2 3dgs

3d guassian splatting三维高斯喷溅

核心是构建以协方差为主导的3d高斯点云,然后围绕3d高斯点云进行渲染和优化。

从已有的点云模型出发,以每个点为中心,建立可学习的3d高斯表达,用相机参数把点投影到图像平面上,splatting即抛雪球的方法进行渲染,在splatting的痕迹中进行tile based的光栅化得到渲染图像,将渲染图像和GT图像求损失loss,沿蓝色箭头反向传播,自适应的密度控制模块根据传递到点上的梯度来决定是否需要对3d高斯做分割或者克隆,梯度也会传递到3d高斯里面,来更新其中存储的位置、协方差矩阵、球谐函数、不透明度这些参数。

实现了高分辨率的实时渲染

2 隐式几何与显式几何

nerf是神经隐式辐射场

而3d高斯是可微分的,可以实现快速α混合渲染

3dgs的显式几何,和nerf方法的隐式几何,是非常重要的区别

3 采样与渲染

从采样点颜色贡献度的角度进行nerf系的方法区分,可以分为体积类方法和表明类方法

2020年原版nerf属于体积类表达,输入5d信息(x y z d θ)输出颜色和体密度,采样点返回密度值反映了这里是否存在几何占用。

另一种热门的是表面类表达,输入采样点,sdf(signed distance function,符号距离函数)

输出空间中距离这个点最近的表明的距离。正值表示表面外,负值表示表面内,表面可以用所有的sdf=0的采样点的集合来表达,借助神经网络实现的sdf即神经sdf

体积类方法通过几何密度决定采样点颜色贡献度,表面类方法则判定越靠近表面的采样点颜色贡献度越高.

隐式的采样,投出射线,累积颜色不透明度来做渲染


3dgs的引言部分这样提到:nerf方式的渲染所需要的随机采样成本高,并且可能会导致噪声。

而3d高斯有个特性,其轴向积分等同2d高斯,从数学层面降低了采样的成本,我们并不需要花费高昂的成本做采样了,用数学的方式就可以轻松地把3dgs转化成一个2dgs。

直接把球抛掷在墙上,在墙上留下的斑点,就是3dgs splatting 投掷的结果,完成了采样的渲染

4 光栅化

传统的nerf方法并不能做光栅化,而3dgs可以进行光栅化,对速度的提升是至关重要的

5 可微性

nerf全链路可微

3dgs也具有可微分的特性

相关推荐
吃个糖糖2 小时前
Halcon 3D加快表面匹配速度
3d
mirrornan19 小时前
3D全景沉浸式看车:虚拟现实重构汽车消费新体验
科技·3d·汽车·vr·3d数字化·3d看车
pixle02 天前
Three.js 快速入门教程【一】开启你的 3D Web 开发之旅
前端·javascript·3d
视觉人机器视觉2 天前
机器视觉中的3D高反光工件检测
人工智能·3d·c#·视觉检测
mirrornan2 天前
从建模到展示,如何实现3D在线预览展示?
3d
3D小将2 天前
STL 在线转 3MF,开启 3D 模型转换新体验
3d·3d格式转换
视觉人机器视觉2 天前
3D与2D机器视觉机械臂引导的区别
人工智能·数码相机·计算机视觉·3d·视觉检测
seabirdssss2 天前
重构测试项目为spring+springMVC+Mybatis框架
java·spring·重构·mvc·mybatis
视觉人机器视觉2 天前
机器视觉3D深度图颜色含义解析
人工智能·3d·c#·视觉检测
fyzy2 天前
QPainter绘制3D 饼状图
qt·3d