论文阅读:Enhanced 3D Urban Scene Reconstruction and Point Cloud Densification using Gaussian Splatting and Google Earth Imagery
Abstract
尽管基于大规模遥感图像的3D城市场景重建和建模对于数字孪生和智能城市等许多关键应用至关重要,但由于异构数据集和几何模型的不确定性,这是一个困难的任务。本文提出了一种基于高斯溅射的方法,用于3D城市场景建模和几何检索,贡献如下。首先,我们开发并实现了一种大规模3D城市场景建模的3D高斯溅射(3DGS)方法。其次,我们在提出的3DGS模型中设计了点云密集化方法,以提高城市场景3D几何提取的质量。利用不同传感器的Google Earth图像,我们在加拿大滑铁卢大学地区对该方法进行了测试,证明了与其它多视图立体(MVS)方法相比,所提出方法在重建点云质量上的显著提高。第三,我们设计并进行了广泛的实验,使用跨越十个城市的多源大规模Google Earth遥感图像,比较了3DGS方法与神经辐射场(NeRF)方法,证明了在新视图合成结果上的巨大改进,大大超过了以前的最先进3D视图合成方法。
1. Introduction
3D重建和建模从2D图像中获取最近由于在逼真视图合成方法方面取得的进展而受到了极大的关注。这是一个跨学科的研究领域,涵盖了计算机视觉、计算机图形学和摄影测量学。它在多个领域都有应用,包括辅助3D场景理解的自主导航、遥感和摄影测量用于制作3D地图,这些地图对于导航、城市规划和行政至关重要。此外,它还扩展到地理信息系统,整合了城市数字孪生,以及增强现实和虚拟现实平台,这些平台整合了逼真的场景重建。本文专注于基于3D高斯溅射的遥感大规模视图合成,以及从高斯溅射中提取3D几何。我们仅使用Google Earth Studio的图像,训练了一个3D高斯溅射模型,该模型在性能上超越了以往的NeRF模型。我们在由Google Earth捕获的10个城市的大规模城市数据集上量化和基准测试了视图合成性能,并提取并密集化了我们研究区域的3D几何,与多视图立体密集重建进行了比较。据我们所知,这是首次使用3D高斯溅射进行大规模遥感基础的3D重建和视图合成。
2. Back Ground and Related Work
2.1. Urban 3D Photogrammetry
摄影测量(Photogrammetry)从2D图像中提取3D几何形状和潜在的其他物理信息。基于遥感的城市摄影测量用于3D城市建模,依赖于无人机/航空平台/卫星,这些平台以斜视/非垂直角度捕获感兴趣的建筑物。这通常被称为斜视摄影测量。在大规模场景中,可能还会存在其他土地利用和土地覆盖,这会带来额外的挑战。地面和航空激光雷达扫描仪(LiDAR)也可以用来生成非常精确的3D模型,有时与基于图像的方法结合使用。然而,总体而言,图像在传感器和数据可用性方面更易于获取。
传统的(非基于深度学习的方法)从图像生成3D点云/几何形状被分为两种类型:从运动结构(SfM)生成稀疏点云,和多视图立体(MVS)生成密集点云(Musialski等人,2013)。最基本的方法可能是从运动结构,它依赖于多视图几何和投影几何来建立3D点与它们在成像平面上的2D投影之间的关系。在每个2D图像中提取关键点,并在具有场景重叠的图像中匹配,然后三角化到三维空间,并且通常使用捆绑平差或其他方法进一步校准/误差校正,从而产生稀疏点云3D重建。然后,可以将稀疏点云网格化和/或转换为数字曲面模型。稀疏SfM摄影测量通常被用作预处理步骤,如各种工作(Yalcin和Selcuk,2015;Langua等人,2017)所示,以帮助利用3D扫描的点云进行进一步的密集重建或数据融合。稀疏SfM点云只能检索场景几何图形,不能再现场景的真实感三维光照,这对于基于AR/VR的应用以及其他严重依赖可视化的应用来说是至关重要的。
在城市环境中,多视图立体(MVS)也需要斜视图像来捕获建筑物及其外立面的几何形状。从根本上说,多视图立体与稀疏SfM摄影测量不同,因为MVS旨在通过利用2D图像中每个像素的3D信息来实现密集重建,与2D图像中特定关键点不同。这可以通过使用各种方法来完成,例如平面扫描或立体视觉和深度图融合,甚至深度学习方法。MVS方法通常分为两类:基于体积的和基于点云的(Musialski等人,2013;Jensen等人,2014)。各种作者(Yalcin和Selcuk,2015;Toschi等人,2017;Lingua等人,2017;Rong等人,2020;Pepe等人,2022;Liao等人,2024)已经使用MVS进行了密集的城市3D重建,这也可以被网格化用于数字表面建模和地球物理模拟等不同目的。然而,与稀疏SfM摄影测量相比,密集MVS摄影测量在计算上更为密集,尤其是在内存方面。此外,密集MVS摄影测量通常需要稀疏SfM摄影测量,或者至少需要从稀疏SfM摄影测量中获得的相机姿态作为预处理步骤。尽管密集重建在视觉上比稀疏重建更具吸引力,但它们仍然不是照片级的,因为它们不能模拟场景中光线的方向依赖性。
2.2. Neural Radiance Fields and Urban 3D Reconstruction/View synthesis
近年来,基于神经辐射场的方法(NERF)(Mildenhall等人,2021)主导了新的视点合成领域。在场景的姿态图像上进行训练,NERF方法使用可区分的渲染过程来学习隐式(Barron等人,2021,2022)或混合场景表示(Müller等人,2022),通常作为密度和方向颜色场,并且通常使用一些多层感知器(MLP)。然后,使用可微分体绘制过程将场景表示绘制成2D图像,从而允许通过使用光度损失的反向传播的逐个像素的监督学习来学习场景表示。某些显式场景表示模型(Yu等人,2021年;Fridovich-Keil等人,2022年;Chen等人,2022年)使用几乎相同的可区分渲染流水线,但显式地存储它们的场景表示,放弃使用解码MLP(尽管这些方法中的一些允许使用浅解码MLP,模糊了显式和混合场景表示之间的界限)。
为了合成图像,NeRF方法采用可微体渲染,使用沿着采样间隔
δ
i
\delta _i
δi的射线的局部密度
σ
i
\sigma_i
σi,通过局部颜色
c
i
c_i
ci的阿尔法混合来生成像素颜色
C
C
C 。这是由
C
=
∑
i
c
i
α
i
T
i
C=\sum_ic_i\alpha_iT_i
C=i∑ciαiTi
其中
c
i
c_i
ci和
σ
i
\sigma_i
σi是从学习到的辐射场(例如NeRF MLP)中采样的,并且
α
i
=
1
−
exp
(
−
σ
i
δ
i
)
a
n
d
T
i
=
∏
j
=
1
i
−
1
(
1
−
α
j
)
\alpha_i=1-\exp(-\sigma_i\delta_i)\mathrm{~and~}T_i=\prod_{j=1}^{i-1}(1-\alpha_j)
αi=1−exp(−σiδi) and Ti=j=1∏i−1(1−αj)
城市场景、不受约束、充满短暂对象(例如行人、汽车)以及不断变化的照明条件对3D场景表示的学习构成了挑战。方法,例如NeRF-W(Martin-Brualla等人,2021年)、Mip-NeRF 360(Barron等人,2022年)、Block-NeRF(Tancik等人,2022年)、Urban Radiance Fields(Rematas等人,2022年)提出了其中一些问题的解决方案,适合地面视图合成和3D城市重建。
还尝试使用Bungee/City-NeRF等方法从遥感图像中进行鸟瞰图3D重建和视图合成(Xiangli等人,2022年)、MegaNeRF(Turki等人,2022年)、Shadow NeRF(Derksen和Izzo,2021年)、Sat-NeRF(Marí等人,2022年)。这些方法试图解决诸如将局部NeRF拼凑成大规模城市场景、多规模城市景观合成以及高层建筑的阴影感知场景重建等问题。BungeeNeRF(Xiangli等人,2022年)很有趣,因为我们使用类似的方法从我们的研究区域提取Google Earth数据集。
2.3. 3D Gaussian Splatting
3D高斯溅射(3DGS)最初是在2023年作为与现有NeRF视图合成方法相竞争的视图合成方法开发的。与标准的NeRF方法相比,标准的高斯溅射方法学习3D场景并合成新视图的速度要快几个数量级,并且在视图合成的视觉质量方面与最佳NeRF模型相当,常常还能超越,这是以更大的内存占用和需要从运动结构(Structure-from-Motion, SfM)初始化/预处理为代价的。工作流程在图1中可视化展示。
SfM预处理正是标准的稀疏摄影测量过程,它识别2D关键点、匹配重叠图像、将关键点三角测量为3D,并通过束平差或其他方法进行误差纠正。与标准摄影测量有时可以将图像颜色投影为平坦(无光照)的3D点云颜色相比,3DGS能够逼真地再现场景的方向相关照明,这对于许多应用来说至关重要。它还能够使用光测(基于颜色的)目标针对地面真实图像微调场景的几何形状,而不是仅最大限度地减少摄影测量中的重投影误差。与NeRF模型相比,3DGS生成更自然的3D几何形状,所学习的3D高斯函数的3D位置平均值与场景几何形状的3D点云表示之间具有自然的对应关系。
3D高斯飞溅方法将场景表示为3D高斯函数,并将照明表示为附加到这些高斯的球调和(SH)系数,通过基于可微瓦片的高斯网格化器生成2D图像;基于新视图姿势的视锥将高斯投影到二维中,将投影高斯投影到二维中,按字母顺序排列投影高斯以在新视图中产生每像素的颜色。根据地面真值图像来监督新颖的视图,以训练高斯飞溅参数。据我们所知,这是第一个尝试使用3D高斯飞溅的大规模基于遥感的3D重建和视图合成的工作,然而最近的工作(Kerbel等人,2024年;周等人,2024)已将高斯飞溅应用于大规模城市街道级数据集。
3. Method
3.1. Region of Study
研究的地区是加拿大安大略省的基奇纳-滑铁卢(Kitchener-Waterloo)地区,以滑铁卢大学为中心。根据2021年的人口普查,滑铁卢大约有121000人口,占地64.06平方公里(加拿大统计局,2023年)。滑铁卢大学位于北纬43.472°,西经80.550°,主校区占地4.5平方公里。在城市尺度上,研究区由各种土地利用和土地覆盖特征组成,如城市道路、建筑、农业和其他土地利用、低植被、水域、温带混交林和其他土地覆盖。研究区域以环境一号(EV-1)大楼为中心(位于北纬43.468°,西经80.542°),面积约165km2。我们在城市尺度上进行大尺度的视点合成,在邻域尺度上进行三维点云比较。为该场景检索的谷歌地球图像主要来自陆地卫星/哥白尼号、空中客车公司、Data Scripps海洋学研究所(SIO)和美国国家海洋和大气管理局(NOAA)。
3.2. Google Earth Studio Datasets
对于研究区域,我们使用了七个不同高度、半径和倾角的同心圆作为相机路径,以加拿大安大略省滑铁卢大学的EV-1大楼为中心。第一个圆圈半径为500米,海拔为475米。最后一个圆圈半径为7,250米,海拔为3,690米。所有图像都指向位于北纬43.468°,西经80.542°的滑铁卢大学EV-1大楼上方(海拔390米)。最后一个圆圈的图像相对于水平线倾斜约65°,但有一些偏差(在∼0.3°范围内)。我们使用Google Earth Studio沿着使用这些圆圈定义的相机路径收集了401张图像。研究区域和摄像机姿势以及稀疏的SfM结果如图2所示。在预处理过程中,我们观察到距离场景中心6公里以上的SfM点云重建效果较差,6公里内的SfM重建合理,1公里内可以识别出单个建筑物的SfM重建结果良好。SfM前处理得到了包含337382个点的稀疏点云,用于初始化3DGS的三维高斯函数。这个多比例尺Google Earth Studio(Alphabet Inc.,2015-2024年)数据集的灵感来自BungeeNeRF数据集(向力等人,2022年),我们也将其用于多城市大规模视图合成基准。
对于BungeeNeRF场景,我们使用BungeeNeRF(向力等人,2022)指定的Google Earth Studio相机路径。BungeeNeRF数据集包括10个城市的10个场景。每个场景都围绕着一个特定的地标,摄像机路径由不同轨道半径和高度的同心圆定义,场景覆盖范围在最高海拔处达到全市范围。关于10个BungeeNeRF场景和滑铁卢场景的详细信息可以在表1中找到。以伦纳德56号为中心的纽约场景和以泛美航空为中心的旧金山场景作为BungeeNeRF的视图重建基准的主要场景(向力等,2022),分别拥有459和455幅图像。这两个场景是在1:30分钟的视频中以每秒30帧的速度渲染的。所有其他场景包含221个图像,通过在给定固定相机路径的情况下将帧限制固定为220+1进行渲染,并用于其他可视化。我们注意到,最初的BungeeNeRF论文包含两个额外的场景(西德尼和西雅图),但没有为这两个场景提供Google Earth Studio的相机路径。
Google Earth Studio提供了一个平台,只需指定相机姿态和场景位置即可生成多视图航空/卫星图像。Google Earth Studio制作了来自各种政府和商业来源的合成图像,以及使用这些来源的遥感图像构建的3D模型的渲染图像。其中包括Landsat/Copernicus、空客、NOAA、美国海军、USGS、Maxar图像和不同时间拍摄的数据集。在图5右下角的两张图像中可以观察到合成图像的一个明显示例,不同的Water颜色指示不同的数据源和/或采集时间。
3.3. Structure from Motion Preprocessing and Sparse Point Cloud Extraction
3D高斯飞溅的标准实现依赖于COLMAP(Schonberger和Frahm,2016)进行预处理。该SfM预处理收集了一组相机姿态未知的无序图像,并输出每个图像的相机姿态以及稀疏点云。与所有SfM方法一样,COLMAP SfM由以下步骤组成。
特征提取(Feature Extraction):在这一步骤中,对于每个图像 I i I_i Ii,识别关键点 x j ∈ R 2 x_j\in R^2 xj∈R2,并分配稳健视图不变局部特征 f j ∈ R n f_j\in R^n fj∈Rn。缩放不变特征变换(SFT)特征(Lowe,1999)在COLMAP中用作默认设置,并提供稳健的特征,允许在多个图像中将相同的3D点识别为相应的投影2D关键点。匹配(Matching):通过搜索图像及其各自的特征,识别具有匹配关键点特征的潜在重叠图像对。
几何验证(Geometric Verification):通过验证潜在重叠图像对来构建具有连接重叠图像的节点和边缘图像的场景图。该验证是通过使用稳健的估计技术(例如Fischler和Bolles(1981)的随机样本共识(RASAC)的变体)来估计潜在连接的图像对中的有效单应性来完成的。
**图像配准(Image Registration):**从关键点被三角测量成3D的起始图像对,通过解决Pespective-n-Point问题(Fischler和Bolles,1981),将给定场景图具有重叠的新图像添加到场景中,该问题在给定多个3D点及其2D投影的情况下估计相机姿态。该步骤稳健地估计新注册图像的姿态。
三角测量(Triangulation):给定从两张已知姿势的图像中观察到的关键点,关键点被三角测量(Hartley和Zisserman,2003)为3D。新配准的图像通过允许将更多关键点三角测量到3D重建中来扩展场景。
误差纠正(Error-Correction):为了纠正配准和三角测量中的误差,束平差(Triggs等人,2000年)是通过在最小化由3D点在图像平面上的重新投影的平方误差给出的重新投影损失
E
E
E期间联合优化相机位姿
P
c
∈
S
E
3
P_c\in SE3
Pc∈SE3和3D点
X
k
∈
R
3
X_k\in R^3
Xk∈R3来执行的,该重新投影损失
E
E
E 由3D点在图像平面上的重新投影
π
P
c
(
X
k
)
\pi_{P_c}(X_k)
πPc(Xk)相对于像素值
x
j
∈
R
2
x_j\in R^2
xj∈R2 的平方误差给出。有:
E
=
∑
j
ρ
j
(
π
P
c
(
X
k
)
−
x
j
)
2
E=\sum_j\rho_j(\pi_{P_c}(X_k)-x_j)^2
E=j∑ρj(πPc(Xk)−xj)2
Schonberger和Frahm(2016)引入了各种创新,改进了几何验证,提高了初始化和三角测量的稳健性,引入了次佳视图选择方法以及迭代且更有效的束平差方法,从而产生了COLMAP SfM库。
3.4. Multi-View-Stereo Dense 3D reconstruction
我们用作研究区域的地面真值/参考几何形状的MVS密集重建是从COLMAP的MVS算法中检索的(Schönberger等人,2016年)。该方法基于联合视图选择和深度图估计(Zheng等人,2014年)。该方法总结如下。
深度和法向地图估计(Depth and normal map estimation):使用联合似然函数估计参考图像
X
r
e
f
X^{ref}
Xref 中像素
l
l
l 处的深度
θ
l
∈
R
1
\theta_l \in R^1
θl∈R1和法向
n
l
∈
R
3
n_l \in R^3
nl∈R3。
X
=
{
X
r
e
f
,
X
1
,
.
.
.
X
m
,
.
.
.
X
M
}
\boldsymbol{X}=\{X^{\boldsymbol{re}f},X^1,...X^m,...X^M\}
X={Xref,X1,...Xm,...XM} 是所有图像的集合(其中一个图像作为源图像,其余图像作为参考图像)。
Z
=
{
Z
l
m
∣
l
=
1...
L
,
m
=
1...
M
}
Z = \{Z_{l}^{m}|l = 1...L,m = 1...M\}
Z={Zlm∣l=1...L,m=1...M} 是一组遮挡指示符(occlusion indicators),如果选择图像
X
m
X^m
Xm来进行
X
r
e
f
X^{ref}
Xref中像素
l
l
l 的深度估计,则
Z
l
m
=
1
Z^m_l=1
Zlm=1,否则如果被遮挡,则
Z
l
m
=
0
Z^m_l = 0
Zlm=0。
θ
=
{
θ
l
∣
l
=
1...
L
}
\theta = \{\theta_{l}|l = 1...L\}
θ={θl∣l=1...L}是
X
r
e
f
X^{ref}
Xref 的每个像素
l
l
l 处要恢复的深度。
N
=
{
n
l
∣
l
=
1...
L
}
N = \{n_l|l = 1...L\}
N={nl∣l=1...L} 是也要恢复的
X
r
e
f
X^{ref}
Xref的正常值。有:
P
(
X
,
Z
,
θ
,
N
)
=
∏
l
∏
m
[
P
(
Z
l
,
t
m
∣
Z
l
−
1
,
t
m
,
Z
l
,
t
−
1
m
)
P
(
X
l
m
∣
Z
l
m
,
θ
l
,
n
l
)
P
(
θ
l
,
n
l
∣
θ
l
m
,
n
l
m
)
]
P(X,Z,\theta,N)=\prod_l\prod_m[P(Z_{l,t}^m|Z_{l-1,t}^m,Z_{l,t-1}^m) P(X_l^m|Z_l^m,\theta_l,n_l) P(\theta_l,n_l|\theta_l^m,n_l^m)]
P(X,Z,θ,N)=l∏m∏[P(Zl,tm∣Zl−1,tm,Zl,t−1m)P(Xlm∣Zlm,θl,nl)P(θl,nl∣θlm,nlm)]
其中
m
m
m为输入图像的索引,
l
l
l 索引参考图像
X
r
e
f
X^{ref}
Xref 中的像素或patch,
t
t
t 表示优化迭代。第一项
P
(
Z
l
,
t
m
∣
Z
l
−
1
,
t
m
,
Z
l
,
t
−
1
m
)
P(Z_{l,t}^m|Z_{l-1,t}^m,Z_{l,t-1}^m)
P(Zl,tm∣Zl−1,tm,Zl,t−1m) 强制执行空间上光滑和时间上(就优化步骤而言)一致的遮挡地图。第二项
P
(
X
l
m
∣
Z
l
m
,
θ
l
,
n
l
)
P(X_l^m|Z_l^m,\theta_l,n_l)
P(Xlm∣Zlm,θl,nl) 强制参考图像和源图像之间的光调一致性。第三项
P
(
θ
l
,
n
l
∣
θ
l
m
,
n
l
m
)
P(\theta_l,n_l|\theta_l^m,n_l^m)
P(θl,nl∣θlm,nlm) 强制执行与多视图几何形状一致的深度和法向图。读者可参阅Schönberger等人(2016)了解每个项联合似然函数及其优化过程的构建。
过滤和融合(Filtering and fusion):首先,根据上一步估计每个图像的深度和法线贴图。导出了光度和几何约束,并将其用于过滤离群点,其中支持集(support set) S l = { x l m } S_l = \{x^m_l\} Sl={xlm}满足几何和光度约束的观测 x l x^l xl 都少于3个元素(即在至少3个其他图像中同时满足这两个约束的情况下可以观察到参考像素)。定义了一致像素的有向图 ,支其中支持的像素作为节点,边从参考指向源图像。融合在具有最大支持度的节点处初始化(由最多源图像观察到,同时满足光学和几何约束)。递归地,在深度一致性约束、正常一致性约束和重投影误差界限约束下收集连接的节点。当不再有满足所有3个约束的节点时,集合的元素被融合。融合点成为输出密集点云的一部分,在集合的元素上具有位置 p j p_j pj 和法线平均 n j n_j nj。从图中剔除融合的节点,并重复该过程,直到图为空。最终输出是带有法线的密集点云,可以像我们所做的那样通过泊松曲面重建(Kazhdan and Hoppe,2013)进行网格化,或者根据需要使用其他方法。
3.5. 3D Gaussian Splatting
3D高斯飞溅(Kerbll等人,2023),我们在本小节中简要描述,用作我们在研究区域和基准中的3D城市重建和视图合成实验的基础。
从场景的2D图像中,3D高斯Splating学习场景几何并将其表示为(非正规化)3D高斯函数,其平均值
μ
∈
R
3
\mu\in R^3
μ∈R3 和3 x 3协方差矩阵
Σ
\Sigma
Σ 由下式给出
G
(
x
)
=
e
−
1
2
(
x
−
μ
)
T
Σ
−
1
(
x
−
μ
)
G(x)=e^{-\frac12(x-\mu)^T\Sigma^{-1}(x-\mu)}
G(x)=e−21(x−μ)TΣ−1(x−μ)
场景照明和颜色被学习为附加到每个高斯的每个颜色通道的三阶球调和系数。每个高斯还被分配一个局部(圆锥)不透明度
σ
\sigma
σ。与3D均值和协方差矩阵相结合,得到每个高斯总共59个可训练参数。3D协方差矩阵
Σ
\Sigma
Σ 被学习为3D对角缩放矩阵
S
S
S,以及由四元数
(
r
,
i
,
j
,
k
)
(r, i, j, k)
(r,i,j,k) 表示的旋转,然后可以使用其来重建3D旋转矩阵
R
R
R ,如下
R
=
[
1
−
2
(
j
2
+
k
2
)
2
(
i
j
−
k
r
)
2
(
i
k
+
j
r
)
2
(
i
j
+
k
r
)
1
−
2
(
i
2
+
k
2
)
2
(
j
k
−
i
r
)
2
(
i
k
−
j
r
)
2
(
j
k
+
i
r
)
1
−
2
(
i
2
+
j
2
)
]
R=\begin{bmatrix}1-2(j^2+k^2)&2(ij-kr)&2(ik+jr)\\2(ij+kr)&1-2(i^2+k^2)&2(jk-ir)\\2(ik-jr)&2(jk+ir)&1-2(i^2+j^2)\end{bmatrix}
R=
1−2(j2+k2)2(ij+kr)2(ik−jr)2(ij−kr)1−2(i2+k2)2(jk+ir)2(ik+jr)2(jk−ir)1−2(i2+j2)
然后,3D协方差矩阵由下式给出:
Σ
=
R
S
S
T
R
T
\Sigma=RSS^TR^T
Σ=RSSTRT
首先使用COLMAP等运动库中的结构计算稀疏初始点云和训练图像相机姿态(Schonberger和Frahm,2016)。在稀疏点云中的每个点处初始化高斯,并使用基于可微图块的网格化器进行训练。
3.5.1. Rasterization
基于磁贴(tile-based)的网格化器将图像磁贴为16 x 16。对于每个图块,视锥投影到3D场景中。根据与视锥台的重叠,按图块累积/分配3D高斯,并通过其协方差矩阵
Σ
\Sigma
Σ 的投影到2D中。从齐次坐标开始,这由下式给出
Σ
′
=
J
W
Σ
W
T
J
T
\Sigma^{\prime}=JW\Sigma W^TJ^T
Σ′=JWΣWTJT
其中
W
W
W 是视图变换,
J
J
J 是投影变换的仿射逼近。对于线性相机模型(例如与标准3DGS模型一起使用的针孔模型),投影变换是齐次坐标中的矩阵相乘。在这种情况下,
J
J
J 可以简单地从固有相机矩阵中获得。然后跳过
μ
′
\mu'
μ′的第三列以及
Σ
′
\Sigma'
Σ′ 的第三行和第三列,以获得直角坐标中的成像平面中的2D均值和2D协方差矩阵。
然后根据瓷砖和深度对高斯进行排序。对于图块中的每个像素,像素的颜色是通过Alpha混合使用学习的SH系数累积场景内方向相关颜色来生成的。对于要混合在一起的每个高斯,通过评估由其相关学习的不透明度
α
i
\alpha_i
αi 缩放的相关2D高斯来给出像素位置
x
x
x 处的每个
α
i
\alpha_i
αi。
α
i
(
x
)
=
a
i
G
2
D
(
x
)
\alpha_i(x)=a_iG_{2D}(x)
αi(x)=aiG2D(x)
其中
G
2
D
(
⋅
)
G_{2D}(\cdot)
G2D(⋅)是通过(3.5.1)投影到2D维度和图像平面上的高斯(7)。
网格化器生成图像,使用光测
L
1
L_1
L1损失和
L
D
−
S
S
I
M
L_{D-SSIM}
LD−SSIM(结构相似性指数测量(D-SSIM)的差)与地面真值图像进行比较(Wang等人,2004年)损失通过
L
=
(
1
−
λ
)
L
1
+
λ
L
D
−
S
S
I
M
L=(1-\lambda)L_1+\lambda L_{D-SSIM}
L=(1−λ)L1+λLD−SSIM
其中参数
λ
\lambda
λ为可调加权参数,默认为0.2。可训练参数通过可微网格化进行反向传播,并使用Adam进行优化(Kingma和BA,2014)。
3.5.2. Densification and Pruning
3D高斯飞溅还可以在具有高视图空间位置梯度的区域中致密/生长新的高斯(默认阈值 τ p o s > 2.0 × 1 0 − 4 \tau pos > 2.0\times 10^{-4} τpos>2.0×10−4)。这些区域对应于几何特征缺失的街区和覆盖场景大面积区域的少数高斯的区域。具有视图空间位置梯度的低方差高斯被复制。另一方面,高方差高斯被分成两部分,标准差除以因子1.6。这在图3中得到了说明。
不重要的高斯也被修剪。删除本质上透明且不透明度小于某个用户定义的阈值( a < ϵ a a<\epsilon_a a<ϵa,默认值为5e-3)的高斯。每3000次迭代(或用户选择的其他次数),每个高斯的不透明度都会被设置为零,然后允许重新优化,然后在需要时进行剔除。该过程控制漂浮物的数量,并帮助控制高斯的总数。我们相信,如果有良好的数据集,这种致密化和密度控制过程可以允许与密集重建相比密度和潜在质量相似的点云重建。
3.6. Evaluation Metrics
对于合成图像的质量,我们使用峰值信号与噪音比(PSNR)、结构相似性指数测量(SSIM)(Wang等人,2004年)和习得的感知图像补丁相似性(LPIPS)(Zhang等人,2018)作为将生成的视图与地面真相视图进行比较的完整参考图像评估指标。PSNR是是否存在噪音和视觉伪影的良好指标,而SSIM和LPIPS已被证明与人类对图像与其参考图像的视觉相似性的判断更好地相关。
对于点云几何评估,我们使用了点到点(D1)均方误差(SSE)、点到面(D2)均方误差、豪斯多夫距离、切弗距离,所有这些都将质量较低的点云与其参考点云进行比较。我们注意到,D1和D2 SSE等指标不会惩罚点密度的差异,而只惩罚现有点与地面真值/参考点的偏差。另一方面,Chamfer距离和Hausdorff距离更好地捕捉点分布之间的差异,包括点密度的差异。
4. Experiments and Results
4.1. Experiment Setup
COLMAP预处理和3D高斯飞溅优化均在配备10 GB VRAM的3080 RTX图形处理器、i9- 10900 KF处理器、PyTorch版本2.1.1和CUDA工具包版本12.1上执行。我们注意到,图形处理器VRAM的限制尤其重要,因为在使用3D高斯飞溅时,总是有可能增加越来越多的高斯,以牺牲内存和存储来实现越来越高的视觉重建质量。
4.2. 3D Novel View Synthesis of the Region of Study
对于研究区域,我们使用COLMAP SfM(Schonberger和Frahm,2016)预处理,并从400张二维图像中提取了3D点和相机姿态。使用MipNeRF 360进行实验(Barron等人,2022年)风格训练验证拆分:八分之一的图像(百分比为12.5%)保留用于测试目的。由于图形处理器内存限制,1920 x 1080分辨率的图像在训练期间被缩减了4倍。我们在第1000次迭代时开始加密,并训练了50000次迭代,每100次迭代就加密一次。我们使用的初始位置学习率为3.2 x 10 - 5,规模学习率为2 x 10 - 3。其他训练超参数保留为默认值。
结果如表2和图4所示,以及BungeeNeRF数据集的进一步视图合成实验。我们在训练集和测试集上实现了高视图合成视觉质量。从视觉检查来看,渲染图像与地面真相图像几乎无法区分。视觉评估指标也支持这一点,SSIM评分接近1,LPIPS评分接近0,这表明地面真相和生成的图像之间几乎完美的视觉一致性。30分贝左右的PSNR值也表明图像质量良好和噪音水平较低。这与使用良好的有损压缩算法(Netravali,2013)的全尺寸图像的压缩图像的PSNR相当,考虑到3DGS模型是在1/4分辨率下训练的,这令人印象深刻。