位置: 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)(滤波方案)

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

  • 递延所得税负债大白话解释
  • 个体工商户年报网上申报入口
  • 机动车销售统一专票图片
  • 行政职工福利费包括哪些内容呢
  • 减税后含税单价计算公式
  • 商业汇票到期没有收到款
  • 销售方记账凭证怎么做分录
  • 利润属于所有者权益类科目吗
  • 个人净资产包括房子吗
  • 住房补贴是不是编制才有
  • 零售行业会计核算方法
  • 客户退货金额小怎么说
  • 个人咨询服务费合同
  • 固定资产预计净残值最后怎么处理
  • 基金公司的资本结构
  • 预缴企业所得税税率
  • 农村合作社开具的专用发票免税吗
  • 公司招待客户买的水果怎么入账
  • 水利基金减免政策2019 未超过10万
  • 借款利息资本化金额
  • 购货方收到代垫运费的发票怎么做会计分录?
  • 给别人代付
  • 机动车检测工作
  • 1697510710
  • 在Win7系统中,文件的属性包括
  • 外贸企业国内运费可以抵扣吗
  • 预提利息的分录怎么做
  • 防伪税控开票系统技术维护费
  • 电脑每次开机都要磁盘检查是什么原因
  • windows7增加桌面
  • 发票是否可以作为收款依据
  • 公司购买办公用房可以抵税吗
  • 外汇差额核销条件
  • 担保余值计算公式
  • framework开发教程
  • lstm crf
  • php读取文件内容的方法和函数
  • 将织梦dedecms转换到wordpress
  • 未分配利润为负的原因
  • 其他综合收益什么情况下转入留存收益
  • hadoop集群状态
  • mongodb副本集群
  • mysql终端操作
  • 利润表利息费用怎么填
  • 车子上公司户和个人户哪个更好
  • 公司制作横幅计入什么科目?
  • 境外运费支付属什么费用
  • 行政单位无偿划拨资产账务处理
  • 企业商品报废如何处置
  • 发票开错作废如何处理?
  • 固定资产处理附件是什么
  • 代扣个税返还需要交增值税吗
  • 以前年度损益调整怎么做账
  • 开具其他发票收入填报异常
  • 事业单位收入是再分配吗
  • 固定资产计提折旧的会计科目
  • 账户的基本结构不包括的内容有
  • sql server连接不上服务器怎么办
  • 如何关闭自动启动项目
  • win10系统免费升级
  • ie11 for win8
  • android内存工具
  • textview可以点击吗
  • Node.js中的construct
  • 搭建nodejs
  • c调用java后又调用回
  • ftp远程桌面
  • dota2 服务器ip地址
  • macos如何使用
  • unity system
  • 浏览器检测js代码
  • 基于python的应用
  • html做一个新闻app首页
  • 判断jquery对象是否存在
  • 曲靖市税务局领导班子
  • 国家税务稽查局举报中心
  • 02112366电子税务局
  • 许昌市民之家有餐厅吗在几楼
  • 企业吸收合并资质转移办理
  • 税务稽查为什么不问证人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设