如何使用 TJ4DRadSet:自动驾驶4D雷达数据集的完整指南
【免费下载链接】TJ4DRadSet 项目地址: https://gitcode.com/gh_mirrors/tj/TJ4DRadSet
TJ4DRadSet 是一个专为自动驾驶研究设计的4D雷达数据集,包含7757帧同步校准的激光雷达、摄像头和4D雷达数据,覆盖城市道路、高架道路等多种驾驶场景。本文将带你快速了解数据集结构、数据格式及使用方法,帮助你轻松上手自动驾驶感知算法开发。
📊 数据集核心优势与应用场景
TJ4DRadSet 作为开源4D雷达数据集,为自动驾驶感知任务提供了丰富的多模态数据支持。其核心优势包括:
- 多传感器融合:同步采集激光雷达(LiDAR)、摄像头和4D雷达数据,支持多模态融合算法研究
- 多样化场景覆盖:包含正常光照、强光、黑暗等不同光线条件,以及城市道路、高架道路、工业区等多种路况
- 精细标注信息:提供5类目标(Car、Pedestrian、Cyclist、Truck、Other)的3D边界框标注,兼容KITTI格式
图1:TJ4DRadSet数据采集平台示意图,展示了传感器安装位置与数据采集系统架构
🚀 快速开始:数据集获取与目录结构
一键获取数据集
通过以下命令克隆项目仓库,即可获取数据集示例数据和工具脚本:
git clone https://gitcode.com/gh_mirrors/tj/TJ4DRadSet
数据集目录结构解析
项目采用类KITTI组织方式,核心目录结构如下:
TJ4DRadSet/
├── Sample/ # 示例数据目录
│ └── training/ # 训练集样例
│ ├── calib/ # 传感器校准文件
│ ├── label_2/ # 3D目标标注文件
│ ├── velodyne/ # 4D雷达点云数据(.bin格式)
│ └── 3dbox_to_cloud.py # 3D框转点云工具
└── docs/ # 文档与工具目录
├── pictures/ # 数据集示意图
├── kitti_dataset.py # KITTI格式数据集加载器
└── eval.py # 评估工具脚本
图2:TJ4DRadSet数据集场景分布统计,展示了不同场景的帧数分布情况
📁 数据格式详解
4D雷达点云数据格式
velodyne目录下的.bin文件存储雷达点云数据,每个点包含8个特征维度:
[X, Y, Z, V_r, Range, Power, Alpha, Beta]
- 空间坐标:X, Y, Z(三维空间位置)
- 运动信息:V_r(相对径向速度)
- 雷达特性:Range(距离)、Power(信号强度,dB)、Alpha/Beta(水平/垂直角度)
标注文件格式说明
label_2目录下的.txt文件采用KITTI格式标注,每行代表一个目标:
Car 0 0 0 457.85 418.52 505.78 455.80 1.75 1.87 4.21 57.30 5.81 -2.18 -0.03
各字段含义:
- 目标类型(Type):Car/Pedestrian/Cyclist等
- 遮挡状态(Occluded):0(完全可见)-3(严重遮挡)
- 3D边界框(Dimensions):height, width, length
- 空间位置(Location):x, y, z(相机坐标系下)
- 旋转角度(Rotation):ry(绕Y轴旋转角)
图3:激光雷达点云(左)与4D雷达点云(右)对比,展示了不同传感器的环境感知特性
🔧 实用工具与代码示例
数据加载器使用方法
docs/kitti_dataset.py提供了KITTI格式数据集加载器,支持自定义数据增强和预处理:
from docs.kitti_dataset import KittiDataset
# 初始化数据集
dataset = KittiDataset(
data_root='Sample/training',
ann_file='train.txt',
split='training',
pipeline=[
dict(type='LoadPointsFromFile', coord_type='LIDAR'),
dict(type='LoadAnnotations3D', with_bbox_3d=True)
]
)
# 获取单帧数据
data_info = dataset.get_data_info(0)
points = data_info['points'] # 点云数据
bboxes_3d = data_info['ann_info']['gt_bboxes_3d'] # 3D边界框
3D框转点云工具
Sample/training/3dbox_to_cloud.py脚本可将3D边界框转换为点云数据,用于目标点云提取:
python Sample/training/3dbox_to_cloud.py --calib Sample/training/calib/070070.txt \
--label Sample/training/label_2/070070.txt \
--velodyne Sample/training/velodyne/070070.bin
图4:4D雷达点云目标检测结果可视化,展示了车辆和行人目标的实时检测效果
📈 数据集统计信息
目标类别分布
数据集包含5种主要目标类型,具体分布如下:
图5:TJ4DRadSet数据集目标类别分布统计图,显示各类别目标数量占比
场景帧数分布
44个序列的帧数分布情况,帮助用户了解数据覆盖的场景多样性:
📝 总结与资源链接
TJ4DRadSet作为开源4D雷达数据集,为自动驾驶感知算法研究提供了高质量的多模态数据支持。通过本文介绍的目录结构、数据格式和工具脚本,你可以快速开展以下研究工作:
- 4D雷达目标检测与跟踪算法开发
- 多传感器(雷达-激光雷达-摄像头)融合感知
- 恶劣天气条件下的鲁棒感知方法研究
更多详细信息请参考:
- 官方文档:docs/data_format.md
- 评估工具源码:docs/eval.py
- 数据集加载器:docs/kitti_dataset.py
图7:4D雷达目标跟踪效果展示,车辆在复杂场景下的运动轨迹跟踪结果
🔍 常见问题解答
Q: 数据集支持哪些传感器数据?
A: 当前版本提供4D雷达点云、摄像头图像和激光雷达数据,所有传感器已完成时间和空间校准。
Q: 如何将数据集用于3D目标检测模型训练?
A: 可直接使用kitti_dataset.py加载数据,该类兼容MMDetection3D等主流检测框架的数据接口。
Q: 标注文件中的速度信息如何获取?
A: 4D雷达点云的第4个维度(V_r)提供目标相对径向速度,可用于运动状态估计。
通过本文的指南,你已经掌握了TJ4DRadSet数据集的基本使用方法。立即开始探索4D雷达在自动驾驶感知中的应用吧!
【免费下载链接】TJ4DRadSet 项目地址: https://gitcode.com/gh_mirrors/tj/TJ4DRadSet
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



