Det3D - 首个通用 3D 目标检测框架(已开源)

2020 年 1 月 10 日 极市平台

加入极市专业CV交流群,与6000+来自腾讯,华为,百度,北大,清华,中科院等名企名校视觉开发者互动交流!更有机会与李开复老师等大牛群内互动!

同时提供每月大咖直播分享、真实项目需求对接、干货资讯汇总,行业技术交流。关注 极市平台 公众号 ,回复 加群,立刻申请入群~


来源:https://zhuanlan.zhihu.com/p/101346137
作者:poodar.chu
本文 已由作者授权转载,未经允许,不得二次转载


背景介绍


应用于自动驾驶、室内导航等领域的 3D 检测是近一段时间比较热门的一个研究方向。其数据格式包括 image、point cloud、RGBD、mesh 等。


作为对比,2D 检测目前是一个非常成熟的领域,各种优秀的框架(Detectron2 / mmDetection, etc)不计其数,研究人员基于某一个框架,可以快速验证想法,而不需要去关心如何适配某种数据集、如何做增强、如何给数据加速等等,大大节省了做 research 的工程成本。


很可惜,迄今为止(2020 年初),3D 目标检测目前还处于一个群魔乱舞的年代。具体表现为:


  • 3D 数据集很难有一个通用的格式或者 API 来读取,比如 KITTI 和近期新出的 nuScenes,Waymo,Lyft 等数据集格式差异很大;每种数据集的数据采集方式、坐标系定义、包含的数据类型,甚至评价指标都有很大区别。
  • 与 2D 图片不同的是,3D 数据的预处理也是一个很大的瓶颈。很多时候,光是如何做数据增强,如何加快数据预处理的速度,让自己的模型在尽可能短的时间内出结果等等工程问题就导致很多人在想要研究自己感兴趣的问题之前,就已经卡壳很久了。
  • 现有各种方法的训练速度都非常慢,一方面是大部分模型的 code 都是单卡版本,另一方面是 3D 检测依赖一些比较 heavy 的模块。


类似的问题还有很多,比如没有 pretrain 的模型、评价指标混乱,算法复现困难等等,这些都会制约该领域的发展。


为了使 3D 检测领域能够有一个像 mmDetection 等相对完备的检测框架,减少研究人员在数据和其他工程问题上耗费的经历,也为了能够让大家的方法能像 2D 检测领域一样够快速的复现、分享,我们开源了 Det3D,据我所知这是业界首个通用的 3D 目标检测框架。



Det3D (based on PyTorch)


链接: https://github.com/poodarchu/Det3D

首先介绍一下 Det3D 支持的数据集:
  • KITTI cvlibs.net/datasets/kit

  • nuScenes nuscenes.org/

  • Lyft level5.lyft.com/dataset

  • ...


以及目前支持的模型:
  • VoxelNet

  • SECOND

  • CBGS Class-balanced Grouping and Sampling for Point Cloud 3D Object Detection

  • Point Pillars

  • PIXOR

  • PointNet++

  • Point RCNN (即将 release)

  • ...


以及 Det3D 的一些新特性:
  • 多 GPU 训练 Distributed Data Parallel
  • 统一的数据集 API
  • 统一的 config
  • 统一的训练流程
  • 统一的数据增强 pipeline
  • 支持灵活的扩展
  • 支持 sync bn
  • state of the art 的性能(CBGS)
  • 完备的可视化功能(数据、label、feature map、多视图、3D)
  • 提供地平面检测等辅助模块

基于 Det3D,我们取得了 nuScenes 3D Detection Challenge 的第一名,以及 LYFT 3D Detection Challenge 的第三名。

更多细节以及详细的用法,请查看 Det3D 的 readme。


未来计划


目前 Det3D 仍旧存在很多不完善的地方,比如 pre-train 模块目前并没有提供。因此,写这篇文章的目的,一是想让更多人知道 Det3D;二是希望 Det3D 可以给各位做 3D 检测的同学一个工具,提高其工作效率。Release Code 远远不是结束,我们希望越来越多的人能够持续反馈和 contribute,共同将 Det3D 打造成一个更加丰富、高效的 codebase,进而继续回馈社区。


致谢

在开发 Det3D 的过程中,我们参考了 maskrcnn_benchmark、mmDetection 以及 second.pytorch 的设计思路和实现,在此对其作者表示感谢。



PS:点击阅读原文进入极市社区,直接跳转文中链接~


-End-





*延伸阅读


CV细分方向交流群


添加极市小助手微信(ID : cv-mart),备注:研究方向-姓名-学校/公司-城市(如:目标检测-小极-北大-深圳),即可申请加入目标检测、目标跟踪、人脸、工业检测、医学影像、三维&SLAM、图像分割等极市技术交流群(已经添加小助手的好友直接私信),更有每月大咖直播分享、真实项目需求对接、干货资讯汇总,行业技术交流一起来让思想之光照的更远吧~



△长按添加极市小助手


△长按关注极市平台


觉得有用麻烦给个在看啦~  

登录查看更多
1

相关内容

3D是英文“Three Dimensions”的简称,中文是指三维、三个维度、三个坐标,即有长、有宽、有高,换句话说,就是立体的,是相对于只有长和宽的平面(2D)而言。
3D目标检测进展综述
专知会员服务
193+阅读 · 2020年4月24日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
44+阅读 · 2020年4月17日
专知会员服务
110+阅读 · 2020年3月12日
抢鲜看!13篇CVPR2020论文链接/开源代码/解读
专知会员服务
50+阅读 · 2020年2月26日
我这两年的目标检测
极市平台
8+阅读 · 2019年9月18日
CVPR2019通用目标检测
极市平台
8+阅读 · 2019年8月6日
目标检测中的Consistent Optimization
极市平台
6+阅读 · 2019年4月23日
CVPR2019 | Stereo R-CNN 3D 目标检测
极市平台
27+阅读 · 2019年3月10日
已删除
将门创投
10+阅读 · 2019年3月6日
Maplab:研究视觉惯性建图和定位的开源框架
泡泡机器人SLAM
16+阅读 · 2018年4月4日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
3D Face Modeling from Diverse Raw Scan Data
Arxiv
5+阅读 · 2019年2月13日
Arxiv
12+阅读 · 2019年1月24日
3D-LaneNet: end-to-end 3D multiple lane detection
Arxiv
7+阅读 · 2018年11月26日
Arxiv
6+阅读 · 2018年4月23日
VIP会员
相关VIP内容
3D目标检测进展综述
专知会员服务
193+阅读 · 2020年4月24日
CVPR2020 | 商汤-港中文等提出PV-RCNN:3D目标检测新网络
专知会员服务
44+阅读 · 2020年4月17日
专知会员服务
110+阅读 · 2020年3月12日
抢鲜看!13篇CVPR2020论文链接/开源代码/解读
专知会员服务
50+阅读 · 2020年2月26日
相关资讯
我这两年的目标检测
极市平台
8+阅读 · 2019年9月18日
CVPR2019通用目标检测
极市平台
8+阅读 · 2019年8月6日
目标检测中的Consistent Optimization
极市平台
6+阅读 · 2019年4月23日
CVPR2019 | Stereo R-CNN 3D 目标检测
极市平台
27+阅读 · 2019年3月10日
已删除
将门创投
10+阅读 · 2019年3月6日
Maplab:研究视觉惯性建图和定位的开源框架
泡泡机器人SLAM
16+阅读 · 2018年4月4日
相关论文
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
3D Face Modeling from Diverse Raw Scan Data
Arxiv
5+阅读 · 2019年2月13日
Arxiv
12+阅读 · 2019年1月24日
3D-LaneNet: end-to-end 3D multiple lane detection
Arxiv
7+阅读 · 2018年11月26日
Arxiv
6+阅读 · 2018年4月23日
Top
微信扫码咨询专知VIP会员