streampetr原版网络nuscenes数据pkl文件中的各字段含义

devtools/2024/9/23 3:31:04/

streampetr原版网络nuscenes数据pkl文件中的各字段含义

每帧数据都包含下列的信息

"token": 该帧数据的标识,具有唯一性
"prev": 该帧数据上一帧数据的token,如果没有就为""
"next": 该帧数据下一帧数据的token,如果没有就为"""frame_idx"    : 记录该帧数据是所在的序列内的第几帧,用于判断该帧数据是否为序列的首帧
"is_key_frame" : 是否为关键帧,nuscene数据集中真值数据只有2Hz,含标注信息的数据为关键帧
"lidar_path"   : 该帧数据对应的lidar数据路径,注意需要是想对路径,相对于工程根目录的相对路径"sweeps": 非关键帧数据信息,原版streampetr没有用到这个信息,但是在原版本的streampetr中这个信息的作用仅仅用来判断是否为新的序列
"cams"  : 记录相机的信息"CAM_FRONT":"data_path": 该帧数据这个视野的图片文件路径"type"     : 相机名称,比如"CAM_FRONT""timestamp": 相机时间戳"cam_instrnsic": 相机内参"sample_data_token"     :该帧数据所在的sample的token,不参与训练"sensor2ego_translation": 相机外参的平移分量"sensor2ego_rotation"   : 相机外参的旋转分量, 四元数的形式[w,x,y,z]"ego2global_translation": 相机时间戳时刻自车系到世界系的变换的平移分量"ego2global_rotation"   : 相机时间戳时刻自车系到世界系的变换的旋转分量,四元数[w,x,y,x]"sensor2lidar_rotation" : 相机系到激光雷达坐标系的旋转,表示一个点从相机系变换到激光雷达系的变换,矩阵形式,因为相机和激光雷达时间戳的不一致性,所以这里做了运动补偿。t时刻先从从相机系到自车系,自车系到世界系。然后T+1时刻,世界系到自车系,自车系到激光雷达系"sensor2lidar_translation": 相机系到激光雷达坐标系的平移"CAM_FRONT_LEFT":"CAM_FRONT_RIGHT":"CAM_BACK":"CAM_BACK_LEFT":"CAM_BACK_RIGHT":"scene_token"           : 该帧数据所在的场景token
"lidar2ego_translation" : 激光雷达的外参,平移分量
"lidar2ego_rotation"    : 激光雷达的外参,旋转分量,四元数[w, x, y, z]
"ego2global_translation": 激光雷达的外参,平移分量
"ego2global_rotation"   :  激光时间戳自车系到世界系的变换,旋转分量 四元数[w,x,y,z]"timestamp"    : 该帧数据时间戳,使用的是激光时间戳
"gt_boxes"     : 3D框真值, ->array  shape=[N,7] [x,y,z,w,l,h,yaw] 体心世界系坐标
"gt_names"     : N个object的类别 ->array shape=[N,] 
"gt_velocity"  : N个object的横纵向速度分量 ->array shape=[N,2] 
"num_lidar_pts": N个object中有多少激光点 ->array (N,)
"num_radar_pts": N个object中有多少毫米波雷达点 ->arrayt (N,)"valid_flag"   : N个object是否可见,如果num_lidar_pts>0就为可见 ->array   (N,)
"bboxes2d"     : ->list 长度为6(对应6路相机),每个元素是数组形式,每个元素的行状为(m,4),m表示该帧数据的所有3D框在该视野上的2D投影框有几个,每一行表示为[min_x,min_y,max_x,max_y](8个角点投影中的最大最新小)
"bboxes3d_cams": ->list  长度为6(对应6路相机),每个元素是数组形式,每个元素的行状为(m,7),m对应该视野内的2D框数量,每一行都与2D投影框对应[x,y,z,w,l,h,yaw],这里的xyz是在相机坐标系,注意z轴的方向
"label2d"      : ->list, 长度为6(对应6路相机),每个元素是数组,行状为(m,)  m表示对应相机视野内的2D投影框的类别值(原版本streampetr使用了10类,所以为09)
"centers2d"    : ->列表,长度为6(对应6路相机), 每个元素为数组,行状[m,2]。记录了3D框中心点在图像上的投影像素点坐标
"depths"       : ->list 长度为6,每个元素为数组,行状(m,) 记录对应物体的深度信息
"bboxes_ignore": 
"visibilities"

http://www.ppmy.cn/devtools/25265.html

相关文章

【学习AI-相关路程-工具使用-NVIDIA SDK MANAGER==NVIDIA-jetson刷机工具安装使用 】

【学习AI-相关路程-工具使用-NVIDIA SDK manager-NVIDIA-jetson刷机工具安装使用 】 1、前言2、环境配置3、知识点了解(1)jetson 系列硬件了解(2)以下大致罗列jetson系列1. Jetson Nano2. Jetson TX23. Jetson Xavier NX4. Jetson…

[图解]领域驱动设计伪创新-为什么互联网是重灾区-03

0 00:00:01,260 --> 00:00:05,036 所以呢,把并存当成因果 1 00:00:05,036 --> 00:00:06,488 这种套路 2 00:00:06,488 --> 00:00:07,360 我们就 3 00:00:07,770 --> 00:00:09,247 可以类似这样用 4 00:00:09,247 --> 00:00:09,670 你看 5 00:00…

leetcode51.N皇后(困难)-回溯法

思路 都知道n皇后问题是回溯算法解决的经典问题,但是用回溯解决多了组合、切割、子集、排列问题之后,遇到这种二维矩阵还会有点不知所措。 首先来看一下皇后们的约束条件: 不能同行不能同列不能同斜线 确定完约束条件,来看看究…

2024年CMS市场的份额趋势和使用统计

目前市面上有超过一半的网站都是使用CMS来搭建的,据不完全统计,现在大概有900多种CDM可供选择,以下是最常见的CMS的市场份额和使用率信息: 除了WordPress以外,Shopify和Wix也是比较流行的内容管理系统,尤其…

若依前后端部署系统--详细附图

一、后端部署 1、在ruoyi项目的Maven中的生命周期下双击package.bat打包Web工程,生成jar包文件。 提示打包成功 2、多模块版本会生成在ruoyi/ruoyi-admin模块下target文件夹,我们打开目录ruoyi-admin/taget,打开cmd,运行java -jar jar包名称…

MobileNetV4 论文学习

论文地址:https://arxiv.org/abs/2404.10518 代码地址:https://github.com/tensorflow/models/blob/master/official/vision/modeling/backbones/mobilenet.py 解决了什么问题? 边端设备的高效神经网络不仅能带来实时交互的体验&#xff0c…

【Rust学习】《Rust程序设计语言》第二章:编写猜数字游戏

本笔记为了记录学习Rust过程,内容如有错误请大佬指教 使用IDE:vs code 参考教程:菜鸟教程链接: 菜鸟教程链接: 参考文档:《Rust程序设计语言》Rust 官方文档中文教程 编写猜数字游戏 创建项目文件处理用户输入数据引入crate库猜数…

在CentOS7中wget命令显示not found怎么解决

实验需要,在本机上安装了一个CentOS7虚拟机,运行wget命令时显示not found。按照网上的教程,使用命令sudo yum install wget,依然失败。 怎么回事呢?会不会是网络的原因呢?想到这,ping了一下www…