点击下方卡片,关注「集智书童」公众号
车辆感知系统旨在全面快速地解读周围环境,以提高安全性和导航性能。作者介绍了YOLO-BEV,这是一个高效的框架,利用独特的周围摄像机设置生成车辆环境的鸟瞰图。通过在战略位置安装8台摄像机,每个摄像机之间间隔45度,作者的系统捕捉并将图像集成到一个连贯的3×3网格格式中,将中心留空,提供了一个丰富的空间表示,有助于高效处理。
在作者的方法中,作者采用了YOLO的检测机制,利用其快速响应和紧凑的模型结构等固有优势。与传统的YOLO检测头不同,作者采用了一个定制设计的检测头,将全景捕获的数据转化为统一的车辆鸟瞰图。
初步结果验证了YOLO-BEV在实时车辆感知任务中的可行性。由于其精简的架构和参数最小化,YOLO-BEV具有迅速部署的潜力,可能会在自动驾驶系统的未来发展中起到重要作用。
1. 简介
自动驾驶系统代表了交通、出行和道路安全领域的一次革命性转变。这些系统的主要挑战在于有效地感知和理解环境。目前,该行业的主流研究集中在两种主要的感知技术上:传感器融合解决方案,将激光雷达(LiDAR)和雷达与摄像头整合在一起,以及仅依赖摄像头的视觉系统。虽然传感器和视觉技术融合可以提供强大的感知能力,但这种方法通常伴随着增加的成本和潜在的环境挑战,因此在大规模部署方面不太可行。
相比之下,仅依赖摄像头设置进行环境感知的视觉系统,不仅是一种经济有效的替代方案,而且更符合可持续发展目标。因此,视觉解决方案越来越被视为整个自动驾驶行业的可能最终方向。在这个以视觉为基础的范式中,一个新兴的研究焦点是通过生成鸟瞰视图(BEV)来增强车辆感知。传统的生成这种视图的方法通常受限于受限的摄像机角度,从而限制了车辆的空间感知能力,这对于实时决策至关重要。
正如图1所示,取自Motional网站的一个现实世界示例,纯粹基于视觉生成鸟瞰视图(BEV)已经成为现代研究的焦点。这些方法旨在通过为环境感知提供丰富的背景,从而在复杂情况下促进实时决策,推动自动驾驶的未来。
如图2所示,生成鸟瞰视图地图后,自动驾驶的典型用例涉及利用这些BEV进行路径规划。在这里,道路的基本布局,包括车道标线和其他静态元素,通常是预先测量的高清地图。这些静态信息作为动态元素(如汽车、行人和其他物体)叠加的基础,从而为实时导航决策提供必要的背景。
作者的工作旨在摆脱这一限制,通过开创一种方法,建立车辆的各个摄像头位置与BEV地图之间的直接空间对应关系。具体来说,BEV地图中每个图像的位置由捕获它的视角决定;例如,从车辆前方拍摄的图像映射到BEV的顶部,而从后方拍摄的图像则映射到底部。通过这种方式,作者确保了对车辆周围环境的一种连贯和直观的空间表示。
借助这一创新框架,作者引入了YOLO-BEV,一种专门设计的感知系统,旨在将这些具有空间相关性的多摄像头数据转化为全面的、统一的2D BEV。采用YOLO成熟和高效的目标检测算法,YOLO-BEV被设计为将这些丰富的视觉数据解释为单一、连贯和高度信息丰富的BEV地图,从而实现更强大的实时车辆感知。
初步结果强调了该框架在实际应用中的有效性和可行性,将YOLO-BEV定位为可能在重塑未来自动驾驶系统领域的实践和方法方面具有突破性的工具。
2. YOLO-BEV
本节讨论YOLO-BEV,这是一种用于自动驾驶应用程序生成鸟瞰图地图的新方法。该方法使用相机设置矩阵进行数据收集,并利用YOLO的Backbone来进行特征提取。还引入了专门用于鸟瞰图输出的自定义检测层,以及用于优化的相应损失函数。
A. 概述
这项研究的核心创新在于摄像机布局的巧妙设计,使其与生成的鸟瞰图完美对应。这种布局涉及在车辆上安装8台摄像机,以45度间隔战略性地放置,以捕捉车辆周围的360度视野。然后采用了独特的3×3矩阵布局进行图像预处理,为基于YOLO的特征图生成相应的鸟瞰图铺平了道路。
图3提供了这一新颖概念的图示表示,详细说明了摄像机的视野如何与生成的鸟瞰图中的特定区域对应。这一设计的重要性远远超出了几何考虑,特别是在自动驾驶领域,它提供了在车辆俯视图中与之相符的复合图像,从而有望实现更准确的目标检测和空间识别。
其中,作者将矩阵的最后一行中的三幅图像旋转了180度,因为作者发现这种设置可以更好地匹配鸟瞰视图的空间位置。
B. 数据收集与预处理
在这个学术研究中,作者主要依赖来自nuScenes的nuPlan数据集,这个数据集是重要的自动驾驶信息宝库,包括在波士顿、匹兹堡、拉斯维加斯和新加坡等4个地理和文化多元的城市中精心捕捉的高质量驾驶数据,总计1200小时。该数据集不仅呈现了多种驾驶条件,还提供了丰富的传感器数据,包括但不限于多个尖端激光雷达单元、多种摄像头视角、惯性测量单元(IMU)以及高精度的GPS坐标。
为了精细调整研究焦点并优化计算效率,本研究有策略地集中于使用来自nuPlan数据集的8台精心选择的摄像机采集的图像。这些图像特别适合构建建议的3×3图像帧矩阵,并与鸟瞰图本地化场景建立空间对应关系。
为了生成可靠和准确的地面真实数据,作者采用了一种创新但简单的提取技术。通过利用nuPlan数据集中唯一标识的标记,作者成功地建立了输入图像和精心计算的代表其他车辆位置的鸟瞰图坐标之间的一对一对应关系。这个有针对性的方法使作者能够筛选数据集中的大量数据,并有选择地提取与作者的研究目标直接相关的数据。
因此,非必要信息,如行人、交通信号和其他环境变量,被有意地从作者的分析中省略。这种精简的方法有助于加快计算过程,显著缩短获得有意义的结果所需的时间。
C. 模型架构
作者的模型基本上建立在YOLO强大的架构之上,特别是利用了它高效的特征提取能力。通过同时使用YOLO架构的Backbone和Head部分,模型将初始的3×3图像矩阵转化为一组丰富的多尺度特征图。这些特征图然后经过进一步的处理,通过作者的专有层CustomDetect,该层经过精心设计,以实现精确的鸟瞰图目标定位。图4提供了初始3×3输入矩阵、经过微调的Backbone和Head以及专门的CustomDetect层的架构概述。
CustomDetect模块的架构由nl层组成,其中nl与通道维度数组的长度相匹配。每一层都包含一个卷积层序列,以PyTorch ModuleList的形式组织,以便实现流畅的操作。这种连续卷积操作的数学表示可以描述如下:
在这个方程中,代表第个检测层中第个卷积层的输入,和代表相应的权重和偏差参数。采用了修正线性单元(ReLU)激活函数,引入了非线性特性到模型中。
在前向传播期间,CustomDetect层接收一组特征图的列表,每个特征图的特征维度为 Batch Size × Channels × Height × Width。然后,这些特征图被转换成一组坐标和置信度分数张量。
为了详细说明,对于每个单独的特征图,通过以下公式推导出张量:
这个结果张量包含了鸟瞰视图中的目标定位的关键信息,包括但不限于目标坐标和置信度分数。这些数据通过一个内部生成的网格进一步精细化,动态构建以与输入特征图Xi的空间维度相对应。
总之,作者的模型不仅利用了YOLO中经过验证的特征提取机制,还扩展了其边界框回归技术,用于更专门的目标定位任务。CustomDetect层经过精心校准,输出每个检测到的目标的x和y坐标、方向角度和置信度分数等关键参数。这些参数通过一个动态构建的网格进一步精炼,以与输入特征图的空间维度相对应。这使作者的模型特别擅长需要在鸟瞰视图中进行精确目标定位的任务,使其非常适用于自动驾驶领域的复杂应用。
D. 网格补偿机制
CustomDetect模块巧妙地引入了一个网格补偿机制,这是一个旨在微调预测的目标坐标的关键特性。这个机制在将最初由神经网络预测的相对坐标转化为全局信息丰富且与上下文相关的坐标集合中发挥关键作用,即相对于特征图的整个空间范围。
a) 创新的网格创建:
对于每个检测层,记作,都会创建一个精心构建的网格。这个网格在维度上与特定层生成的特征图相对应。网格内的每个单元都有一个中心坐标。从数学上讲,位于网格内的位置的单元的中心坐标可以如下优雅地定义:
b) 精确坐标调整:
让表示神经网络为特定特征图中的一个单元预测的坐标。这些初步坐标经过复杂的调整过程,利用了网格中相应单元的中心坐标。这个精确调整的数学表达式如下:
通过利用PyTorch强大的张量操作,这种精细调整机制确保了预测的坐标被系统地转化为全局信息丰富的形式。这不仅显著增强了模型在精确目标定位任务方面的能力,还有助于深度学习流水线的整体效率和可伸缩性,特别是在处理大规模数据时。
正如图5所示,考虑一个简化的3×3特征图,单元从左上角的(0, 0)到右下角的(2, 2)进行索引。每个单元的中心坐标都是特征图的维度的分数,的宽度和高度。例如,左上角单元(0, 0)的中心坐标将是的宽度的高度。
为了进一步阐述,假设对于这个单元,神经网络预测的坐标是。然后,这些坐标经过以下调整:
E. 损失函数
设计一个有效的损失函数是在训练健壮的深度学习模型中的关键因素,特别是在目标检测领域。作者的损失函数采用了多方面的方法来优化模型的性能,将空间和置信度方面合并到一个统一的目标函数中。
对于空间方面,作者引入了边界框损失,使用均方误差(MSE)作为底层损失度量。考虑到预测的边界框坐标和方向,这些坐标被转化为轴对齐边界框(AABB),以便计算与GT框的交并比(IoU),GT框也被转化为AABB。图6阐释了作者在边界框损失计算中使用的轴对齐边界框(AABB)。
图中显示了两个目标边界框及其对应的AABB。还显示了这些AABB的交集。值得注意的是,虽然AABB简化了交并比(IoU)的计算,但与更精确的定向边界框方法相比,它们通常会导致稍大的IoU值。这是因为这些边界框与轴对齐,可能包含不属于重叠部分的额外区域。
重要的是,经验测试表明,这种轻微的过估计通常是可以接受的,因为它仍然有效地有助于在训练过程中减小损失。从数学上讲,边界框损失定义如下:
选择在IoU中使用MSE确保了平滑的梯度流,有助于在基于反向传播的学习环境中进行优化过程。
对于置信度方面,作者实施了二元交叉熵(BCE)损失。该损失是根据两个类别计算的:正样本和负样本。正样本被定义为预测框与任何GT框的IoU超过预定义阈值的情况。对于正样本,损失包括IoU和置信度损失,表示为:
相反,负样本涉及到预测框与任何GT框显著重叠不多的情况。对于这种样本,只考虑置信度损失:
最终的损失函数是这些单独组成部分的加权和,结合了空间和置信度基于指标的贡献,有效捕捉了目标检测任务的微妙之处。
超参数α和β控制了空间和置信度方面之间的平衡,提供了在微调模型中的灵活性。为了提供更全面的概述,作者的损失函数不是一种孤立的创新,而是一个高级的改编,受到了YOLO架构对损失公式的方法的启发。
与YOLO类似,YOLO已经为实时目标检测设定了行业标准,作者采用了类似的多组分损失函数,处理了空间坐标和置信度分数。这个复杂设计的损失函数体现了目标定位和置信度估计的关键属性,旨在满足作者模型的独特要求。
通过整合这些受YOLO启发的组件,作者能够建立一个强大而灵活的损失函数。这种配置使作者的方法特别适合解决自动驾驶应用中常见的复杂挑战,如实时目标跟踪和高保真度定位。
3. 实验和结果
A. 实验设置
实验评估是在一台配备NVIDIA GeForce RTX 3090显卡,内存为24GB的高性能计算环境中进行的。选择这个设置是为了有效地加速训练和推理过程。
作者的训练策略包括两个阶段的数据方案。最初,模型接触了大约1,000个实例的数据集。目标是使模型接近过拟合状态,以确保捕捉复杂特征。在这个初期阶段,花费了数小时的时间来达到近似过拟合的优化模型状态。
随后,作者将转入训练方案的第二阶段。这个阶段涉及训练模型使用最新的完整的Nuplan数据集。考虑到这些数据的规模和复杂性更大,作者预计这个阶段需要更多的时间。还可能需要进一步调整学习率、批量大小和正则化系数等超参数。
作者采用了深度学习范式中常见的优化技巧。参数如学习率、批量大小和正则化系数被调整以符合体系结构和数据的具体要求。
随后,训练好的模型被应用于生成测试数据集的预测。这个评估阶段允许作者检查模型在与自动驾驶相关的场景中的适用性和效率。
B. 鸟瞰视图定位的初步结果
作者的实验评估在鸟瞰视图目标定位的背景下产生了令人鼓舞的初步结果。图7展示了生成的鸟瞰视图与GT鸟瞰视图的对比,证实了模型在复杂环境中进行准确的空间定位的能力。
生成的图表展示了在目标边界和方向上与GT的显著一致性。这个结果证明了模型在捕捉复杂的空间关系和细节方面的有效性,这是目标定位任务中的一个关键因素。
此外,模型输出的目标坐标、角度和置信度分数也与GT密切一致。这种一致性展示了作者提出的CustomDetect层与YOLO Backbone相结合的稳健性和可靠性,成功地将其目标定位能力扩展到了鸟瞰视角。
尽管这些初步结果令人鼓舞,但为了得出更明确的结论,需要进行包括更广泛的情景和度量标准的全面评估。然而,在这些初步试验中展示的明显能力,为该模型在自动驾驶技术领域的适用性提供了有力的指示。
C. 参数调优和模型选择
在自动驾驶领域的目标检测任务中,卷积神经网络(CNNs)是基础架构,因为它们在空间特征提取方面具有出色的能力。因此,精心选择模型和超参数调优变得不可或缺。
不同深度和复杂性的CNN架构经过实验,以找到计算开销和目标检测性能之间的最佳平衡。
通过网格搜索进行了超参数调优,这是一种详尽的搜索算法,系统地遍历了手动指定的超参数空间的子集。学习率、批量大小和丢失率是作者搜索中的关键超参数。例如,学习率在范围[0.1, 0.01, 0.001]内进行了探索。
为了确保在训练过程中实现细致有效的学习,作者利用了Adam优化算法,以其在各种机器学习任务中的效率和稳健性而闻名。Adam优化器从本质上受益于基于矩的优化,这显著有助于在高维参数空间中朝着最优解的收敛。Adam的更新规则如下:
其中GT是时间步的梯度,和是第一和第二时刻的估计值,β和β是控制这些时刻的指数衰减率的超参数。ϵ是一个小常数,以防止被零除。
Adam算法具有自适应地更改不同参数的学习率的能力,使其特别适用于自动驾驶应用中的挑战。通过将这一先进的优化算法纳入作者的训练策略,作者旨在实现更稳定和更快速的收敛,以及更准确的目标检测性能。
4. 讨论
A. 矩形重叠与NMS考虑
NMS一直是目标检测任务中的一个重要工具,用于将多个边界框精炼和减少到最可能的一个。在许多情况下,NMS是有效的,但在生成自动驾驶的鸟瞰视图地图方面,NMS引入了一些细微之处。
与标准的应用不同,这里使用的NMS技术必须在防止矩形重叠和可能导致车辆位置不精确的矩形移动之间取得微妙的平衡。
其中一个挑战是,传统上NMS优先考虑得分最高的矩形,这可能在特定设置中导致相邻或紧密排列的车辆的边界框的错位或移动。如图8所示,使用NMS可能导致鸟瞰视图上矩形的次优放置。
在这个特定应用中实现NMS的潜在差异暗示了进一步研究的空间。探索传统NMS算法的改进或替代方案可能提供了更好地满足自动驾驶所需的精确定位的可能性。
B. 帧间的时间不一致
所提出的模型主要基于逐帧操作,缺乏建立后续帧之间的时间关联的能力。这种缺乏时间关联导致生成的鸟瞰视图表示中出现不平滑,或者可以描述为“跳跃”的转换。
为了改善这个问题,未来的工作可以探讨利用基于Transformer的体系结构,因为Transformer以捕捉序列之间的关系而闻名。
虽然Transformer擅长处理时间序列,但值得注意的是,引入这种体系结构可能会增加模型的参数数量,从而可能降低每秒帧数(FPS)。较低的FPS可能会引入系统延迟,这是实时应用(如自动驾驶)中的一个关键问题。因此,必须在提高模型的时间理解能力和保持实时处理能力之间取得谨慎的平衡。
C. 缺乏类别特定信息
目前的模型在其现有形式中基本上是为了目标定位而设计的,没有考虑类别特定信息。它既不考虑不同目标的语义,也不识别诸如交通灯、行人或其他车辆实体等上下文线索。在理想情况下,更全面的鸟瞰视图应该包括这些不同元素,以提供更丰富的上下文,从而更好地为自动导航系统提供信息。
D. 未来工作
鉴于作者当前实施中存在的挑战和限制,进一步改进的道路既是开放的,也是值得探索的。这项研究的即期轨迹倾向于微调各种算法元素。例如,目前采用的非极大值抑制(NMS)算法可以更适应不同的驾驶条件,从而提高目标检测的稳健性。
除此之外,Transformer架构为时间序列建模提供了有前途的途径。引入这种体系结构可以通过考虑道路环境的动态性来增加模型的预测准确性。此外,特征检测领域可以通过加入类别特定属性和上下文线索而显著多样化。这将使模型更加精细地理解车辆周围的环境,这对于做出分秒必争的驾驶决策至关重要。
除了这些技术改进之外,这项研究的下一步逻辑步骤涉及在作者的自动驾驶模拟器中应用YOLO-BEV算法。这种整合是实现端到端自动驾驶算法的基础要素。设想中的整合不仅仅是一种应用,而是验证模型在各种模拟条件下性能指标的关键测试平台。
此外,在与YOLO-BEV实现并行的情况下,还需要专注于将这个目标检测框架与先进的路径规划算法协同工作。这种合作将有助于创建一个统一的框架,不仅能够在360度全景中理解驾驶环境,还能够实时做出明智的导航决策。
这些计划中的改进的最终目标是显著增加作者模型的功能效力,将其更接近适用于现实世界自动驾驶应用的综合解决方案。
4. 参考
[1].YOLO-BEV: Generating Bird’s-Eye View in the Same Way as 2D Object Detection.
5. 推荐阅读
轻量化分割 | P2AT提出金字塔池化Axial Transformer方法,让基于ViT的语义分割飞快
其实SAM是个好老师 | SAMFeat教你如何结合自己的模型和SAM设计一个更好的模型
全新Backbone | 华中科大提出ConvFormer,解决CNN与Self-Attention混合设计崩溃的痛点~
点击上方卡片,关注「集智书童」公众号