初涉 Deep Drive Dataset
Berkeley 大学最近推出的针对自动驾驶的街景数据集,号称比 Cityscapes 数据量更大,可泛化性更好。
语义实例分割(Semantic Instance Segmentation)
数据集一共有 40 种物体类别
与 Cityscapes 的对比
街景数据来自 US 的城市
模型更熟悉美国的街景。
图片标签
时间:daytime, nighttime, dawn/dusk;
场景:Residential,High-way, City street, Parking lot, Gas station, Tunnel;
天气:Clear, Partly cloudy, Over-case, Rainy, Snowy, Foggy;
Label Maps
语义分割使用标签映射(Label Maps),不是训练索引(Training Indices)。
更高的可泛化性
使用 Dilate Residual Network (Hyper parameter 相同)测试两个数据集时发现下表的关系:
| Train | Test | Accuracy |
|---|---|---|
| deepDriver | deepDriver | High |
| deepDriver | Cityscapes | Low |
| Cityscapes | deepDriver | Low |
| Cityscapes | Cityscapes | High |
在同样的数据集下训练结果都很好,但交叉使用不同测试集时精度下降显著。使用 deepDriver 训练的模型在 Cityscapes 测试集上的表现虽然较差,但有部分训练结果比在特定场景训练的结果要好。这意味着该数据集涵盖场景更多,训练出的模型的可泛化性会比较好。
以上参考:https://arxiv.org/abs/1805.04687
数据集详情
文件结构:
bdd100k
| seg
| | images
| | | train
| | | val
| | | test
| | color_labels
| | | train
| | | val
| | labels
| | | train
| | | val
检查数据集完整性的 python3 脚本
import os
import sys
if len(sys.argv) != 2:
print ('Usage: python checkdata.py <train|val>')
exit(-1)
dataset_category = sys.argv[1]
if dataset_category not in {'train', 'val'}:
print (f'Invalid argument "{dataset_category}"')
exit(-2)
data_size = 7000 if dataset_category == 'train' else 1000
dir_root = '.'
dir_color = os.path.join(dir_root, 'color_labels', dataset_category)
dir_imgs = os.path.join(dir_root, 'images', dataset_category)
dir_label = os.path.join(dir_root, 'labels', dataset_category)
color_names = os.listdir(dir_color)
img_names = os.listdir(dir_imgs)
label_names = os.listdir(dir_label)
assert len(color_names) == len(img_names) == len(label_names) == data_size
for i in range(len(color_names)):
prefix_color = color_names[i].split('_')[0]
prefix_img = img_names[i].split('.')[0]
prefix_label = label_names[i].split('_')[0]
assert prefix_color == prefix_img == prefix_label, f'{prefix_color}, {prefix_img}, {prefix_label}'
print ('All Good!')
包含分割多边形信息的 Json 文件目前还没有公开,因此只能做segmentation,不能做 detection + segmentation。但是单纯的 detection 数据文件已经是提供好的,可以使用查看工具查看标注矩形框和三种图片标签(时间、场景、天气)

官方代码目前的坑
https://github.com/ucbdrive/bdd-data/issues/17
https://github.com/ucbdrive/bdd-data/issues/5
https://github.com/ucbdrive/bdd-data/issues/15
其中,#15 issue 目前还未解决。
Written with StackEdit.
初涉 Deep Drive Dataset的更多相关文章
- fashion datasets图像检索实践project
Using Siamese Networks and Pre-Trained Convolutional Neural Networks (CNNs) for Fashion Similarity M ...
- 【深度学习Deep Learning】资料大全
最近在学深度学习相关的东西,在网上搜集到了一些不错的资料,现在汇总一下: Free Online Books by Yoshua Bengio, Ian Goodfellow and Aaron C ...
- Joint Deep Learning for Pedestrian Detection笔记
1.结构图 Introduction Feature extraction, deformation handling, occlusion handling, and classification ...
- Machine and Deep Learning with Python
Machine and Deep Learning with Python Education Tutorials and courses Supervised learning superstiti ...
- Classifying plankton with deep neural networks
Classifying plankton with deep neural networks The National Data Science Bowl, a data science compet ...
- Growing Pains for Deep Learning
Growing Pains for Deep Learning Advances in theory and computer hardware have allowed neural network ...
- 通过Visualizing Representations来理解Deep Learning、Neural network、以及输入样本自身的高维空间结构
catalogue . 引言 . Neural Networks Transform Space - 神经网络内部的空间结构 . Understand the data itself by visua ...
- Coursera Deep Learning 2 Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization - week1, Assignment(Regularization)
声明:所有内容来自coursera,作为个人学习笔记记录在这里. Regularization Welcome to the second assignment of this week. Deep ...
- What are some good books/papers for learning deep learning?
What's the most effective way to get started with deep learning? 29 Answers Yoshua Bengio, ...
随机推荐
- 关于H5 移动端css 文本超出时省略号 失效的问题
之前写代码的时候遇到一个问题,就是用了下面这段css代码来让文字超出范围隐藏并显示省略号. overflow: hidden; text-overflow: ellipsis; display: -w ...
- 大数据框架-Hbase
大规模结构化集群存储数据库.Table中的所有行都按照row key的字典序排列. 主键:row Key.访问行只能通过rowKey访问(范围或者准确值),或者全表扫描: 列族:cloumn fami ...
- JavaScript面向对象(封装)
阮一峰的网络日志 1.生成实例对象的原始模式 var People = { name : '', age : '' } 根据这个原型对象生成两个实例对象 var people1 = {}; peopl ...
- Colored Boots题解
题目来自Codeforce 1141Dhttp://codeforces.com/problemset/problem/1141/D 因为是全英文题面,就先简单的阐述一下题面. 首先输入一个数n,然后 ...
- 『ACM C++』 PTA 天梯赛练习集L1 | 052-053
今日刷题,水题水题 ------------------------------------------------L1-052------------------------------------ ...
- 07.安装及使用gitlub
博客为日常工作学习积累总结: 1.安装gitlub sudo yum install -y curl policycoreutils-python openssh-server openssh-cli ...
- 如何用SQL语句处理缓慢变化维(渐变维,拉链表)SCD-2?
假设有一张居民维表,需要记录居民状态的变更历史,根据Kimball建模理论,设计居民维表如下: 另外在ODS中有居民信息的每日快照表(每天都记录一份居民的全量信息):O_USERINFO 如何将ODS ...
- 1.Python是什么
前言 这里只是根据个人的理解而谈,庸俗浅薄,不是科学定义,也可以认为是假装自己理解啦,掩耳盗铃罢了.知无涯是多么的恐怖,哈哈 计算机语言 此处的语言不同于我们生活中所说的语言,因为生活中的语言 ...
- Java学习笔记十七:Java中static使用方法
Java中static使用方法 一:Java中的static使用之静态变量: 我们都知道,我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立.然而在某些时候,我们更希望该类所有的 ...
- 第7天 Java基础语法
第7天 Java基础语法 今日内容介绍 循环练习 数组方法练习 循环练习 编写程序求 1+3+5+7+……+99 的和值. 题目分析: 通过观察发现,本题目要实现的奇数(范围1-100之间)的累加和. ...