硬核干货——《中小企业 AI 实战指南》免费下载! 了解详情
写点什么

阿里达摩院自动驾驶新突破,实现 3D 物体检测精度与速度兼得 | CVPR 2020 论文解读

  • 2020-03-19
  • 本文字数:2537 字

    阅读完需:约 8 分钟

阿里达摩院自动驾驶新突破,实现3D物体检测精度与速度兼得 | CVPR 2020论文解读

近期,阿里巴巴达摩院的一篇论文入选计算机视觉顶会 CVPR 2020,该论文提出了一个通用、高性能的自动驾驶检测器,首次实现 3D 物体检测精度与速度的兼得,有效提升自动驾驶系统安全性能。



3D 目标检测需输出物体类别及在三维空间中的长宽高、旋转角等信息


与普通的 2D 图像识别应用不同,自动驾驶系统对精度和速度的要求更高,检测器不仅需要快速识别周围环境的物体,还要对物体在三维空间中的位置做精准定位。然而,目前主流的单阶段检测器和两阶段检测器均无法平衡检测精度和速度,这极大地限制了自动驾驶安全性能。


此次,达摩院在论文中提出了新的思路即将两阶段检测器中对特征进行细粒度刻画的方法集成到单阶段检测器。具体来说,达摩院在训练中利用一个辅助网络将单阶段检测器中的体素特征转化为点级特征,并施加一定的监督信号,同时在模型推理过程中辅助网络无需参与计算,因此,在保障速度的同时又提高了检测精度。


以下是第一作者 Chenhang He 对该论文做出的解读:

1.背景

目标检测是计算机视觉领域的传统任务,与图像识别不同,目标检测不仅需要识别出图像上存在的物体,给出对应的类别,还需要将该物体通过 Bounding box 进行定位。根据目标检测需要输出结果的不同,一般将使用 RGB 图像进行目标检测,输出物体类别和在图像上 2D bounding box 的方式称为 2D 目标检测。而将使用 RGB 图像、RGB-D 深度图像和激光点云,输出物体类别及在三维空间中的长宽高、旋转角等信息的检测称为 3D 目标检测。



从点云数据进行 3D 目标检测是自动驾驶(AV)系统中的的关键组件。与仅从图像平面估计 2D 边界框的普通 2D 目标检测不同,AV 需要从现实世界估计更具信息量的 3D 边界框,以完成诸如路径规划和避免碰撞之类的高级任务。这激发了最近出现的 3D 目标检测方法,该方法应用卷积神经网络(CNN)处理来自高端 LiDAR 传感器的点云数据。


目前基于点云的 3D 物体检测主要有两种架构:


1、单阶段检测器 (single-stage): 将点云编码成体素特征 (voxel feature), 并用 3D CNN 直接预测物体框, 速度快但是由于点云在 CNN 中被解构, 对物体的结构感知能力差, 所以精度略低。


2、两阶段检测器 (two-stage): 首先用 PointNet 提取点级特征, 并利用候选区域池化点云 (Pooling from point cloud) 以获得精细特征. 通常能达到很高的精度但速度很慢。


2.方法

目前业界主要以单阶段检测器为主,这样能保证检测器能高效地在实时系统上进行。 我们提出的方案将两阶段检测器中对特征进行细粒度刻画的思想移植到单阶段检测中,通过在训练中利用一个辅助网络将单阶段检测器中的体素特征转化为点级特征,并施加一定的监督信号,从而使得卷积特征也具有结构感知能力,进而提高检测精度。而在做模型推断时,辅助网络并不参与计算(detached),进而保证了单阶段检测器的检测效率。另外我们提出一个工程上的改进,Part-sensitive Warping (PSWarp), 用于处理单阶段检测器中存在的 “框-置信度-不匹配” 问题。


主体网络

用于部署的检测器, 即推断网络, 由一个骨干网络和检测头组成。骨干网络用 3D 的稀疏网络实现,用于提取含有高语义的体素特征。检测头将体素特征压缩成鸟瞰图表示,并在上面运行 2D 全卷积网络来预测 3D 物体框。

辅助网络

在训练阶段,我们提出一个辅助网络来抽取骨干网络中间层的卷积特征,并将这些特征转化成点级特征(point-wise feature)。在实现上,我们将卷积特征中的非零信号映射到原始的点云空间中, 然后在每个点上进行插值,这样我们就能获取卷积特征的点级表示。 令 {():j=0,…,M} 为卷积特征在空间中的表示, {:i=0,…,N}为原始点云, 则卷积特征在原始点上的表示 等于


辅助任务

我们提出两种基于点级特征的监督策略来帮助卷积特征获得很好的结构感知力, 一个前景分割任务, 一个中心点回归任务。



具体来说,相比于 PointNet 特征提取器(a), 卷积网络中的卷积操作和下采样会造成点云结构的破坏 (b)使得特征对物体的边界与内部结构不敏感。我们利用分割任务来保证部分卷积特征在下采样时不会被背景特征影响 ©,从而加强对边界的感知。我们利用中心点回归任务来加强卷积特征对物体内部结构的感知能力(d),使得在少量点的情况下也能合理的推断出物体的潜在大小,形状。我们使用 focal loss 和 smooth-l1 对分割任务与中心回归任务分辨进行优化。

3.工程上的改进


在单阶段检测中, feature map 和 anchor 的对齐问题是普遍存在的问题, 这样会导致预测出来的边界框的定位质量与置信度不匹配,这会影响在后处理阶段(NMS)时, 高置信度但低定位质量的框被保留, 而定位质量高却置信度低的框被丢弃。在 two-stage 的目标检测算法中,RPN 提取 proposal,然后会在 feature map 上对应的的位置提取特征(roi-pooling 或者 roi-align),这个时候新的特征和对应的 proposal 是对齐的。我们提出了一个基于 PSRoIAlign 的改进,Part-sensitive Warping (PSWarp), 用来对预测框进行重打分。


如上图, 我们首先修改最后的分类层以生成 K 个部分敏感的特征图,用{X_k:k = 1,2,…,K}表示,每个图都编码对象的特定部分的信息。例如,在 K = 4 的情况下,会生成 {左上,右上,左下,右下} 四个局部敏感的特征图。同时,我们将每个预测边界框划分为 K 个子窗口,然后选择每个子窗口的中心位置作为采样点。这样,我们可以生成 K 个采样网格{S^k:k = 1,2,…,K},每个采样网格都与该局部对应的特征图相关联。如图所示,我们利用采样器, 用生成的采样网格在对应的局部敏感特征图上进行采样,生成对齐好的特征图。最终能反映置信度的特征图则是 K 个对齐好特征图的平均。

4. 效果


我们提出的方法(黑色) 在 KITTI 数据库上的 PR Curve, 其中实线为两阶段方法, 虚线为单阶段方法。 可以看到我们作为单阶段方法能够达到两阶段方法才能达到的精度。



在 KITTI 鸟瞰(BEV) 和 3D 测试集的效果。优点是在保持精度的同时,不增加额外的计算量,能达到 25FPS 的检测速度。





作者介绍:


第一作者为达摩院研究实习生 Chenhang He,其他作者分别分别为达摩院高级研究员、IEEE Fellow 华先胜,达摩院高级研究员、香港理工大学电子计算学系讲座教授、IEEE Fellow 张磊,达摩院资深算法专家黄建强及达摩院研究实习生 Hui Zeng。


注:论文地址暂未公开,InfoQ 将持续跟进并更新更多详细内容。


2020-03-19 16:524124
用户头像
赵钰莹 极客邦科技 总编辑

发布了 906 篇内容, 共 701.5 次阅读, 收获喜欢 2706 次。

关注

评论

发布
暂无评论
发现更多内容

2020年7月云主机性能评测报告

博睿数据

云计算 测试 公有云 评测 排行榜

2020年8月北京BGP机房网络质量评测报告

博睿数据

测试 机房 评测 排行榜 IDC

Java 基础语法

InfoQ_34a83d636158

一次旅途

GongTeng95

UML练习1-食堂就餐卡系统设计

博古通今小虾米

UML

Spring Cloud 微服务实践(0) - 开篇闲话

xiaoboey

微服务 Spring Cloud Spring Boot Spring Framework

关于手机里的IP地址,你不得不知道的“秘密”

脑极体

Python基础知识(二)

Python基础

LeetCode题解:622. 设计循环队列,使用数组,JavaScript,详细注释

Lee Chen

大前端 LeetCode

如何进步神速

Sean

学习 个人成长

直播倒计时|30分钟带你解锁“技术写作”新技能

有只小耳朵

技术 写作 直播 技术创作 RTC征文大赛

Electronjs

Neil

Java 大前端 Electron 客户端开发

USDT支付系统开发技术方案,数字货币承兑商支付

13530558032

数字货币量化交易,量化对冲搬砖系统开发

13530558032

高速路二维码报警定位系统开发,二维码报警定位功能

13530558032

CentOS 7 安装 Python 3.7

wong

Python

网上赌博输了怎么办?上岸戒赌是唯一的选择

jdxj

网上赌博输了怎么办 网上赌博玩快三输了怎办 网上玩快三输了怎么回血 网赌输了怎么戒赌

Spring Cloud 微服务实践(2) - Gateway重试机制

xiaoboey

maven Spring Cloud Gateway modules 重试

血的教训!千万别在生产使用这些 redis 指令

redis 学习 编程 程序员

活着

GongTeng95

一次压缩引发堆外内存过高的教训

AI乔治

Java kafka JVM

在线游戏,如何把握住1个亿以上的DAU?

博睿数据

运维 监控 AIOPS 系统 用户体验

危与机并存 保险业如何走好线上线下业务并举转型之路?

博睿数据

运维 监控 保险 AIOPS 系统

大数据下单集群如何做到2万+规模?

华为云开发者联盟

大数据 集群

不想搞Java了,4年经验去面试10分钟结束,现在Java面试为何这么难

Java架构师迁哥

算法大赛评委亲授通关秘籍,报名倒计时!

易观大数据

架构师训练营结业作业

superman

实践案例丨云连接CC实现跨区域多VPC与线下IDC Server互联

华为云开发者联盟

云服务 IDC

python——自定义序列类

菜鸟小sailor 🐕

Spring Cloud 微服务实践(1) - 用Initializr初始化

xiaoboey

Spring Cloud Eureka Gateway Hoxton

架构师训练营大作业

叮叮董董

阿里达摩院自动驾驶新突破,实现3D物体检测精度与速度兼得 | CVPR 2020论文解读_AI&大模型_达摩院_InfoQ精选文章