位置: IT常识 - 正文

KITTI数据集解析和可视化(timit数据集)

编辑:rootadmin
KITTI数据集解析和可视化 文章目录一、KITTI数据集简介1.1 介绍1.2 下载二、数据解析2.0 数据集结构2.1 ImageSets2.2 Testing & Training2.2.1 calib2.2.2 image_22.2.3 label_22.2.4 planes2.2.5 velodyne三、数据集的下载和组织四、可视化4.1 CloudCompare软件4.2 PCL库参考一、KITTI数据集简介1.1 介绍文章链接 《Are we ready for Autonomous Driving? The KITTI Vision Benchmark Suite (2012)》概述 KITTI数据集是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集。该数据集用于评测立体图像(stereo),光流(optical flow),视觉测距(visual odometry),3D物体检测(object detection)和3D跟踪(tracking)等计算机视觉技术在车载环境下的性能。 KITTI包含市区、乡村和高速公路等场景采集的真实图像数据,每张图像中最多达15辆车和30个行人,还有各种程度的遮挡与截断。 3D目标检测数据集由7481个训练图像和7518个测试图像以及相应的点云数据组成,包括总共80256个标记对象。数据采集平台

推荐整理分享KITTI数据集解析和可视化(timit数据集),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:kitty 数据集,kitti数据集介绍,timit数据集,kitty 数据集,semantickitti数据集下载,timit数据集,kitti3d检测数据集,kitti数据集介绍,内容如对您有帮助,希望把文章链接给更多的朋友!

Kitti的数据采集车,顶上是一个64线的velodyne激光雷达,前面有四个摄像头分别是cam0~3,其中0和1是灰度相机,2和3是rgb相机。激光雷达的坐标系遵循右手定则,而相机坐标系遵循左手定则,如图所示。 为了生成双目立体图像,相同类型的摄像头相距54cm安装。由于彩色摄像机的分辨率和对比度不够好,所以还使用了两个立体灰度摄像机,它和彩色摄像机相距6cm安装。 四个相机经过了严格的位置矫正,保证yz同值,x同轴,如果想进行lidar与camera的坐标系转换,默认以cam0为基准,即如果是cam0转到velodyne,就直接转,如果是cam其他转velodyne,则先要转到cam0,再转到velodyne,相机和激光的坐标转换后续会详细说明。

具体的传感器参数如下: 2 × PointGray Flea2 grayscale cameras (FL2-14S3M-C), 1.4 Megapixels, 1/2” Sony ICX267 CCD, global shutter 2 × PointGray Flea2 color cameras (FL2-14S3C-C), 1.4 Megapixels, 1/2” Sony ICX267 CCD, global shutter 4 × Edmund Optics lenses, 4mm, opening angle ∼ 90◦, vertical opening angle of region of interest (ROI) ∼ 35◦ 1 × Velodyne HDL-64E rotating 3D laser scanner, 10 Hz, 64 beams, 0.09 degree angular resolution, 2 cm distance accuracy, collecting ∼ 1.3 million points/second, field of view: 360◦ horizontal, 26.8◦ vertical, range: 120 m 1 × OXTS RT3003 inertial and GPS navigation system, 6 axis, 100 Hz, L1/L2 RTK, resolution: 0.02m / 0.1◦

坐标系

为了方便传感器数据标定,规定坐标系方向如下 :

camera: x = right, y = down, z = forwardvelodyne: x = forward, y = left, z = upGPS/IMU: x = forward, y = left, z = up1.2 下载数据集官网 数据集官网下载地址百度网盘下载链接 链接:https://pan.baidu.com/s/1-4WchJlcZ2guwcfbHqrdFw 提取码:grys 建议使用百度网盘的下载链接(因为文件特别大,而且官网的下载速度很慢。)

进入官网,下图红色框标记的为我们需要的数据:

彩色图像数据(12GB)点云数据(29GB)相机矫正数据(16MB)标签数据(5MB)。

其中彩色图像数据、点云数据、相机矫正数据均包含training(7481)和testing(7518)两个部分,标签数据只有training数据。

二、数据解析2.0 数据集结构

按照官方给出的OpenPCDet中的KITTI数据集的组织方法,排布数据集

data│── kitti│  │── ImageSets│  │── testing│  │  ├── calib & image_2 & velodyne│  │── training│  │  ├── calib & image_2 & label_2 & planes & velodyneimage_2 即2号彩色相机所拍摄的图片(.png);calib对应每一帧的外参(.txt);label_2是每帧的标注信息(.txt);velodyne是Velodyne64所得的点云文件(.bin)2.1 ImageSets

数据集列表信息,一般包括如下3部分:

train.txt:训练集 列表信息test.txt:测试集 列表信息val.txt:验证集 列表信息2.2 Testing & Training2.2.1 calib

calib文件是相机、雷达、惯导等传感器的矫正数据。以“000001.txt”文件为例,内容如下:

P0: 7.215377000000e+02 0.000000000000e+00 6.095593000000e+02 0.000000000000e+00 0.000000000000e+00 7.215377000000e+02 1.728540000000e+02 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00 1.000000000000e+00 0.000000000000e+00P1: 7.215377000000e+02 0.000000000000e+00 6.095593000000e+02 -3.875744000000e+02 0.000000000000e+00 7.215377000000e+02 1.728540000000e+02 0.000000000000e+00 0.000000000000e+00 0.000000000000e+00 1.000000000000e+00 0.000000000000e+00P2: 7.215377000000e+02 0.000000000000e+00 6.095593000000e+02 4.485728000000e+01 0.000000000000e+00 7.215377000000e+02 1.728540000000e+02 2.163791000000e-01 0.000000000000e+00 0.000000000000e+00 1.000000000000e+00 2.745884000000e-03P3: 7.215377000000e+02 0.000000000000e+00 6.095593000000e+02 -3.395242000000e+02 0.000000000000e+00 7.215377000000e+02 1.728540000000e+02 2.199936000000e+00 0.000000000000e+00 0.000000000000e+00 1.000000000000e+00 2.729905000000e-03R0_rect: 9.999239000000e-01 9.837760000000e-03 -7.445048000000e-03 -9.869795000000e-03 9.999421000000e-01 -4.278459000000e-03 7.402527000000e-03 4.351614000000e-03 9.999631000000e-01Tr_velo_to_cam: 7.533745000000e-03 -9.999714000000e-01 -6.166020000000e-04 -4.069766000000e-03 1.480249000000e-02 7.280733000000e-04 -9.998902000000e-01 -7.631618000000e-02 9.998621000000e-01 7.523790000000e-03 1.480755000000e-02 -2.717806000000e-01Tr_imu_to_velo: 9.999976000000e-01 7.553071000000e-04 -2.035826000000e-03 -8.086759000000e-01 -7.854027000000e-04 9.998898000000e-01 -1.482298000000e-02 3.195559000000e-01 2.024406000000e-03 1.482454000000e-02 9.998881000000e-01 -7.997231000000e-01

P0~P3 Prect(i)P_{rect}^{(i)}Prect(i)​ :矫正后的相机投影矩阵 R3∗4R^{3*4}R3∗4 0、1、2、3 代表相机的编号,0表示左边灰度相机,1右边灰度相机,2左边彩色相机,3右边彩色相机。 其中bx(i)b_x^{(i)}bx(i)​表示相对于参考摄像机0的基准值(以米为单位)

R0_rect Rrect(i)R_{rect}^{(i)}Rrect(i)​ :矫正后的相机旋转矩阵R3∗3R^{3*3}R3∗3 在实际计算时,需要将该3x3的矩阵扩展为4x4的矩阵,方法为在第四行和第四列添加全为0的向量,并且将(4, 4)的索引值设为1。

Tr_velo_to_cam (Tvelocam)(T_{velo}^{cam})(Tvelocam​) :从雷达到相机0的旋转平移矩阵 (R3∗4R^{3*4}R3∗4) 在实际计算时,需要将该3x4的矩阵扩展为4x4的矩阵,方法为增加第四行向量[0,0,0,1]。这个矩阵其实包括了两个部分,其一是3x3的旋转矩阵,其二是1x3的平移向量。

Tr_imu_to_velo (Timuvelo)(T_{imu}^{velo})(Timuvelo​) : 从惯导或GPS装置到相机的旋转平移矩阵 (R3∗4R^{3*4}R3∗4) 如果要将激光雷达坐标系中的点x投影到左侧的彩色图像(P2)y中,可使用如下公式: 若想将激光雷达坐标系中的点x投射到其他摄像头,只需替换P2矩阵即可(例如右边的彩色相机P3)。

1、将 Velodyne 坐标中的点 x 投影到左侧的彩色图像中 y,使用公式 y = P2 * R0_rect * Tr_velo_to_cam * x2、将 Velodyne 坐标中的点 x 投影到右侧的彩色图像中 y,使用公式 y = P3 * R0_rect * Tr_velo_to_cam * x3、将 Velodyne 坐标中的点 x 投影到编号为 0 的相机(参考相机)坐标系中,使用公式 R0_rect * Tr_velo_to_cam * x4、将 Velodyne 坐标中的点 x 投影到编号为 0 的相机(参考相机)坐标系中,再投影到编号为 2 的相机(左彩色相机)的照片上,使用公式 P2 * R0_rect * Tr_velo_to_cam * x2.2.2 image_2

image文件以8位PNG格式存储,图集如下:

2.2.3 label_2

label文件是KITTI中object的标签和评估数据,以“000001.txt”文件为例,包含样式如下:

Truck 0.00 0 -1.57 599.41 156.40 629.75 189.25 2.85 2.63 12.34 0.47 1.49 69.44 -1.56Car 0.00 0 1.85 387.63 181.54 423.81 203.12 1.67 1.87 3.69 -16.53 2.39 58.49 1.57Cyclist 0.00 3 -1.65 676.60 163.95 688.98 193.93 1.86 0.60 2.02 4.59 1.32 45.84 -1.55DontCare -1 -1 -10 503.89 169.71 590.61 190.13 -1 -1 -1 -1000 -1000 -1000 -10DontCare -1 -1 -10 511.35 174.96 527.81 187.45 -1 -1 -1 -1000 -1000 -1000 -10DontCare -1 -1 -10 532.37 176.35 542.68 185.27 -1 -1 -1 -1000 -1000 -1000 -10DontCare -1 -1 -10 559.62 175.83 575.40 183.15 -1 -1 -1 -1000 -1000 -1000 -10

​ 每一行代表一个object,每一行都有16列分别表示不同的含义,具体如下:

第1列(字符串):代表物体类别(type) 总共有9类,分别是:Car、Van、Truck、Pedestrian、Person_sitting、Cyclist、Tram、Misc、DontCare。 其中DontCare标签表示该区域没有被标注,比如由于目标物体距离激光雷达太远。为了防止在评估过程中(主要是计算precision),将本来是目标物体但是因为某些原因而没有标注的区域统计为假阳性(false positives),评估脚本会自动忽略DontCare区域的预测结果。

第2列(浮点数):代表物体是否被截断(truncated) 数值在0(非截断)到1(截断)之间浮动,数字表示指离开图像边界对象的程度。

第3列(整数):代表物体是否被遮挡(occluded) 整数0、1、2、3分别表示被遮挡的程度。

第4列(弧度数):物体的观察角度(alpha) 取值范围为:-pi ~ pi(单位:rad),它表示在相机坐标系下,以相机原点为中心,相机原点到物体中心的连线为半径,将物体绕相机y轴旋转至相机z轴,此时物体方向与相机x轴的夹角(如下图所示,y轴垂直与屏幕)

KITTI数据集解析和可视化(timit数据集)

第5~8列(浮点数):物体的2D边界框大小(bbox) 四个数分别是xmin、ymin、xmax、ymax(单位:pixel),表示2维边界框的左上角和右下角的坐标。

第9~11列(浮点数):3D物体的尺寸(dimensions) 分别是高、宽、长(单位:米)

第12-14列(浮点数):3D物体的位置(location) 分别是x、y、z(单位:米),特别注意的是,这里的xyz是在相机坐标系下3D物体的中心点位置。

第15列(弧度数):3D物体的空间方向(rotation_y) 取值范围为:-pi ~ pi(单位:rad),它表示,在照相机坐标系下,物体的全局方向角(物体前进方向与相机坐标系x轴的夹角),如下图所示。

第16列(浮点数):检测的置信度(score)

2.2.4 planes# PlaneWidth 4Height 1-1.851372e-02 -9.998285e-01 -5.362310e-04 1.678761e+002.2.5 velodyne

velodyne文件是激光雷达的测量数据(绕其垂直轴(逆时针)连续旋转),以“000001.bin”文件为例,内容如下:

8D 97 92 41 39 B4 48 3D 58 39 54 3F 00 00 00 0083 C0 92 41 87 16 D9 3D 58 39 54 3F 00 00 00 00 2D 32 4D 42 AE 47 01 3F FE D4 F8 3F 00 00 00 00 37 89 92 41 D3 4D 62 3E 58 39 54 3F 00 00 00 00 E5 D0 92 41 12 83 80 3E E1 7A 54 3F EC 51 B8 3D 7B 14 70 41 2B 87 96 3E 50 8D 37 3F CD CC 4C 3E 96 43 6F 41 7B 14 AE 3E 3D 0A 37 3F E1 7A 14 3F 2F DD 72 41 5E BA C9 3E 87 16 39 3F 00 00 00 00 FA 7E 92 41 5E BA 09 3F 58 39 54 3F 00 00 00 00 66 66 92 41 EC 51 18 3F CF F7 53 3F 00 00 00 00 A4 70 92 41 77 BE 1F 3F CF F7 53 3F 00 00 00 00 A4 70 92 41 8D 97 2E 3F 58 39 54 3F 00 00 00 00 ...

点云数据以浮点二进制文件格式存储,每行包含8个数据,每个数据由四位十六进制数表示(浮点数),每个数据通过空格隔开。一个点云数据由四个浮点数数据构成,分别表示点云的x、y、z、r(强度 or 反射值),点云的存储方式如下表所示:

三、数据集的下载和组织百度网盘下载链接 链接:https://pan.baidu.com/s/1-4WchJlcZ2guwcfbHqrdFw 提取码:grys

从百度网盘下载如下框出的文件。

其中 xxx.zip 和xxx.z01、xxx.z02、xxx.z03 是分包文件,必须全部下载后才能够解压。

然后通过xftp把下载的压缩包全部上传到云服务器上。 分包文件的解压方法,以 data_object_image_2.zip 为例子。

# 先将压缩包合并zip -s 0 data_object_image_2.zip --out image_02.zip# 再次解压unzip image_02.zip

解压之后的文件结构如下所示。 如下所示,在kitti文件夹下新建testing和training 目录。然后把上一步解压后得到的data_object_image2/testing/image_2 文件放入到data/kitti/testing 文件夹下;把上一步解压后得到的data_object_image2/training/image_2 文件放入到data/kitti/training 文件夹下。

然后新建一个文件夹ImageSets,并进入到该文件夹下。 下载官方已经提供好的划分kitti数据集文件:test.txt train.txt val.txt trainval.txt

# test.txtwget -c https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/test.txt --no-check-certificate --content-disposition -O test.txt# train.txtwget -c https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/train.txt --no-check-certificate --content-disposition -O train.txt# val.txtwget -c https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/val.txt --no-check-certificate --content-disposition -O val.txt# trainval.txtwget -c https://raw.githubusercontent.com/traveller59/second.pytorch/master/second/data/ImageSets/trainval.txt --no-check-certificate --content-disposition -O trainval.txt

最终的组织架构如下图所示:

有时候我们可能多个项目都使用到同一个数据集,这时候可以建立软链接

比如我的原始kitti数据集下载到了/data/zyw/project/data/kitti , 但是我在mmdetection3d/data 文件夹下需要kitti文件夹。 为了节省内存开销,我们不直接复制,而是创建软链接。

cd mmdetection3d/dataln –s /data/zyw/project/data/kitti kitti四、可视化4.1 CloudCompare软件

CloudCompare功能强大,直接安装这个软件是最简单的可视化方法。

cloudcompare官网下载地址 选择对应的版本进行下载

或者从百度网盘下载 (winows64,CloudCompare 2.12.4) 链接:https://pan.baidu.com/s/1RWDdMByK1trY–d05-SlHg

显示-语言翻译-简体中文

提取码:zfjo

点击文件-compare 可以打开多种格式的点云文件 可视化效果如下 4.2 PCL库

通过配置PCL来可视化点云,相对比较复杂,具体可以参考下面的博客~ 【PCL1.11.0+win10+vs2019】环境配置/ 点云格式转换及可视化

参考

参考博客: 【1】https://blog.csdn.net/i6101206007/article/details/11225682 【2】https://blog.csdn.net/u013086672/article/details/103913361

本文链接地址:https://www.jiuchutong.com/zhishi/299366.html 转载请保留说明!

上一篇:【滤波专题-第4篇】滤波器滤波效果的评价指标(信噪比SNR、均方误差MSE、波形相似参数NCC)(滤波方案)

下一篇:机器学习——图像分类

  • 淘宝怎样绑定银行卡付款(淘宝怎样绑定银行)

    淘宝怎样绑定银行卡付款(淘宝怎样绑定银行)

  • 钉钉学生号怎么改成家长号(钉钉学生号怎么获得)

    钉钉学生号怎么改成家长号(钉钉学生号怎么获得)

  • 微信昵称后面怎么加besos(微信昵称后面怎么加特殊符号)

    微信昵称后面怎么加besos(微信昵称后面怎么加特殊符号)

  • 支付宝实名认证3个是上限吗(支付宝实名认证可以更改吗)

    支付宝实名认证3个是上限吗(支付宝实名认证可以更改吗)

  • qq好友标识神秘字符(qq好友标识神秘字符怎么弄)

    qq好友标识神秘字符(qq好友标识神秘字符怎么弄)

  • 安卓手机可以改微信号吗(安卓手机可以改成苹果系统吗)

    安卓手机可以改微信号吗(安卓手机可以改成苹果系统吗)

  • 网易云属于腾讯吗(网易云属于腾讯免流吗)

    网易云属于腾讯吗(网易云属于腾讯免流吗)

  • 11是多大的屏幕尺寸(11是多少寸的屏幕)

    11是多大的屏幕尺寸(11是多少寸的屏幕)

  • 华为p40新手机第一次充电多长时间(华为p40手机第三方软件功能不全怎么回事)

    华为p40新手机第一次充电多长时间(华为p40手机第三方软件功能不全怎么回事)

  • 移动卡突然没信号了怎么回事(移动卡突然没信号了怎么回事华为)

    移动卡突然没信号了怎么回事(移动卡突然没信号了怎么回事华为)

  • 苹果7充电器多少w(苹果7充电器多少钱)

    苹果7充电器多少w(苹果7充电器多少钱)

  • 电脑微信按住说话在哪(电脑微信按住说话)

    电脑微信按住说话在哪(电脑微信按住说话)

  • 微信看小视频卡顿怎么办(微信小视频卡屏解决办法)

    微信看小视频卡顿怎么办(微信小视频卡屏解决办法)

  • ipad2和mini2的区别(ipad2与mini2的区别)

    ipad2和mini2的区别(ipad2与mini2的区别)

  • 电脑反应太慢是什么原因(电脑反应太慢是主板太老了吗)

    电脑反应太慢是什么原因(电脑反应太慢是主板太老了吗)

  • 怎么知道网站是不是官网(怎么知道网站是哪个国家的)

    怎么知道网站是不是官网(怎么知道网站是哪个国家的)

  • vivox27没有人脸识别(vivox27没有人脸识别功能吗)

    vivox27没有人脸识别(vivox27没有人脸识别功能吗)

  • airpods怎么改不了名字(airpods怎么设置)

    airpods怎么改不了名字(airpods怎么设置)

  • 电商美工与平面设计的区别(电商美工与平面设计教程一样吗)

    电商美工与平面设计的区别(电商美工与平面设计教程一样吗)

  • 金立故事锁屏怎么去掉(金立故事锁屏怎么卸载)

    金立故事锁屏怎么去掉(金立故事锁屏怎么卸载)

  • frddl00是什么型号(frd-l09是什么型号)

    frddl00是什么型号(frd-l09是什么型号)

  • 电脑屏幕休眠时间怎么调(电脑屏幕休眠时间怎么调win11)

    电脑屏幕休眠时间怎么调(电脑屏幕休眠时间怎么调win11)

  • 人工智能的核心(人工智能的核心内容是大数据吗)

    人工智能的核心(人工智能的核心内容是大数据吗)

  • 旧手机数据如何导入新手机(旧手机数据如何移到新手机)

    旧手机数据如何导入新手机(旧手机数据如何移到新手机)

  • 128g固态硬盘实际容量(128的固态硬盘)

    128g固态硬盘实际容量(128的固态硬盘)

  • airpods说话声音小(airpods说话很小声)

    airpods说话声音小(airpods说话很小声)

  • vant 的表单校验(vant表单验证并提交表单)

    vant 的表单校验(vant表单验证并提交表单)

  • 一般纳税人的认定时间
  • 价内税有哪些税种
  • 我国现行的增值税属于什么
  • 一般纳税人增值税优惠政策2023
  • 售后回租利息可以抵税吗
  • 运输费计入什么科目分录
  • 已经验旧的发票可以作废吗
  • 房地产中心
  • 增值税零税率与免税有何不同
  • 清税证明要什么证件
  • 原材料的运输
  • 贴息收入什么意思
  • 印花税缴纳后合计怎么算
  • 开出的发票什么情况下需要补税?
  • 红字发票信息表填好后再怎么操作
  • 个人能去税务局开普票吗
  • 实物型产品的基础知识
  • etc充值发票可以抵扣税吗
  • 月末增值税怎么计算
  • 固定资产报废后怎么处理
  • 生活中都交了哪些朋友
  • 捐赠固定资产资产处置损益
  • 电脑怎么更新系统日期
  • 小规模纳税人增值税专用发票税率
  • 小米手环2支持nfc功能?
  • 如何生成系统图
  • 运输业什么进项税抵扣
  • 出售固定资产减按2%会计处理1%怎么处理
  • 设备租赁费属于劳务吗
  • vue兼容性
  • 二手车 交易税费
  • php表单的作用是什么
  • 应付票据抵付应付账款会计分录
  • phpcrawl
  • 最常用的基金业务
  • 行政单位捐赠收入属于什么收入
  • html中的标签有哪些
  • html零基础入门教程
  • 如何在vue项目中运行后端
  • yolo算法百度百科
  • php使用正则表达式检测是否包含非数字
  • 个人终止投资经营的条件
  • 固定资产出租收入属于
  • 定期定额自行申报表
  • sql server怎么用sql语句创建数据库
  • 外贸企业 生产企业
  • 模板的固定
  • mysql的密码忘了
  • 个体户注销工商需要等公示时间结束吗?
  • 收到汇算清缴退回的税款如何做账
  • 以前年度损益调整属于哪类科目
  • 什么是汇算清缴?
  • 生产部的管理人员算什么费用
  • 公司购入的房子卖了,如何交增值税
  • 个人所得税经营所得税申报表A表
  • 预收账款的金额是什么
  • 项目成本的估算与预算有什么区别和联系?考试资料网
  • 应收账款是净额列示吗
  • 冲暂估成本能冲部分暂估吗
  • 新三板奖励
  • SQL函数substr使用简介
  • 无法启动diagnostic policy service服务
  • 让Windows Server 2008系统安全更上一层楼
  • ubuntu屏幕截图快捷键
  • 苹果MAC电脑怎么砸壳应用app
  • window 启动
  • speedupmypc.exe - speedupmypc是什么进程
  • 让人吃惊的成语有哪些
  • 关于node.js中的模块化规范
  • shell编程简单实例
  • python3 bytes类型
  • 一个治疗Unity的Prefab强迫症患者的小招(Prefab变成红色的问题)
  • jquery iframe
  • jQuery插件扩展extend的简单实现原理
  • 河南电子税务局官网app
  • 深圳市的各区域排名
  • 小规模一季度多少免增值税
  • 一般纳税人开红字发票怎么报税
  • 西安车辆购置税缴纳多少
  • 郑州金水区税务大厅电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设