开源数据集 nuScenes 之 3D Occupancy Prediction

news2024/12/26 22:56:01

数据总体结构
在这里插入图片描述

Nuscenes 数据结构
可以看一下我的blog如何下载完整版

mmdetection3d
├── mmdet3d
├── tools
├── configs
├── data
│   ├── nuscenes
│   │   ├── maps
│   │   ├── samples
│   │   ├── sweeps
│   │   ├── lidarseg (optional)
│   │   ├── v1.0-test
|   |   ├── v1.0-trainval

参考 mmdet3d

nuscenes_database/xxxxx.bin:训练数据集的每个 3D 包围框中包含的点云数据。

nuscenes_infos_train.pkl:训练数据集,该字典包含了两个键值:metainfo 和 data_list。metainfo 包含数据集的基本信息,例如 categories, dataset 和 info_version。data_list 是由字典组成的列表,每个字典(以下简称 info)包含了单个样本的所有详细信息。

info[‘sample_idx’]:样本在整个数据集的索引。

info[‘token’]:样本数据标记。

info[‘timestamp’]:样本数据时间戳。

info[‘ego2global’]:自车到全局坐标的变换矩阵。(4x4 列表)

info[‘lidar_points’]:是一个字典,包含了所有与激光雷达点相关的信息。

info[‘lidar_points’][‘lidar_path’]:激光雷达点云数据的文件名。

info[‘lidar_points’][‘num_pts_feats’]:点的特征维度。

info[‘lidar_points’][‘lidar2ego’]:该激光雷达传感器到自车的变换矩阵。(4x4 列表)

info[‘lidar_sweeps’]:是一个列表,包含了扫描信息(没有标注的中间帧)。

info[‘lidar_sweeps’][i][‘lidar_points’][‘data_path’]:第 i 次扫描的激光雷达数据的文件路径。

info[‘lidar_sweeps’][i][‘lidar_points’][lidar2ego’’]:当前激光雷达传感器到自车的变换矩阵。(4x4 列表)

info[‘lidar_sweeps’][i][‘lidar_points’][‘ego2global’]:自车到全局坐标的变换矩阵。(4x4 列表)

info[‘lidar_sweeps’][i][‘lidar2sensor’]:从主激光雷达传感器到当前传感器(用于收集扫描数据)的变换矩阵。(4x4 列表)

info[‘lidar_sweeps’][i][‘timestamp’]:扫描数据的时间戳。

info[‘lidar_sweeps’][i][‘sample_data_token’]:扫描样本数据标记。

info[‘images’]:是一个字典,包含与每个相机对应的六个键值:'CAM_FRONT', 'CAM_FRONT_RIGHT', 'CAM_FRONT_LEFT', 'CAM_BACK', 'CAM_BACK_LEFT', 'CAM_BACK_RIGHT'。每个字典包含了对应相机的所有数据信息。

info[‘images’][‘CAM_XXX’][‘img_path’]:图像的文件名。

info[‘images’][‘CAM_XXX’][‘cam2img’]:当 3D 点投影到图像平面时需要的内参信息相关的变换矩阵。(3x3 列表)

info[‘images’][‘CAM_XXX’][‘sample_data_token’]:图像样本数据标记。

info[‘images’][‘CAM_XXX’][‘timestamp’]:图像的时间戳。

info[‘images’][‘CAM_XXX’][‘cam2ego’]:该相机传感器到自车的变换矩阵。(4x4 列表)

info[‘images’][‘CAM_XXX’][‘lidar2cam’]:激光雷达传感器到该相机的变换矩阵。(4x4 列表)

info[‘instances’]:是一个字典组成的列表。每个字典包含单个实例的所有标注信息。对于其中的第 i 个实例,我们有:

info[‘instances’][i][‘bbox_3d’]:长度为 7 的列表,以 (x, y, z, l, w, h, yaw) 的顺序表示实例的 3D 边界框。

info[‘instances’][i][‘bbox_label_3d’]:整数表示实例的标签,-1 代表忽略。

info[‘instances’][i][‘velocity’]:3D 边界框的速度(由于不正确,没有垂直测量),大小为 (2, ) 的列表。

info[‘instances’][i][‘num_lidar_pts’]:每个 3D 边界框内包含的激光雷达点数。

info[‘instances’][i][‘num_radar_pts’]:每个 3D 边界框内包含的雷达点数。

info[‘instances’][i][‘bbox_3d_isvalid’]:每个包围框是否有效。一般情况下,我们只将包含至少一个激光雷达或雷达点的 3D 框作为有效框。

info[‘cam_instances’]:是一个字典,包含以下键值:'CAM_FRONT', 'CAM_FRONT_RIGHT', 'CAM_FRONT_LEFT', 'CAM_BACK', 'CAM_BACK_LEFT', 'CAM_BACK_RIGHT'。对于基于视觉的 3D 目标检测任务,我们将整个场景的 3D 标注划分至它们所属于的相应相机中。对于其中的第 i 个实例,我们有:

info[‘cam_instances’][‘CAM_XXX’][i][‘bbox_label’]:实例标签。

info[‘cam_instances’][‘CAM_XXX’][i][‘bbox_label_3d’]:实例标签。

info[‘cam_instances’][‘CAM_XXX’][i][‘bbox’]:2D 边界框标注(3D 框投影的矩形框),顺序为 [x1, y1, x2, y2] 的列表。

info[‘cam_instances’][‘CAM_XXX’][i][‘center_2d’]:3D 框投影到图像上的中心点,大小为 (2, ) 的列表。

info[‘cam_instances’][‘CAM_XXX’][i][‘depth’]:3D 框投影中心的深度。

info[‘cam_instances’][‘CAM_XXX’][i][‘velocity’]:3D 边界框的速度(由于不正确,没有垂直测量),大小为 (2, ) 的列表。

info[‘cam_instances’][‘CAM_XXX’][i][‘attr_label’]:实例的属性标签。我们为属性分类维护了一个属性集合和映射。

info[‘cam_instances’][‘CAM_XXX’][i][‘bbox_3d’]:长度为 7 的列表,以 (x, y, z, l, h, w, yaw) 的顺序表示实例的 3D 边界框。

info[‘pts_semantic_mask_path’]:激光雷达语义分割标注的文件名。

OccNet 在 nuScenes 基础上推出的 OpenOcc 数据集,提供环视相机图像、3D occupancy 和 occupancy flow 标注等。数据集通过将 Lidar 数据体素化,生成精确的3D真值,支持场景理解和3D重建研究。这一数据集不仅适合静态场景分析,也能用于研究动态环境,为机器视觉等领域的进步提供重要资源。

Occnet 数据集
连接

OccNet
├── data/
│   ├── can_bus/
│   ├── nuscenes/
│   │   ├── maps/
│   │   ├── samples/
│   │   ├── sweeps/
│   │   ├── v1.0-test
│   │   ├── v1.0-trainval
│   │   ├── nuscenes_infos_temporal_train.pkl
│   │   ├── nuscenes_infos_temporal_val.pkl   
│   ├── occ_gt_release_v1_0/
│   │   ├── train/
│   │   ├── val/
│   │   ├── occ_gt_train.json
│   │   ├── occ_gt_val.json
│   │   ├── nuscenes_infos_temporal_train_occ_gt.pkl
│   │   ├── nuscenes_infos_temporal_val_occ_gt.pkl

Occpancy 里面的结构

└── Occpancy3D-nuScenes-V1.0
    |
    ├── mini
    |
    ├── trainval
    |   ├── imgs
    |   |   ├── CAM_BACK
    |   |   |   ├── n015-2018-07-18-11-07-57+0800__CAM_BACK__1531883530437525.jpg
    |   |   |   └── ...
    |   |   ├── CAM_BACK_LEFT
    |   |   |   ├── n015-2018-07-18-11-07-57+0800__CAM_BACK_LEFT__1531883530447423.jpg
    |   |   |   └── ...
    |   |   └── ...
    |   |     
    |   ├── gts  
    |   |   ├── [scene_name]
    |   |   |   ├── [frame_token]
    |   |   |   |   └── labels.npz
    |   |   |   └── ...
    |   |   └── ...
    |   |
    |   └── annotations.json
    |
    └── test
        ├── imgs
        └── annotations.json

imgs/ 包含由各种相机捕获的图像。
gts/ 包含每个样本的真值数据。[scene_name] 指定一系列帧,而 [frame_token] 指定序列中的单个帧。
annotations.json 包含数据集的元信息。
labels.npz 包含每一帧的 [semantics](语义)、[mask_lidar](雷达遮罩)和 [mask_camera](相机遮罩)。

annotations {
    "train_split": ["scene-0001", ...],                         <list> -- training dataset split by scene_name
    "val_split": list ["scene-0003", ...],                      <list> -- validation dataset split by scene_name
    "scene_infos" {                                             <dict> -- meta infos of the scenes    
        [scene_name]: {                                         <str> -- name of the scene.  
            [frame_token]: {                                    <str> -- samples in a scene, ordered by time
                    "timestamp":                                <str> -- timestamp (or token), unique by sample
                    "camera_sensor": {                          <dict> -- meta infos of the camera sensor
                        [cam_token]: {                          <str> -- token of the camera
                            "img_path":                         <str> -- corresponding image file path, *.jpg
                            "intrinsic":                        <float> [3, 3] -- intrinsic camera calibration
                            "extrinsic":{                       <dict> -- extrinsic parameters of the camera
                                "translation":                  <float> [3] -- coordinate system origin in meters
                                "rotation":                     <float> [4] -- coordinate system orientation as quaternion
                            }   
                            "ego_pose": {                       <dict> -- vehicle pose of the camera
                                "translation":                  <float> [3] -- coordinate system origin in meters
                                "rotation":                     <float> [4] -- coordinate system orientation as quaternion
                            }                
                        },
                        ...
                    },
                    "ego_pose": {                               <dict> -- vehicle pose
                        "translation":                          <float> [3] -- coordinate system origin in meters
                        "rotation":                             <float> [4] -- coordinate system orientation as quaternion
                    },
                    "gt_path":                                  <str> -- corresponding 3D voxel gt path, *.npz
                    "next":                                     <str> -- frame_token of the previous keyframe in the scene 
                    "prev":                                     <str> -- frame_token of the next keyframe in the scene
                }
            ]             
        }
    }
}
字段类型描述
train_splitlist以场景名分割的训练数据集
val_splitlist以场景名分割的验证数据集
scene_infosdict场景的元信息
[scene_name]str场景名称
[frame_token]str场景中的样本,按时间顺序排列
timestampstr时间戳(或标记),每个样本唯一
camera_sensordict摄像头传感器的元信息
[cam_token]str摄像头的标记
img_pathstr对应的图像文件路径,*.jpg
intrinsicfloat[3,3]摄像头内参校准
extrinsicdict摄像头外参
translationfloat[3]坐标系原点(以米为单位)
rotationfloat[4]坐标系方向(以四元数表示)
ego_posedict摄像头所在车辆的姿态
translationfloat[3]坐标系原点(以米为单位)
rotationfloat[4]坐标系方向(以四元数表示)
ego_posedict车辆姿态
translationfloat[3]坐标系原点(以米为单位)
rotationfloat[4]坐标系方向(以四元数表示)
gt_pathstr对应的3D体素真值路径,*.npz
nextstr场景中上一个关键帧的frame_token
prevstr场景中下一个关键帧的frame_token

榜单
连接

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1538391.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PHP 读取嵌入式数据 SQLite3

SQLite3 属于轻量级开源的嵌入式关系型数据库&#xff0c;但它支持 ACID(Atomicity,Consistency,Isolation,Durability) 事务。 SQLite Download Page: https://www.sqlite.org/download.html 第一步&#xff1a;在 php.ini 中开启 extensionsqlite3 第二步&#xff1a;连接数…

K8s+Nacos实现应用的优雅上下线【生产实践】

文章目录 前言一、环境描述二、模拟请求报错三、配置优雅上下线1.修改nacos配置2.修改depolyment配置3.重新apply deployment后测试4.整体(下单)测试流程验证是否生效 四、期间遇到的问题 前言 我们在使用k8s部署应用的时候&#xff0c;虽然k8s是使用滚动升级的&#xff0c;先…

畅谈AIGC,ISIG-AIGC技术与应用发展峰会成功举办

3月16日&#xff0c;第四届ISIG中国产业智能大会在上海中庚聚龙酒店如期开幕&#xff0c;此次大会由苏州市金融科技协会指导、企智未来科技&#xff08;RPA中国、LowCode低码时代、AIGC开放社区&#xff09;主办。大会聚集了来自不同领域的专家学者、行业领军人物及技术研发者&…

MySQL 更新执行的过程

优质博文&#xff1a;IT-BLOG-CN Select语句的执行过程会经过连接器、分析器、优化器、执行器、存储引擎&#xff0c;同样的 Update语句也会同样走一遍 Select语句的执行过程。 但是和 Select最大不同的是&#xff0c;Update语句会涉及到两个日志的操作redo log&#xff08;重做…

python的街道办管理系统flask-django-php-nodejs

随着世界经济信息化、全球化的到来和互联网的飞速发展&#xff0c;推动了各行业的改革。若想达到安全&#xff0c;快捷的目的&#xff0c;就需要拥有信息化的组织和管理模式&#xff0c;建立一套合理、动态的、交互友好的、高效的街道办管理系统。当前的信息管理存在工作效率低…

3.22Code

基于邻接矩阵的新顶点的增加 #include<iostream>using namespace std;#define MAXVNUM 100typedef struct{int vexsNum;int arcsNum;int arcs[MAXVNUM][MAXVNUM];int vexs[MAXVNUM]; }AdjMatrixG;void InitGraph(AdjMatrixG &G){for(int k0;k<MAXVNUM;k)G.vexs[k…

webgl浏览器渲染设置

在浏览器中程序图形化webgl渲染时&#xff0c;有时候发现代码没有问题&#xff0c;但是就是无法渲染或者渲染报错&#xff0c;此时可以尝试如下的设置&#xff1a; 通过在chrome浏览器输入chrome&#xff1a;//flags打开扩展 设置一&#xff08;webgl开发者扩展&#xff09; 设…

计算机网络——数据链路层(数据链路层功能概述)

计算机网络——数据链路层&#xff08;数据链路层功能概述&#xff09; 数据链路层的功能数据链路层的基本概念封装成帧和透明传输 我们之前已经学完了物理层的所有内容&#xff0c;今天开始我们要进入数据链路层的学习&#xff0c;如果有小伙伴对物理层的内容感兴趣的话&#…

Xilinx FPGA 远程升级时bin和bit文件使用注意

以Spartan-6 ISE开发环境为例。 ISE开发环境支持生成bit和bin格式的程序文件&#xff0c;可以在生成选项进行配置&#xff1a; 把生成的bit文件和bin文件进行二进制比较&#xff0c;发现bit比bin文件头部多了一些内容&#xff08;头部信息&#xff09;&#xff0c;剩余部分完…

苹果电脑不能删除移动硬盘文件 苹果电脑移动硬盘只读模式如何更改 移动硬盘文件或目录损坏且无法读取怎么办

当我们将移动硬盘插入苹果电脑后&#xff0c;发现无法对移动硬盘中的文件进行编辑该怎么办&#xff1f;相信有不少网友遇到过这类情况。苹果电脑不能删除移动硬盘文件&#xff0c;或无法拷贝硬盘里的文件。今天我为大家解决苹果电脑移动硬盘只读模式如何更改的问题&#xff0c;…

GraphPad Prism 10:一站式数据分析解决方案

GraphPad Prism 10是一款功能强大的数据分析和可视化软件&#xff0c;广泛应用于生命科学研究、医学、生物、化学等多个领域。以下是对其详细功能的介绍&#xff1a; 首先&#xff0c;GraphPad Prism 10具有出色的数据可视化功能。它支持各种类型的图表和图形&#xff0c;包括…

C++ 侯捷 程序设计(Ⅱ)兼谈对象模型 笔记

Conversion function 转换函数 侯捷老师使用分数 Fraction举例&#xff0c;分数理应可以被看作是小数 提供了Fraction类对象一个转换为double的方法&#xff0c;当碰到需要转换为double的情况下&#xff0c;会调用该方法。 黄色的就是转换函数&#xff0c;没有return type&am…

高手勿入:连问chatGPT九个问题,解决个简单前端问题,无剪辑。

将layui弹窗button默认文字&#xff1a;确定&#xff0c;修改为其他文字&#xff0c;就这么个简单问题&#xff0c;把前端妹子&#xff08;新手&#xff09;难坏了&#xff0c;向我求助&#xff0c;我没有像以往一样直接给答案&#xff0c;而是以新手的方式求助chatgpt&#xf…

Vue3快速上手(十七)Vue3之状态管理Pinia

一、简介 Pinia官网:https://pinia.vuejs.org/zh/ 从官网截图里可以直接看到,pinia是一个vuejs的状态(数据)管理工具。功能性同vuex。logo是小菠萝。它是一个集中式状态管理工具。就是将多个组件共用的数据管理起来,重复利用。有点类似缓存的意思。 二、Pinia环境搭建 …

vCenter 6.5为虚拟机添加GPU直通

参考&#xff1a;Dell文档 如何为GPU直通启用VMware虚拟机。 | Dell 中国

【计算机视觉】Gaussian Splatting源码解读补充(一)

本文旨在补充gwpscut创作的博文学习笔记之——3D Gaussian Splatting源码解读。 Gaussian Splatting Github地址&#xff1a;https://github.com/graphdeco-inria/gaussian-splatting 论文地址&#xff1a;https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/3d_gauss…

redis功能点

一、redis简介 概述 Redis 是速度非常快的非关系型&#xff08;NoSQL&#xff09;内存键值数据库&#xff0c;可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串&#xff0c;值支持五种数据类型&#xff1a;字符串、列表、集合、散列表、有序集合。 Redis 支持很…

深入理解指针03

1. 字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针char*; ⼀般使⽤: int main(){char ch w;char *pc &ch;*pc w;return 0;} 还有⼀种使⽤⽅式如下: int main() {const char* pstr "hello world";//这⾥是把⼀个字符串放到pstr指针变量⾥了…

【并查集专题】【蓝桥杯备考训练】:网络分析、奶酪、合并集合、连通块中点的数量、格子游戏【已更新完成】

目录 1、网络分析&#xff08;第十一届蓝桥杯省赛第一场C A组/B组&#xff09; 2、奶酪&#xff08;NOIP2017提高组&#xff09; 3、合并集合&#xff08;模板&#xff09; 4、连通块中点的数量&#xff08;模板&#xff09; 5、格子游戏&#xff08;《信息学奥赛一本通》…

win10下自由切换多版本JDK操作

1.在window 系统变量 path路径追加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 2.下载多版本jdk zip文件解压到到C:\Program Files\Java\目录下 3.定义切换Java版本的bat文件,内容如下 @echo off @echo -------------------welcome to use Java version switch service------------…