移动端实时3D目标检测,谷歌开源出品,安卓下载就能用

2020 年 3 月 12 日 机器之心
选自Google AI Blog

作者:Adel Ahmadyan、Tingbo Hou

机器之心编译

机器之心编辑部

常规目标检测,已经不能满足移动端了,谷歌开源的 3D 实时目标检测了解一下?



目标检测是一个得到广泛研究的计算机视觉问题,但大多数研究侧重于 2D 目标检测。值的注意的是,2D 预测仅能提供 2D 边界框。所以,如果扩展至 3D 预测,人们可以捕捉到目标的大小、位置与方向,从而在机器人、无人驾驶、图像检索和 AR 等领域得到更广泛的应用。

尽管 2D 目标检测已经相当成熟,并在工业界广泛应用,但由于数据缺乏以及同类别下目标形状和外观的多样性,从 2D 转向 3D 目标检测依然会面临较大的挑战。

今日,谷歌宣布推出 MediaPipe Objectron,这是一种适用于日常物体的移动端实时 3D 目标检测 pipeline,它能够检测 2D 图像中的目标,并通过新创建 3D 数据集上训练的机器学习模型来估计这些目标的姿态和大小。

具体而言,MediaPipe 是一个用于构建 pipeline 进而处理不同模态感知数据的跨平台开源框架,Objectron 则在 MediaPipe 中实现,其能够在移动设备上实时计算目标的定向 3D 边界框。

从单个图像进行 3D 目标检测。MediaPipe 可以在移动端上实时确认目标对象的位置、方向以及大小。整个模型非常精简,速度也非常快,研究者将整套方案都开源了出来。

  • 框架地址:https://github.com/google/mediapipe/

  • 项目地址:https://github.com/google/mediapipe/blob/master/mediapipe/docs/objectron_mobile_gpu.md


MediaPipe 是谷歌去年 7 月份发布的一个多媒体框架,它在安卓、IOS 网页等各种平台上都能应用机器学习媒体模型。 昨日 MediaPipe 发布 0.7 版,并加入了移动端试试 3D 检测模型。 目前 MediaPipe 包含人脸检测、手部检测、头发分割和视频自动横竖屏转换等功能。

获取真实的 3D 训练数据

随着依赖于 3D 传感器(如 LIDAR)的自动驾驶行业发展普及,现在已有大量街道场景的 3D 数据,但对于日常生活中拥有更细颗粒度的目标来说,有标注的 3D 数据集就非常有限了。所以,为了解决此问题,谷歌团队使用了 AR 会话(Session)数据开发了一种全新的数据 Pipeline。

此外,随着 ARCore 以及 ARkit 的出现,数亿体量的智能手机拥有了 AR 功能,并且能够通过 AR 会话取获取更多的信息,包括相机姿态、稀疏 3D 点云、光照估计以及平面区域估计。

为了标记真实数据,团队构建了一个全新的标注工具,并且与 AR 会话数据一起使用,该标注工具使标注者得以快速标记目标的 3D 边界框。

该工具使用了分屏视图来显示 2D 的视频帧,同时在其左侧叠加 3D 边界框,并在右侧显示 3D 点云,摄像机方位以及所检测到的水平面。标注器在 3D 视图中绘制 3D 边界框,并通过查看 2D 视频帧中的投影来验证其位置。

左:带标注的 3D 边界框所形成的投影展示在边界框顶部,更易于验证标注;右:通过检测到的目标表面以及稀疏点云数据,可以为不同的相机姿态标注真实世界中的 3D 边界框。

AR 合成数据

之前常用的方法会根据合成数据补充真实数据,以提高预测的准确性。然而这样的做法通常会导致质量低下、不真实的数据,且如果要执行图像的真实感渲染,又需要更多的计算力。

研究者采用了另一种称之为 AR 合成数据(AR Synthetic Data Generation)的方法,只要将对象放到 AR 系统的工作场景中,我们就能利用相机姿态估计、水平面检测、光照估计生成物理上可能存在的位置及场景。这种方法能生成高质量合成数据,并无缝匹配实际背景。通过结合真实数据与 AR 合成数据,研究者能将模型的准确性提高约 10%。

AR 合成数据的生成示例,在蓝色书籍旁边,虚拟的白色盒子可以渲染到真实场景中。

3D 目标检测的流程是什么样的

对于 3D 目标检测,研究者先构建了一个单阶段模型 MobilePose,以预测单张 RGB 图像中某个目标的姿态和物理大小。该模型的主干是一个编码器-解码器架构,其构建在 MobileNet V2 的基础上。研究者应用了多任务学习方法,来从检测与回归的角度联合预测目标的形状,且在预测形状的过程中,其只依赖于标注的分割图像。

MobilePose-Shape 网络在中间层会带有形状预测模块。

在模型的训练中,如果数据没有标注形状,那也是可行的。只不过借助检测边界框,研究者可以预测形状中心与分布。

为了获得边界框的最终 3D 坐标,研究者利用了一种完善的姿态估计算法(EPnP),它可以恢复对象的 3D 边界框,而无需知道对象维度这一先验知识。给定 3D 边界框,我们可以轻松计算对象的姿态和大小。

下图显示了网络架构和后处理过程,该模型轻巧到可以在移动设备上实时运行(在 Adreno 650 mobile GPU 上以 26 FPS 的速度运行)。

3D 目标检测的神经网络架构与后处理过程。

模型的示例结果,其中左图为估计边界框的原始 2D 图像,中间为带高斯分布的目标检测,最右边为预测的分割 Mask。

在 MediaPipe 中进行检测和追踪

当模型对移动设备获得的每一帧图像进行计算的时候,它可能会遇到晃动的情况,这是因为每一帧对目标边界框预测本身的模糊性造成的。为了缓解这个问题,研究者采用了检测+追踪的框架,这一框架近期被用于 2D 检测和追踪中。这个框架减少了需要在每一帧上运行网络的要求,因此可以让模型的检测更为精确,同时保证在移动端上的实时性。它同时还能保持识别帧与帧之间的目标,确保预测的连贯性,减少晃动。

为了进一步提升这一 pipeline 的效率,研究者设置模型在每几帧后再进行一次模型推理。之后,他们使用名为快速动作追踪(instant motion tracking)和 Motion Stills 技术进行预测和追踪。当模型提出一个新的预测时,他们会根据重叠区域对检测结果进行合并。

为了鼓励研究者和开发者基于这一 pipeline 进行试验,谷歌目前已经将研究成果开源到了 MediaPipe 项目中,包括端到端的移动设备应用 demo,以及在鞋、椅子两个分类中训练好的模型。研究者希望这一解决方案能够更好地帮助到社区,并产生新的方法、应用和研究成果。团队也希望能够扩大模型到更多类别中,进一步提升在移动端设备的性能表现。

室内和户外 3D 目标检测示例。

原文链接:https://ai.googleblog.com/2020/03/real-time-3d-object-detection-on-mobile.html

文为机器之心编译,转载请联系本公众号获得授权
✄------------------------------------------------
加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com
投稿或寻求报道:content @jiqizhixin.com
广告 & 商务合作:bd@jiqizhixin.com
登录查看更多
0

相关内容

3D目标检测进展综述
专知会员服务
191+阅读 · 2020年4月24日
专知会员服务
109+阅读 · 2020年3月12日
【综述】7篇非常简洁近期深度学习综述论文
专知会员服务
74+阅读 · 2019年12月31日
【斯坦福&Google】面向机器人的机器学习,63页PPT
专知会员服务
24+阅读 · 2019年11月19日
复旦大学邱锡鹏老师《神经网络与深度学习》书册最新版
已删除
将门创投
8+阅读 · 2019年6月13日
【下载】PyTorch 实现的YOLO v2目标检测算法
专知
15+阅读 · 2017年12月27日
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Precise Detection in Densely Packed Scenes
Arxiv
3+阅读 · 2019年4月8日
Arxiv
12+阅读 · 2019年1月24日
Arxiv
4+阅读 · 2018年9月25日
Arxiv
3+阅读 · 2018年3月21日
Arxiv
7+阅读 · 2018年1月24日
VIP会员
相关VIP内容
3D目标检测进展综述
专知会员服务
191+阅读 · 2020年4月24日
专知会员服务
109+阅读 · 2020年3月12日
【综述】7篇非常简洁近期深度学习综述论文
专知会员服务
74+阅读 · 2019年12月31日
【斯坦福&Google】面向机器人的机器学习,63页PPT
专知会员服务
24+阅读 · 2019年11月19日
复旦大学邱锡鹏老师《神经网络与深度学习》书册最新版
相关论文
Mesh R-CNN
Arxiv
4+阅读 · 2019年6月6日
Precise Detection in Densely Packed Scenes
Arxiv
3+阅读 · 2019年4月8日
Arxiv
12+阅读 · 2019年1月24日
Arxiv
4+阅读 · 2018年9月25日
Arxiv
3+阅读 · 2018年3月21日
Arxiv
7+阅读 · 2018年1月24日
Top
微信扫码咨询专知VIP会员