当前位置:   article > 正文

自动驾驶 Autopilot ADAS 感知识别定位 高精度地图 bev鸟瞰图 决策规划控制_adas bev原理

adas bev原理

自动驾驶分级(SAE 美国汽车工程协会)

adas

参考

adas一般架构

自动驾驶系统主要包含三部分:环境感知、决策规划以及运动控制。感知层对车辆周边环境进行感知识别,用于获取环境信息;决策层充当人类驾驶员的角色,主要解决三个核心问题:“我在哪?我要去哪?我该如何去?”;控制层保证各项硬件系统稳定的运行在计算好的最佳设定值上;保证各项子系统的运行维持在最优的区间范围;规避可能性风险,精准调控至最佳路径。

硬件

自动驾驶硬件配置主要包含车、线控系统、传感器、计算单元等主要部分。车作为自动驾驶的载体,是自动驾驶车最基础的组成部分;而线控系统的性能好坏直接影响整车的可靠性、安全性、舒适性等,有别于传统汽车通过机械传动的方式控制汽车,线控系统通过电信号来控制汽车,这种方式显然更适合电脑控制。

要实现自动驾驶,还需要众多的传感器的加持,常见传感器包括激光雷达、摄像机、毫米波雷达、超声波雷达、GPS、IMU等。传感器是自动驾驶车的眼睛,负责感知外部环境。计算单元则是自动驾驶车的大脑,传感器获取的信息经过计算单元的计算之后,输出一条可以供汽车安全行驶的轨迹,控制汽车行驶。

硬件配置大致决定了一辆车的性能和品质,而自动驾驶车辆优先考虑的就是安全,由于各种传感器的加持,自然提高了整车制造成本,如何平衡成本和自动驾驶安全问题,是各大厂商需要面对的问题,这也是阻碍自动驾驶普及的重要原因之一。

传感器

自动驾驶借助各种传感器来感知周围环境,传感器从功能上主要划分为环境感知、状态感知。环境感知:获取车当前所处的环境信息,包括:周围的车辆、行人、交通标志、红绿灯、所处的场景(路口交汇处、停车场、高速公路)等。状态感知:获取车自身的状态,包括当前车辆的位置、航向角、速度、俯仰角等信息。

自动驾驶车所用到的传感器如图所示,包括激光雷达、毫米波雷达、超声波雷达、相机、GPS、IMU等。

摄像头

摄像头是目前自动驾驶车中应用和研究最广泛的传感器,其采集图像的过程最接近人类视觉系统。基于图像的物体检测和识别技术已经相当成熟,随着近几年深度学习的发展,基于深度学习的视觉感知算法已大量应用于实际生活和生产中,在某些任务上甚至已经超越人类水平。在自动驾驶车上,一般会安装多个摄像头,兼顾不同的视角和任务。

摄像头的成本低、成像像素高、刷新频率快,因此被大量应用于智能车。摄像头可以获取颜色信息,可以用于红绿灯检测、交通标志识别、场景分割等。相比于激光雷达或毫米波雷达,摄像头可以获取更远距离的信息,更早的感知环境状况,因此摄像头常应用于智能驾驶的环境感知任务中。为了获取足够的视野自动驾驶车一般会配备多个摄像头,为保证多个摄像头的拍摄时间一致,摄像头有一个触发器(Trigger),用于控制信号同时触发多个摄像头,如图7为特斯拉自动驾驶方案。

摄像头作为被动型感光设备,对光照的变化十分敏感。在强光、黑夜、雨雪、大雾等能见度低或在快速移动的情况下,获取的画质质量大幅降低。

激光雷达

激光雷达是自动驾驶领域非常依赖的传感器,越来越多的自动驾驶公司看好激光雷达的应用前景。激光雷达是实现更高级别自动驾驶(L3级别以上),以及更高安全性的良好途径,相比于毫米波雷达,激光雷达的分辨率更高、稳定性更好、三维数据也更可靠。

  • 原理

激光雷达( Light Detection and Ranging,LIDAR)是激光检测和测距系统的简称,通过对外发射激光脉冲来进行物体检测和测距。激光雷达采用飞行时间(Time of Flight,TOF)测距,发射器先发送一束激光,遇到障碍物后反射回来,由接收器接收,然后通过计算激光发送和接收的时间差,得到目标和自己的相对距离。如果采用多束激光并且360度旋转扫描,就可以得到整个环境的三维信息。激光雷达扫描出来的是一系列的点,因此激光雷达扫描出来的结果也叫“激光点云”,如图1所示。

根据发生器的不同可以产生紫外线(10-400nm)到可见光(390-780nm)到红外线(760-1000000nm)波段内的不同激光,相应的用途也各不相同。激光是一种单一颜色、单一波长的光,激光雷达选用的激光波长一般不低于850nm,以避免可见光对人眼的伤害,而目前主流的激光雷达主要有905nm和1550nm两种波长。905nm探测距离受限,采用硅材质,成本较低;1550nm探测距离更远,采用昂贵的铟镓砷(InGaAs)材质,激光可被人眼吸收,故可做更远的探测光束。

激光雷达(Lidar)光束范围很窄,所以需要更多的纵向光束,以覆盖大的面积,所以线束决定着画面大小,扫描再通过返回的时间测量距离,并精准、快速构建模型,相比目前的其他雷达强太多,所以更适合自动驾驶系统,但也同样易受天气影像,成本较

  • 应用

激光雷达能够准确输出障碍物的大小和距离,通过算法对点云数据的处理可以输出障碍物的3D框,如:3D行人检测、3D车辆检测等;亦可进行车道线检测、场景分割等任务。

除了障碍物感知,激光雷达还可以用来制作高精度地图。地图采集过程中,激光雷达每隔一小段时间输出一帧点云数据,这些点云数据包含环境的准确三维信息,通过把这些点云数据做拼接,就可以得到该区域的高精度地图。

在定位方面,智能车在行驶过程中利用当前激光雷达采集的点云数据帧和高精度地图做匹配,可以获取智能车的位置。

激光雷达具有较高的分辨率,可以记录周围环境的三维信息,激光雷达是主动发射型设备,对光照的变化不敏感,在有光照变化和夜晚等场景基本不会受到影响。此外激光雷达能够提供水平360度的视野范围,保证整个自动驾驶车基本上没有视野盲区。

但是激光雷达惧怕雾霾天气,因为雾霾颗粒的大小非常接近激光的波长,激光照射到雾霾颗粒上会产生干扰,导致效果下降。随着技术的进步,以及成本的下降,激光雷达会普及到更多领域。

毫米波雷达(RADAR)

和激光雷达的原理类似,是工作在毫米波波段(millimeter wave )探测的雷达。通常毫米波是指30~300GHz频域(波长为1~10mm)的。毫米波的波长介于微波和厘米波之间,因此毫米波雷达兼有微波雷达和光电雷达的一些优点。

同厘米波导引头相比,毫米波导引头具有体积小、质量轻和空间分辨率高的特点。与红外、激光、电视等光学导引头相比,毫米波导引头穿透雾、烟、灰尘的能力强,具有全天候(大雨天除外)全天时的特点。另外,毫米波导引头的抗干扰、反隐身能力也优于其他微波导引头 。毫米波雷达能分辨识别很小的目标,而且能同时识别多个目标;具有成像能力,体积小、机动性和隐蔽性好。目前已经上市的高级驾驶辅助系统(Advanced Driver Assistance Systems,ADAS)大部分都带有毫米波雷达。

由公式,光速 = 波长 * 频率,可知频率更高的毫米波雷达,其波长越短。波长越短,意味着分辨率越高;而分辨率越高,意味着在距离、速度、角度上的测量精度更高。

毫米波雷达的体积小,相比于激光有更强的穿透性,能够轻松地穿透保险杠上的塑料,因此常被安装在汽车的保险杠内,安装之后对汽车外观的影响不大;毫米波雷达能够同时检测多个物体的距离、角度和相对速度,特别是高速移动的物体;毫米波雷达测量距离也比较大,最大探测距离可达250m,并且能够穿透雾和粉尘,还能够适应各种不同的天气。

毫米波雷达也有局限性,雨、雾和湿雪等高潮湿环境的衰减,以及大功率器件和插损的影响降低了毫米波雷达的探测距离,特别是垂直角度;树丛穿透能力差,相比微波,对密树丛穿透力低;采样的点比较稀疏,分辨率比较低,很难识别体积比较小的物体;元器件成本高,加工精度相对要求高,单片收发集成电路的开发相对迟缓。

超声波雷达

超声波雷达,是一种利用超声波测算距离的雷达传感器装置。在车载传感器中,超声波雷达是目前最常见的品种之一,短距离测量中,超声波测距传感器具有非常大的优势,多用在倒车雷达上。在倒车入库,慢慢挪动车子的过程中,在驾驶室内能听到“滴滴滴”的声音,这些声音就是根据超声波雷达的检测距离给司机的反馈信息。

  • 自动泊车辅助系统
    自动泊车辅助系统
    为了更好地达成辅助停车的功能,部分车型的自动泊车辅助系统甚至包含了8个PDC雷达(用于探测周围障碍物)和4个PLA雷达(用于测量停车位的长度)。这些超声波雷达系统可以实时监测车辆与障碍物之间的距离,并把信息反馈给车辆,以帮助车辆及时调整车身姿态和速度,顺利完成自动泊车。

(二)自动紧急制动系统

自动紧急制动系统
配备了自动紧急制动系统的车辆,会周期性地获取车辆当前的行驶速度,并根据当前速度、系统中预设的速度阈值以及超声波雷达的信息反馈,来判断车辆与障碍物之间的距离。一旦发现车辆距离前方行人或障碍物距离较近的时候,系统会主动提醒驾驶者,如果驾驶者还会做出反应,系统则会主动启动制动系统,确保安全距离。

(三)前方防碰撞预警系统

前方防碰撞预警系统
前方防碰撞预警系统的工作原理与自动紧急制动功能比较相似,通常会采用超声波雷达来实现车距的实时监测和识别,通过不断获取目标障碍物的距离信息,进行分析处理,传输给执行机构。一旦发现存在潜在碰撞危险,便会对驾驶者进行警告,但需要注意的是,预警系统本身不会采取任何制动措施去避免碰撞或控制车辆。

(四)变道辅助系统

变道辅助系统
变道辅助系统可以依靠布置在车身两侧的超声波雷达组件,探测障碍物或是运动车辆,再结合驾驶者的变道动作,来判断是否存在碰撞风险;再结合车辆本身的辅助驾驶功能,来完成车辆的变动操作。

(五)全速自适应续航系统

全速自适应续航系统
全速自适应续航系统一般集成了车辆摄像头、超声波雷达系统,通过ACC控制单元与ABS系统、发动机控制系统协调动作,适当加速或制动,使得车辆与前方车辆始终保持安全距离。

感知

2D目标检测

车道线检测

车道线检测是一种环境感知应用,其目的是通过车载相机或激光雷达来检测车道线。近年来,随着计算机视觉的应用发展和落地,车道线检测任务也获得了广泛关注,出现一系列的车道线检测方法。车道检测在自动驾驶系统中扮演着重要的角色,特别是在高级辅助驾驶系统(ADAS)中。

一、公开数据集

车道线检测数据集的构建需要各场景类别的数据平衡,比如高速公路,辅路,盘山路,夜晚,雨天等数据,以模拟真实行车环境。

(一)开源车道线数据集:
数据集数量(张)尺寸场景特点
TuSimple72k1280x720高速路,天气晴朗,车道线清晰车道线以点来标注
CULane [图1]98k1640x590拥挤,黑夜,无线,暗影等八种难以检测的情况; 场景复杂,很多位于北京城区,难度较高最多标记4条车道线
Caltech1.2k640x480场景比较简单,且视角较好
VPGNet20k白天(非雨天、雨天、大雨天)、夜晚包含了各种车道线类型,以及其他不同类型的车道标识(左转箭头、直行箭头、斑马线等等)
BDD100k120M1280x720包含美国4个区的白天、黑夜各种天气状况二维8类别车道线
ApolloScape140k3384x2710车道线以掩码的形式标注,包含2维或3维28个类别
CurveLanes135k2650x144包括很多较为复杂的场景,如S路、Y车道,还有夜间和多车道的场景采用三次样条曲线手动标注所有车道线,分为训练集10万张,验证集2万张,测试集3万张
二、方法
(一)传统图像方法

传统图像方法通过边缘检测、滤波等方式分割出车道线区域,然后结合霍夫变换(Hough)、RANSAC等算法进行车道线检测。这类算法需要人工手动去调滤波算子,根据算法所针对的街道场景特点手动调节参数曲线,工作量大且鲁棒性较差,当行车环境出现明显变化时,车道线的检测效果不佳。主流方式如下:

  • 基于霍夫变换(Hough)的车道线检测
  • 基于LSD直线的车道线检测
  • 基于俯视图变换的车道线检测
  • 基于拟合的车道线检测
  • 基于平行透视灭点的车道线检测

缺点:霍夫直线检测方法比较准确,但不能做弯道检测;拟合方法可以检测弯道,但稳定性较差;仿射变换可以做多车道检测,但在遮挡等干扰情况下,效果较差;透视变换操作上,对相机有一些具体的要求,在变换前需要调正图像,而且摄像机的安装和道路本身的倾斜都会影响变换效果。

(二)深度学习方法

深度学习方法具体较强的鲁棒性,且相对传统方法准确性更高,另外可以直接融合到目标检测、场景识别等多任务模型中,进一步节省了计算资源。大致分为四类:基于分割的方法、基于检测的方法、基于参数曲线的方法、基于关键点的方法。

1. 基于分割的方法

基于分割的方法将车道线检测建模为逐像素分类问题,每个像素分为车道线区域或背景。这类模型通常是在语义分割模型的基础上,增加一个车道线实例判别头,来对车道线是否存在进行监督学习。经典方法有:SCNN[1]、RESA[2]、LaneNet[3]等。

(1)SCNN:

SCNN多类分割任务

为了区分不同的车道线,SCNN将不同的车道线作为不同的类别,从而将车道检测转化为多类分割任务。提出一个切片CNN结构,以使消息跨行和列传递。对SCNN切片CNN结构进行改进,加入切片间的不同步幅大小的信息传递,同时解耦相邻层之间的时序上的依赖,增加并行处理能力。

(2)RESA:

RESA结构示意图

RESA(Recurrent Feature-Shift Aggregator)是文章提出用于信息传递方法的一个特征增强模块,能够捕获行和列之间像素的空间关系,RESA具有很高的计算效率,同时可以有效地聚合空间信息,适合检测具有突出的几何先验的目标。

(3)LaneNet:

LaneNet结构示意图

LaneNet车道线检测思路是将车道线检测任务分成两个分支,车道检测分支与车道嵌入分支。车道分割分支就是将图片分为车道与背景。车道嵌入分支就是将分割出的车道进一步分解成不同的实例instance。

总结:分割模型大,处理速度慢。在严重遮挡情况下表现差,没有充分利用车道线的先验知识。

2. 基于检测的方法

基于检测的方法通常采用自顶向下的方法来预测车道线,这类方法利用车道线在驾驶视角自近处向远处延伸的先验知识,构建车道线实例。

(1)基于Anchor的方法设计线型Anchor,并对采样点与预定义Anchor的偏移量进行回归。应用非极大值抑制(NMS)选择置信度最高的车道线。经典方法有:LineCNN[4]、LaneATT[5]等。

  • LineCNN:

LineCNN结构示意图

LineCNN是一个端到端的车道线检测模型, 该模型的使用ResNet提取特征, 使用RPN思想实现车道线检测, 其核心是提出LPU结构, LPU解决了车道线误差计算的问题, 使得该检测模型达到不错效果.

  • LaneATT:

LaneATT结构示意图

提出了一种在大型复杂数据集上,比现有最先进的方法更精确的实时车道检测方法;基于线性型Anchor的池化方法结合注意力机制的单级模型,类似YOLOv3或SSD,比其他大多数模型更快;

(2)基于实例检测的方法,将图像水平条带等距切分,检测水平条带中每条车道线的位置。经典方法有:CondLaneNet[6]、UFAST[7]等。

  • CondLaneNet:

CondLaneNet结构示意图

CondLaneNet是一种自上而下的车道线检测框架,它首先检测车道实例,然后动态预测每个实例的线形。

  • UFAST:

UFAST结构示意图

UFAST将车道检测过程看作一个基于全局特征的行选择问题,能够有效的降低计算量,提高计算速度。

总结:自顶向下的设计能够更好的利用车道线的先验知识,提高检测实时性,同时在处理严重遮挡等情况下能够获得连续的车道线检测实例。但预设Anchor形状会影响检测的灵活性。

3. 基于关键点的方法

基于关键点的方法直接对车道线的实例进行检测,使用后处理对实例进行划分。经典方法有:GANet[8]等。

(1)GANet:

GANet结构示意图

将每个关键点直接回归到车道线的起点进行实例的划分,而不是逐点延伸。

总结:此类方法兼具灵活性和实时性,在处理遮挡问题时如何构建全局信息是需要考虑的问题。

4. 基于参数曲线的方法

基于参数曲线的方法使用预先设定的参数曲线,对车道线形状进行检测,相关工作有:PolyLaneNet[9]等。

(1)PolyLaneNet:

PolyLaneNet结构示意图

PolyLaneNet通过多项式曲线回归,输出表示图像中每个车道线的多项式。

总结:基于曲线的方法可以自然地学习整体车道表示,具有较高的推理速度,但在准确度上不高。

自动驾驶系统的部署终端对车道线检测算法提出了准确性和实时性的基本要求,基于深度学习的车道线检测算法的发展,使得车道线检测算法的应用落地获得了切实可行了解决方案。从基于传统实例分割的基于分割的方法,到结合先验知识进行自顶向下建模的基于检测的方法,使得车道线检测算法的精度和速度不断提高。如何更好的利用车道线形状的先验知识是值得继续探索的方向。

2D目标检测

视觉transformer检测模型-DETR

DETR的思路和传统的目标检测的本质思路有相似之处,但表现方式很不一样。传统的方法比如Anchor-based方法本质上是对预定义的密集anchors进行类别的分类和边框系数的回归。DETR则是将目标检测视为一个集合预测问题(集合和anchors的作用类似)。由于Transformer本质上是一个序列转换的作用,因此,可以将DETR视为一个从图像序列到一个集合序列的转换过程。该集合实际上就是一个可学习的位置编码(文章中也称为object queries或者output positional encoding,代码中叫作query_embed)。

DETR算法流程

传统的cnn检测模型,如yolo系列

3D目标检测

  • 定义

3D目标检测是通过输入传感器数据,预测3D目标的属性信息的任务。如何表示3D目标的属性信息是关键,因为后续的预测和规划需要这些信息。大部分情况下,3D目标被定义为一个立方体,(x,y,z)是立方体的中心坐标,l,w,h是长宽高,delta是航向角,比如立方体在地平面的偏航角,class是3D目标的类别。vx、vy描述3D目标在地面上沿x轴和y轴方向的速度。在工业应用中,一个3D目标的参数可以进一步简化为鸟瞰图上一个长方体的4个角位置。

在感知任务中,3D目标检测是车辆感知系统中最不可或缺的任务之一。3D目标检测旨在预测3D空间中关键目标的位置、大小和类别,例如机动车、行人、骑自行车的人等。与仅在图像上生成2D边界框并忽略目标与本车的实际距离信息的2D目标检测相比,3D目标检测侧重于对真实世界3D坐标系中目标的定位和识别。3D目标检测在现实世界坐标中预测的几何信息可以直接用于测量本车与关键目标之间的距离,并进一步帮助规划行驶路线和避免碰撞。

  • 传感器输入

许多类型的传感器都可以为3D目标检测提供原始数据,相机和激光雷达(LiDAR)是两种最常采用的传感器类型。相机价格便宜且易于使用,并且可以从某个角度捕捉场景信息。相机产生图像 I c a m ∈ R W × H × 3 I_{cam}\in{R^{W×H×3}} IcamRW×H×3用于3D目标检测,其中W和H是一幅图像的宽高,每个像素有3个RGB通道。尽管价格便宜,但相机在用于3D目标检测方面存在内在限制。首先,相机只捕捉外观信息,不能直接获取场景的3D结构信息。另一方面,3D目标检测通常需要在3D空间中进行准确定位,而从图像估计的3D信息(如深度信息)通常具有较大的误差。此外,基于图像的检测很容易受到极端天气和时间条件的影响。在夜间或雾天目标检测相比于晴天检测要困难得多,这样的自动驾驶系统无法保证鲁棒性。

作为替代解决方案,LiDAR可以通过发射一束激光束,然后测量其反射信息来获得场景的细粒度3D结构信息。一个LiDAR传感器在一个扫描周期内发射光束并进行多次测量可以产生一个深度图像,每个深度图的像素有3个通道,分别为球坐标系中的深度 γ \gamma γ、方位角 α \alpha α和倾角 ϕ \phi ϕ。深度图像是激光雷达传感器获取的原始数据格式,可以通过将球坐标转换为笛卡尔坐标进一步转换为点云。一个点云可以表示为N×3,其中N表示一个场景中的点数,每个点有3个xyz坐标通道。附加功能,例如反射强度,可以附加到每个点或深度图像素。深度图像和点云都包含由LiDAR传感器直接获取的准确3D信息。因此,与相机相比,LiDAR传感器更适合检测3D空间中的目标,并且LiDAR传感器也更不易受时间和天气变化的影响。然而,LiDAR传感器比摄像头贵得多,这限制了在驾驶场景中的大规模应用。3D目标检测图解,见下图:

 3D目标检测范例

与2D目标检测的比较

2D目标检测是计算机视觉中的一个基本问题,而3D目标检测方法借鉴了2D目标检测方法的许多设计范式,如 RPN、Anchors、NMS等。然而,从多方面来看,3D目标检测方法并不是2D目标检测方法对3D空间的简单适配。

*(1)3D目标检测方法必须处理多样化的数据

点云检测需要新的算子和网络来处理不规则的点数据,而点云和图像的检测需要特殊的融合机制。

*(2)3D目标检测方法通常利用不同的投影视图来生成目标预测结果

与从透视图检测目标的2D目标检测方法相反,3D方法必须考虑不同的视图来检测3D目标,例如鸟瞰图、点视图、柱面视图等。

  • (3)3D目标检测对目标在3D空间的准确定位有很高的要求

分米级的定位误差可能导致对行人和骑自行车的人等小目标的检测失败,而在2D目标检测中,几个像素的定位误差可能仍然保持较高的IoU指标(预测值和真值的IoU)。因此,不论是利用点云还是图像进行3D目标检测,准确的3D几何信息都是必不可少的。

与室内3D目标检测对比

室内3D目标检测也是3D目标检测的一个分支,室内数据集比如SUN RGB-D,利用RGB-D和3D标注信息重建房间结构,包括门、窗、床、椅子等。室内场景中的3D目标检测也是基于点云或图像。然而,与室内3D目标检测相比,驾驶场景中存在独特的挑战。

*(1)自动驾驶场景的检测范围远大于室内场景

驾驶场景中的3D目标检测通常需要预测很大范围内的3D目标,如 Waymo中为150m×150m×6m,而室内3D目标检测通常以房间为单位,而其中大多数单人房间小于10m×10m×3m。那些在室内场景中工作的时间复杂度高的方法在驾驶场景中可能无法表现出好的适应能力。

*(2)LiDAR和RGB-D传感器的点云分布不同

在室内场景中,点在扫描表面上分布相对均匀,大多数3D目标在其表面上可以接收到足够数量的点。而在驾驶场景中,大多数点落在LiDAR传感器附近,而那些远离传感器的3D目标仅接收到少量点。因此,驾驶场景中的方法特别需要处理3D目标的各种点云密度,并准确检测那些遥远和稀疏的目标。

*(3)驾驶场景中的检测对推理延迟有特殊要求

驾驶场景中的感知必须是实时的,以避免事故。因此,这些方法需要及时高效,否则它们将无法落地。

数据集

自动驾驶3D目标检测相关数据集较多,具体见下表。主要的数据集建立需要继续干以下四件事:

1)增大数据规模
2)增加数据多样性,不只有白天夜晚,还要包括阴天、雨天、雪天、雾天等
3)增加标注类别,除了常用的机动车、行人、非机动车等,还应包括动物,路上的障碍物等
4)增加多模态数据,不只有点云和图像数据,还有高精地图、雷达数据、远程激光雷达、热成像数据等

未来的数据集应该包括感知、预测、规划、建图等一整套数据,这样可以为端到端的自动驾驶系统服务,而不仅仅是考虑一个3D目标检测任务。

  • 基于LiDAR的3D目标检测

基于LiDAR点云数据、深度图的3D对象检测方法,包含数据表示和学习对象两方面。数据表示分为基于点、网格、体素、深度图的不同方法。检测器分为基于锚、无锚以及相关辅助的方法,以下时间轴将较为经典的算法做了个列举。

3D目标检测进展时间轴

*(一)基于点的3D目标检测

基于点的3D目标检测架构

基于点的目标检测成功在点云上应用深度学习方法,提出了一系列框架,可以直接从原始点数据来预测3D目标。将点云通过基于点的主干网络,通过点云算子来提取点云特征,基于下采样的点和特征预测3D框。基于点的3D目标检测器主要组成部分为:点云采样和特征学习。

*(二)基于网格的3D目标检测

基于网格的3D目标检测器首先将点云栅格化为离散的网格表示,即体素、柱体和鸟瞰视图(BEV)特征图。然后应用传统的2D卷积神经网络或3D稀疏神经网络提取特征。最后,可以从BEV网格中检测出3D目标。上图3展示了基于网格的3D目标检测的示例,下表2给出了基于网格的检测器的分类。网格检测有两个基本组成部分:基于网格的表示和基于网格的神经网络。

  • BEV 特征图

鸟瞰特征图是一种密集的二维表示,其中每个像素对应一个特定的区域,并对该区域内的点信息进行编码。BEV特征图可以由体素和柱体投影到鸟瞰图中获得,也可以通过汇总像素区域内的点统计数据,直接从原始点云中获得。常用的统计数据包括二进制占用率和局部点云高度和密度。

基于网格的神经网络。目前主要有两种基于网格的网络:用于BEV特征图和柱体的2D卷积神经网络,以及用于体素的3D稀疏神经网络。

与BEV特征图和柱体2D表示相比,体素包含更多结构化的3D信息。此外,可以通过3D稀疏网络学习深度体素特征。但是,3D神经网络会带来额外的时间和内存成本。BEV特征图是最有效的网格表示,它直接将点云投影到2D伪图像中,而无需专门的3D算子,如稀疏卷积或柱体编码。2D检测方法也可以在BEV特征图上无缝应用,无需太多修改。

基于BEV的检测方法通常可以获得高效率和实时推理速度。然而,简单地汇总像素区域内的点统计信息会丢失太多的3D信息,与基于体素的检测相比,这会导致检测结果不太准确。

基于柱体的检测方法利用PointNet对柱体单元内的3D点信息进行编码,然后将特征分散回2D伪图像中进行有效检测,从而平衡3D目标检测的效果和效率。

选择合适大小的网格单元是所有基于网格的方法都必须面对的关键问题。通过将连续点坐标转换为离散网格索引,网格表示本质上是点云的离散形式。在转换过程中不可避免地会丢失一些3D信息,其效果很大程度上取决于网格单元的大小:网格小,分辨率高,可以保持更细粒度的细节,对于准确检测3D目标至关重要。然而,减小网格单元又会导致2D网格表示(如BEV特征图或柱体)的内存消耗呈二次方增长。至于像体素这样的3D网格表示,问题可能会变得更加严重。因此,如何平衡更小网格尺寸带来的效果和内存增加影响效率,仍然是所有基于网格的3D目标检测方法的一个挑战。

定位

规划

控制

仿真 部署

特斯拉 AI Day2022

百度阿波罗apollo

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

闽ICP备14008679号