【论文笔记】Bridging the View Disparity Between Radar and Camera Features for Multi-modal Fusion 3D Object

【论文笔记】Bridging the View Disparity Between Radar and Camera Features for Multi-modal Fusion 3D Object Detection
原文链接:https://ieeexplore.ieee.org/document/10027465

I. 引言

  目前的雷达-图像融合方法主要有三种:结果融合、原始数据融合和特征融合,其中特征融合效果最优。特征融合的主流方法是将雷达投影到图像上,使用复杂规则进行特征提取,但图像采样前视图语义信息,而雷达采样3D几何信息,这种方法忽略了两模态之间的视图差异。
  本文受BEV感知相关工作的启发,将雷达与图像表达在BEV下进行融合;同时,利用“BEV下的雷达点云在边界框边缘处”这一几何约束增强融合性能。
  本文的跨视图特征级融合方法叫RCBEV,其中雷达分支克服雷达稀疏性和噪声提取有效特征;多尺度视图变换器能获取跨视图图像特征;通过两阶段融合方案(点融合与RoI融合)融合特征;最后使用无需锚框的检测头获取3D边界框。

III. 系统结构

  如下图所示。首先从图像提取多尺度特征并估计深度,然后将图像特征提升为棱台特征,从而转化并提取BEV特征。
在这里插入图片描述
  此外,针对雷达点云的稀疏性和噪声,本文提出新的方案:对原始雷达数据进行预处理后,积累多帧雷达点云以克服稀疏性,并设计置信度滤波器过滤噪声和虚警;雷达特征提取器分为空间编码器和时间编码器两部分,其中空间编码器处理位置、速度和RCS信息,时间编码器处理多帧之间的特征错位。
  融合模块包括两阶段:首先是雷达特征和图像特征进行点级融合;然后使用雷达生成服从高斯分布的热图,以反映几何约束,与预测的热图进行RoI级别的融合。最后增强热图输入无需锚框的检测头预测3D边界框。

IV. 方法

A. 雷达处理

  专门设计的部分包含三个:(1)数据处理模块,(2)雷达特征提取器,以及(3)物体热图生成器。(1)和(2)的结构如下图所示。
在这里插入图片描述
(1)数据处理模块
  多帧积累。以前向雷达为参考系,将过去帧的雷达点云转换到当前帧下:
Z ref ( t ) = Trans ( Z radar ( t − k ) ) = T ego ( t ) ref ( t ) T global ego ( t ) T ego ( t − k ) global T radar ego ( t − k ) Z radar ( t − k ) Z^\textup{ref}(t)=\textup{Trans}(Z^\textup{radar}(t-k))=T^{\textup{ref}(t)}_{\textup{ego}(t)}T^{\textup{ego}(t)}_\textup{global}T^\textup{global}_{\textup{ego}(t-k)}T^{\textup{ego}(t-k)}_\textup{radar}Z^\textup{radar}(t-k) Zref(t)=Trans(Zradar(tk))=Tego(t)ref(t)Tglobalego(t)Tego(tk)globalTradarego(tk)Zradar(tk)  噪声过滤:根据点的动态特性 γ d s \gamma_{ds} γds、反射强度 σ \sigma σ、来自物体的概率 γ v s \gamma_{vs} γvs和虚警概率 γ f p \gamma_{fp} γfp过滤噪声(都是nuScenes数据集提供的数据)。记为
C F ( Z radar ( t ) ) = F i l t e r ( σ , γ v s , γ d s , γ f p ) CF(Z^\textup{radar}(t))=Filter(\sigma,\gamma_{vs},\gamma_{ds},\gamma_{fp}) CF(Zradar(t))=Filter(σ,γvs,γds,γfp)  输入网络的雷达数据
I radar ( t ) = ∑ k = 0 N Trans ( C F ( Z radar ( t − k ) ) I^\textup{radar}(t)=\sum_{k=0}^N\textup{Trans}(CF(Z^\textup{radar}(t-k)) Iradar(t)=k=0NTrans(CF(Zradar(tk))(2)雷达特征提取器
  空间编码:输入雷达点云的特征包含位置、补偿后的径向速度以及RCS值。使用高效的VoxelNet或PointPillars的主干网络处理输入,提取特征 F S E R F^{R}_{SE} FSER
  时间编码:虽然经过对齐,多帧点云仍可能存在细微的错位,故使用ConvLSTM来细化特征 F S E R ( t − k ) , k = 0 , 1 , ⋯   , N F^{R}_{SE}(t-k),k=0,1,\cdots,N FSER(tk),k=0,1,,N
  整个特征提取器可记为: F S E R ( t − k ) = S E ( Trans ( C F ( Z radar ( t − k ) ) ) ) F T E R ( t ) = T E ( Concat ( F S E R ( t ) , F S E R ( t − 1 ) , ⋯   , F S E R ( t − N ) ) ) F^R_{SE}(t-k)=SE(\textup{Trans}(CF(Z^\textup{radar}(t-k))))\\F^R_{TE}(t)=TE(\textup{Concat}(F^R_{SE}(t),F^R_{SE}(t-1),\cdots,F^R_{SE}(t-N))) FSER(tk)=SE(Trans(CF(Zradar(tk))))FTER(t)=TE(Concat(FSER(t),FSER(t1),,FSER(tN)))

B. 图像处理

  如下图所示,图像处理分为三个部分:图像视图特征提取器,交叉视图特征变换器,BEV特征提取器。
在这里插入图片描述

  图像视图特征提取器提取多尺度多视图特征图: F img I = Neck ( Backbone ( I image ) ) F_\textup{img}^I=\textup{Neck}(\textup{Backbone}(I^\textup{image})) FimgI=Neck(Backbone(Iimage))  交叉视图特征变换器:估计深度分布 F Depth I F_\textup{Depth}^I FDepthI后与图像特征 F img I F_\textup{img}^I FimgI作外积得到棱台特征 V F img VF_\textup{img} VFimg,然后使用相机参数转换到BEV下:
F Depth I = Softmax ( DepthEstimate ( F img I ) ) V F img = F img I ⊗ F Depth I V F BEV = E ( I − 1 ( V F img ) ) F_\textup{Depth}^I=\textup{Softmax}(\textup{DepthEstimate}(F_\textup{img}^I))\\VF_\textup{img}=F^I_\textup{img}\otimes F_\textup{Depth}^I\\VF_\textup{BEV}=E(I^{-1}(VF_\textup{img})) FDepthI=Softmax(DepthEstimate(FimgI))VFimg=FimgIFDepthIVFBEV=E(I1(VFimg))其中 E E E I I I分别为相机的外参和内参矩阵。
  BEV特征提取器:使用ResNet和FPN。 F BEV I = BEV Neck ( V F BEV ) F_\textup{BEV}^I=\textup{BEV}_\textup{Neck}(VF_\textup{BEV}) FBEVI=BEVNeck(VFBEV)

C. 融合模块

  如下图所示,融合分两阶段:点级融合与RoI级融合。
在这里插入图片描述
  点级融合:首先将图像BEV特征和点云BEV特征进行上下采样以统一分辨率,然后拼接。考虑到不精确的空间变换可能导致视图错位,将融合特征通过卷积。
F P F = Conv ( Concat ( Up ( F T E R ) , Down ( F B E V I ) ) ) F^{PF}=\textup{Conv}(\textup{Concat}(\textup{Up}(F^R_{TE}),\textup{Down}(F^I_{BEV}))) FPF=Conv(Concat(Up(FTER),Down(FBEVI)))  RoI级融合:点级融合的输出会输入卷积层预测各类别的热图 H P F H^{PF} HPF。多通道雷达热图 H radar H^\textup{radar} Hradar I radar I^\textup{radar} Iradar使用二维高斯分布生成,生成时考虑原始雷达点云的位置( x r , y r x_r,y_r xr,yr)、速度( v x , v y v_x,v_y vx,vy)、强度( σ \sigma σ)和虚警率( γ f p \gamma_{fp} γfp)(因此生成的是6通道热图,下式中通道用 a a a表示):
H radar ( x , y , a ) = 1 M ( a ) { e x p ( − ( x − p x ) 2 + ( y − p y ) 2 2 Σ ( a ) ) ∣ x − p x ∣ < 3 Σ x , ∣ y − p y ∣ < 3 Σ y 0 否则 H^\textup{radar}(x,y,a)=\frac{1}{M(a)}\left\{\begin{matrix} exp\left(-\frac{(x-p_x)^2+(y-p_y)^2}{2\Sigma(a)}\right)&|x-p_x|<3\Sigma_x,|y-p_y|<3\Sigma_y \\ 0 & 否则\end{matrix}\right. Hradar(x,y,a)=M(a)1{exp((a)(xpx)2+(ypy)2)0xpx<3Σx,ypy<3Σy否则 Σ ( a ) = { diag ( max ⁡ ( a r m s , τ ) ) a ∈ { x r , y r , v x , v y } diag ( max ⁡ ( a , τ ) ) a ∈ { σ , γ f p } \Sigma(a)=\left\{\begin{matrix} \textup{diag}(\max(a_{rms},\tau)) & a\in\{x_r,y_r,v_x,v_y\}\\ \textup{diag}(\max(a,\tau)) & a\in\{\sigma,\gamma_{fp}\} \end{matrix}\right. Σ(a)={diag(max(arms,τ))diag(max(a,τ))a{xr,yr,vx,vy}a{σ,γfp} M ( a ) = 2 π ∣ Σ ( a ) ∣ 1 / 2 M(a)=2\pi|\Sigma(a)|^{1/2} M(a)=2π∣Σ(a)1/2其中下标rms表示均方根, τ \tau τ为最小高斯半径; p x , p y p_x,p_y px,py为雷达的位置测量。
  得到 H P F H^{PF} HPF H radar H^\textup{radar} Hradar后,使用乘法融合两个热图后再通过 1 × 1 1\times1 1×1卷积,得到 H R F H^{RF} HRF

D. 检测头设计

  检测头为无需锚框的检测头,由卷积层构成。损失函数分为分类损失和回归损失两部分。
  分类损失为focal损失以平衡前景和背景的数量:真实热图为类似生成的高斯热图 H G T ∈ [ 0 , 1 ] H R × W R × C H^{GT}\in[0,1]^{\frac{H}{R}\times\frac{W}{R}\times C} HGT[0,1]RH×RW×C C C C为类别数),高斯核为 H G T = e x p ( ( ( x − p ˉ x ) 2 + ( y − p ˉ y ) 2 ) / 2 σ p 2 ) H^{GT}=exp(((x-\bar{p}_x)^2+(y-\bar{p}_y)^2)/2\sigma_p^2) HGT=exp(((xpˉx)2+(ypˉy)2)/2σp2)。将 H R F H^{RF} HRF通过卷积层预测 C C C通道热图 H pred H^\textup{pred} Hpred,按下式计算分类损失:
L c l s = − 1 N ∑ x y c log ⁡ ( H pred ) ( 1 − H pred ) α G ( H G T ) + log ⁡ ( 1 − H pred ) ( H pred ) α ( 1 − G ( H G T ) γ ) L_{cls}=-\frac{1}{N}\sum_{xyc}\log(H^\textup{pred})(1-H^\textup{pred})^\alpha G(H^{GT})+\log(1-H^\textup{pred})(H^\textup{pred})^\alpha(1-G(H^{GT})^\gamma) Lcls=N1xyclog(Hpred)(1Hpred)αG(HGT)+log(1Hpred)(Hpred)α(1G(HGT)γ)  回归损失:位置偏差 O ^ p \hat{O}_p O^p、尺寸和速度损失为L1损失;对于朝向角损失,使用softmax函数计算;属性损失使用二元交叉熵损失。
L o f f = 1 N T ∑ k = 1 N T ∣ O ^ p k − ( p k R − p ~ k ) ∣ , p = p x , p y , p z L_{off}=\frac{1}{N_T}\sum_{k=1}^{N_T}\left|\hat{O}_{pk}-(\frac{p_k}{R}-\tilde{p}_k)\right|,p=p_x,p_y,p_z Loff=NT1k=1NT O^pk(Rpkp~k) ,p=px,py,pz L d i m = 1 N T ∑ k = 1 N T ∣ s k − s ^ k ∣ , s = w , l , h L_{dim}=\frac{1}{N_T}\sum_{k=1}^{N_T}|s_k-\hat{s}_k|,s=w,l,h Ldim=NT1k=1NTsks^k,s=w,l,h L v e l = 1 N T ∑ k = 1 N T ∣ v k − v ^ k ∣ , v = v x , v y L_{vel}=\frac{1}{N_T}\sum_{k=1}^{N_T}|v_k-\hat{v}_k|,v=v_x,v_y Lvel=NT1k=1NTvkv^k,v=vx,vy L r o t = 1 N T ∑ k = 1 N T [ softmax ( b ^ k ) − 1 N θ ∑ i = 1 N θ cos ⁡ ( θ − b i − Δ θ i ) ] L_{rot}=\frac{1}{N_T}\sum_{k=1}^{N_T}\left[\textup{softmax}(\hat{b}_k)-\frac{1}{N_\theta}\sum_{i=1}^{N_\theta}\cos(\theta-b_i-\Delta\theta_i)\right] Lrot=NT1k=1NT[softmax(b^k)Nθ1i=1Nθcos(θbiΔθi)] L a t t = 1 N T ∑ k = 1 N T 1 N A ∑ i = 1 N A − w i ∣ a k i log ⁡ a ^ k i + ( 1 − a k i ) log ⁡ ( 1 − a ^ k i ) ∣ L_{att}=\frac{1}{N_T}\sum_{k=1}^{N_T}\frac{1}{N_A}\sum_{i=1}^{N_A}-w_i|a_k^i\log\hat{a}_k^i+(1-a_k^i)\log(1-\hat{a}_k^i)| Latt=NT1k=1NTNA1i=1NAwiakiloga^ki+(1aki)log(1a^ki)其中 N T N_T NT为训练样本数, N θ N_\theta Nθ为朝向角 θ \theta θ划分的区间数, b i b_i bi是区间 i i i的中心角度, Δ θ i \Delta\theta_i Δθi表示与区间 i i i中心的角度差, N A N_A NA是属性的数量。

V. 实验

C. 总体结果分析

  实验表明,本文的RCBEV方法在没有使用多帧图像的情况下,也能比BEVDet4D有更高的性能。与BEVDet相比,加入雷达数据能使定位精度、尺寸估计精度和速度估计精度大幅提高。与CenterPoint(radar)相比,加入图像数据能大幅提高检测性能,因为仅使用稀疏雷达估计类别很困难。推断速度上,本文的RCBEV仅略慢于BEVDet。
  与其余雷达-相机融合方法相比,RCBEV的性能也是最优的。

D. 特殊情况评估

  对于仅使用雷达的方法,由于雷达更多反映的是物体(特别是金属物体)的几何形状,因此仅在汽车和金属栅栏的检测上有较好的性能。RCBEV通过融合图像数据,能在几乎所有类别上都有很大的性能提升,且能超过仅基于图像的方法。
  对于不同天气条件下的检测性能,仅使用雷达的方法表现最稳定,而对于融合方法和仅使用图像的方法均在夜晚有较大的性能下降。即便如此,RCBEV也比单一模态方法有更高的性能。

E. 消融研究

  模型性能随图像分辨率的增大先增大后减小,这是因为超过合适的大小会给训练过程带来困难。
  使用雷达的速度属性和RCS均能带来性能提升,且前者会减小速度估计误差。
  积累更多帧的雷达数据能进一步提高整体性能,特别是在速度估计上。但时间较短时mAP值能达到峰值。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

byzy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值