当前位置:   article > 正文

【深度长文】自动驾驶感知技术的演进与实践

【深度长文】自动驾驶感知技术的演进与实践

b2e3fe1b95fba34cd7a28177a5f8f31d.gif

a0054c4d079571b41df1f6b328c387a2.png


传感器——智能车的眼和耳

传感器是感知系统的重要组成部分,它们负责收集车辆周围的环境信息。自动驾驶感知领域中常见的传感器主要有3类:摄像头、激光雷达和毫米波雷达。每种传感器都有其优缺点,也影响了不同公司对技术路线的选择。

摄像头图像数据能以低廉的成本实现高分辨率的成像,能够提供丰富的纹理信息。例如,国内某造车新势力车型搭载的摄像头分辨率高达800万像素。但摄像头对光照比较敏感,在夜晚或者极端天气下的图像往往会对感知任务带来较大的挑战。另外图像仅能提供2D信息,无法直接得到深度信息。纯视觉技术路线以特斯拉为代表。

72cb3c081f019383e0d023c66409b24f.png

相比摄像头,激光雷达往往比较稀疏,机械激光雷达垂直分辨率通常为32线、64线、128线不等,虽然固态、半固态激光雷达在不断提升分辨率,但相较图像来说仍然比较稀疏。其优势是能够提供深度信息,给出每个激光点的距离值,这一信息对于目标检测任务来说至关重要,因为目标检测任务需要得到周围交通参与者精确的位置信息。激光雷达也存在受限的应用场景,对于雨、雪、雾等极端天气,甚至灰尘都比较敏感,难以穿透水珠、雪花、灰尘等,容易形成噪点,增加此类场景下感知的难度。国内造车新势力中已经广泛应用固态、半固态激光雷达。

毫米波雷达和激光雷达类似,同样能探测目标的位置及速度。和激光雷达相比,由于其波长较长,能够穿透微小颗粒,因此对极端天气等不是很敏感,在雨、雪、雾等天气条件下仍能产生不错的效果。但受其原理影响,毫米波雷达对静态障碍物检测效果较差,分辨率也较低。

目前,除特斯拉以纯视觉技术路线为主外,主流的自动驾驶感知架构大多采用多传感器融合的方案,充分利用不同传感器的优势,来提升感知精度

检测与跟踪——感知系统的职责


目标的检测与跟踪是感知系统的两大基础任务:目标检测是指感知系统能够识别和定位车辆周围的物体,如车辆、行人、自行车等;目标跟踪是指感知系统能够持续地跟踪车辆周围的物体,并预测它们的运动轨迹。通过检测和跟踪可以帮助车辆更好地了解周围的环境,并将结果传递给下游规划控制模块,做出更加智能和安全的决策。

e3489d344478a49cf5a99916d48ba847.png

图示:感知系统基础任务架构

目标检测

下面从2D、3D目标检测任务入手,介绍一下当前主流的方法。

2D目标检测

自动驾驶领域中,2D目标检测广泛应用于红绿灯检测、车道线检测等任务中。2D目标检测网络可分为一阶段法和二阶段法两个流派。

8a3071d8dcd074d89df5548e1780caca.png

图示:YOLOV1网络架构

一阶段法是将图像分割成很多个位置框,直接在特征层预测目标的分类与位置,以YOLO系列为代表,其中YOLOV7网络取得了速度和精度的平衡。

f8c72a214a0fb337b74d45b405f683ce.png

图示:Fast-RCNN网络架构

二阶段法以RCNN系列为代表,其思想是通过RPN网络生成候选区,再在候选区上进一步预测目标的分类和位置。由于需要首先生成候选区,其计算量往往较大,速度较慢,但能获得更高的精度。

3D目标检测

3D目标检测任务利用传感器输入预测目标的3D位置信息、尺寸、方向及速度,对下游规划控制模块的避障、预测决策至关重要。根据传感器输入的不同,可将其分为单模态和多模态方法。

单模态只依靠一种传感器输入完成检测任务,如直接在2D图像上预测3D目标的纯视觉方法,以及在三维激光点云上完成检测的方法。多模态通过输入多种传感器数据,如图像、激光点云、毫米波点云,在网络层进行特征融合,完成3D目标检测任务。

单模态目标检测往往受限于传感器的特性,目前自动驾驶领域中广泛采用多模态,即多传感器融合的技术方案。

  • 单目3D目标检测

随着标注方法的升级,目标的表示由原来的2D框对角点表示  进化成了3D坐标系下bounding box的表示  ,不同纬度表示了3D框的位置、尺寸、以及地面上的偏航角。有了数据,原本用于2D检测的深度神经网络,也可以依靠监督学习用于3D目标框检测。

焦距适中的相机,FOV是有限的,想要检测车身一周目标,就要部署多个相机,每个相机负责一定FOV范围内的感知。最终将各相机的检测结果通过相机到车身的外参,转换到统一的车辆坐标系下。

670e86925510471173d90efd1d340f3a.png

但在有共视时,会产生冗余检测,即有多个摄像头对同一目标做了预测,现有方法,如FCOS3D,会在统一的坐标系下对所有检测结果做一遍NMS,有重合的目标框仅留下一个分类指标得分最高的。

  • 统一多视角相机的3D目标检测

自下而上的方法

自下而上的方法,手头的信息看到哪算哪。下图来自CaDNN这篇文章,很好地描述了这一类方法,包括Lift、BEVDet、BEVDepth。这类方法预测每个像素的深度/深度分布,有的方法隐式的预测,有的方法利用LiDAR点云当监督信号(推理时没有LiDAR)。将多相机生成的深度图转换成车身四周的“点云”数据,有了“点云”就可以利用现有的点云3D目标检测器了(如PointPillars, CenterPoint)。

861b6af8572230e177ee35ede72f0f0f.png

自上而下的方法

此类方法先确定关注的地方,如特斯拉所采用的方法,简单来说就是先确定空间中要关注的位置,由这些位置去各个图像中“搜集”特征,然后做判断。根据“搜集”方式的不同衍生出了下面几种方法:

0e5d12d0a0405d70fac10836ad254eb9.png

  1. 关键点采样

    如DETR3D,由一群可学习的3D空间中离散的位置(包含于object queries),根据相机内外参转换投影到图片上,来索引图像特征,每个3D位置仅对应一个像素坐标(会提取不同尺度特征图的特征)。

    62cc2d0160b5f21b4c0bd8b44639ba31.png

  2. 局部注意力

    典型方法如BEVFormer,该方法预先生成稠密的空间位置(含不同的高度,且不随训练更新),每个位置投影到各图片后,会和投影位置局部的数个像素块发生交互来提取特征(基于deformable detr),相比于DETR3D,每个3D点可以提取到了更多的特征。

    0e44450cc08d4ad1a930e510c0e2564d.png

  3. 全局注意力

    典型方法如PETR,该方法强调保持2D目标检测器DETR的框架,探索3D检测需要做哪些适配。PETR同样利用稀疏的3D点(来自object queries)来“搜索”图像特征,但不像DETR3D或BEVFormer把3D点投影回图片,而是基于标准的attention模块,每个3D点会和来自全部图片的所有像素交互。

  • 3D点云目标检测方法

点云能提供丰富的场景3D信息,广泛被自动驾驶企业所采用。根据神经网络对点云输入的不同表示,可将点云目标检测分为基于体素的方法,如SECOND、VoxelNet等;基于柱体的方法,如PointPillar等;以及基于点的方法,如PointRCNN等;基于点的方法往往计算量大,推理速度较慢,车端部署往往需要平衡速度和精度,SECOND和PointPillar是当前较为流行的方法。

a1bfaf973fef159000f35f8a73be488a.png

图示:PointPillar网络架构

而依据检测头的不同,又可分为anchor-based方法和anchor-free的方法,PointPillar以及SECOND均为anchor-based方法。Anchor-free方法以CenterPoint为代表,其思想是直接预测目标的中心点,而无需生成预描框。

e3e08aeec10dab58e9b85bdfed1b029a.png

图示:CenterPoint网络架构

  • 多传感器融合方法

单模态目标检测往往受限于传感器的特性,目前自动驾驶领域中广泛采用多模态,即多传感器融合的技术方案。基于Frustum视锥的检测器F-PointNet首先在2D图像上提取2D框,以此过滤出视锥区域的点云,再利用PointNet网络进行分类和位置预测,此方法依赖2D检测器的精度,并且速度较慢。

0ce6a0209800cea0f4bb4e5a88d1d146.png

MV3D网络架构

MV3D利用了图像、点云俯视图,以及点云平视距离图(Range Image)作为输入,分别对三种视图提取特征,并在俯视图上生成3D Proposal,利用3D Proposal提取对应的其他模态的特征图,最终将三种模态的特征融合,在融合后的特征层预测目标位置。

9652aed96bdeb176ca90462073746649.png

BEVFusion网络架构

MV3D类方法在特征融合阶段各个模态的维度不尽相同,如图像特征为二维特征,而点云特征为三维,使得特征融合较为困难。近年来,基于BEV视图的融合方案逐渐流行,其基本思想是将各个模态的特征转换到BEV空间进行融合,BEV融合方法在多传感器融合方面占据了主导地位。目前依据网络架构不同,BEV融合方法主要可分为两类,一类是基于DETR-based方法,代表工作如FUTR3D等;另一类是BEV-based方法如BEVFusion等。

b5b1c9958019014c39d115f99e3bac61.png

FUTR3D网络架构

目标跟踪

自动驾驶感知任务中,我们除了需要预测目标的位置、分类等信息外,还需要给出目标的速度和运动方向,即对目标进行连续的跟踪。

当前目标跟踪主要有两种技术方案,一种是以卡尔曼滤波技术为基础,首先对目标进行关联,再利用卡尔曼滤波器预测目标的速度方向。另一种是以深度学习网络为基础,通过连续帧时序网络来预测目标的速度、方向。

迎难而上:感知技术的挑战

近年来目标检测算法飞速发展,精度获得了极大提升,但仍然面对诸多的挑战。

长尾问题

感知技术的长尾问题是指在感知任务中,存在一些难以检测或分类的罕见情况,这些情况可能只占整个数据集的一小部分,但却对感知系统的性能产生重要影响。

例如,在目标检测任务中,可能存在一些罕见的目标类型,这些目标在训练数据中出现的频率很低,但在实际应用中却可能出现。如果感知系统没有经过充分的训练来处理这些罕见情况,那么它可能会出现误检或漏检的情况。

ff68efff62e1962d3f95a7707936c4c8.png

图示:带锥桶移动的车

近年来业界广泛认同通过数据闭环的方式来持续提升长尾问题。基于学习的方法依赖数据的输入,而现实世界复杂多变,很难穷举出所有场景,这就依赖高效的数据闭环体系,来有效挖掘长尾场景,积累足够的高价值场景数据,并能够快速完成模型的迭代更新。

极端天气

自动驾驶感知遇到的另一大挑战是极端天气。无人车要想不间断运营,不可避免会遇到雨、雪、雾等极端天气,导致传感器捕获的数据质量下降,出现图像模糊、噪声增加等问题,从而影响感知的准确性,甚至造成自动驾驶不可用。感知必须要解决极端天气带来的挑战,从而实现全天候运行的能力。

864e4a28dfff25dc750ccb78d9bff72e.jpeg

  图示:大雨天造成摄像头夜间成像模糊

6d670165b07d99d12ea96ec90237ccd8.png

图示:大雪天激光雷达产生大量噪声

发展趋势

从近年来业界的发展来看,感知技术的演进主要朝着两个方向发展。一方面是以搭建高效的数据闭环体系为主,解决长尾问题,通过云端大模型、大数据实现高效数据挖掘与模型迭代。另一方面不断发展车端模型架构,用更复杂的模型架构来提升感知精度,这一方面随着Transfomer架构所展现出来的强大能力,以基于Transformer的BEV融合感知为代表,涌现出了不少优秀的工作。

驭势感知技术实践

驭势科技深耕自动驾驶领域多年,以业务为驱动,在感知方面形成了完整、成熟的技术体系。自研多模态融合感知、视觉BEV感知、全景分割等深度学习网络均达到业界领先的水平

4ebe488c3ee1676987cd208232438391.png

图示:驭势科技研究成果入选CVPR2022

其中视觉BEV感知网络在nuScenes视觉3D目标检测榜单中进入TOP 3(2022年),全景分割网络在在NeurIPS 2021中nuScenes全景分割挑战赛取得第一名的成绩,该成果的论文入选CVPR 2022。

自研网络在保持高精度的同时,也考虑了车端算力的限制,以较低的算力实现了高精度,并在嵌入式平台达到了实时性,多项成果已在实车部署应用。

多模态融合感知

在多模态融合感知方面,我们自研了图像、点云融合网络。该融合网络的特点是轻量,可在嵌入式平台达到实时的性能,该网络充分利用了大规模的预训练模型来提升图像分支的能力。

5e0f994588cade0d077588149f2d8214.png

图示:驭势自研融合感知网络架构


多模态融合感知网络往往需要同步的点云、图像数据,而此类数据往往比较稀缺,对数据同步精度要求较高,此外点云图像的联合标注也更加昂贵,时间周期更长。自研网络在此方面显示出了非常高的灵活性。在量化评估中发现对感知距离和分类精度较纯点云网络提升非常明显,并且在雨天等极端天气场景下有非常强的鲁棒性。

c79d243286bc2412b1e65ae2692c0325.jpeg

融合感知网络利用低线束雷达和摄像头实现140米处的目标检测

视觉BEV感知

在BEV感知方面,我们自研了基于多相机的纯视觉BEV感知网络,该网络基于Transformer架构,并融合时序信息,取得了很高的精度。在nuScenes视觉3D目标检测排行榜中取得第三名的成绩(2022)。该网络在获得高精度的同时,保持了较低的算力消耗,使得在嵌入式平台上具备实时性,可按需达到10FPS。

8e124785c537711331d45aceed747736.png

图示:网络架构示意图

e6d97b2b5a517d98d46b88278ea2bf5b.png

图示:驭势BEV感知网络在nuscenes测试集的评估结果

d4a0104ea76efcb870cbdd28e849b0b4.png

图示:驭势自研BEV网络在Nuscenes数据集预测结果

全景分割

以往基于点云的实例分割任务主要分为proposal-base和proposal-free方法。proposal-based方法依赖于目标检测器的性能,而proposal-free的方法因为采用启发式的聚类方法,耗时比较高。

a4ffd0c675f99c4e7bb6d72bc5f72fb9.png

图示:Panoptic-PHNet网络架构

因此,我们提出了一种新颖的Panoptic-PHNet点云全景分割网络,该网络预测实例的中心点,而无需object-level任务的学习。该工作在nuScenes的全景分割挑战赛取得第一名的成绩,论文入选CVPR 2022。在取得高精度的同时,该网络推理速度达到数十FPS,满足了实时性的要求。

2e6a06e0a659d08b57c05966908b379c.png

图示:驭势全景分割网络和公开方法精度对比结果

数据闭环实践

驭势数据闭环体系可概括为以下几个方面:基于主动学习的数据挖掘、自动标注、半监督训练、云端训练部署体系等几个方面,下图总结了数据闭环体系的基本框架:

65a80031957e032457cc289668283483.jpeg

  • 基于主动学习的数据挖掘

数据闭环的首要任务是如何发现corner case场景。为解决这个问题,我们提出了基于主动学习的方法来识别系统未很好理解的场景。其基本思想是用不确定性来衡量模型的检测效果,筛选出不确定性高的目标场景。我们从不确定度和类别均衡两个维度来衡量场景的不确定性。其中不确定度包含类别的不确定度以及位置的不确定度。

下图展示了利用主动学习系统筛选出来的异常数据帧:

cd56397ffdaaf87be6e56a912de6dc98.jpeg

主动学习数据挖掘:目标框错误(左)

主动学习数据挖掘:低得分目标(右)

  • 自动标注

点云数据的标注成本非常昂贵,同时标注周期也很长,影响模型的迭代效率。为此,我们提出了一种自动化的标注方法,使得标注效率成倍的提升,大大缩短了模型迭代周期,同时节省了成本。其自动标注流程如下图所示。

d2e85c4a3491fc2a6b2576f13c92e510.jpeg

  1. 首先,我们利用时序大模型来寻找目标框,完成预标注;

  2. 其次,利用贴边算法来修正模型预标注框

  3. 最后,标注员对预标注结果进行检查、修正,形成最终的标注结果。

通过效率评估,我们发现自动标注可提升标注效率达人工标注的5-10倍,同时得到近似的模型精度。标注效率得到显著提升。

e5bbd7c970e1b71c5ef81417ae171c03.png

图示:自动标注效果图

  • 半监督训练

自动、半自动标注工具能够显著提升标注效率,但大规模的数据标注仍然需要消耗不小的人力成本。因此,我们也在探索半监督、无监督的训练方法。我们期望能够利用少量的数据标注,对模型进行半监督的训练,同时模型精度能够达到全量数据标注的水平。下图描述了半监督训练的框架:

2c87424b1a08e0ac8ebf1d1950515506.jpeg

  1. 首先,我们标注少量的数据,并用该少量标注数据训练Student网络和SeniorTeacher网络。

  2. 第二步,用少量数据迭代后的Student2网络在Teacher网络,以及SensorTeacher的监督下使用未标注的数据进行半监督训练。

我们通过量化分析,发现通过半监督训练的网络精度能够获得和全量数据标注差不多的效果。并且通过半监督方法,可以进一步降低标注成本。

c8dbabc1670e69ccba56e14b3799483b.png

图示:半监督训练预测结果和真值对比

上图红色框为标注Ground Truth结果,绿色框为经过半监督训练后预测的结果,可以看到半监督训练的预测结果基本上和Ground True一致。

长尾问题案例

在开放道路中不可避免地遇到各种各样的corner case,洒水车便是其中之一。洒水车产生的大量水雾在激光雷达点云上会产生大量的噪点,同时也会对摄像头成像产生巨大干扰。

1ef1c3fe5dcff04673d48decc8b5e5f6.png

图示:洒水车识别案例

我们通过数据闭环积累了大量数据,通过多传感器融合、以及数据增强手段有效的解决了此类问题。上图展示了当无人车穿越洒水车的场景,感知系统稳定感知到了左前方的洒水车,并成功穿越了水雾。

此外极端天气下的训练数据往往难于获取。为此,我们提出了一种数据增强策略,来模拟雨、雪、雾天的数据。下图是在正常点云数据中引入数据增强后模拟的雨天数据。

20135410e87c88642af5ac8f85da29f9.png

经过量化评估发现,在引入极端天气数据增强后,模型在极端天气数据上提升非常明显。如下图所示,在雨天数据上,引入数据增强后模型可正确检测出目标(红色框),而未引入数据增强模型则发生漏检(黄色框)。

99a4db95484d74298f2e4bee6e676544.png

总结与展望

自动驾驶感知技术无论是纯视觉技术路线还是多传感器融合技术路线都在朝着特征前融合、端到端大模型以及打造高效数据闭环的方向发展,也取得了长足的进步。相信随着深度学习技术的发展以及算力的不断提升,感知问题会得到更好的解决,推动自动驾驶向全天候、全无人的目标迈进。

作者:

耿秀军、李金珂、张丹

参考文献:

  [1] Joseph Redmon, Santosh Divvala, Ross Girshick, Ali Farhadi, “You Only Look Once: Unified, Real-Time Object Detection”

  [2] Ross Girshick, “Fast R-CNN”

  [3] Tai Wang, Xinge Zhu, Jiangmiao Pang, Dahua Lin, “FCOS3D: Fully Convolutional One-Stage Monocular 3D Object Detection”

  [4] Cody Reading, Ali Harakeh, Julia Chae, Steven L. Waslander, “Categorical Depth Distribution Network for Monocular 3D Object Detection”

  [5] Yue Wang, Vitor Guizilini, Tianyuan Zhang, Yilun Wang, Hang Zhao, Justin Solomon, “DETR3D: 3D Object Detection from Multi-view Images via 3D-to-2D Queries”

  [6] Zhiqi Li, Wenhai Wang, Hongyang Li, Enze Xie, Chonghao Sima, Tong Lu, Yu Qiao, Jifeng Dai, “BEVFormer: Learning Bird’s-Eye-View Representation from Multi-Camera Images via Spatiotemporal Transformers”

  [7] Alex H. Lang, Sourabh Vora, Holger Caesar, Lubing Zhou, Jiong Yang, Oscar Beijbom, “PointPillars: Fast Encoders for Object Detection from Point Clouds”

  [8] Tianwei Yin, Xingyi Zhou, Philipp Kr ̈ ahenb  ̈ uhl, “Center-based 3D Object Detection and Tracking”

  [9] Xiaozhi Chen, Huimin Ma, Ji Wan, Bo Li, Tian Xia, “Multi-View 3D Object Detection Network for Autonomous Driving”

  [10] Zhijian Liu, Haotian Tang, Alexander Amini, Xinyu Yang, “ BEVFusion: Multi-Task Multi-Sensor Fusion with Unified Bird’s-Eye View Representation”

  [11] Xuanyao Chen, Tianyuan Zhang, Yue Wang, Yilun Wang, “FUTR3D: A Unified Sensor Fusion Framework for 3D Detection”

283a42d2a723c63d46b067d67d1a3863.jpeg

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/382752
推荐阅读
相关标签
  

闽ICP备14008679号