人工检查,11 个类、97942 个标签,Roboflow 开源自动驾驶数据集可以使用啦

2020-02-21 11:19:37 浏览数 (1)

机器学习即将带来一系列的社会变革,其中一个被大肆宣传的领域是自动驾驶。但是,伴随着自动驾驶技术的巨大动力而来的是巨大的责任,如果一辆自动驾驶汽车训练的不够好,可能会引发车祸,导致人员伤亡。

这是一个非常危险的问题。

机器学习是通过举例来教计算机算法以执行新任务的过程,但是,ML 模型只能在和它们所训练的数据一样的情况下表现良好。

缺失大量行人和关键标注的自动驾驶数据集问题很大

然而,合适的训练数据集并不是很多。在 github 上有一个广受欢迎的数据集 Udacity(https://github.com/udacity/self-driving-car ),有着 5000 star,它被成千上万的学生用来构建开源的自动驾驶汽车项目。

对此,Roboflow 的创始人 Brad Dwyer 感到惊讶和担忧,因为这个数据集中包含了很多关键的错误和遗漏。

他们对广泛使用的 Udacity Dataset 2(https://github.com/udacity/self-driving-car/tree/master/annotations ) 中的 15000 幅图像进行了手工检查,发现其中 4986 幅(约占总数据量的 33%)存在问题。这些问题包括数以千计辆未贴标签的车辆、数以百计未贴标签的行人和几十个未贴标签的骑自行车的人。他们还发现了许多模糊的注释、重复的边界框和过大的边界框的实例。

错误实例(原始数据集中缺少突出显示的红色注释)

或许最令人震惊的是,217 张(约占 1.4%)图片完全没有标签,但它们实际上包含了汽车、卡车、路灯或行人。

一些包含行人的示例图像在原始数据集中不包含任何注释。

开源数据集虽然很好,但是不够完整和准确。

在 reddit 上,网友们也纷纷表达了对这个数据集的担忧。

有人表示,大约 1/3 的图像包含错误或遗漏,输入的数据不应该是垃圾数据,自动驾驶应该受到严肃对待。手动修复很乏味,但如果有足够的需求,他还是会做这件事。

这真的很可怕。我发现这一点是因为我们正在转换和重新托管多种流行格式的流行数据集,以便跨模型使用。。。我第一次注意到竟然有一堆完全没有标记的图像。 在深入调查时,我震惊地发现,有大约 1/3 的图像包含错误或遗漏!有些错误很小,如汽车的一部分在车架边缘或远处的一条路没有贴上标签,但有些则很离谱,如在人行横道上带着婴儿推车的女人也没有被标记。 我认为这确实说明了严格检查任何用于模型的数据的重要性。如果输入的是垃圾数据,输出结果也会很差劲。自动驾驶应该受到严肃对待。 我继续手动纠正了丢失的边界框,并修复了其他一些错误。但仍然有很多重复的框(尤其是红绿灯周围的框),手动修复很乏味,但如果有足够的需求,我会去做这件事。

有人抱怨道,这并不是特别意外,但仍然令人失望。如果有这些明显的错误,为什么要公开数据集?

也有人说,虽然他必须将注释转换为 VOC XML 才能在自己的标签工具中打开它们,也必须编写一个转换回其自定义 CSV 格式的转换程序才能提交 PR。但是如果人们真的要使用这个数据集来开发开源的自动驾驶汽车,所付出的时间是值得的。

改进的 Udacity 自动驾驶数据集

为了解决这个问题,在获得 MTI 的许可后,2020 年 2 月,Roboflow 修复并重新发布了 Udacity 自动驾驶数据集,大家可以在项目中使用这个数据集。如果是在原来的基础上训练模型,可以考虑切换到这些更新的注释。

该数据集下载地址:https://public.roboflow.ai/object-detection/self-driving-car

Roboflow 重新标记了数据集,更正错误和遗漏。他们提供了多种格式以便下载,包括 VOC XML、COCO JSON、Tensorflow 对象检测格式 TFRecords 等。

数据集包含 11 个类和 97942 个标签的 15000 张图像,其中还包含 1720 个没有标签的图像。

所有图像均为 1920x1200 的格式,下载大小约为 3.1 GB。Roboflow 还提供了一个降采样到 512x512 (下载大小约 580 MB)的版本,适用于大多数常见的机器学习模型(包括 YOLO v3、Mask R-CNN、固态硬盘和移动网络)。

Roboflow 已经手动检查了数据集中注释的准确性。

注释分布如下图:

正在研究自动驾驶技术的同学们,现在就可以开始使用这个数据集啦~不过,Roboflow 也声明,该数据集包含许多相同主题的重复边界框,他们尚未更正。这些类是 100% 重叠的,可能会影响模型的性能,特别是在 stoplight 检测中,重复边界框的情况会比较严重。可能需要通过使用 IOU 等方法来过滤这些类。

via:

  • https://www.reddit.com/r/MachineLearning/comments/f29l4v/r_a_popular_selfdriving_car_dataset_is_missing/
  • https://public.roboflow.ai/object-detection/self-driving-car
  • https://blog.roboflow.ai/self-driving-car-dataset-missing-pedestrians/

0 人点赞