点击下方
卡片
,关注
「3DCV」
公众号
选择
星标
,干货第一时间送达
作者:Wenkai Liu | 编辑:3DCV
添加微信:cv3d008,备注:方向+单位+昵称,拉你入群。文末附行业细分群
1.导读
这篇文章提出了一种基于3D高斯溅射的高效场景表示方法EfficientGS,用于处理高分辨率的大规模场景。实验结果显示,EfficientGS可以大大减少高斯数量,加快训练和渲染速度,降低存储需求,同时保持高渲染质量,对处理高分辨率大规模场景具有重要意义。主要贡献包括:
选择性高斯致密化策略,只对非稳态高斯进行致密化,减少高斯数量,提高渲染质量。
高斯裁剪策略,只保留每条视线上的主导高斯,移除辅助高斯,减少冗余表示。
稀疏阶数增量策略,根据高斯颜色偏差,有选择地增加高斯球谐函数阶数,减少存储开销。
2.论文信息
标题:EfficientGS: Streamlining Gaussian Splatting for Large-Scale High-Resolution Scene Representation
作者:Wenkai Liu, et al.
机构:华中科技大学等单位
论文:https://arxiv.org/pdf/2404.12777.pdf
3.方法
如图2所示。首先,该方法从稀疏的SFM点初始化,并通过可微栅格化,迭代优化高斯参数的颜色损失。在迭代过程中,使用
选择性细化策略
来决定高斯是否达到稳态,并对非稳态高斯进行细化。通过多次细化后,获得的高斯数量少于原始 3DGS,但仍存在冗余。因此,使用
高斯修剪策略
移除辅助高斯,并将它们的工作转移到其他高斯。在迭代过程中,为高斯应用
稀疏阶数递增策略
,仅在修剪后增加阶数,从而显著减少了GPU内存压力。然后,每隔几个迭代,根据每个高斯的需求程度,逐渐增加 SH 阶数。最终获得EfficientGS模型进行场景表示。
3.1、选择性高斯细化策略
该策略的核心思想是只对非稳态高斯进行细化,以减少高斯数量并提高渲染质量。具体来说,该方法首先将高斯分为稳态和非稳态两类。稳态高斯已经很好地表示了它覆盖的像素颜色,而非稳态高斯则需要进一步细化以更好地表示场景细节。
为了判断一个高斯是否处于稳态,计算了所有覆盖该高斯的像素在视空间位置梯度模长的总和,记为Sg。如果Sg大于阈值τs,则认为该高斯处于非稳态,需要进一步细化。这里的数学原理是通过总和来反映该高斯是否已经收敛到稳定状态,而稳态高斯对应的Sg值较小。
在细化过程中,对于非稳态高斯,根据其尺度决定是否克隆或分裂该高斯。通过这种方式,该方法可以有效地避免对稳态高斯的细分,从而减少冗余高斯数量,同时保持高质量的渲染效果。这一策略的关键在于通过Sg判断高斯是否稳定,从而有选择地进行细化,避免了无意义的细分,并提高了渲染效率。
3.2、高斯修剪策略
该策略旨在移除对视线贡献最小的冗余高斯。具体来说,在渲染过程中,对于像素p发出的视线,计算每个高斯gi对像素p的权重贡献:
其中,αi为高斯gi的透明度,Np为覆盖像素p的高斯集合。经过实验观察,发现每个视线会穿过大量高斯点,其中大多数的权重贡献非常低,只有少数主导高斯贡献较大。这些主导高斯对应真实三维空间中的物体,而那些在任意视线上都不是主导的高斯则是相邻主导高斯的辅助高斯,它们只是承担了一些应该属于主导高斯的工作,从而在场景表示中存在冗余。
为了使场景表示更加高效,只保留对每个视线贡献最大的主导高斯。对于每个视线,根据权重对高斯进行排序,只保留权重最大的前K个高斯作为主导高斯,即只保留高斯g:
对于所有图像的所有像素,只要一个高斯对某个像素是主导的,就保留该高斯。这样,那些辅助高斯将被删除。在删除后,继续优化主导高斯的颜色,逐渐将辅助高斯的工作转移给主导高斯。该策略的数学原理在于计算每个高斯对视线的权重贡献,并通过排序和筛选保留贡献最大的主导高斯,移除那些对渲染没有实质贡献的辅助高斯,从而减少冗余并提高渲染效率。
3.3、高斯稀疏阶数递增策略
高斯稀疏阶数递增策略,旨在减少高斯存储和计算需求。具体来说,由于每个高斯都带有三阶球谐函数,这导致了巨大的存储和计算开销。为了减少这种冗余,采用稀疏的阶数递增策略。首先,将球谐函数的阶数设为0,仅在修剪冗余高斯后逐步增加阶数,这大大减少了GPU内存峰值压力。增加阶数的目的是为了更好地表示复杂颜色模型,并更好地展现不同视角的颜色差异。基于这一逻辑,计算了每个高斯在训练视图中与真实颜色的差异,并选择性增加差异较大的高斯球谐函数的阶数。
具体地,对于第k个高斯g,计算其在所有训练视图中的颜色差异dk:
其中,M是训练图像集合,Np是覆盖像素p的高斯集合,weightkp是高斯g对像素p的权重,Cp和Cgtp分别是像素p的真实颜色和由高斯g渲染的颜色。
接着,将所有高斯按颜色差异dk从大到小排序,并选择dk最大的前rs%的高斯进行阶数增加。这些高斯被认为对更高阶的球谐函数有更高的需求,因此它们的阶数增加1。该稀疏阶数递增策略每几个迭代执行一次,共执行3次。这种策略的数学原理在于,它通过计算颜色差异来评估每个高斯对更高阶球谐函数的需求,并选择性增加那些需求最大的高斯阶数。这样可以减少冗余的球谐函数参数,降低存储和计算开销。通过排序和筛选,该方法可以确保增加的阶数真正为渲染质量带来提升。
4、实验结果
在常见的小规模场景数据集上评估EfficientGS,包括Mip-NeRF 360、Tanks & Temples和Deep Blending数据集。结果表明,EfficientGS可以保证与原始3DGS相同的渲染质量,同时显著提高渲染速度、训练速度,并大幅降低存储开销。
在大规模场景数据集上评估EfficientGS,包括Mill19数据集中的Building和Rubble场景,以及自采集的Foothill-Town数据集。结果显示,EfficientGS在保证高质量渲染的同时,可以实现实时渲染和更快的训练速度,相比原始3DGS和基于NeRF的大规模场景方法,具有明显的优势。
进行了详细的消融实验,验证了选择性高斯细化、高斯修剪和稀疏球谐函数阶数递增策略的效果。实验证明,这些策略可以减少高斯数量,提高渲染速度,降低存储和计算开销,并保证渲染质量。
实验结果表明,EfficientGS可以同时保证快速训练、高速渲染、低存储消耗、低GPU内存开销和高质量渲染,并在各种规模和分辨率的数据集上具有良好的泛化能力。
5、结论
本文提出了一种名为EfficientGS的高效基于高斯的三维场景表示方法,旨在解决原始3DGS在处理大规模高分辨率场景时的计算和存储瓶颈问题。EfficientGS的核心创新点包括:1.
选择性高斯细化策略
,通过判断高斯是否达到稳态来选择性地增加高斯数量,从而减少冗余并提高渲染质量。2.
高斯修剪策略
,通过移除辅助高斯来减少冗余,提高渲染效率。3.
稀疏球谐函数阶数递增策略
,在训练过程中逐步增加球谐函数阶数,以减少冗余计算和存储。实验证明,EfficientGS相比原始3DGS,可以大幅降低训练和渲染时间,同时保证渲染质量,并在多个规模和分辨率的数据集上具有良好的泛化能力。
本文仅做学术分享,如有侵权,请联系删文。
3DCV技术交流群
目前我们已经建立了3D视觉方向多个社群,包括
2D计算机视觉
、
大模型
、
工业3D视觉
、
SLAM
、
自动驾驶
、
三维重建
、
无人机
等方向,细分群包括:
2D计算机视觉:
图像分类/分割、目标/检测、医学影像、GAN、OCR、2D缺陷检测、遥感测绘、超分辨率、人脸检测、行为识别、模型量化剪枝、迁移学习、人体姿态估计等
大模型:
NLP、CV、ASR、生成对抗大模型、强化学习大模型、对话大模型等
工业3D视觉:
相机标定、立体匹配、三维点云、结构光、机械臂抓取、缺陷检测、6D位姿估计、相位偏折术、Halcon、摄影测量、阵列相机、光度立体视觉等。
SLAM
:
视觉SLAM、激光SLAM、语义SLAM、滤波算法、多传感器融合、多传感器标定、动态SLAM、MOT SLAM、NeRF SLAM、机器人导航等。
自动驾驶:
深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器、多传感器标定、多传感器融合、自动驾驶综合群等、3D目标检测、路径规划、轨迹预测、3D点云分割、模型部署、车道线检测、BEV感知、Occupancy、目标跟踪、端到端自动驾驶等。
三维重建:
3DGS、NeRF、多视图几何、OpenMVS、MVSNet、colmap、纹理贴图等
无人机:
四旋翼建模、无人机飞控等
除了这些,还有
求职
、
硬件选型
、
视觉产品落地
、
最新论文
、
3D视觉最新产品
、
3D视觉行业新闻
等交流群
添加小助理: dddvision,备注:
研究方向+学校/公司+昵称
(如3D点云+清华+小草莓)
, 拉你入群。
▲长按扫码添加助理
3D视觉知识星球
3D视觉从入门到精通知识星球、国内成立最早的3D视觉学习交流社区。包括:
星球视频课程近20门(价值超6000)
、
项目对接
、
3D视觉学习路线总结
、
最新顶会论文&代码
、
3D视觉行业最新模组
、
3D视觉优质源码汇总
、
书籍推荐
、
编程基础&学习工具
、
实战项目
&作业
、