锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

对自动驾驶多传感器融合的一些思考

时间:2022-08-24 14:30:01 自动化口罩机传感器

本文主要总结了我前段时间的工作,主要内容如下:

  • FOV和BEV在视觉检测技术和原理上对比两种视角,总结两者的优缺点;

  • 从两个角度总结了融合方案:尤其是在当前学术界,毫米波雷达更为不受欢迎(Radar)激光雷达与热(lidar)与激光雷达不同,编辑提出了更合适的集成方案Radar融合方案。

1.FOV视角

图1. FOV视角

FOV今天的2,作为最接近人类的视角,有着悠久的历史D\3D object detection皆从FOV视角开始,感官上,FOV视角可以提供丰富的纹理信息和深度信息,满足口罩检测、人脸识别等常用目标检测视角的需要。另一方面,FOV数据信息易于收集和标记imagenet、coco等。但是,FOV信息也有一些缺点:屏蔽问题、规模问题(不同的物体在不同的深度下有不同的尺度)、难以与其他模式集成、集成损失高(Lidar Radar等适合于BEV视角)等。

技术方案分为两部分,一方面简要介绍纯视觉检测方法,另一方面重点介绍FOV视角下的融合技术分为lidar camera与radar camera两类在融合技术上相似性很高,很多Radar所有的融合方法都是的Lidar融合方法。

1.1. FOV纯视觉检测方法

这里介绍不多,主要分为one-stage, two-stage, anchor-based, anchor-free。除此之外,3D测试领域有一些代表性的方法:

  • 改进的2D检测方法:FCOS3D

论文作者在FCOS基础上,对Reg部分修改分支,使其回归centerpoint同时,添加其他指标:中心偏移、深度和3D bbox大小等,实现了将2D检测器用于3D探测器的跨越。除此之外,还包括YOLO3D等待工作,传统的2D detector简单修改后直接用于3D虽然修改检测方法取得了一定的效果,但图像本身缺乏准确的深度信息,结构也没有以前的2D添加一定的先验结构进行检测,导致效果一般。

  • 图像生成伪点云的方法:Pseudo-Lidar

根据公式,深度信息对我们估计目标的位置非常重要。我们还需要知道深度来确定目标的位置,所以深度信息是3D目标检测至关重要。

获取深度信息也成为3D目标方案主要分为:

特殊训练backbone编码深度信息,但这种方法不准确。第二,将深度信息处理成pseudo-lidar作为点云信息。三是通过BEV方式学习BEV特征到图像的映射,避免直接预测深度信息带来的误差损失。这里介绍第二种学习方法,一篇论文叫Pseudo-LiDAR from Visual Depth Estimation,将三维或双目收集的深度信息或单目深度估计为深度信息,并将其处理为伪激光点云,然后使用基于点云的检测头进行3D目标检测。

  • 传统的2D检测方法:CenterNet

CenterNet是基于锚点的检测方法,这种基于锚点的检测方式,不仅能够回归目标的2D属性,对于depth,orientation等3D也可以预测属性,所以这种方法也可以用于人体姿势识别,3D目标测试等。

总结:综上所述,目前是基于FOV的检测方法仍然逃不出传统2D检测框架的范式,但传统框架是3D我认为有以下问题:1. 预训练模型在训练过程中未能引入距离信息,导致部分预训练模型直接微调用于深度估计难以大大改进。2. 3D与2不同的目标检测D检测,不同物体之间存在屏蔽,并且FOV从视角上检测物体变形的问题。

1.2. FOV视角融合法

FOV视角的融合方法主要分为:lidar camera 与 radar camera两种。

FOV:Lidar Camera Lidar与Camera的FOV视角融合有以下经典方案:PointPainting:图像辅助点云检测并行

作者认为,FOV to BEV在FOV纯点云检测的稀疏性导致点云误识别和分类效果差。为了解决纯激光雷达点云缺乏纹理信息等问题,PointPainting将图像分割结果融入点云图像,丰富点云语义,提高检测性能。

  • MV3D:lidar并行辅助图像

作者认为,雷达点云主要存在以下问题:1)稀疏性(2)无序性(3)冗余性BEV第一次从视角进行region proposal激光雷达后投影FV与图像FV层层目标ROI Pooling,再通过deep fusion融合特征,最后3D回归和分类。

  • F-PointNet:图像辅助雷达,串行

在 RGB 运行在图像上 2D detector,产生的2D bbox用于界定3D视锥包含前景目标点云。然后基于这些视锥区域 3D 点云(centerfusion灵感来源于此),使用的灵感来源于此),PointNet 网络实现 3D实例分割,然后实现3D 边界框估计。

总结:综上所述,我们列出的是基于FOV视角集成网络主要分为图像辅助类型,如图像辅助类型pointpainting,proposal-level类型如MV3D,串行图像辅助雷达类型如串行图像F-PointNet,三者都在FOV以图像或雷达数据为导出或辅助来帮助另一种模式进行检测,在FOV视角:一是虽然FOV对图像模式更有利,但主要是图像模式将限制雷达的深度和形状能力。例如,将点云投影到图像中。对于相同深度的目标雷达,雷达的相似性很高,但同一物体的不同部分的相似性较低。第二,雷达点云主要限制图像的丰富纹理,如pointpainting虽然小物体质地丰富,但只有少数对应稀疏的雷达点导致信息缺失。

FOV:Radar Camera:

2. BEV视角

BEV特有以下优点:1. 支持多传感器集成,方便下游多任务共享feature。2. 不同物体在BEV视角下没有变形问题,可以集中模型解决分类问题。3. 可以从多个角度解决屏蔽问题和物体重叠问题。但是,BEV特征也有一些问题,比如grid由于大小影响检测到的细粒度,并且存在大量的背景存储冗余,BEV存储全局语义信息。

如下图所示BEV检测方法已经名列前茅,我猜:一方面是因为BEV特征近期大火,学术界对于BEV研究导致最近的模型偏好BEV,另一方面是可能的BEV特征更比FOV3适用于自动驾驶场景D目标检测。

2.1. 常用方案

  • Pure Camera

  • DETR3D:隐含BEV特征

作者仿照DETR使用900种方法object queries作为query,途径6个decoder完成注意力建模,最后通过set-prediction方法预测目标3D作者的创新点在于属性decoder中的"object queries refinement",也就是将queries用来预测queries对应的3D位置,然后通过相机和点云的转换矩阵转换为2D局部特征通过双线插值提取add到raw queries作为下一个decoder block总而言之,通过queries隐式集成图像特征,进行离散BEV构建和预测特征。但这种方法对大目标检测不好,其中之一就是只通过F.grid_sample()提取局部图像信息,缺乏全局语义信息。

  • BEVFormer:显式BEV特征

作者初始化一个HWC规则,显式BEV queries作为queries。同时,添加了前一刻的时序信息和当前时刻的空间信息。两大创新点模块伪:TSA和SCA,也就是时间注意力和空间注意力。具体来说,每一刻都是对上一刻的BEV queries做deformable局部注意力的类型,同时每个grid分为多个高度,同一方格的多个高度的方格局部注意不同图像,最后生成原始的BEV queries大小的BEV特征作为下一帧的输入,同时作为特征图用于下游任务为地图分割和目标检测。

编者认为,这种BEV feature目前只用于单模态信息,如何整合各种模态,特别是引入Radar稀疏点云如何融入?BEV第二,如何检测精度和grid衡量大小也是个问题,BEV特征的引入限制了最大的检测距离,在高速公路场景中,远程检测目标非常重要,如何权衡BEV大小和测试距离也是需要考虑的问题。

  • Lidar camera

  • Transfusion

作者考虑了以下问题:1. lidar本身特征稀疏尤其是远处的特征稀疏性会导致检测性能下降问题。2. 图缺乏空间信息,难以直接用于3D检测这种具有空间信息需求的任务。3. 无论是lidar-to-camera导致的空间位置损失问题还是camera-to-lidar导致的语义特征丢失问题,传统的融合方法都难以兼容空间和纹理特征的需求。基于以上问题,作者提出了Transfusion:首先,两类特诊分别用各自的通用backbone提取特征信息,后LidarBEV通过image guidance使queries带有图像信息,加入一定先验能够更快地使模型收敛,结果更加准确。后将lidar decoder的输出用于lidar-camera decoder部分的queries对图像特征进行融合检测。

  • DeepFusion

这里主要提出:一:inverse aug与learnable align,分别解决数据增强后模态融合的对齐问题以及实现模态之间的自适应对齐,这里融合的方式为将lidar作为主要的数据来源作为queries融合作为kv的图像特征,并将与query对应的图像特征提取后与雷达特征进行concat并融合用于特征检测。

  • BEVFusion

这篇工作务必要看:"Lift, Splat, Shoot: Encoding Images from Arbitrary Camera Rigs by Implicitly Unprojecting to 3D"这篇文章,这篇BEVFusion的本质工作就是在LSS的基础上,加速了深度概率分布估计过程,并在基础上引入了雷达BEV特征并做了融合。这篇文章可谓是BEV融合方式的开篇之作,至今仍然占据着榜首,同时这篇文章的另一版本主要介绍的是模型的鲁棒性(对于另一种模态缺失做了消融实验),这一片着重于强调其高效性,如加速了几十倍的深度概率估计过程。

Radar + Camera:对于BEV视角做融合的方案,目前我还没有看到今年的融合方案采用,但是前几年有一篇论文直接将图像像素投影到BEV并结合Radar特征用于检测。

2.2. 总结

2.2.1. 融合的视角问题

2.2.2 融合方式的对比

上述BEV融合的方式中,一种是以一种模态作为另一种模态的q去与另一种模态(作为k、v)做注意力并提取相应的特征用于融合,一种是将两种模态单独处理,转移到BEV视角中进行融合:

  • 第一种方式的关键在于两种模态的对齐,lidar常作为Q融合图像特征,这种不仅会存在由于lidar特征稀疏导致的查询遗漏问题,还有由于lidar密集致使多个q映射到同一目标的问题。
  • 第二种方式的关键在于图像从FOV视角转化到BEV视角的对准率问题,结果也取决于能否找到一种较好的方式将FOV特征投影到BEV中,这种投影方式包括LSS提到的深度概率划分等多种方式,可参考链接,但是这种方式在深度上具有较强的离散性,对于深度的准确估计仍然存在许多问题:例如物体边界模糊,与真实场景差别大等。

3. Lidar目标检测

3.1. PointNet

3.2. PointPillars

3.3. VoxelNet

4. RadaryuCamera融合的未来

4.1. Radar在NuScenes各项任务刷榜现状

Radar目标检测

雷达检测性能较差,而且工业界多个公司除去了Radar的部署,我认为无非有以下几个原因:

  • 雷达点存在噪点问题,传统的卷积学习方式相比传统的Pooling池化方式虽然能够使模型提高在前景物体的置信值,但是仍然不能有效滤除背景噪声,背景噪声指周围的背景物体反射点云,在多数场景下,点云大部分为背景噪声,这种原因是雷达信号本身缺乏图像信息且具备的稀疏性导致,仅通过雷达本身的深度、位置、反射强度等信息无法判断点云语义的关系。

  • 雷达点存在闪点问题,由于一些Ghost point(灰尘中的金属等)会导致闪点问题而引起的急刹故障,此类问题在单帧下无法避免,通常的解决方法是将此前多帧图像投影到当前帧,但是这会由于目标物体运动而导致雷达点偏移误差,究其原因,是缺少时序信息滤除。

  • 雷达和相机数据的融合方式:此前的工作都是基于CNN,其对于数据具有平移不变性和局部相关性假设,而且对于纹理信息有着先天的优越性,但是对于雷达这种模态,我们通过可视化特征图,发现融合后雷达特征图仅是起到了对前景物体的增强辅助效果,对两者的融合具有对图像模态的偏重,并不能有效利用雷达模态本身优势

  • 雷达的稀疏性

Radar与Camera融合检测

4.2. 业界融合方案现状

如上图,业界采用的融合方式已经趋于统一的BEV范式,下游从特征提取,特征转化,到上游的时序信息引入都具有较高相似度,且都共享统一的场景特征,并利用多个head分别执行不同的下游任务,地平线将下游任务划分为low,semantic等不同层级的任务,这一点略微不同。

4.3. Radar & lidar与相机的融合趋势

BEV特征目前在学术界和工业界趋于认同,主要是由于其在融合、感知鲁棒性、多下游任务的适应性等特点,尤其是在最近的各类榜单中BEV模型的卓越表现,BEV虽然感觉上更加接近真理,但是要承认,如今的BEV特征仍然不能够媲美多模态的BEV特征,同时多模态的BEV特征也仍有亟待解决的许多问题。

对于Radar的融合问题,不能直接将lidar的方案用于Radar,有以下几个原因:第一,毫米波雷达噪声等占比高,难以学习;第二,毫米波雷达特征稀疏,难以用为对图像特征索引;第三,毫米波雷达穿透性强对金属反射强,这些特征利用能够有效提高对于恶劣天气的检测性能;

对于如何在BEV视角下融合Radar和Camera呢?有挑战性的几点:

1. 如何将稀疏的毫米波雷达引入BEV视角?

2. 如何减小毫米波雷达的噪声带来的问题?

3. 如何将毫米波雷达充分利用,使其能够在其他模态不稳定时提高一定的鲁棒性?

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章