
Waymo Open Dataset 自动驾驶数据集工具链如何克隆、安装并跑通第一个数据加载示例【免费下载链接】waymo-open-datasetWaymo Open Dataset项目地址: https://gitcode.com/gh_mirrors/wa/waymo-open-datasetWaymo Open Dataset 是一套面向自动驾驶研究的开源数据集及其配套代码工具链。这个仓库里装着数据格式定义、评测指标实现和 TensorFlow 加载工具覆盖感知、运动预测和端到端驾驶三类数据。注意一个关键点仓库本身不含完整数据数据需到官方数据集网站申请下载但仓库自带示例帧和教程足够你先跑通全流程。如果你是刚接触自动驾驶感知的学生或开发者建议从这里开始。1. 三步搭好最小环境1.1 第 1 步克隆仓库把代码拉到本地克隆命令如下git clone https://gitcode.com/gh_mirrors/wa/waymo-open-dataset cd waymo-open-dataset拉完你会看到src/代码、tutorial/教程笔记本、docs/规格文档三个主要目录。这里不需要一开始就理解全部结构先跑通示例即可。1.2 第 2 步安装锁定版本的依赖仓库在src/waymo_open_dataset/requirements.txt中锁定了全部依赖基于 Python 3.10 生成执行pip install -r src/waymo_open_dataset/requirements.txt预期结果是 TensorFlow、NumPy、protobuf、matplotlib 等包全部按固定版本装好。如果安装很慢建议先确认网络代理如果某个包安装失败先核对本地 Python 是否为 3.10因为版本与锁定清单强绑定。1.3 第 3 步验证安装最轻量的验证方式是打开官方教程tutorial/tutorial.ipynb。它只用仓库里自带的一个示例帧文件就能运行不需要下载完整数据集。如果你希望直接跳过本地装环境教程也提供了在 Colab 中一键运行的路径。另外docs/docker.md提供了 Docker 方式在tutorial/目录下执行docker build --tagopen_dataset .再运行docker run -p 8888:8888 open_dataset即可在浏览器中打开带完整依赖的 Jupyter 环境直接运行tutorial_local.ipynb。2. 看懂核心内容3 套数据 1 条最小加载流程先分清这个仓库服务哪几套数据。根据 READMEWaymo Open Dataset 包含三部分Perception 数据集多传感器原始数据摄像头、激光雷达加各类标注是感知任务的主力数据源Motion 数据集超过 10 万个场景的交通参与者轨迹附带对应的 3D 地图用于运动预测End-To-End Driving 数据集摄像头图像加自车高层级驾驶指令如转向、加速命令用于端到端驾驶研究。仓库代码围绕这三套数据提供三样东西数据格式定义src/waymo_open_dataset/dataset.proto和src/waymo_open_dataset/protos/下的 proto 文件、评测指标实现、TensorFlow 辅助函数src/waymo_open_dataset/utils/。2.1 最小加载流程读一个帧数据的组织单位是“帧”frame每个.tfrecord文件是按时间排序的帧序列。官方教程给出的加载写法非常短你只需要记住这一种模式import tensorflow as tf from waymo_open_dataset import dataset_pb2 as open_dataset dataset tf.data.TFRecordDataset(tutorial/frames, compression_type) for data in dataset: frame open_dataset.Frame() frame.ParseFromString(bytearray(data.numpy())) break执行后你会拿到一个Frame对象里面装着该时刻的相机图像、激光雷达 range image把点云按极坐标投影成的图像和各类标签。tutorial/frames文件里恰好有两帧示例数据是验证解析代码的理想材料。这张图展示的是 3D 语义分割的效果激光雷达点被按语义类别着色后叠加在相机视角上是感知任务中最直观的验证画面之一。3. 典型场景从数据到任务3.1 感知检测与语义分割最常用的入口是tutorial/tutorial.ipynb基础加载与可视化、tutorial/tutorial_3d_semseg.ipynb3D 语义分割和tutorial/tutorial_2d_pvps.ipynb2D 视频全景分割。运行方式都一样打开笔记本按顺序执行单元格。标注规范写在docs/labeling_specifications.md其中对车辆、行人、骑行者、标志的 3D 框绘制规则逐条说明例如车辆与拖挂需要分成两个框、骑行者框要包含人和车。理解这些规则能帮你判断自己的检测结果“差在哪”。3.2 运动预测做轨迹预测时从tutorial/tutorial_motion.ipynb入手。仓库自带一小段运动数据src/waymo_open_dataset/utils/testdata/motion_data_one_scenario.tfrecord配合 Motion 数据集的轨迹与地图输入使用。v1.2.1 版本之后Motion 数据还附了相机图像 token 和嵌入可供多模态模型使用详见 LOG.md 的更新记录。3.3 端到端驾驶tutorial/tutorial_vision_based_e2e_driving.ipynb对应 E2E 驾驶数据输入是相机图像监督信号是高层驾驶指令。2025 年 4 月更新后验证集还带有人工评分反馈标签和场景标签可用rater_feedback_utils.py计算反馈分数方便你在不提交服务器的前提下自检模型。4. 进阶实践评测指标与提交校验4.1 用官方指标给自己打分src/waymo_open_dataset/metrics/目录实现了检测、跟踪、运动预测、分割、关键点等任务的指标。metrics/python/是纯 Python 调用入口例如wod_detection_evaluator.py可以把你的预测文件和真值文件丢进去算 mAP 类指标metrics/tools/下还有 C 可执行入口如create_submission.cc用于生成提交文件并附带fake_predictions.bin、fake_ground_truths.bin两份假数据供你本地演练。构建方式参考tutorial/tutorial.ipynb中的 Bazel 命令bazelisk build打包 wheelbazelisk test //waymo_open_dataset/...跑单元测试。4.2 关注版本变化每次数据集或指标更新都会写进LOG.md例如 2023 年 3 月 Perception v2.0.0 引入了模块化下载格式、2025 年 3 月 E2E 驾驶数据集发布了训练集。如果你的代码是照着旧教程写的遇到字段对不上时建议先翻一遍LOG.md再查问题。5. 常见问题与资料入口依赖安装失败或版本冲突先确认 Python 版本是 3.10、TensorFlow 与 requirements 锁定的版本一致也可以直接用docs/docker.md的 Docker 环境绕开本地依赖问题。找不到完整数据本仓库只含示例帧与少量测试数据完整数据集需在 Waymo 官方网站waymo.com/open按协议申请注意数据集许可协议与代码许可Apache 2.0wdl_limited子目录另有 BSD 条款是分开的。标注规则拿不准看docs/labeling_specifications.md里面有每类目标的绘制样例图和规则文字。地图拓扑概念车道邻接、车道边界、连通关系的定义在docs/lane_neighbors_and_boundaries.md配有两张示意图docs/images/neighbors-illustration.png、docs/images/boundaries-illustration.png。指标定义细节位姿估计误差的算法说明在docs/pose_estimation_metric.md。下一步建议先把tutorial.ipynb的示例帧加载并可视化跑通再按你所在的任务方向感知、运动预测或端到端挑对应教程深入写论文引用时README 末尾已给出 Perception 与 Motion 两篇论文的 BibTeX。【免费下载链接】waymo-open-datasetWaymo Open Dataset项目地址: https://gitcode.com/gh_mirrors/wa/waymo-open-dataset创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考