写点什么

Facebook 智能摄像头 Portal 研发背后的那些事

  • 2019-03-20
  • 本文字数:4372 字

    阅读完需:约 14 分钟

Facebook智能摄像头Portal研发背后的那些事

去年 11 月份 Facebook 推出了两款视频通话设备 Portal 和 Portal+,相比传统的视频通话相框,Portal 借助人工智能技术和更加灵活的摄像头,让用户不必呆坐在设备前,摄像头就会自由、智能地跟随用户的位置,并根据用户的距离调试摄像头进行变焦。好神奇的设备!这究竟是怎么实现的呢?这设备研发的背后又有什么样的故事呢?


Portal,是 Facebook 新出的视频通话设备,它的强大功能之一就是由人工智能驱动的智能摄像头。智能摄像头能够像经验丰富的人类操作员那样拍摄,这样使用 Portal 的人就会觉得他们仿佛就在身边。智能摄像头不依赖于通常用于高级机器学习任务的专用服务器,而是完全在设备上执行复杂的计算机视觉(Computer Vision,CV)建模,使用类似高端移动芯片组的处理能力。


在不到两年的时间里,从零开始为 Portal 硬件构建全新的智能摄像头系统,这对计算机视觉发起了巨大的挑战。例如,即使在一间拥挤的房间里,人们走动着,交流着,Portal 也必须决定何时缩放视频画面以容纳新的对象,以及何时跟随某人走出框架。这些决策是 Portal 基本用例的核心部分,而不仅仅是个外设功能。


为了让智能摄像头能够有效做到这一点,Portal AI 和 Mobile Vision 团队利用了 Facebook 在人工智能领域的长期投资。为了创建一个比现有系统效率高两个数量级的新 2D 姿势检测模型,我们在我们开创性的 Mask R-CNN 模型上进行了创新。使用 Mask R-CNN2Go,2D 人体姿势估计在 Portal 上以每秒 30 帧的速率实时运行。我们使用这个新模型来通知 Portal 有关何时进行数字平移和缩放的决策,然后将它与一个单独的系统进行配对,以确保摄像头的移动看上去很自然,让人有身临其境的感觉。


最终的效果是这样的,这种视频通话体验适用于所有的人:父母不用拿着手机追着他们的小孩,小孩也可以参与打电话而不必站着不动,人们可以轻松地相互视频。



"Portal 智能摄像头演示视频截图,视频地址:https://ai.facebook.com/1319742961447503/videos/382300642587504/?t=54


在这篇博文中,我们将重点介绍创建智能摄像头的工作原理,首先回答一个简单的问题:如果我们只需要一个小型的移动处理器,该如何构建一架能够在各种环境展示人们的摄像头呢?

机械式摄像头与智能摄像头

Portal 是一种应用了计算机视觉技术的产品,但智能摄像头始于硬件挑战。早期原型机是以物理方式进行旋转来面对不同对象,但电动摄像头的缺陷也很明显:可靠性降低了,以及无法看到并响应远离摄像头指向的地方所发生的事情。鉴于此,我们决定开发一种固定的广角摄像头,它的动作完全是数字化的,但这样的摄像头需要一个真正灵活、高效的人工智能控制系统,能够做出快速而复杂的计算机视觉决策。智能摄像头一直是我们产品的关键组成部分,在我们重塑视频通话体验的计划中,它变得越来越重要。



第一个 Portal 原型机是依靠电机以物理方式来移动摄像头。


眼下的定位和跟踪受试者的计算机视觉方法还不够,现有的软件工具和摄像头硬件都不能满足我们设定的产品需求。例如,标准计算机视觉系统设计为在几英尺内运行,而这远低于 Portal 要求的 10~20 英尺范围。尽管 Facebook Reality Labs(FRL)用来捕捉详细的 VR(Virtual Reality,虚拟现实)环境的深度摄像头可以解决类似的挑战(如考虑到日光的变化),但 FRL 的工作并不是为了实时操作而设计的。没有一种方法或平台能够满足 Portal 的所有需求。随着团队开发出了更先进的模型,他们整合了 Facebook 各团队的研究和代码,创建智能摄像头更多样化的迭代。


对复杂、健壮的计算机视觉的需求

视频通话是一项特别棘手的计算机视觉应用,没有反悔的机会。当智能手机全景照片出现失真时,我们可以很轻松地删除照片并再来一遍。但通话中的关键时刻可不能像这样 “再来一遍” 的。由于 Portal 会在视频通话过程中做出所有计算机视觉决策,因此它不能从头到尾查看整个视频来确定如何处理意外事件。如果系统可以窥探未来的话,那么它就可以预测某人何时出入房间,或者在有人开始兴奋地四处走动之前,就抢先重构场景。


现实世界的各种情况也构成了重大挑战。对计算机视觉系统来说,识别出祖母在光线充足的地方将孙女抱在膝上,这场景可能不是特别需要处理器进行处理。但如果这个蹒跚学步的孩子如果爬到房间的阴影角落,然后被妈妈抱起来并走出视线外时,会发生什么呢?智能摄像头必须动态响应多个变量,并确定何时进行缩放和平移,以及要忽略的内容。


由于视频通话过程中的中断错误和延迟是不可接受的,因此计算机视觉系统必须完全在设备上运行。在本地处理视频也提供了增强的隐私,因为姿势检测或其他人工智能建模都不会离开设备。此外,Facebook 不会访问到 Portal 视频通话中任何内容,也不会将其用于广告。

智能摄像头的核心:Mask R-CNN2Go

为了创造满足这些需求的视频通话体验,智能摄像头依靠 2D 姿势检测,并辅以额外的计算机视觉技术。智能摄像头通过不断搜索要包含的相关对象,主动为给定场景进行帧化。由于它分析视频中的每一帧,Portal 能够忽略长时间未移动的潜在对象,如挂在墙壁上的肖像。它还可以优先考虑其视野范围内的内容,如,选择一个与听众交谈的对象,而不是背景中经过的人。


一个简单的计算机视觉系统,比如只使用头部检测或者围绕人身周围的边界框,可能很容易实现。但智能摄像头需要足够的准确度来考虑不同的姿势,因为有非常不同的取景选择,例如,某人是躺着还是站立着,就有非常不同的框架选择。


当 Facebook AI Research (FAIR)小组于 2017 年发布 Mask R-CNN 模型时,这是业界在简化实例细分方面的一个突破,在国际计算机视觉大会(International Conference on Computer Vision)斩获最佳论文奖。但 Mask R-CNN 是基于 GPU 的方法,因此与 Portal 的移动芯片组不兼容。去年,Facebook 的团队合作创建了 Mask R-CNN2Go,这是一种全身姿势检测系统,只有几兆字节大小。这一来它可以做到足够小,从而能够在移动处理器上运行,非常适合在 Portal 中使用。



Mask R-CNN2Go 是一种高效轻量级框架。上图概述了模型的五个主要组成部分。


智能摄像头由 Mask R-CNN2Go 驱动,保持了 Mask R-CNN 的高姿势检测准确度。同时运行速度也比这个模型快 400 倍。将姿势检测模型进行压缩 —— 从运行在桌面 CPU 到移动芯片 —— 迫使我们在模型质量上进行权衡。低质量的关键点(在帧变化过程中可能会引入抖动或其他视觉错误)对于我们所针对的稳定、自然的视频通话体验来说是不可接受的。为了弥补这一不足,我们开发了几种策略,包括通过对训练数据集中的低光样本应用数据增强及平衡多种姿势检测方法(如检测对象的头部、躯干和整个身体)来改善低光拍照性能。我们使用额外的预处理来区分彼此相邻的多个人。


我们还用别的方式推进了 Portal 移动芯片组的极限,包括开发 Qualcomm 的 Snapdragon Neural Processing Engine(SNPE)的手动优化。这些增加了软件已经在加速的深度神经网络的执行,以应对操作条件和 Portal 的特定硬件。这个过程的最终结果是,在 FAIR 最初的 Mask R-CNN2Go 研究发表不到两年之后,在商店中就推出了新的消费产品。


除了利用我们在 Mask R-CNN 上的工作外,Portal 还利用了我们对 AR 上的长期投资。Facebook、Messenger 和 Instagram 上已经部署了交互式 AR,得益于我们的 Spark AR 平台以及我们多年来在身体跟踪和细分方面所做的工作,我们能够以最小权重提升来整合即开即用的 AR,尤其是新的故事时间模式。这种简化的 AR 集成是我们整体战略的一部分,它为所有 Facebook 产品提供了一个通用的 AR 平台,包括 Messenger、Instagram 和现在的 Portal,让创作者创作一次效果,然后广泛部署,无论是今天的屏幕,还是未来的头戴显示器。

利用人类专业知识增强人工智能能力

即使我们解决了所有与响应实时姿势检测的的摄像头运动相关的极限挑战,早期原型的结果仍然让人感觉僵硬、机械。智能摄像头可以精确地缩放、平移和跟踪相关对象,但它的实际动作并不像我们在电影和电视中习惯的那种由人类控制的相机那样顺滑、流畅、直观。我们要明白这点:数学家和科学家是可以改进计算机视觉模型的,但不一定了解人们在情感层面上如何与摄像头体验互动,尽管我们有创意。或者,更确切地说,我们得向创意专业人士寻求帮助。


我们合作的电影制作人分享了一系列见解,其中一些是成熟的技术:例如专家如何进行构图,以及这些决定如何影响观众的期望;而另一些则更倾向于本能,更难以用人工智能来复制。在一项实验中,我们要求一组专业摄像头操作员拍摄一系列难以从单一角度捕捉动作的场景。分析结果发现,虽然经验丰富的专业人士拍摄特定场景的方式并不一致(尽管拍摄角度和拍摄对象相同,但不同摄影师经常做出不同的决定),但电影制作人会本能地使用微妙的动作来产生更自然、更直观的拍摄体验。我们仔细分析了这些动作,并将它们提炼成软件模型,目的是让智能摄像头模拟这种体验。事实证明,这种做法比简单的数学策略指导的运动更为有效。


例如,摄像头操作员通常只在全景模式下进行拍摄,但我们要求专家在全景模式和肖像模式下拍摄每个样本场景。根据他们如何为这两种模式进行构图,我们很快就意识到,必须提供两种截然不同的体验。在肖像模式下,他们的构图和镜头移动优先考虑给定场景中的关键人物。为了创造出一个更亲密的体验,他们使用更紧密的框架来展示这个人和他的表情,而不是他所在的环境。在全景模式下,摄像头操作员可以更轻松地捕捉场景中的更多动作。他们倾向于使用更广泛的构图,尤其是中景和 “牛仔镜头”,即从大腿中部向上取景。(这镜头的名字来自经典的西部电影,因为它可以包括演员的脸和枪套。)


我们将这些选择整合到智能摄像头中,利用全景模式展示场景中更多的活动,然后当有人将 Portal+ 转为肖像模式时,我们会切换到更近的、更倾向于一对一的构图。

智能摄像头的下一步是什么

智能摄像头是我们广泛多样的计算机视觉专业知识的结晶,包括我们首创的姿势检测技术以及我们在 Portal 开发过程中学到的硬件实现。但这也是基于人工智能的系统的一个例子,它由一组人类技能提供信息,将电影和摄影的细微差别融入到一个特征中,否则可能会对 Portal 为之设计的自然、轻松的面对面交流造成震动和扰乱。它简化了计算机视觉的方法,降低了计算强度(使用 Mask R-CNN2Go),展示了我们在这一领域继续取得的进展。


由于摄像头控制与人们及其环境的背景理解紧密相关,我们将继续推进计算机视觉和其他人工智能技术,以帮助我们更好地了解设备周围的世界。例如,当一个人在厨房做饭时,与他在沙发上看电视时相比,我们可能想要以不同的镜头,使用不同类型的摄像头动作。最终,Portal 不仅仅是用于视频通话,而是和你关心的人共度美好时光。为了更好促进这一点,我们还在寻找新的方法来构建人们可以通过 Portal 享受的共享体验。


原文链接:


https://ai.facebook.com/blog/under-the-hood-portals-smart-camera



2019-03-20 08:003334
用户头像

发布了 375 篇内容, 共 196.8 次阅读, 收获喜欢 947 次。

关注

评论

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

《MyCat数据库的基础配置及使用》

java小李

java 14 mycat

四面字节跳动,终于拿下1-2级offer :Redis+分布式+微服务+算法+网络

Java 程序员 架构 面试 计算机

技术解码 | GB28181协议简介及实践

腾讯云音视频

腾讯云 ffmpeg 流媒体 视频监控系统

数字化成潮流,运维为啥也热了?

ToB行业头条

科技互联网

Vue进阶(九十四):自定义组件

No Silver Bullet

Vue 自定义组件 7月日更

携生态伙伴展示AI计算盒参考设计最新成果 英特尔点亮智能边缘广阔机遇

E科讯

GitHub标星139K的:“嵌入式Linux系统开发教程”

白亦杨

如何借用第三方APM工具, 为移动应用保驾护航

APM

被面试官问的Android问题难倒了,深度集成!

欢喜学安卓

android 程序员 面试 移动开发

被转载10W次的:Java小白系统资料和职业规划路线

java小李

java基础

他是因为什么,能在半年内从菜鸟学生成为大厂收割机?

Java架构师迁哥

MySQL高频面试题的灵魂拷问

java小李

MySQL

深度融合,云管理平台助推政府实现“最多跑一次”改革

BoCloud博云

云计算 云管理平台 云管理

iOS底层面试题(下篇)

程序员 面试 ios开发

详解TCP协议与UDP协议的区别

Linux服务器开发

网络协议 Linux服务器开发 Linux后台开发 TCP协议 UDP协议

基于 Java Spring Security 的关注微信公众号即登录的设计与实现ya

哈德韦

spring security 微信公众号 Apache Pulsar SSO

《分享几道高频 Redis 高频面试题,面试不用愁》

java小李

Redis Stream

这款开源软件绝了!1分钟即可打造了一个”黑客范“终端~

编程菌

Java 编程 程序员 项目 计算机

华为助力高校释放能量,加速中国从开源使用大国向贡献大国转变

科技热闻

一条SQL语句执行得很慢的原因盘点

北游学Java

Java MySQL

架构训练营模块3课后作业-学生管理系统详设文档

喻高咏        

解决方案| 全民抗“灾”- 实时音视频在应急指挥场景的应用

anyRTC开发者

音视频 WebRTC 指挥调度

速来围观!大佬把Java基础核心知识整理成了PDF版

java小李

Java开发手册 Java 开发

请谈下Android消息机制,成功拿下大厂offer

欢喜学安卓

android 程序员 面试 移动开发

向大佬学习!「mybatis查询匹配机制」,手动点赞

java小李

java 14 Mybati

FBI 警告称,网络犯罪分子可能以 2021 年东京奥运会为目标!

郑州埃文科技

编辑器看看

strive

编辑器

DeFi智能合约DAPP开发|DeFi项目源码

Geek_23f0c3

DeFi去中心化系统开发 DAPP智能合约交易系统开发

大学四年Java学习路线规划,所有私藏资料我都贡献出来了

java小李

spring Java web

幸福的人在当下就活出了幸福的样子|靠谱点评

无量靠谱

最新流行的6大优秀DevOps工具

java小李

java 14 puppeteer

Facebook智能摄像头Portal研发背后的那些事_AI&大模型_Eric Hwang_InfoQ精选文章