BDD100K(Berkeley DeepDrive 100K),由加州大学伯克利 BAIR 实验室2018 年发布,是自动驾驶领域最经典的大规模多任务驾驶数据集,以场景、天气、昼夜光照多样性强著称,广泛用于目标检测、车道线、可行驶区域分割、多任务感知网络(YOLOP、HybridNets 等)训练与评测。
论文:BDD100K: A Diverse Driving Dataset for Heterogeneous Multitask Learning
数据集下载地址:http://bdd-data.berkeley.edu/download.html
一般科研使用只下载100k图片+标注JSON,不需要完整视频。
标注可视化:
一、基础信息
- 原始视频:100000 段驾驶视频,每段40s,720P(1280×720),30fps,附带 GPS/IMU 轨迹信息,总时长约 1100 小时,采集自美国旧金山、纽约等城市,众包司机行车记录仪采集。
- 标注帧:取每段视频第 10 秒帧,得到 10 万张标注图片;视频完整序列用于多目标跟踪任务。
- 数据集划分
- 训练集 train:70000 张
- 验证集 val:10000 张
- 测试集 test:20000 张
- 文件格式:图片 jpg;标注主流为JSON 格式,需要脚本转换为 YOLO、COCO 格式用于训练。
二、核心优势:极强数据多样性
BDD100K 最大特点:白天 / 夜间样本数量接近,覆盖多种天气、道路场景,适合做域适应、恶劣光照下模型鲁棒性研究。
- 场景 scene(6 类):城市街道、居民区、高速、隧道、停车场、乡村道路
- 天气 weather(6 类):晴天、阴天、雨天、雪天、雾天、大风
- 昼夜 timeofday(3 类):白天、黄昏 / 黎明、夜晚
三、五大标注任务
1. 图像级标签(Image tagging)
每张图打全局标签:天气、场景、昼夜,用于图像分类、域迁移。
2. 2D 目标检测(Bounding box)
- 10 大类:汽车、卡车、公交车、行人、骑行者、摩托车、自行车、交通灯、交通标志、火车等
- 总标注框约 184 万;属性包含:是否遮挡、是否截断、交通灯颜色(红 / 黄 / 绿)。
3. 可行驶区域分割(Drivable area)
像素级多边形掩码,两类:
- 🟥红色:直接可行驶区域,本车正常行驶路面,拥有路权
- 🔵蓝色:备选可行驶区域,可临时变道,需要避让其他车辆
作用:自动驾驶规划模块,判断哪些路面可以开,YOLOP 等网络输出的分割分支就是该任务。
4. 车道线标注(Lane marking)
用多段折线 polyline 标注车道线,区分属性:实线、虚线、双线、斑马线;
- 红色:垂直车道线(沿着车辆行驶方向)
- 蓝色:平行车道线(横向停止线、斑马线)
不是简单二分割,带有车道类型属性,适合车道线检测、车道感知定位任务。
5. 实例分割(Instance segmentation)
仅1 万张图片提供实例分割标注,每个物体像素掩码,用于实例分割算法训练。
四、目录结构
D:\dataset ├─📁 bdd100k_images_100k │ └─📁 100k │ ├─📁 train # 训练集图片 │ ├─📁 val # 验证集图片 │ └─📁 test # 测试集图片 └─📁 bdd100k_labels └─📁 100k ├─📁 train # 训练集标注(json/分割掩码等) ├─📁 val # 验证集标注 └─📁 test # 测试集标注JSON 内部包含每张图片的名称、场景天气标签、所有物体 bbox、可行驶区域多边形点、车道线折线点集合。
五、和同类数据集对比
| 数据集 | 短板 | BDD100K 优势 |
|---|---|---|
| Cityscapes | 仅欧洲城市,视频采样帧,多样性有限 | 美国多城市,昼夜 / 雨雪齐全,视频时序完整 |
| KITTI | MOT、MOTS 规模小 | 更大规模跟踪、分割标注,长尾、遮挡样本丰富 |
| Mapillary Vistas | 只有独立图片,无时序视频 | 众包驾驶员视频,保留完整时序信息 |