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

article/2025/10/23 13:00:28

本系列博客旨在介绍无人驾驶领域中颇负盛名的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数据集相关代码


http://chatgpt.dhexx.cn/article/IrvbIxYr.shtml

相关文章

waymo数据集总结

参考资料 官网: https://waymo.com/open/data/perception/#lidar-data 文章: https://arxiv.org/pdf/1912.04838.pdf github: https://github.com/waymo-research/waymo-open-dataset colab教程: https://colab.research.google.…

KITTI数据集介绍

目录 1、KITTI数据集概述2、kitti数据采集平台3、Kitti数据集标注格式参考文献: 1、KITTI数据集概述 KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的算法评测数据集。该数据集用于评测立体图像(…

KITTI 数据集简介

数据集简介 KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上自动驾驶场景下常用的数据集之一。KITTI数据集的数据采集平台装配有2个灰度摄像机,2个彩色摄像机,一个Velodyne 64线3D激光雷达,4个光…

KITTI数据集简析

文章目录 KITTI数据集数据集结构数据集内容data_object_calib 样本标定数据data_object_label_2 3D点云标注文件 KITTI数据集 数据集结构 KITTI数据集网盘 提取码:0bjl KITTI ├── devkit_object | ├── cpp | ├── mapping | ├── matlab | └─…

KITTI数据集(概念版)

一、参考资料 KITTI 官网 kitti数据集各个榜单介绍 自动驾驶KITTI数据集详解 KITTI数据集简介与使用 kitti数据集各个榜单介绍 KITTI数据集介绍 KITTI数据集简介(一) — 激光雷达数据 【KITTI】KITTI数据集简介(二) — 标注数据l…

KITTI数据集

KITTI数据集分为2012和2015 KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集。KITTI包含市区、乡村和高速公路等场景采集的真实图像数据,每张图像中最多达15辆车和30个行…

Vins-fusion gps融合 KITTY数据集测试

下载kitti数据集 下载kitti数据集和真值poses的00.txt以及sequences文件00序列的times.txt,(全网找了好久,最后不得已翻墙从官网down下来的) 代码修改,保存输出数据 先指定输出路径:打开vins-fusion/config/kitti_r…

详解KITTI数据集

详解KITTI数据集 一、KITTI数据集发布方 2011年,Andreas Geiger(KIT)、Philip Lenz(KIT)、Raquel Urtasun(TTIC)三位年轻人发现,阻碍视觉感知系统在自动驾驶领域应用的主要原因之一…

KITTI数据集简介与使用

1.KITTI数据集概述 KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集。该数据集用于评测立体图像(stereo),光流(optical flow),视觉测距(visual odometry)&…

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

KITTI数据集简介 KITTI数据集是由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,利用组装的设备齐全的采集车辆对实际交通场景进行数据采集获得的公开数据集。该数据集包含丰富多样的传感器数据(有双目相机、64线激光雷达、GPS/IMU组合导航定位系…

盘阿里云ECS内挖矿程序

1.二话不说先上图,cpu一路飙升在100% 2.进入服务器top命令查看占用cpu的异常进程 3.找到目标PID kill -9 10478 干掉这个进程,没几秒这个Macron的进程又死灰复燃 4.定位Macron目录 ls -l /proc/$PID/exe 定位到发现目标文件为/tmp/Macron,…

记录_第一次解决挖矿程序入侵问题

记录第一次处理,服务器也被挖矿程序入侵,原本是不想处理的,但是阿里云一直给我警告,然后再不处理服务器给我停了,这导致我立马打开电脑进行处理,怎么处理的我也不会啊,就一直百度,还…

centos8 处理挖矿程序攻击

ll /usr/bin/top* top命令被修改,并且隐藏了两个进程 chattr命令不可用,先删除e2fsprogs再重新安装。 yum remove e2fsprogs #rpm -qa|grep e2fsprogs yum -y install e2fsprogs #yum install e2fsprogs-1.45.6-2.el8.x86_64 解锁TOP文件并恢复 c…

案例分享—服务器被植入挖矿程序排查

主机的操作系统是CentOS7,应用架构是JavaMySQLRedis。客户描述问题是有一个从下午2点到凌晨的秒杀活动。秒杀系统开始的时候是可以正常运行的,但是到了晚上7点就突然无法使用了,前台提交秒杀请求后,后端无响应,最终超时…

解决阿里云服务器提示挖矿程序风险

最近阿里云天天提示我挖矿,可是我是良民啊,还要封我号,把我吓够呛啊。 后台通过CPU 被挖矿,Redis 竟是内鬼!_CSDN云计算-CSDN博客 这篇文章有所启发,大家可以看下 目前没提示,后期再提示再更新…

记录解决阿里云ES服务器提示挖矿程序

前言 突然收到阿里云的短信提醒,说服务器出现了恶意挖矿程序,还好这台上都是测试服务器,之前也做了数据备份,可以放心去整,不过还是得小心严重操作前记得备份下 处理过程 1、检查服务器负载与CPU利用率&#xff0c…

服务器提示有挖矿程序,是怎么回事

在提示我有挖矿程序后,我去阿里云的安全中心,看到有三个病毒进程警告,但是都结束进程失败,然后我询问售后工程师,售后工程师给我的回复时格式化云盘。因为没有找到更好的解决方式,就选择了重新安装系统和格…

【解决阿里云服务器提示挖矿程序风险2022】

解决阿里云服务器提示挖矿程序风险2022-10 搜索删除含system-private相关的所有文件 如图:system-private....2.清除定时任务 3.修改文件可执行权限 4.清除路由表中隐患IP 5.在不使用云服务器的情况下可以关闭ssh端口 参考资料: 解决阿里云服务器提示挖…

[linux] 挖矿程序的停止与清除

问题描述 实验室的linux服务器有一位用户的密码比较弱,被试出来了,然后攻击者在我们的服务器上运行了挖矿程序 gpustat查询后发现:四张显卡都被占满,GPU显存占用不大,但使用率为100% 此时如果直接kill那个占用显卡的…

Ubuntu服务器清除挖矿程序

言简意赅,直入主题 早晨ssh登录服务器的时候发现出现情况 screen创建的会话本来还在跑代码的,重新进入一看被terminal了 一脸懵逼地输入nvidia-smi 我了个擦!两张显卡占用一样,而且每秒都是100%,并且都只有一个程序在…