本系列博客旨在介绍无人驾驶领域中颇负盛名的KITTI公开数据集,首先整体介绍该数据集的由来、数据组织方式、官方开发工具的使用,重点详细介绍其中对于Object、Tracking和raw data的数据使用,主要分享了我在使用这些数据集时开发的一些工具,也介绍了Gihub上一些开源工具的使用,帮助大家在没有真实无人驾驶车辆时如何利用好KITTI数据集来实现和验证自己的算法。

【文章列表】
无人驾驶之KITTI数据集介绍与应用(一)——数据组织方式介绍
无人驾驶之KITTI数据集介绍与应用(二)——官方matlab代码使用与解读

KITTI数据集是由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,利用组装的设备齐全的采集车辆对实际交通场景进行数据采集获得的公开数据集。该数据集包含丰富多样的传感器数据(有双目相机、64线激光雷达、GPS/IMU组合导航定位系统,基本满足对图像、点云和定位数据的需求)、大量的标定真值(包括检测2D和3D包围框、跟踪轨迹tracklet)和官方提供的一些开发工具等。

1. 采集平台介绍

此部分主要参考KITTI官网setup部分内容。

如图1所示,KITTI数据集所采用的采集车为经过改装过的大众帕萨特B6,使用8核i7计算机,运行在Ubuntu系统下进行数据录制,采集平台包含如下传感器:

  • 1个惯性导航系统(GPS/IMU):OXTS RT 3003
  • 1个激光扫描仪:Velodyne HDL-64E
  • 2个灰度相机,140万像素:Point Grey Flea 2(FL2-14S3M-C)
  • 2个彩色相机,140万像素:Point Grey Flea 2(FL2-14S3C-C)
  • 4个变焦镜头,4-8mm:Edmund Optics NT59-917
    激光雷达扫描频率为10帧/s,相机基本上和地平面保持水平,图像采集尺寸被裁减为1382x512像素,在经过校正后,图像可能会进一步变小,相机的采集频率也保持在10HZ并且在激光雷达朝向正前方时释放快门,传感器的整体布置图如图2所示。
图1 KITTI数据集采集平台
图2 传感器布置俯视图

从图1和图2中可以看到不同传感器的坐标系定义(上下左右以驾驶员为基准):
相机:x轴——向右,y轴——向下,z轴——向前;
激光雷达:x轴——向前,y轴——向左,z轴——向上;
组合导航:同激光雷达。
注: 此处坐标系的定义对后续数据的可视化和分析,以及标定矩阵的理解和使用至关重要,需要熟悉。

2. 数据组织方式

此部分主要参考KITTI官方发表的论文:
1、Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite
2、Vision meets Robotics: The KITTI Dataset
建议想对KITTI数据有深入了解或者想从宏观上了解整个无人驾驶系统的硬件构成的读者可以认真阅读一下这两篇论文。

KITTI数据集针对不同的用途,将数据集分为如下部分:stereo、flow、sceneflow、depth、odometry、object、tracking、road、semantics和raw data,不同部分的数据包含不同的人为标注的真值数据,但其实针对不同用途的数据也基本上是从raw data数据中分离出来的,为此主要介绍raw data中数据的组织方式,此外也介绍一下object和tracking数据的组织方式。

2.1 raw data组织方式

raw data数据集按照类别被分为Road、City、Residential、Campus和Person。如图3所示,对于每一个序列,都提供了传感器原始数据,相机视野范围内的目标3D包围盒tracklets文件和一个传感器标定文件,

图3 raw data数据文件组织结构图

其中"date"和"drive"是占位符,根据当时采集的日期命名,"image_0x"指的是4个相机序列。

所有数据都是同步采集的,按照激光雷达的频率(10hz)采集,所有传感器的数据序列都是以image_00作为同步参考系。
包括:

  • 原始的(没有同步和没有矫正的)和处理过的(同步和矫正过)的双目灰度图像序列(50万像素、png格式)
  • 原始的(没有同步和没有矫正的)和处理过的(同步和矫正过)的双目彩色图像序列(50万像素、png格式)
  • 3D激光雷达数据(每帧10万+个点,.bin格式float矩阵存储)
  • 标定文件(相机与相机之间、相机与GPS/IMU之间、相机与激光雷达之间,txt文本文件存储)
  • 3D目标跟踪标签(汽车、卡车、火车、行人、自行车人,xml文件)

此处的非同步和非矫正的含义是指原始的带有畸变并且没有同步的数据,而同步和矫正的图片是指经过消除畸变并经过双目矫正的图片,并且图片序列也是和其他传感器对应好的。所有的数据都提供时间戳。一般我们用的是同步和矫正的数据(synced+rectified data)。

例如我们下载2011_09_26_drive_0005这个数据序列,最终解压得到的文件夹如下图所示:

image_00:左侧灰度相机图像序列
image_01:右侧灰度相机图像序列
image_02:左侧彩色相机图像序列
image_03:右侧彩色相机图像序列
oxts:GPS/IMU位姿相关信息序列
velodyne_points:激光雷达数据序列

2.2 object数据组织方式

object数据集主要用于验证无人驾驶中有关目标检测算法而设置的数据集,该数据集包含“2D Object Detection”、“3D Object Detection”和“Bird’s Eye View”三部分数据,分别用于验证2D图像检测框、3D图像或者激光雷达包围盒和鸟瞰图检测算法的优劣。
该部分数据可以针对你所开发检测算法的具体需求,选择下载图像或者雷达等数据,每个数据下载解压之后都包含trainingtesting两个文件夹,分别用于检测算法中作为训练数据和测试数据,其中训练数据包含有标注文件。需要注意的是对于object数据集,其数据并不是严格连续采集的数据,即都是单帧结果,只用于检测算法使用。

2.3 tracking数据组织方式

tracking数据集主要用于验证无人驾驶中有关目标跟踪算法而设置的数据集,其数据组织方式与object数据集类似,最大的区别在于tracking数据集每个数据序列是连续的。

3. 小结

本博文主要简单介绍下整个KITTI数据集的构建和文件组织方式,熟悉了不同文件的含义之后,接下来熟悉一下KITTI官方提供的有关该数据集的开发工具和程序,见下一篇博客。

写博客不易,各位看官觉得对您有所帮助,麻烦点赞转载,转载请注明博客来源,多谢!

END
下一篇:无人驾驶之KITTI数据集介绍与应用(二): 介绍使用KITTI数据集相关代码

无人驾驶之KITTI数据集介绍与应用(一)——数据组织方式介绍相关推荐

  1. 计算机视觉数据集介绍:KITTI数据集

    KITTI数据集简介 KITTI数据集是由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,利用组装的设备齐全的采集车辆对实际交通场景进行数据采集获得的公开数据集.该数据集包含丰富多样的传感器数据( ...

  2. KITTI数据集(概念版)

    一.参考资料 KITTI 官网 kitti数据集各个榜单介绍 自动驾驶KITTI数据集详解 KITTI数据集简介与使用 kitti数据集各个榜单介绍 KITTI数据集介绍 KITTI数据集简介(一) ...

  3. KITTI数据集详解和评价标准

    from: https://blog.csdn.net/Solomon1558/article/details/70173223 摘要:本文融合了Are we ready for Autonomous ...

  4. 数据集:KITTI数据集分析

    摘要:本文融合了Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite和Vision meets Robotics: ...

  5. 【MMDetection3D】环境搭建,使用PointPillers训练测试可视化KITTI数据集

    文章目录 前言 3D目标检测概述 KITTI数据集简介 MMDetection3D 环境搭建 数据集准备 训练 测试及可视化 绘制损失函数曲线 参考资料 前言 2D卷不动了,来卷3D,之后更多地工作会 ...

  6. Kitti数据集的使用

    摘要:本文融合了Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite和Vision meets Robotics: ...

  7. 基于KITTI数据集的无人驾驶感知与传感器融合实现—(0)—照猫画虎

    基于KITTI数据集的无人驾驶感知与传感器融合实现-(0)-照猫画虎 学习前言 链接 项目介绍 项目效果 逻辑框架图 详细步骤 学习前言   最近自动驾驶蛮火的,我自己看这玩意也想弄弄,然后在百度AI ...

  8. KITTI数据集下载及介绍

    KITTI数据集下载及介绍 KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集.该数据集用于评测立体图像(stereo), ...

  9. 【3D目标检测】KITTI数据集介绍

    目录 概述 数据集下载 激光雷达数据(`data_ object_velodyne`) 图像数据(`data_ object_image_ 2`) 标注数据(`data_ object_label 2 ...

  10. 周末学习总结(LIO标定+kitti数据集的使用+evo工具的使用+开源数据集+ssh的使用)

    周末学习总结 LIO标定 lidar_IMU_calib lidar_align kitti数据集的使用 开源数据集 evo工具的使用 ssh 的使用 LIO标定 网上开源的标定包,用的比较多的是浙江 ...

最新文章

  1. 什么是PRD、MRD与BRD?
  2. python 中文转unicode编码_Python 解码 Unicode 转义字符串
  3. 吴恩达深度学习课程deeplearning.ai课程作业:Class 4 Week 3 Car detection
  4. 限制 TEdit 只能接收 数字 输入...
  5. LeetCode 1099. 小于 K 的两数之和(二分查找)
  6. 首个windowsForm应用项目 1123
  7. arm 架构_ARM推出性能更强A78C架构,服务笔记本产品
  8. cpe动态ip,做端口映射方案
  9. 刷新网页定位到特定位置
  10. ArangoDB查询语言(AQL) 基本语法用法
  11. 好玩的手机android游戏,好玩的android手机游戏2018_热门android游戏排行榜
  12. CleanMyMac不停要求输入密码进行更改
  13. Codevs 1066 引水入城 2010年NOIP全国联赛提高组 BFS + 贪心
  14. Performance Counter的使用
  15. qt源码学习---QMetaObject(二)
  16. 一元多项式 java_java链表实现一元多项式的合并同类项以及加法
  17. 配置安装oracle客户端plsql与navicat12 破解版
  18. 解决“无法访问此网站,连接已重置。”
  19. Java第一学期 北大青鸟 第三章 我行我素购物管理系统:模拟幸运抽奖
  20. 数据分享——EPS数据库-新冠肺炎疫情实时监控平台

热门文章

  1. 机器视觉:高动态范围图像
  2. 导师不喜欢自己怎么办?
  3. 总结-模型评价指标的定义(基于CatBoost文档)
  4. 简单控制 xLang 窗体
  5. 个人认为比较有意思的文章
  6. 这次,多地消防控制室双人值守可变单人值守
  7. 计算机网络技术人员素质要求,做网络技术员需要学习哪些技能
  8. 网络安全----数字签名与数字证书
  9. 「Injective衍生品市场创意大赛」角逐“最强王者”,就等你来
  10. 网站被封了要换服务器吗,网站被惩罚或被封该怎么办?