原文链接:https://arxiv.org/pdf/2305.01643.pdf
1. 引言
目前的新视图合成都关注合成图像,而自动驾驶通常依赖激光雷达测量。
传统的激光雷达新视图合成方法主要分两步。首先根据点云提取显式的表面表达(如三角形网孔),然后从新视点发出射线,与表面相交。这类方法会导致离散化伪影,且假设了理想的射线模型,忽略了激光雷达光束的发散性。
激光雷达的一个特点是,激光器并非直接测量距离,而是通过测量光束返回的能量,并根据波形确定距离。这使得可能导致一个发射射线产生多个返回或者不产生任何返回。
本文基于NeRF,提出激光雷达神经场(NFL),直接为新视图合成优化隐式场景表达。此外,本文考虑了激光雷达的测量过程并整合到神经场中,引入光束发散并提出截断体积网格渲染。
3. 背景
3.1 被动传感器的体积网格渲染
密度与透射率:对从原点
o
∈
R
3
o\in\mathbb{R}^3
o∈R3以方向
d
∈
R
3
d\in\mathbb{R}^3
d∈R3发出的射线
r
(
o
,
d
)
r(o,d)
r(o,d),距离
ζ
\zeta
ζ处的密度
σ
ζ
\sigma_\zeta
σζ是标量函数,表示射线在
r
ζ
=
o
+
ζ
d
r_\zeta=o+\zeta d
rζ=o+ζd处(经过单位距离)撞击反射粒子的可能性。透射率
T
ζ
T_\zeta
Tζ是射线从距离区间
[
0
,
ζ
)
[0,\zeta)
[0,ζ)不碰到任何东西的概率。给定射线上的距离微元
d
ζ
d\zeta
dζ,不碰到任何东西的概率
T
ζ
+
d
ζ
=
T
ζ
⋅
(
1
−
σ
ζ
d
ζ
)
T_{\zeta+d\zeta}=T_\zeta\cdot(1-\sigma_\zeta d\zeta)
Tζ+dζ=Tζ⋅(1−σζdζ)。在区间
[
ζ
0
,
ζ
)
[\zeta_0,\zeta)
[ζ0,ζ)上积分,可求得
T
ζ
=
T
ζ
0
exp
(
−
∫
ζ
0
ζ
σ
t
d
t
)
T_\zeta=T_{\zeta_0}\exp(-\int_{\zeta_0}^\zeta\sigma_tdt)
Tζ=Tζ0exp(−∫ζ0ζσtdt)
则射线在区间
[
ζ
0
,
ζ
)
[\zeta_0,\zeta)
[ζ0,ζ)内不受阻碍的概率
T
ζ
0
→
ζ
≡
T
ζ
T
ζ
0
=
exp
(
−
∫
ζ
0
ζ
σ
t
d
t
)
T_{\zeta_0\rightarrow\zeta}\equiv\frac{T_\zeta}{T_{\zeta_0}}=\exp(-\int_{\zeta_0}^\zeta\sigma_tdt)
Tζ0→ζ≡Tζ0Tζ=exp(−∫ζ0ζσtdt)
分解公式:
T
ζ
=
T
ζ
0
⋅
T
ζ
0
→
ζ
T_\zeta= T_{\zeta_0}\cdot T_{\zeta_0\rightarrow\zeta}
Tζ=Tζ0⋅Tζ0→ζ。
在均匀介质上积分:假设射线
[
ζ
j
,
ζ
j
+
1
]
[\zeta_j,\zeta_{j+1}]
[ζj,ζj+1]段的均匀介质有恒定的辐射
c
∈
R
3
c\in\mathbb{R}^3
c∈R3和密度
σ
\sigma
σ,则该段的积累辐射量为
c
(
ζ
j
→
ζ
j
+
1
)
=
c
ζ
j
∫
ζ
j
ζ
j
+
1
T
ζ
j
→
ζ
⋅
σ
ζ
d
ζ
=
α
ζ
j
c
ζ
j
c(\zeta_j\rightarrow\zeta_{j+1})=c_{\zeta_j}\int_{\zeta_j}^{\zeta_{j+1}}T_{\zeta_j\rightarrow\zeta}\cdot\sigma_\zeta d\zeta=\alpha_{\zeta_j}c_{\zeta_j}
c(ζj→ζj+1)=cζj∫ζjζj+1Tζj→ζ⋅σζdζ=αζjcζj
其中
α
ζ
j
=
1
−
exp
(
−
σ
ζ
j
(
ζ
j
+
1
−
ζ
j
)
)
\alpha_{\zeta_j}=1-\exp(-\sigma_{\zeta_j}(\zeta_{j+1}-\zeta_j))
αζj=1−exp(−σζj(ζj+1−ζj))为不透明度。
推导过程:
c ( ζ j → ζ j + 1 ) = c ζ j ∫ ζ j ζ j + 1 T ζ j → ζ ⋅ σ ζ d ζ = c ζ j ∫ ζ j ζ j + 1 exp ( − ∫ ζ j ζ σ t d t ) ⋅ σ ζ d ζ c(\zeta_j\rightarrow\zeta_{j+1})=c_{\zeta_j}\int_{\zeta_j}^{\zeta_{j+1}}T_{\zeta_j\rightarrow\zeta}\cdot\sigma_\zeta d\zeta=c_{\zeta_j}\int_{\zeta_j}^{\zeta_{j+1}}\exp(-\int_{\zeta_j}^\zeta\sigma_tdt)\cdot\sigma_\zeta d\zeta c(ζj→ζj+1)=cζj∫ζjζj+1Tζj→ζ⋅σζdζ=cζj∫ζjζj+1exp(−∫ζjζσtdt)⋅σζdζ
令 f ( ζ ) = exp ( − ∫ ζ j ζ σ t d t ) f(\zeta)=\exp(-\int_{\zeta_j}^\zeta\sigma_tdt) f(ζ)=exp(−∫ζjζσtdt),则
f ′ ( ζ ) = − σ ζ exp ( − ∫ ζ j ζ σ t d t ) f'(\zeta)=-\sigma_\zeta\exp(-\int_{\zeta_j}^\zeta\sigma_tdt) f′(ζ)=−σζexp(−∫ζjζσtdt)
则
c ( ζ j → ζ j + 1 ) = − c ζ j ∫ ζ j ζ j + 1 f ′ ( ζ ) d ζ = − c ζ j f ( ζ ) ∣ ζ = ζ j ζ j + 1 = − c ζ j [ exp ( − ∫ ζ j ζ j + 1 σ t d t ) − 1 ] = c ζ j ( 1 − exp ( − σ ζ j ( ζ j + 1 − ζ j ) ) c(\zeta_j\rightarrow\zeta_{j+1})=-c_{\zeta_j}\int_{\zeta_j}^{\zeta_{j+1}}f'(\zeta)d\zeta=-c_{\zeta_j}f(\zeta)|_{\zeta=\zeta_j}^{\zeta_{j+1}}=-c_{\zeta_j}[\exp(-\int_{\zeta_j}^{\zeta_{j+1}}\sigma_tdt)-1]=c_{\zeta_j}(1-\exp(-\sigma_{\zeta_j}(\zeta_{j+1}-\zeta_j)) c(ζj→ζj+1)=−cζj∫ζjζj+1f′(ζ)dζ=−cζjf(ζ)∣ζ=ζjζj+1=−cζj[exp(−∫ζjζj+1σtdt)−1]=cζj(1−exp(−σζj(ζj+1−ζj))
体积网格渲染:将射线分为
N
N
N个片段,每个片段有恒定密度和辐射值,则总的辐射度为
c
=
∑
j
=
1
N
∫
ζ
j
ζ
j
+
1
T
ζ
⋅
σ
ζ
c
ζ
d
ζ
=
∑
j
=
1
N
w
j
c
ζ
j
c=\sum_{j=1}^N\int_{\zeta_j}^{\zeta_{j+1}}T_{\zeta}\cdot \sigma_\zeta c_{\zeta} d\zeta=\sum_{j=1}^Nw_jc_{\zeta_j}
c=j=1∑N∫ζjζj+1Tζ⋅σζcζdζ=j=1∑Nwjcζj
其中
w
j
=
α
ζ
j
∏
k
=
1
j
−
1
(
1
−
α
ζ
k
)
w_j=\alpha_{\zeta_j}\prod_{k=1}^{j-1}(1-\alpha_{\zeta_k})
wj=αζj∏k=1j−1(1−αζk)为第
j
j
j个片段的权重。
推导过程:
c = ∑ j = 1 N ∫ ζ j ζ j + 1 T ζ ⋅ σ ζ c ζ d ζ = ∑ j = 1 N T ζ j ∫ ζ j ζ j + 1 T ζ j → ζ ⋅ σ ζ c ζ d ζ = ∑ j = 1 N ( ∏ k = 1 j − 1 T ζ k → ζ k + 1 ) α ζ j = ∑ j = 1 N ( ∏ k = 0 j − 1 exp ( − ∫ ζ k ζ k + 1 σ t d t ) ) α ζ j = ∑ j = 1 N ( α ζ j ∏ k = 0 j − 1 ( 1 − α ζ k ) ) c=\sum_{j=1}^N\int_{\zeta_j}^{\zeta_{j+1}}T_{\zeta}\cdot \sigma_\zeta c_{\zeta} d\zeta=\sum_{j=1}^NT_{\zeta_j}\int_{\zeta_j}^{\zeta_{j+1}}T_{\zeta_j\rightarrow\zeta}\cdot \sigma_\zeta c_{\zeta} d\zeta=\sum_{j=1}^N(\prod_{k=1}^{j-1}T_{\zeta_k\rightarrow\zeta_{k+1}})\alpha_{\zeta_j}=\sum_{j=1}^N(\prod_{k=0}^{j-1}\exp(-\int_{\zeta_k}^{\zeta_{k+1}}\sigma_tdt))\alpha_{\zeta_j}=\sum_{j=1}^N(\alpha_{\zeta_j}\prod_{k=0}^{j-1}(1-\alpha_{\zeta_k})) c=j=1∑N∫ζjζj+1Tζ⋅σζcζdζ=j=1∑NTζj∫ζjζj+1Tζj→ζ⋅σζcζdζ=j=1∑N(k=1∏j−1Tζk→ζk+1)αζj=j=1∑N(k=0∏j−1exp(−∫ζkζk+1σtdt))αζj=j=1∑N(αζjk=0∏j−1(1−αζk))
3.2 激光雷达模型
理想的激光雷达模型发射激光束脉冲(其终点为3D表面点),并根据飞行时间计算距离。但是实际的激光雷达发射的光束存在散度且脉宽有限,且接收器根据信号处理技术检测返回。这导致离散误差或估计偏差、多个返回或没有返回。
光束发散:激光束会随着距离增大而发散,这会导致照明区域增大、单位面积的辐射减小。光束足迹的大小取决于发散角
2
γ
0
2\gamma_0
2γ0和距离
ζ
\zeta
ζ。设
r
γ
r^\gamma
rγ为光束截面内角度为
γ
\gamma
γ的理想射线,
γ
≤
γ
0
\gamma\leq\gamma_0
γ≤γ0,则其单位面积的辐射
E
(
ζ
,
γ
)
E(\zeta,\gamma)
E(ζ,γ)可由射线坐标系内的高斯函数估计:
E
(
ζ
,
γ
)
=
2
I
0
π
(
γ
0
ζ
)
2
g
(
γ
)
,
g
(
γ
)
=
exp
(
−
2
γ
2
γ
0
2
)
E(\zeta,\gamma)=\frac{2I_0}{\pi(\gamma_0\zeta)^2}g(\gamma),g(\gamma)=\exp(-2\frac{\gamma^2}{\gamma_0^2})
E(ζ,γ)=π(γ0ζ)22I0g(γ),g(γ)=exp(−2γ02γ2)
其中
I
0
I_0
I0为脉冲峰值功率。
脉冲波形:根据飞行时间和光速
c
c
c,可计算距离。由于脉冲有有限时长
τ
H
\tau_H
τH,返回的时间是通过分析接收强度得到的。发射脉冲的功率随时间的关系如下:
P
e
(
t
)
∝
(
t
τ
)
2
exp
(
−
t
τ
)
,
τ
=
τ
H
1.75
P_e(t)\propto(\frac{t}{\tau})^2\exp(-\frac{t}{\tau}),\tau=\frac{\tau_H}{1.75}
Pe(t)∝(τt)2exp(−τt),τ=1.75τH
接收辐射功率
P
(
ζ
)
P(\zeta)
P(ζ)为脉冲功率与系统脉冲相应
H
(
ζ
)
H(\zeta)
H(ζ)进行卷积的结果:
P
(
ζ
)
=
∫
0
2
ζ
/
c
P
e
(
t
)
H
(
ζ
−
c
t
2
)
d
t
P(\zeta)=\int_0^{2\zeta/c}P_e(t)H(\zeta-\frac{ct}{2})dt
P(ζ)=∫02ζ/cPe(t)H(ζ−2ct)dt
其中脉冲相应
H
(
ζ
)
H(\zeta)
H(ζ)为目标相应于接收器相应的组合:
H
(
ζ
)
=
H
T
(
ζ
)
H
C
(
ζ
)
H(\zeta)=H_T(\zeta)H_C(\zeta)
H(ζ)=HT(ζ)HC(ζ)。对于距离为
ζ
0
\zeta_0
ζ0处的朗博表面,目标相应与入射角
θ
\theta
θ和反射率
ρ
\rho
ρ相关:
H
T
(
ζ
)
=
ρ
π
cos
(
θ
)
δ
(
ζ
−
ζ
0
)
H_T(\zeta)=\frac{\rho}{\pi}\cos(\theta)\delta(\zeta-\zeta_0)
HT(ζ)=πρcos(θ)δ(ζ−ζ0)其中
δ
(
⋅
)
\delta(\cdot)
δ(⋅)为狄拉克delta函数。接收器响应
H
C
(
ζ
)
H_C(\zeta)
HC(ζ)是通过对接收器有效面积实心角
A
e
A_e
Ae的积分来计算的:
H
C
(
ζ
)
=
T
ζ
2
A
e
ζ
2
H_C(\zeta)=T_\zeta^2\frac{A_e}{\zeta^2}
HC(ζ)=Tζ2ζ2Ae
其中
T
ζ
∈
[
0
,
1
]
T_\zeta\in[0,1]
Tζ∈[0,1]为单向透射率。
光束离散化:实际中,会将高斯发散的光束离散化为
M
=
37
M=37
M=37条角度为
γ
i
\gamma_i
γi射线。总的辐射功率
P
(
ζ
)
P(\zeta)
P(ζ)为这些光束的加权和:
P
(
ζ
)
=
∑
i
=
1
M
g
(
γ
i
)
P
i
(
ζ
)
P(\zeta)=\sum_{i=1}^{M}g(\gamma_i)P_i(\zeta)
P(ζ)=i=1∑Mg(γi)Pi(ζ)
考虑光束发散能产生两种重要现象:距离偏差和多返回,如下图的最上一行所示。当光束照射到不同距离的表面时,波形的峰值可能会移位,导致距离偏差。
距离估计:估计表面距离的常用方法是定位接收波形的峰值。此时信号会被离散化为直方图,超过某阈值的局部极大值会被视为检测。相关的距离值会进行修正,以消除来自波形的已知偏差(以及可能的辐射功率引起的偏差)。通过考虑区间化和阈值化过程,可以提现激光雷达距离分辨率中的离散化误差和低功率返回射线的丢弃。
4. 激光雷达新视图合成
问题设置:考虑来自运动传感器的激光雷达扫描 X = { X v } v = 1 n v \mathcal{X}=\{X_v\}_{v=1}^{n_v} X={Xv}v=1nv,每个扫描 X v X_v Xv与传感器姿态 T v T_v Tv相关,包含 n r n_r nr条射线。每条射线 r ( o , d ) r(o,d) r(o,d)记录了观测 ( ζ 1 , e 1 , p d , p s , ζ 2 , e 2 ) (\zeta_1,e_1,p_d,p_s,\zeta_2,e_2) (ζ1,e1,pd,ps,ζ2,e2),包括来自距离 ζ 1 \zeta_1 ζ1的、强度为 e 1 e_1 e1的返回,射线丢弃标识 p d ∈ { 0 , 1 } p_d\in\{0,1\} pd∈{0,1},双返回标识 p s ∈ { 0 , 1 } p_s\in\{0,1\} ps∈{0,1};来自距离 ζ 2 \zeta_2 ζ2的、强度为 e 2 e_2 e2的返回。本文的目标是重建一个关于反射率 ρ \rho ρ和密度 σ \sigma σ的连续体积表达,从而渲染给定传感器姿态 T t g t T_{tgt} Ttgt下的虚拟激光雷达扫描 X t g t X_{tgt} Xtgt。
4.1 神经场景表达
本文将场景编码为神经场 F : ( x , d ) → ( σ , ρ , p d ) F:(x,d)\rightarrow(\sigma,\rho,p_d) F:(x,d)→(σ,ρ,pd),输入位置 x x x与方向 d d d,输出密度、反射率和射线丢弃概率。首先,使用哈希编码将 x x x编码为位置特征 f p o s ∈ R 32 f_{pos}\in\mathbb{R}^{32} fpos∈R32,并将视线方向投影为球面谐波基底的前16个系数 f d i r ∈ R 16 f_{dir}\in\mathbb{R}^{16} fdir∈R16,然后使用MLP参数化神经场: [ σ , f g e o ] = f σ ( f p o s ) [\sigma,f_{geo}]=f_\sigma(f_{pos}) [σ,fgeo]=fσ(fpos)提取密度与几何特征 f g e o ∈ R 15 f_{geo}\in\mathbb{R}^{15} fgeo∈R15; ρ = f ρ ( f g e o , f d i r ) \rho=f_\rho(f_{geo},f_{dir}) ρ=fρ(fgeo,fdir)回归反射率; p d = f d r o p ( f g e o , f d i r ) p_d=f_{drop}(f_{geo},f_{dir}) pd=fdrop(fgeo,fdir)对是否丢弃射线进行分类; p s = f s r ( f b e a m ) p_s=f_{sr}(f_{beam}) ps=fsr(fbeam)分类第二返回的存在性( f b e a m f_{beam} fbeam见第4.3节)。
4.2 激光雷达射线的体积渲染
与被动传感器不同,激光雷达主动照明场景并测量返回的辐射。这一双向传播的特点使得激光雷达的体积渲染与图像不同。
辐射功率积分:沿射线的辐射功率为delta函数,仅在反射表面不为0。本文将
H
T
(
ζ
)
H_T(\zeta)
HT(ζ)与
H
C
(
ζ
)
H_C(\zeta)
HC(ζ)的公式组合,得到概率辐射功率:
P
ζ
=
C
T
ζ
2
⋅
σ
ζ
ρ
ζ
ζ
2
cos
(
θ
)
P_\zeta=C\frac{T_\zeta^2\cdot \sigma_\zeta \rho_\zeta}{\zeta^2}\cos(\theta)
Pζ=Cζ2Tζ2⋅σζρζcos(θ)
其中
C
C
C为系统常数,
ρ
ζ
\rho_\zeta
ρζ为可微反射率,
θ
\theta
θ为入射角。在有恒定密度与反射率的均匀介质中,积分
P
(
ζ
j
→
ζ
j
+
1
)
P(\zeta_j\rightarrow\zeta_{j+1})
P(ζj→ζj+1)为:
P
(
ζ
j
→
ζ
j
+
1
)
=
∫
ζ
j
ζ
j
+
1
C
T
ζ
j
→
ζ
2
σ
ζ
ρ
ζ
ζ
2
cos
(
θ
j
)
d
ζ
≈
α
ζ
j
ρ
ζ
j
′
P(\zeta_j\rightarrow\zeta_{j+1})=\int_{\zeta_j}^{\zeta_{j+1}}C\frac{T_{\zeta_j\rightarrow\zeta}^2\sigma_\zeta\rho_\zeta}{\zeta^2}\cos(\theta_j)d\zeta\approx\alpha_{\zeta_j}\rho'_{\zeta_j}
P(ζj→ζj+1)=∫ζjζj+1Cζ2Tζj→ζ2σζρζcos(θj)dζ≈αζjρζj′
其中以
ζ
j
+
ζ
j
+
1
2
\frac{\zeta_j+\zeta_{j+1}}{2}
2ζj+ζj+1来近似
ζ
∈
[
ζ
j
,
ζ
j
+
1
]
\zeta\in[\zeta_j,\zeta_{j+1}]
ζ∈[ζj,ζj+1],且
α
ζ
j
=
1
2
(
1
−
exp
(
−
σ
ζ
j
δ
ζ
j
)
)
,
ρ
ζ
j
′
=
C
ρ
ζ
j
4
cos
(
θ
j
)
(
ζ
j
+
ζ
j
+
1
)
2
\alpha_{\zeta_j}=\frac{1}{2}(1-\exp(-\sigma_{\zeta_j}\delta_{\zeta_j})),\rho'_{\zeta_j}=C\rho_{\zeta_j}\frac{4\cos(\theta_j)}{(\zeta_j+\zeta_{j+1})^2}
αζj=21(1−exp(−σζjδζj)),ρζj′=Cρζj(ζj+ζj+1)24cos(θj)
体积渲染:主动传感器的观测功率可通过将
P
(
ζ
j
→
ζ
j
+
1
)
P(\zeta_j\rightarrow\zeta_{j+1})
P(ζj→ζj+1)的表达插入图像体积渲染的公式中计算:
P
=
∑
j
=
1
N
∫
ζ
j
ζ
j
+
1
C
T
ζ
2
σ
ζ
ρ
ζ
ζ
2
cos
(
θ
j
)
d
ζ
=
∑
j
=
1
N
w
j
ρ
ζ
j
′
P=\sum_{j=1}^{N}\int_{\zeta_j}^{\zeta_{j+1}}C\frac{T_{\zeta}^2\sigma_\zeta\rho_\zeta}{\zeta^2}\cos(\theta_j)d\zeta=\sum_{j=1}^Nw_j\rho'_{\zeta_j}
P=j=1∑N∫ζjζj+1Cζ2Tζ2σζρζcos(θj)dζ=j=1∑Nwjρζj′
其中
w
j
=
2
α
ζ
j
∏
k
=
1
j
−
1
(
1
−
2
α
ζ
k
)
w_j=2\alpha_{\zeta_j}\prod_{k=1}^{j-1}(1-2\alpha_{\zeta_k})
wj=2αζjk=1∏j−1(1−2αζk)
4.3 从多条射线组合光束
第一距离估计:本文使用两阶段方法从神经场提取距离值。为估计理想射线 r r r的距离,本文均匀采样 N c N^c Nc个点,查询其密度值,并计算权重 { w j c } j = 1 N c \{w_j^c\}_{j=1}^{N^c} {wjc}j=1Nc。粗糙的峰值估计 ζ p \zeta_p ζp通过寻找最大权重的采样点得到: p = arg max j { w j c } j = 1 N c p=\argmax_j\{w_j^c\}_{j=1}^{N^c} p=argmaxj{wjc}j=1Nc。然后在局部区间 ζ j ∈ [ ζ p − ϵ , ζ p + ϵ ] \zeta_j\in[\zeta_p-\epsilon,\zeta_p+\epsilon] ζj∈[ζp−ϵ,ζp+ϵ]均匀采样 N f N^f Nf个点,并计算权重 w j f w_j^f wjf,从而计算 ζ f = ∑ j = 1 N f w j f ζ j \zeta_f=\sum_{j=1}^{N^f}w_j^f\zeta_j ζf=∑j=1Nfwjfζj。
第二距离估计:本文使用截断体积渲染估计除第一返回之外的辐射功率。
具体来说,首先通过对特征 f b e a m = ( f ˉ g e o , f d i r , f r a n g e ) f_{beam}=(\bar{f}_{geo},f_{dir},f_{range}) fbeam=(fˉgeo,fdir,frange)进行是否二次返回的分类,其中 f ˉ g e o \bar{f}_{geo} fˉgeo为体积渲染的几何特征, f r a n g e f_{range} frange描述了第一返回距离估计的标准差和最大差异。直观来看, f ˉ g e o \bar{f}_{geo} fˉgeo描述局部几何, f d i r f_{dir} fdir编码了光束与几何的关系, f r a n g e f_{range} frange体现了光束与场景的先验交互。
对有二次返回的光束,首先为第一返回的距离 ζ 1 \zeta_1 ζ1添加一个 ξ \xi ξ(描述第二返回与第一返回的距离)。然后将透射率 T ζ 1 + ξ T_{\zeta_1+\xi} Tζ1+ξ置为1(将 ζ 1 + ξ \zeta_1+\xi ζ1+ξ之前的密度置为0),并重新计算权重。重复上述距离估计得到 ζ 2 \zeta_2 ζ2。注意对于有两次返回的光束,其第一返回 ζ 1 \zeta_1 ζ1表示光束范围内所有射线测量的最小距离。而对单次返回的光束,其距离为光束中心射线的测量距离。
反射率估计:根据神经网络,可以得到被检测表面点的反射率 ρ = ∑ j = 1 N f w j f ρ j \rho=\sum_{j=1}^{N^f}w_j^f\rho_j ρ=∑j=1Nfwjfρj。
射线丢弃概率:实际中,部分光束没有距离测量。这可能是由于观测的返回信号幅度较小或没有清晰的峰值。这很难进行完全的物理建模,因为这往往取决于(未公开的)检测细节。本文使用神经网络预测变量 p d ( ζ ) ∈ { 0 , 1 } p_d(\zeta)\in\{0,1\} pd(ζ)∈{0,1}来表示不反射辐射功率的局部概率,以增强神经场景表达。体素渲染会整合该值,得到射线被丢弃的概率: p d ( r ) = ∑ j = 1 N c w j c p d ( ζ j ) p_d(r)=\sum_{j=1}^{N^c}w_j^cp_d(\zeta_j) pd(r)=∑j=1Ncwjcpd(ζj)。
4.4 训练神经激光雷达场
给定一组激光雷达扫描,通过最小化下面的损失函数优化模型:
L
=
L
r
a
n
g
e
+
λ
e
L
e
+
λ
d
L
d
+
λ
s
L
s
\mathcal{L}=\mathcal{L}_{range}+\lambda_e\mathcal{L}_e+\lambda_d\mathcal{L}_d+\lambda_s\mathcal{L}_s
L=Lrange+λeLe+λdLd+λsLs
距离重建:为粗糙距离
ζ
p
\zeta_p
ζp和细化距离
ζ
f
\zeta_f
ζf添加两个损失。粗糙距离损失会在真实距离
ζ
^
\hat{\zeta}
ζ^处引入高斯分布:
L
r
a
n
g
e
c
=
1
∣
R
∣
∑
r
∈
R
(
1
−
∑
w
j
∈
X
c
n
w
j
w
^
j
+
∑
w
k
∈
X
c
e
w
k
2
)
\mathcal{L}_{range}^c=\frac{1}{|\mathcal{R}|}\sum_{r\in\mathcal{R}}(1-\sum_{w_j\in\mathcal{X}_c^n}w_j\hat{w}_j+\sum_{w_k\in\mathcal{X}_c^e}w_k^2)
Lrangec=∣R∣1r∈R∑(1−wj∈Xcn∑wjw^j+wk∈Xce∑wk2)
其中
R
\mathcal{R}
R为激光雷达射线的集合,
X
c
n
\mathcal{X}_c^n
Xcn和
X
c
e
\mathcal{X}_c^e
Xce表示在区间
[
ζ
^
−
ϵ
,
ζ
^
+
ϵ
]
[\hat{\zeta}-\epsilon,\hat{\zeta}+\epsilon]
[ζ^−ϵ,ζ^+ϵ]内部和外部的采样点。真实权重
w
^
j
\hat{w}_j
w^j是通过积分高斯分布计算的。细化距离损失为:
L
r
a
n
g
e
f
=
1
∣
R
∣
∑
r
∈
R
∣
ζ
^
−
ζ
f
∣
\mathcal{L}_{range}^f=\frac{1}{|\mathcal{R}|}\sum_{r\in\mathcal{R}}|\hat{\zeta}-\zeta_f|
Lrangef=∣R∣1r∈R∑∣ζ^−ζf∣
反射率重建:通过与真实强度 e ^ \hat{e} e^之间的L2损失来优化: L e = 1 ∣ R ∣ ∑ r ∈ R ( e ^ − e ) 2 \mathcal{L}_e=\frac{1}{|\mathcal{R}|}\sum_{r\in\mathcal{R}}(\hat{e}-e)^2 Le=∣R∣1∑r∈R(e^−e)2。
射线丢弃和双返回标识以分类任务训练,通过最小化二元交叉熵损失与Lovasz损失的组合来优化:
L
∗
=
1
∣
R
∣
∑
r
∈
R
(
L
b
c
e
(
p
∗
,
p
^
∗
)
+
L
l
s
(
p
∗
,
p
^
∗
)
)
\mathcal{L}_*=\frac{1}{|\mathcal{R}|}\sum_{r\in\mathcal{R}}(\mathcal{L}_{bce}(p_*,\hat{p}_*)+\mathcal{L}_{ls}(p_*,\hat{p}_*))
L∗=∣R∣1r∈R∑(Lbce(p∗,p^∗)+Lls(p∗,p^∗))
5. 实验
5.1 数据集与评估设置
Waymo Open数据集:使用其中的部分静态场景,每个场景分割出长5s的片段,每隔5帧选出来组成测试集。
此外,还基于闭环仿真提出新的评估协议,即使用所有帧训练,并合成另一轨迹(将传感器平移固定的一段距离)下的新视图。然后使用合成视图作为训练,合成原始轨迹下的视图以衡量性能。
评估指标:本文报告4类评估指标:平均绝对误差(MAE),中值绝对误差(MedAE),双向Chamfer距离(CD)和recall@50(距离估计误差小于0.5m的射线百分比)。还测量了双返回估计的分割召回率(Seg. recall)和分割精度(Seg. precision)。强度由平均绝对误差(MAE)评估。对于射线丢弃估计,使用召回率、精度和IoU。对于点云配准,使用旋转误差(RE)和平移误差(TE)。
5.2 激光雷达新视图合成的评估
射线测量:NFL有较低的距离误差,且强度和射线丢弃概率估计均有较好的性能。使用分散光束表达能提高双返回射线的两个距离估计,但会略微降低整体的第一返回距离估计性能。这是由于双返回标识的估计不够精确,且可通过使用真实双返回标识来进行实验证明。
第一距离:本文NFL的体积渲染能有效估计密度场,导致在困难场景有更好的结果。
对主动传感器体积渲染的消融研究:使用本文的体积渲染替换基准方案的被动传感器体积渲染,在不调整超参数的情况下,距离估计精度均有上升。
5.3 新视图的下游评估
点云配准:为评估合成扫描保留局部几何特征的程度,本文使用在Waymo上预训练的点云配准模型应用于真实激光雷达扫描和合成扫描。实验表明,本文的NFL能在复杂几何和高噪声水平的数据集上超过基准方案。
语义分割:为探索真实扫描与合成扫描的域间隙,本文使用预训练的语义分割模型比较结果。NFL对汽车的分割达到了最高的召回率。
6. 局限性和未来工作
NFL基于NeRF,因此需要进行逐场景优化。
补充材料
B. 方法和损失函数
第一距离估计:若第一阶段的最大权重 w p c w_p^c wpc低于预定义阈值 η = 0.1 \eta=0.1 η=0.1,则假设网络对重建和距离估计不确定,因此仅进行粗糙阶段的体积渲染,将距离估计为 ζ = ∑ j = 1 N c w j c ζ j \zeta=\sum_{j=1}^{N^c}w^c_j\zeta_j ζ=∑j=1Ncwjcζj。
距离重建损失:为真实距离添加高斯噪声的标准差
δ
\delta
δ在训练中是经过退火的,退火过程如下:
δ
k
=
δ
max
(
δ
min
δ
max
)
k
/
k
max
\delta_k=\delta_{\max}(\frac{\delta_{\min}}{\delta_{\max}})^{k/k_{\max}}
δk=δmax(δmaxδmin)k/kmax
其中
k
k
k为迭代次数,
k
max
k_{\max}
kmax为最大迭代数,
δ
max
\delta_{\max}
δmax与
δ
min
\delta_{\min}
δmin为经验决定的标准差上下界。真实权重
w
^
j
\hat{w}_j
w^j按下式计算:
w
^
j
=
∫
ζ
j
ζ
j
+
1
1
δ
2
π
exp
(
−
(
x
−
ζ
^
)
2
2
δ
2
)
d
x
\hat{w}_j=\int_{\zeta_j}^{\zeta_{j+1}}\frac{1}{\delta\sqrt{2\pi}}\exp(-\frac{(x-\hat{\zeta})^2}{2\delta^2})dx
w^j=∫ζjζj+1δ2π1exp(−2δ2(x−ζ^)2)dx
C. 额外结果
运行时间分析:本文方法的速度能超过激光雷达的测量频率。仅10%的射线有第二返回,其带来的计算开销很低。
射线丢弃建模:显然射线丢弃与光束发散之间有关系,但通过光束特征建模射线丢弃有更差的性能,这可能是由于 f b e a m f_{beam} fbeam中含 f r a n g e f_{range} frange,编码了返回的统计数据,而这对丢弃射线来说没有用处。
双返回标识估计:将 f b e a m f_{beam} fbeam与 f r a n g e f_{range} frange拼接能带来更高的分割召回率和更好的第二返回距离。
第二返回的重要性:尽管Waymo数据集没有关于第二返回的标注,无法进行定量分析,但定性分析表明,在植被区域有更多的双返回,这表明双返回对植被的检测有帮助。