谷歌开发pipeline,在移动设备上可实时计算3D目标检测

电子说

1.2w人已加入

描述

3月13日消息,谷歌宣布推出 MediaPipe Objectron,这是一种适用于日常物体的移动端实时3D目标检测 pipeline,它能够检测 2D 图像中的目标,并通过新创建 3D 数据集上训练的机器学习模型来估计这些目标的姿态和大小。它在安卓、IOS 网页等各种平台上都能应用机器学习媒体模型,并加入了移动端试试 3D 检测模型。目前 MediaPipe包含人脸检测、手部检测、头发分割和视频自动横竖屏转换等功能。

MediaPipe 是一个用于构建 pipeline 进而处理不同模态感知数据的跨平台开源框架,Objectron 则在 MediaPipe 中实现,其能够在移动设备上实时计算目标的定向 3D 边界框。从单个图像进行 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%。

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,以及在鞋、椅子两个分类中训练好的模型。研究者希望这一解决方案能够更好地帮助到社区,并产生新的方法、应用和研究成果。团队也希望能够扩大模型到更多类别中,进一步提升在移动端设备的性能表现。

责任编辑:gt

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分