详解协同感知数据集OPV2V: An Open Benchmark Dataset and Fusion Pipeline for Perception with V2V Communication

在这里插入图片描述
在《详解自动驾驶仿真框架OpenCDA: An Open Cooperative Driving Automation Framework Integrated with Co-Simulation》 一文中介绍了自动驾驶仿真框架 OpenCDA。本文将介绍论文作者另一篇最新工作 OPV2V,论文收录于 ICRA2022

OPV2V 数据集主要 feature 有:

  1. 提出了首个多车协同感知大型数据集,在相同的时间戳下包含着多辆自动驾驶汽车的3D点云相机RGB图像
  2. 囊括了73个不同的场景,6种道路类型,9座不同的城市
  3. 数据共含有 12K LiDAR frames48K RGB camera images230K 3D标注bounding box
  4. 提供了一个包含16个模型的综合benchmark

作者还开源了首款协同感知代码框架 OpenCOOD,主要feature有:

  1. 提供了一套简单易用的API方便用户读取 OPV2V 的数据,并转化成相应的格式供 pytorch 模型直接使用;
  2. 提供了多个 SOTA 3D LiDAR detection backbone, 包括 PointPillar, VoxelNet, Pixor, SECOND
  3. 支持多种常见的多智能体感知融合方式,包括前融合,中间融合与后融合
  4. 提供多种协同感知 SOTA 模型,并且持续更新;
  5. 提供实用的 log replay tool 来回放 OPV2V 数据,并支持用户在不改变原数据事件的基础上增加新的传感器、定义新的任务。

论文链接:https://arxiv.org/pdf/2109.07644v3.pdf

项目链接:https://mobility-lab.seas.ucla.edu/opv2v/


0. Abstract

简单介绍下论文摘要:

  • 在自动驾驶技术中,利用车与车通信提高感知性能已经引起了相当大的关注,然而,由于缺乏合适的数据集用于基准算法,使得协同感知技术的开发和评估变得困难。
  • 为此,作者提出了第一个大规模用于车与车感知的模拟数据集。它包含70多个场景11464帧232913个带注释的3D车辆 bounding box,从9个城市小镇中收集。
  • 然后作者构建了一个全面的评估基准,总共有16个模型来评估几种信息融合策略 (即早期、后期和中期融合) 和最先进的LiDAR检测算法。此外,作者还提出了一种新的注意力中间融合策略来融合来自多个网联车辆的信息。实验表明,所提出的融合策略可以很容易地与现有的 3D LiDAR检测器 集成,即使在很大压缩比的情况下也能获得优异的性能。

1. Introduction & Related Work

导论中作者介绍了研究背景,尽管在感知领域3D物体检测取得了很大的突破,但是仍然存在着一些挑战:如当物体被严重遮挡或物体尺寸很小时,检测性能会大幅下降。为了解决这一问题,研究人员开始研究协同感知,利用 V2V 技术,网联汽车(CAVs)可以共享彼此的感知信息,共享信息可以是原始数据、中间特征、单一网联汽车输出以及元数据。然而目前最大的障碍是缺乏大规模的数据集,因此作者使用OpenCDACARLA 仿真器收集了73个不同场景的数据集;为了弥补仿真和真实世界交通流的差距,作者根据真实的道路拓扑和交通流情况建立了数字城市:Culver City

研究现状中作者首先介绍了 V2V 感知 常见的融合方式:

  • 前融合:在通信范围内,网联汽车共享原始数据,自车根据聚合后的数据进行预测。这种方式保留了完整的传感器数据但是需要大的带宽,因此很难满足实时性要求。
  • 后融合: 只传输检测结果,自车根据接收到的检测结果进行融合,这种方式需要很低的带宽,但是严重依赖于每一个车辆的检测性能。
  • 中间融合:为了同时满足检测准确率和带宽要求,只传输中间特征,根据聚合的特征来推理周围物体,如 V2VNet、F-Cooper

2. Dataset

A. Data Collection

作者使用 CARLAOpenCDA 来生成数据。数据主要来自于 CARLA 提供的8个默认小镇,在每一帧中平均有2.89辆网联汽车(最少2辆,最多7辆);每一辆 CAV 配备有4个摄像头(可覆盖360°视野)和64线激光雷达以及 GPS/IMU 传感器,数据流频率为20Hz,记录频率为10Hz。为了更好地模仿真实世界以及评估域自适应能力,作者还使用配有32线激光雷达的车辆(含2个摄像头)在 Culver City 高峰期收集传感器数据。然后使用 RoadRunner 去建立道路拓扑,选择一致的建筑物、模拟真实交通流去建立数字城市(如下图所示)。
在这里插入图片描述

B. Data Analysis

表1和2是数据集统计情况,可以看到其帧数、注释数量、数据大小、CAV数量、城市数量与其它数据比是很丰富的。数据集包含6种道路类型,平均时长为16.4秒,平均联网车辆为2.89辆,平均交通密度为26.5辆,平均交通速度为33.1km/h,CAV 平均速度为37.5km/h。

在这里插入图片描述
在这里插入图片描述
下面是 3D box 注释情况的统计,从图3可以看到,数据集当中有相当一部分比例的物体在100m视野范围之外,这与 KITTI、Waymo 数据集恰恰相反,从图4可以看到,使用 V2V 技术可以增大感知距离,在有遮挡时 CAVs 能够提供互补信息。
在这里插入图片描述


3. Attentive Intermediate Fusion Pipeline

本文提出的注意力中间融合框架如下图所示,包含6个模块:元数据共享、特征提取、压缩、特征共享、注意力融合、预测。

  • 首先是 CAVs 之间的相对位置外参广播,建立一个空间图,在通信范围内,每一个节点是一辆 CAV。然后选择一辆 CAV 为自车,所有相邻的 CAVs 会将其点云投影到自车坐标下并提取特征,特征提取器可以是现有的任意3D物体检测器主干网。
  • 由于硬件限制,需要对传输数据进行压缩,这里作者使用一个编码器-解码器架构来压缩共享信息。编码器由一系列2D 卷积和max pooling组成、然后特征图广播给自车,解码器包括一些逆卷积层,还原被压缩信息。
  • 注意力融合:作者为特征图中的每个特征向量构造一个局部图,为来自不同网联车辆的相同空间位置的特征向量建立edge。融合后的特征传输至预测头,生成 bounding box 和置信度。
    在这里插入图片描述

4. Experiments

作者选择了4个3D物体检测器(SECOND、VoxelNet、PIXOR、PointPillar),然后与三种融合策略集成,同时作者还研究了不融合的车辆检测性能,加在一起总共有16个模型。

从表3可以看到,任意一种融合方式都比不融合的检测性能提高了至少10个百分点;进一步可以看到,前融合准确率都要高于后融合,在大多数情况下,中间融合都取得了最高的准确率,证明本文提出的自注意力方式捕获了 CAV 感知信息的相互关系。

图7和8分析了 CAV数量不同压缩比率对协同感知性能影响,可以看到中间融合都取得了最好的性能。
在这里插入图片描述
最后是一个可视化例子,协同感知能够检测到更密集的车辆(即使被遮挡)。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439516.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Python学习】 - 如何在Spyder中弹出plot绘图窗口而不是在Console中绘图

依次选择这几项: 点击ok确认。 注意:点击ok之后不会立即生效,重启Spyder之后才会生效

mysql系列:加深对脏读、脏写、可重复读、幻读的理解

关于相关术语的专业解释,请自行百度了解,本文皆本人自己结合参考书和自己的理解所做的阐述,如有不严谨之处,还请多多指教。 **不可重复读的重点是修改: **同一事务,两次读取到的数据不一样。 幻读的重点在于新增或者…

重读经典(点云深度学习开山之作):《Deep learning on point clouds for 3D scene understanding》(持续更新中)

本文介绍的是 PointNet 作者的博士论文:3D场景理解中的点云深度学习。从上图可以看到,整个博士论文主要贡献有两块:一是点云深度学习的网络架构(PointNet 和 PointNet);二是在3D场景理解中的应用&#xff0…

Coursera自动驾驶课程第17讲:An Autonomous Vehicle State Estimator

在第16讲《Coursera自动驾驶课程第16讲:LIDAR Sensing》我们学习了自动驾驶目前常用的3D 传感器,激光雷达,了解了激光雷达的工作原理,掌握了对点云数据的操作以及如何使用点云配准方法来进行汽车定位。 回顾一下,在本…

!何为脏读、不可重复读、幻读

2.0、前言 事务的隔离性是指多个事务并发执行的时候相互之间不受到彼此的干扰的特性,隔离性是事务ACID特性中的I,根据隔离程度从低到高分为Read Uncommitted(读未提交),Read Committed(读已提交&#xff0…

【转】JPA、Hibernate和Mybatis区别和总结

很多人都用过java的数据库连接池C3P0,但官方没有说明名称的由来。 据传闻:连接池作者是《星球大战》迷,C3P0就是其中的一个机器人,并且这个名称中包涵connection 和pool的单词字母。因此叫这个名字(根据网友提醒&…

详解3D物体检测模型: Voxel Transformer for 3D Object Detection

本文介绍一个新的的3D物体检测模型:VoTr,论文已收录于ICCV 2021。 这是第一篇使用 voxel-based Transformer 做3D 主干网络,用于点云数据3D物体检测。由于有限的感受野,传统的 3D 卷积网络检测器(voxel-based&#xff…

一步步编写操作系统 65 标准调用约定stdcall 汇编实战

因为c语言遵循的调用约定是cdecl,咱们也自然要遵守cdecl约定了。不过为了起到对比的作用,除了介绍cdecl外,也会介绍下stdcall。 既然咱们用的是调用约定是cdecl,那对它的介绍最好让它离下一节的内容近一些,所以先说一…

Coursera自动驾驶课程第18讲:The Planning Problem

在第17讲《Coursera自动驾驶课程第17讲:An Autonomous Vehicle State Estimator》 我们学习了如何使用多传感器融合进行自车定位,以及传感器的内外参标定和时间同步,我们还讨论了在实际应用中常遇到的问题。 从本讲开始我们将学习一个新的模…

详解3D物体检测模型:Focal Sparse Convolutional Networks for 3D Object Detection

用于3D目标检测的焦点稀疏卷积神经网络【CVPR2022】【3D检测】本文介绍一篇新的 3D 物体检测模型:Focals Conv,论文收录于 CVPR2022。在 3D 检测任务中,点云或体素数据不均匀地分布在3维空间中,不同位置的数据对物体检测的贡献是不…

地平线:面向规模化量产的自动驾驶感知研发与实践

导读 4月27日,地平线智能驾驶感知研发部负责人苏治中就 《面向规模化量产的自动驾驶感知研发与实践》 这一主题进行了直播讲解。 本次课程内容分为4个部分: 1、地平线自动驾驶环境感知量产实践 2、软硬协同的自动驾驶感知算法设计 3、实现规模化量产的“…

Power BI与Power Query、Power Pivot 是什么关系?

搞不清楚Power BI与Power Query、Power Pivot是什么关系?看这篇文章就够了。 刚开始学习PowerBI的时候,总是能碰到Power Query和Power Pivot这两个词(下文简称为PQ和PP),现在中文里面学习PowerBI的资源本来就不是很多&#xff0c…

地平线:上帝视角与想象力——自动驾驶感知的新范式

导读 3月28日,在「地平线自动驾驶技术专场」上,地平线自动驾驶系统架构师刘景初博士围绕《上帝视角与想象力——自动驾驶感知的新范式 》这一主题进行了直播讲解。 本次课程主要分为以下4个部分: 1、自动驾驶结构演化提出算法新需求 2、软件2…

详解Class类文件的结构(上)

前言 相信搞Java开发的同学都经常会接触到Class类文件,了解了JVM虚拟机之后也会大量接触到class字节码,那么它到底是什么样的文件?内部由什么构成?虚拟机又是如何去识别它的?这篇文章就来学习一下Class类文件的结构。…

Coursera自动驾驶课程第19讲:Mapping for Planning

在第18讲 《Coursera自动驾驶课程第18讲:The Planning Problem》 我们对自动驾驶中的规划问题有了一个全面的了解,理解了规划问题中的约束和目标;同时我们还讨论了如何分层如解决规划问题(任务规划、行为规划、路径规划和速度曲线…

详解Class类文件的结构(下)

本文继续使用上次的Test.class文件,它是由下面单独的一个类文件编译而成的,没有包。 6. 索引(Index) 索引又分类索引、父类索引和接口索引集合,类索引(this_class)和父类索引(super…

自动驾驶开源软件和算法库

1. Carla(自动驾驶开源仿真软件) github:https://github.com/carla-simulator/carladoc:https://carla.readthedocs.io/en/latest/website:http://carla.org/Bounding boxes:https://carla.readthedocs.io/…

Coursera自动驾驶课程第20讲:Mission Planning in Driving Environments

在第19讲《Coursera自动驾驶课程第19讲:Mapping for Planning》 我们学习了自动驾驶中两种环境建图方法:占用网格图(occupancy grid map) 和 高清地图(high-definition road map)。 在本讲中,我…

Java实例化对象过程中的内存分配

问题引入 这里先定义一个很不标准的“书”类,这里为了方便演示就不对类的属性进行封装了。 class Book{String name; //书名double price; //价格public void getInfo(){System.out.println("name:"name";price:"price);} } 在这个类中定义了两个属…

【Python学习】 - sklearn学习 - KNN

前言: 针对一个完整的机器学习框架目前还没有总结出来,所以目前只能总结每一个单独的算法。由于现在研究的重点是算法,所以对于数据的处理,数据的分析和可视化呈现,在现阶段并不进行展示(这样容易陷入纠结…