
Boreas:一个多季节场景下的自动驾驶数据集
Boreas数据集是通过在一年内重复驾驶路线来收集的,这导致了明显差别由于季节性变化和不利的天气条件,如下雨和降雪。总的来说,Boreas数据集包含超过350公里的驾驶数据,其中包括128通道Velodyne Alpha-Prime激光雷达、360o Navtech CIR304-H扫描雷达、500万像素FLIR Blackfly S相机,以及厘米级精确的后处理地面实景图。在推出时,我们的数据集将支持里程表、度量定位和三维物体检测的实时排行榜。数据集和开发工具包可在boreas.utias.utoronto.ca获得。
1 简介
迄今为止,自动驾驶汽车的研究和开发集中于在理想条件下实现足够的可靠性,如在加利福尼亚州旧金山或亚利桑那州凤凰城观察到的阳光明媚的气候。恶劣的天气条件,如雨和雪,仍然在许多系统的操作范围之外。此外,大多数自驾车辆目前都依赖高度精确的地图进行定位和感知。这些地图的维护成本很高,并可能因季节变化而退化。季节性变化而退化。为了安全地部署自驾车辆,这些缺点必须得到解决。
为了鼓励这一领域的研究,我们创建了Boreas数据集,这是一个大型的多模式数据集,通过在一年的时间里重复驾驶路线来收集。该数据集具有超过350公里的驾驶数据,具有明显的季节性变化和多个恶劣天气的序列,如下雨和降雪。我们的数据采集平台,如图1所示,包括一个128波束的激光雷达,一个500万像素的摄像头,以及一个360度扫描雷达。通过对GNSS、IMU和车轮编码器数据的后处理以及二次校正订阅,获得全球一致的厘米级精确的地面真实姿势。在推出时,我们的数据集将支持里程表、度量定位和三维物体检测的基准。
这个数据集可用于研究季节性变化对长期定位的影响。此外,这个数据集能够对基于视觉、激光雷达和雷达的绘图和定位管道进行比较。比较可能包括个别传感方式对恶劣天气的稳健性或对地图退化的抵抗力。
这个数据集的主要贡献如下:
• 在一年的时间里,在重复的路线上收集的数据,包括多种天气条件。
图1. 我们的平台,Boreas,包括一个Velodyne Alpha-Prime(128波束)激光雷达,FLIR Blackfly S相机,Navtech CIR304-H雷达,以及Applanix POS LV GNSS-INS。
• 一个独特的、高质量的传感器配置,包括一个128波束的激光雷达和360度的雷达。
• 经过后处理的GNSS/IMU数据,提供准确的地面真实姿态信息。
• 一个实时和开放的排行榜,用于测距、度量定位和三维物体检测。
• 在晴朗的天气下收集的三维物体标签。
2 相关工作
为了满足自动驾驶研究带来的日益增长的需求,已经制作了几个数据集。许多已发表的数据集集中在感知方面,特别是三维物体检测和图像及激光雷达点云的语义分割。然而,这些数据集往往缺乏天气和季节的变化。此外,许多这些数据集不提供雷达数据。汽车雷达传感器由于其较长的波长,对降水、灰尘和雾气有很强的抵抗力。出于这个原因,雷达可能在使自动驾驶汽车在恶劣天气下运行方面发挥关键作用。Boreas数据集通过包括一个360°扫描雷达,以及在各种天气条件(太阳、云、雨、夜、雪)和季节下拍摄的数据来解决这些缺陷。
另有相当一部分数据集集中在定位问题上,通常是方向性问题。Boreas数据集包括一个高密度激光雷达(128波束)和一个360°扫描雷达。这些传感器和该数据集所包含的巨大天气变化的结合,使得这两种传感方式的定位能力得以详细比较。这是以前的数据集所不能支持的,因为没有雷达传感器或没有足够的天气变化数据。
此外,我们的后处理地面真实姿态足够准确,可以支持一个公共排行榜,用于测距和度量定位。据我们所知,其他地方并没有提供一个关于度量衡定位的公共排行榜。 关于相关数据集的详细比较,见表1。
3 数据收集
Boreas数据集的大部分是通过在多伦多大学航空航天研究所(UTIAS)附近行驶一年的重复路线收集的。图2显示了在这段时间内观察到的季节性变化。图3比较了相机、激光雷达和雷达在三种不同天气条件下的测量结果:降雪、下雨和太阳。主要的重复路线将被称为Glen Shields路线,如图4所示。其他路线也被收集为单一的独立序列或少量的重复遍历。格伦-希尔兹路线可用于与长期定位有关的研究,而其他路线可用于测试对以前未见过的环境的概括性的实验。不同元数据标签的频率显示在图5中。
图2. 该图描述了Boreas数据集一年的季节性变化。每张图片代表了在不同日子里拍摄的相机图像。这些序列按时间顺序从左到右、从上到下排列,从2020年11月开始,到2021年11月结束。请注意,这些序列的时间间隔并不均匀。
4 传感器
表2提供了本数据集中使用的传感器的详细规格。图6说明了Boreas上不同传感器的位置。
5 数据集格式
5.1 数据结构
Boreas数据集被划分为序列,其中包括所有的传感器数据和来自一个驱动器的地面真实姿势。序列由收集的日期和时间来识别,其编号为YYY-MM-DD-H-MM。每个序列的数据组织如图7所示。
5.2 时间戳
每个文件的名称与它的时间戳相对应。这些时间戳是以微秒为单位的UNIX纪元时间。所有传感器都与Applanix POS LV报告的UTC时间同步。Velodyne激光雷达使用一个标准的硬接线连接到Applanix POS LV,携带PPS信号和NMEA信息进行同步。相机被配置为发射方波脉冲,其中每个脉冲的上升边缘对应一个新的相机曝光事件的开始。然后对Applanix POS LV进行了配置,以接收和标记这些事件信号的时间。然后使用记录的事件时间和曝光值对相机时间戳进行后期校正:tcamera = tevent + (exposure(t))/2。
图3. Boreas数据集的天气变化。注意,在下雪期间,激光雷达点云会被与雪花相关的探测数据所覆盖,雷达数据在各种天气条件下保持相对稳定。
数据记录计算机以类似于Velodyne的方式与UTC时间同步,使用RS-232串行电缆传输PPS信号和NMEA信息。Navtech雷达使用NTP来同步其本地时钟。由于发布NTP时间的数据记录计算机与UTC时间同步,雷达也因此与UTC时间同步。
对于激光雷达点云,时间戳对应于扫描的时间中间。每个激光雷达点也有一个与之相关的时间戳。这些点的时间是以相对于扫描中间的秒为单位的。对于雷达扫描,时间戳也对应于扫描的中间位置:[M/2] - 1 其中M是方位角的数量。每一个扫描的雷达方位角也是以与filename相同的格式加盖时间戳的。
5.3 文件格式
摄像机图像默认是整流和匿名的。我们使用Anonymizer来模糊车牌和人脸(Understand 2022)。
图片以常用的png格式存储。激光雷达点云以二进制格式存储,以减少存储需求。我们的devkit提供了在C++和Python中处理这些二进制格式的方法。每个点有六个字段:[x,y,z,i,r,t]其中(x,y,z)是点相对于激光雷达的位置,i是反射红外信号的强度,r是进行测量的激光的ID, t是5.2节中解释的点时间戳。原始雷达扫描被存储为二维极坐标图像:M方位角xR范围的分档。我们遵循牛津的惯例,将时间戳和编码器信息嵌入到每个极地雷达扫描的前11列(字节)中。前八列代表一个64位的整数,即每个方位角的UNIX纪元时间戳,单位为微秒。接下来的两列代表一个16位无符号整数,即旋转编码器值。下一列是未使用的,但为了与牛津格式兼容而保留下来。关于Navtech传感器和这种文件格式的进一步详情,请参见(Barnes et al.2020)。
图4. 加拿大安大略省多伦多市的格伦-希尔兹路线。
图5. Boreas数据集中元数据标签的频率。
如图3所示,使用我们的devkit,极地雷达扫描可以很容易地转换为自上而下的笛卡尔表示法。
请注意,测量结果不像其他数据集(KITTI、CADC)那样是同步的,这意味着具有相同索引的测量结果没有相同的时间戳。然而,给定时间戳和相对姿势信息,不同的传感器测量仍然可以融合在一起。
激光雷达点云没有经过移动校正,但我们在devkit中提供了消除移动失真的方法。
Navtech雷达扫描受到移动失真和多普勒失真的影响,Burnett等人(2021a)和Burnett等人(2021b)提供了补偿这些影响的方法。
图6. Boreas传感器的位置。距离的单位是米。显示的测量值是近似的。有关精确的测量,请参考数据集中包含的经校准的外在因素。
图7. 单个Boreas序列的数据组织。
6 地面真实的姿势
Applanix报告的RMS位置误差在名义条件下通常小于5厘米,但在城市峡谷中可能高达20-40厘米。图8显示了由Applanix POSPac软件估计的有效值误差。准确度会根据卫星的可见度而改变。请注意,这些数值代表的是全球精度,相对姿态估计在短时间内更准确。
图8. Applanix公司POSPac软件报告的2021-09-07收集的Glen Shields序列的位置、速度和方向误差的后处理结果与时间的关系。
7 校准
7.1 照相机的内部结构
7.2 感应器外设
摄像机和激光雷达之间的外在校准使用MATLAB的相机到激光雷达校准器(Mathworks 2022b)获得。 这种校准的结果在图9中显示出来。
当车辆在不同地点静止时,收集了几对激光雷达-雷达数据。最终的旋转估计是通过对几个测量数据对结果进行平均来获得的(Burnett 2020)。激光雷达和雷达之间的平移是由车顶架的CAD模型得到的。
图9. 使用相机-激光雷达校准的激光雷达点投影到相机图像上。(a) 激光雷达点的颜色是根据它们与车辆的纵向距离而定的。(b) 激光雷达点根据其在摄像机图像上的投影位置被赋予RGB颜色值。
雷达到激光雷达的校准结果显示在图10中。激光雷达和Applanix参考框架之间的外征是使用Applanix的内部校准工具获得的。他们的工具将这一相对变换作为批量优化的副产品输出,旨在估计给定一连串激光雷达点云和后处理的GNSS/IMU测量的最可能的车辆路径。所有的外在校准都是以calib/文件夹下的4x4同质变换矩阵提供的。
8 三维注解
我们为Boreas数据集的一个子集提供了一套三维边界框注释,这些数据集是在晴朗的天气下获得的。我们将其称为Boreas-Objects-V1数据集。注释是使用Scale.ai数据注释服务(Scale 2022)获得的。总共有7111个激光雷达帧在5Hz下被注释,产生了326,180个独特的三维盒子注释。由于激光雷达数据是以10Hz的频率采集的,所以注释可以在帧之间插值,以略低的延时来加倍注释帧的数量。这些数据被 分为53个连续场景,每个场景持续时间为20-70秒。然后,这些场景被分为37个训练场景和16个测试场景,其中地面真实标签已被保留作为基准。图11显示了我们注释的两个统计数据。
我们使用与图7相同的文件夹结构,但增加了一个文件夹,labels/。与KITTI类似,一个特定帧的注释被存储在一个文本文件中,其名称(时间戳)与激光雷达帧相同。标签文件的每一行都对应于不同的3D盒子注释,其格式为:[uuid, type, dx , dy , dz , x, y, z, yaw]。uuid是一个特定对象轨迹的唯一ID,在特定场景中的各帧之间是一致的。类型是一个对象的语义类别,可以是以下之一:
图10. 激光雷达的测量结果以红色画出,使用鸟瞰图投影,去掉了地平面。雷达目标首先从原始雷达数据中提取,然后画成蓝色像素。两个传感器已经通过雷达-激光雷达校准进行了对齐。
{Car, Cyclist, Pedestrian, Misc}。汽车类包括轿跑车、轿车、SUV、货车、皮卡车和救护车。骑车人类别包括骑摩托车的人,但不包括停放的自行车。Misc类包括其他车辆类型,如巴士、工业卡车、有轨电车和火车。物体被标记在以激光雷达为中心的矩形区域内,两个维度都是+/-75米。界限盒的位置(x, y, z)和方向(yaw)是相对于激光雷达框架给出的。(dx , dy , dz )代表包围盒的尺寸(长、宽、高)。图12显示了我们对激光雷达、照相机和雷达的三维物体注释的一个例子。
图11. Boreas-Objects-V1的三维注释统计。
图12. Boreas-Objects-V1数据集中的三维注释的例子。
9 基准标志
在推出时,我们计划支持里程学、度量定位和三维物体检测的在线排行榜。对于测距,我们使用与KITTI数据集相同的指标(Geiger等人,2013)。KITTI里程测量指标对每个子序列的长度(100米、200米、300米、...、800米)的相对位置和方向误差进行平均。这导致了两个指标,一个是以路径长度的百分比报告的平移漂移,一个是以每米行驶的度数报告的旋转漂移。对于三维物体检测,我们还通过报告每类的平均精度(mAP)来遵从KITTI数据集。对于汽车来说,70%的重叠算作真正的良好,而对于行人来说,50%的重叠算作真正的良好。我们没有根据难度级别来划分我们的数据集。
我们的度量衡本地化排行榜的目的是为映射和本地化管道制定基准。I在这种情况下,我们设想的情况是,一个或多个Glen Shields路线的重复遍历被用来构建一个地图的fline。来自训练序列的任何和所有数据都可以被用来以任何方式构建地图。
然后,在一个测试序列中,目标是在实时传感器数据和预先建立的地图之间进行度量定位。定位方法可以利用时间上的调整,如果需要的话,可以利用IMU,但GNSS信息将无法使用。该基准测试的目标是模拟实时定位车辆,因为这样的方法可能不会以随意的方式使用未来的传感器信息。
我们的目标是同时支持全局和相对的映射结构。只有一个训练序列将被指定为基准测试使用的映射序列。对于三维定位,用户必须选择激光雷达或照相机作为参考传感器。对于二维定位,只使用雷达帧作为参考。对于测试序列中的每个(相机-激光雷达)帧s2,用户将指定地图序列中的(相机-激光雷达)帧s1的ID(时间戳),他们要提供与之相关的相对姿态:Tˆs1 ,s2 . 然后我们计算平移和旋转的均方根误差(RMSE)值如下:
其中Ts1 ,s2是已知的地面真实姿态,Ta,s1 是传感器帧到applanix帧的校准变换(X-右,Y-前,Z-上)。xe , ye , ze 分别为横向、纵向和垂直误差。我们计算 xe , ye , ze , φe 的RMSE值。
一致性分数接近1是最理想的。c<1意味着该方法是过度一致的,c>1意味着该方法是保守的。请注意,上述指标将是测试序列的平均数。
10 开发工具包
作为这个数据集的一部分,我们提供了一个开发工具包,使新用户更容易上手。devkit的主要目的是作为整个数据集的一个包装,以便在Python中使用。这使得用户可以查询帧和相关的地面实况,用于测距、定位或三维物体检测。 我们还提供了从点云中去除移动失真的方便方法,与极地雷达扫描一起工作,以及与列代数和列群表示法的转换。Tdevkit还提供了许多不同的方式来可视化传感器数据。
最后,我们以Jupyter笔记本的形式提供了几个介绍性的教程,其中包括将激光雷达投射到相机框架上和可视化3D盒子。我们的基准所使用的评估脚本将存储在开发工具包中,允许用户在提交给基准之前验证其算法。开发工具包可以在boreas.utias.utoronto.ca找到。
11 总结
在本文中,我们介绍了Boreas,一个多季节的自动驾驶数据集,包括在一年中收集的超过350公里的驾驶数据。该数据集提供了一个独特的高质量传感器套件,包括Velodyne Alpha-prime(128光束)激光雷达、500万像素摄像头、360o Navtech雷达,以及从Applanix POS LV获得的精确地面真实姿势和RTX订阅。我们还提供了在晴朗天气下获得的Boreas数据的子集的三维物体标签。这个数据集的主要目的是为了能够进一步研究跨季节和恶劣天气条件下的长期定位。我们的网站将提供一个在线排行榜,用于测距、度量定位和三维物体检测。
文章转载自公众号:智能汽车开发者平台
