作者:蒋天园
来源:公众号@3D视觉工坊
前言
这一片文章主要介绍目前3D目标检测的一些比较重要的数据集合在github上比较好用的3D目标检测项目。包含了最火最热的KITTI到当前研究前沿的多模态,时序融合等的新数据集。分类方法如下,首先按照场景可以将数据集划分为室内和室外数据集。然后分别介绍目前3D目标检测室内和室外的一些常用数据集;然后介绍一些做研究容易上手的项目,并做一些简单的异同总结。
数据集室内数据集
室内3D目标检测的研究算是一项比较新的研究任务。目前的数据集主要有 ScanNetV2和SUN RGB-D。
ScanNetV2
官方网址:http://www.scan-net.org/
论文链接:https://arxiv.org/abs/1702.04405
Benchmark: http://kaldir.vc.in.tum.de/scannet_benchmark/
ScanNetV2是由斯坦福大学,普林斯顿大学和慕尼黑工大在CVPR18SH提出的室内场景数据集。ScanNet是一个RGB-D视频数据集,可做语义分割和目标检测任务一共1513个采集场景数据(每个场景中点云数量都不一样,如果要用到端到端,可能需要采样(FPS采样),使每一个场景的点都相同),共21个类别的对象,其中,1201个场景用于训练,312个场景用于测试。数据集包含2D和3D数据,2D数据包括每一个场景下的N个帧(为了避免帧之间的重叠信息,一般取的时候隔50取一帧)2D标签和实例数据提供为.png图像文件。彩色图像以8位RGB的形式提供.jpg文件,深度图片为16位 .png文件。每一帧包含的信息为color,depth,instance-label,label,and corresponding pose。3D数据则是一系列ply文件。
SUN RGB-D
官方网址:http://rgbd.cs.princeton.edu/
论文链接:http://rgbd.cs.princeton.edu/paper.pdf
由普林斯顿大学提出的室内数据集,可分割和检测任务。该数据集包含10335个rgb-d图像,其规模与pascal voc相似。整个数据集都有密集的注释,包括146617个二维多边形注释和64595个具有精确对象方向的三维边界框,以及每个图像的三维房间布局和场景类别。该数据集是NYU depth v2 , Berkeley B3DO , and SUN3D ,三个数据集的并集。
室外数据集KITTI
3D目标检测官网链接:http://www.cvlibs.net/datasets/kitti/eval_object.php?obj_benchmark=3d
论文链接:http://www.cvlibs.net/publications/Geiger2012CVPR.pdf
KITTI数据集由德国卡尔斯鲁厄理工学院和丰田美国技术研究院联合创办,是目前国际上最大的自动驾驶场景下的计算机视觉算法评测数据集。该数据集用于评测立体图像(stereo),光流(optical flow),视觉测距(visual odometry),3D物体检测(object detection)和3D跟踪(tracking)等计算机视觉技术在车载环境下的性能。KITTI包含市区、乡村和高速公路等场景采集的真实图像数据,每张图像中最多达15辆车和30个行人,还有各种程度的遮挡与截断。整个数据集由389对立体图像和光流图,39.2 km视觉测距序列以及超过200k 3D标注物体的图像组成 ,以10Hz的频率采样及同步。总体上看,原始数据集被分类为’Road’, ’City’, ’Residential’, ’Campus’ 和 ’Person’。对于3D物体检测,label细分为car, van, truck, pedestrian, pedestrian(sitting), cyclist, tram以及misc组成。
Nuscence
官网链接:https://www.nuscenes.org/object-detection?externalData=all&mapData=all&modalities=Any
论文链接:https://arxiv.org/abs/1903.11027
Nuscence数据集由1000个场景组成,每个scenes长度为20秒,包含了各种各样的情景。在每一个scenes中,有40个关键帧(key frames),也就是每秒钟有2个关键帧,其他的帧为sweeps。关键帧经过手工的标注,每一帧中都有了若干个annotation,标注的形式为bounding box。不仅标注了大小、范围、还有类别、可见程度等等。这个数据集不久前发布了一个teaser版本(包含100个scenes),正式版(1000个scenes)于2019年发布。2020年会发布第二个版本。
Waymo
官网链接:https://waymo.com/open
官网下载地址:https://waymo.com/open/download/
官方数据格式解析:https://waymo.com/open/data/
代码地址:https://gitee.com/cmfighting/waymo_read
谷歌母公司Alphabet旗下的自动驾驶公司Waymo于2019年8月21日在其博客公布了数据开放项目(Waymo Open Dataset),该项目和前面的学术benchmark相比,是带有奖金的benchmark。就数据而言,waymo包含3000段驾驶记录、时长共16.7小时、平均每段长度约为20秒;60万帧、共有大约2500万3D边界框、2200万2D边界框,以及多样化的自动驾驶场景。
PandaSet
官网链接:https://scale.com/open-datasets/pandaset
该自动驾驶数据集的采集场景是旧金山。一共含有48,000个相机图像,16,000次LiDAR扫描,100+个场景,每个场景8秒,总共含有28个注释类和37个语义细分标签。是一个融合工业界和学术界的自动驾驶场景目标检测数据集。
Oxford Robotcar
官网链接:https://robotcar-dataset.robots.ox.ac.uk/
文章链接:https://robotcar-dataset.robots.ox.ac.uk/images/robotcar_ijrr.pdf
该数据集由牛津大学机器人实验室提出,其雷达是Navtech CTS350-X毫米波调频连续波(FMCW)扫描雷达,在使用的配置中,它提供了4.38厘米的范围分辨率和0.9度的旋转分辨率,最大范围达163 m。
A*3D
官网链接:https://github.com/I2RDL2/ASTAR-3D#Dataset
数据集下载地址:https://github.com/I2RDL2/ASTAR-3D#Download
该数据集目前还在更新,在论文的中对比的对象为KITTI数据集,一共包含230K人工标记的3D对象的注释在39179个激光雷达点云帧和对应面对的正面-RGB图像。该数据集在新加坡采集得到。文章中通过实验表示在A*3D数据集上训练后的模型在KITTI上具有一个比较好的表现,尤其是对moderate和hard类别。
SemanticKITTI
官网链接:http://semantic-kitti.org/
论文链接:https://arxiv.org/abs/1904.01416
benchmark: https://competitions.codalab.org/competitions/24025#learn_the_details-overview
该数据集不是一个用于3D目标检测的数据集,而是一个自动驾驶场景中语义分割的数据集。该数据集是一个大型数据集,为KITTI Vision Benchmark的LiDAR数据提供逐点label。它基于里程计任务数据,并提供28类的标注信息。
Lyft Level 5
官方网址:https://level5.lyft.com/dataset/?source=post_page
该数据集目前也是经常在论文中读到过的数据集,和KITTI数据集一样采用64线雷达和多个摄像头采集数据得到。数据集包括高清语义图,该地图具有4,000多个手动注释的语义元素,包括车道段,人行横道,停车标志,停车区,减速带和减速带等。
H3D
数据集官网链接:https://usa.honda-ri.com/H3D
文章链接:https://arxiv.org/pdf/1903.01568
由本田公司提供的用于自动驾驶场景的点云目标检测数据集,该数据集是从HDD数据集收集的,HDD数据集是在旧金山湾区收集的大规模自然驾驶数据集。H3D拥有完整的360度LiDAR数据集(来自Velodyne-64的密集点云),1071302 个3D边界框标签。该数据集也是包含时序信息的。每2HZ手动注释一次并线性传播10HZ。
BLVD
数据集连接:https://github.com/VCCIV/BLVD
文章链接:https://arxiv.org/pdf/1903.06405
该数据集主要侧重点在其数据集关注点在车辆自我周围物体的有意义的动态变化,因此引入了这么一个数据集BLVD,这是一个大规模的5D语义基准,它没有集中于之前已经充分解决的静态检测或语义/实例分割任务。取而代之的是,BLVD旨在为动态4D(3D +时间)跟踪,5D(4D +交互式)交互式事件识别和意图预测的任务提供一个平台。BLVD数据集包含654个高分辨率视频剪辑,这些剪辑来自中国江苏省常熟市,提取了120k帧。官方完全注释了所有帧,并总共产生了249129个3D标注,以进行跟踪和检测任务。
PreSIL
官方链接:https://uwaterloo.ca/waterloo-intelligent-systems-engineering-lab/projects/precise-synthetic-image-and-lidar-presil-dataset-autonomous
文章链接:https://arxiv.org/abs/1905.00160
该自动驾驶数据集由滑铁卢大学提供和分享,PreSIL数据集包含50,000多个实例,包括具有完整分辨率深度信息的高清图像,语义分割(图像),逐点分割(点云),gt标签(点云)以及所有车辆和行人的详细标注。官方通过在对最先进的3D对象检测网络进行数据预训练后,在KITTI 3D对象检测基准测试中显示出高达5%的平均精度提高,从而证明了数据集的有效性。该数据集尚未公布。
WAD
官网链接:http://wad.ai/2019/challenge.html
该数据集由百度公司提供。该数据集的3D Lidar对象检测和跟踪数据集由具有高质量label标注的LiDAR扫描点云组成。它是在中国北京各种照明条件和交通密度下收集的。更具体地说,它包含了非常复杂的交通流,其中混杂着车辆,骑自行车的人和行人。数据集包含了大约53分钟的训练序列和50分钟的测试序列组成。以每秒10帧的速度捕获数据,并以每秒2帧标注数据。
PASCAL3D+
官网链接:https://cvgl.stanford.edu/projects/pascal3d.html
该数据集是对PASCAL数据的一个3D模型重建,更像是一个分类和POS检测数据集。
The Stanford Track Collection
官方链接:https://cs.stanford.edu/people/teichman/stc/
数据量比较少。发布时间也很早(2011)。
IQmulus & TerraMobilita Contest
官网链接:http://data.ign.fr/benchmarks/UrbanAnalysis/#
该数据集是一个非常的dense的室外数据集。包括分割和检测多项任务,更偏向于语义分割任务,采用移动激光(MLS)在巴黎扫描出超过100个场景。该数据集更多的是为激发来自不同领域(例如计算机视觉,计算机图形学,地理信息学和遥感)的研究人员,共同致力于处理3D数据,对3D MLS数据进行基准划分和分类为目标。
项目
这里主要介绍3D点云目标检测的几个重要项目,都是目前比较流行的codebase,如下。
second.pytorch
项目链接:https://github.com/traveller59/second.pytorch
主要优点:
(1)包含了kitti和nuscence两个点云3D目标检测数据集的实现
(2)含有Kitti_viewer网页版可视化工具
(3)实现了second,voxelnet,pointpillars三种点云目标检测算法。
缺点:
应该是该领域的先行者,具有一定的阅读难度,不支持多模态。
Det3D
项目链接:https://github.com/poodarchu/Det3D
主要优点:
(1)代码在second.pytorch重构后显得清晰易读
(2)包含多个数据集的实现,包括KITTI,Nuscence,lyft三个数据集,waymo在进行中
(3)目前实现的算法包括voxelnet,sencod,pointpillars和CBGS(second_multihead)
(4)apex训练加速
缺点:
不支持多模态和可视化,较长时间未更新。
OpenPCDet
项目链接:https://github.com/open-mmlab/OpenPCDet
优点:
(1)集成了nusecne,kitti数据集,waymo在进行中
(2)包含算法有pointRCNN,PartA2,voxelnet,PointPillar,SECOND,PV-RCNN,SECOND-MultiHead (CBGS)。
(3)更多的特征提取结构,包括了点和voxel两个方面的特征提取器都有。
(4)具有可视化demo
(5)代码风格清晰易读
缺点:
无多模态
mmdetection3d
项目链接:https://github.com/open-mmlab/mmdetection3d
主要优点:
(1)支持多模态融合,二维网络和三维网络可结合。
(2)支持多种算法和模型,超过40多种算法,300多个模型,包括有VoteNet,PointPillars,SECOND,Part-A2。(不包含PVRCNN)
(3)更快的训练速度,比前面介绍到的codebase都要更快。
(4)支持多种数据集,包括室内和室外数据集。
笔者总结
这一篇博客主要介绍了目前在3D点云目标检测中的数据集和目前比较流行的针对自动驾驶场景的科研项目,就项目而言,笔者最先看的是second.second。不过代码阅读比较困难,比较推荐openpcdet和mmdetection3d,二者各有优缺,openpcdet更加专注于点云室外场景,包含多种点云特征提取模型。mmdetection3d则是一个比较新的模型结构,多个模块组装简单,同时支持多模态,就科研来说,更具有开发空间。
本文仅做学术分享,如有侵权,请联系删文。
下载1
在「3D视觉工坊」公众号后台回复:3D视觉,即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。
下载2
在「3D视觉工坊」公众号后台回复:3D视觉优质源码,即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。
下载3
在「3D视觉工坊」公众号后台回复:相机标定,即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配,即可下载独家立体匹配学习课件与视频网址。