“独家解读,听听他人的声音”,聆听他人的学术成长经历,对科研问题独到的见解,了解产业界的最新进展,相互学习、相互借鉴、集思广益、共同进步。为此,我们特别开辟“独家解读”专栏,让你在科研道路上与时俱进,打开新世界的大门,敬请关注。

视频会议在人们日常工作和学习中的作用越来越重要。通过对用户隐私更好地保护和有趣的视觉体验,可以大幅提高用户体验,从而帮助我们把注意力集中在会议本身上。谷歌最近宣布了在自家会议app中对背景进行模糊和替换的方法,主要是使用机器学习方法来更好地突出会议的参与者,而不是他们周围的环境。目前,针对背景建模已经有了一些解决方法,但是基本上都需要安装额外的软件,而谷歌提供的背景建模技术使用了由MediaPipe构建的web ML技术,可以直接在用户个人的浏览器中使用,没有额外其他的步骤。开发这些特性的关键目标是在几乎所有现代设备(PC、移动端、服务器、嵌入式设备等)上提供实时的、浏览器内嵌入的背景模糊和替换功能。这项技术是通过结合高效的设备端的ML模型、基于we-GL的渲染技术以及通过XNNPACK和TFLite实现的基于web的机器学习推断(inference)来实现的。

01

Web ML技术方案概览

这项新特性是由MediaPipe开发的,MediaPipe是谷歌的开源框架,用于实时和流媒体的跨平台定制机器学习解决方案,它还支持诸如设备上实时手、虹膜和身体姿势跟踪等机器学习解决方案。

任何终端设备上解决方案的核心需求都是实现高性能。为此,MediaPipe的web管道利用了WebAssembly,这是一种专门为web浏览器设计的底层(low-level)二进制代码格式,可以提高大计算量任务的速度。在运行时,浏览器将WebAssembly指令转换为本地机器码,执行速度比传统的JavaScript代码快得多。此外,Chrome 84最近引入了对WebAssembly SIMD的支持,可以用每条指令处理多个数据点,这使得性能提升了2倍以上。

谷歌背景建模的解决方案,首先利用算法处理每个视频帧,计算一个低分辨率掩膜(mask),将用户从背景中分割出来。然后,进一步对掩膜进行优化,使其与图像边界保持一致。然后通过WebGL2使用这个掩膜渲染输出的视频,从而达到背景模糊或替换的目标。

谷歌目前版本中,模型推断是在客户端的CPU上执行的,以实现低功耗和最广泛的设备覆盖。为了实现实时性能,设计了使用XNNPACK库加速推理的高效机器学习模型,XNNPACK库是第一个专门为新型WebAssembly SIMD规范设计的推理引擎。在XNNPACK和SIMD的加速下,分割模型可以在web上实时运行。

通过MediaPipe灵活的配置,谷歌的背景模糊/替换技术解决方案可以根据设备计算能力调整其处理。在高端设备上,它运行完整的流程以提供最高的视觉质量,而在低端设备上,它通过切换到轻量级模型并不再进行掩膜优化以达到实时。

02

分割模型的技术细节

终端设备上的机器学习模型需要超轻量级,以实现快速推理、低功耗和较小的模型存储。对于在浏览器中运行的模型,输入分辨率会极大地影响处理每一帧所需的FLOPs,因此也需要很小。在将图像输入到模型之前,将其下采样到较小的尺寸。如何从低分辨率图像中恢复尽可能精细的分割掩膜,是模型设计的最大挑战。

整体分割网络在编码器和解码器方面具有对称结构,解码器模块与编码器块模块共享对称层结构(MobileNetV3结构)。具体来说,在编码器和解码器块中都应用了通道注意力机制(channel-wise attention)和全局平均池化(global average pooling),这有利于高效的CPU推理。

谷歌在这里修改了MobileNetV3-small作为编码器,为了将模型尺寸减少50%,使用float16量化将模型导出到TFLite,结果精度略有下降,但对质量没有明显影响,得到的模型有193K个参数,大小只有400KB。

03

渲染效果

一旦分割完成,使用OpenGL着色器进行视频处理和渲染,其中的挑战是在不引入光晕效应产生的伪影(artifact)的情况下高效渲染。在细化阶段,使用联合双边滤波器来平滑低分辨率的掩模。

模糊着色器通过分割掩膜中的值按比例调整每个像素的模糊强度来模拟背景虚化效果(bokeh effect),类似于光学成像中的混淆圆(circle-of-confusion,CoC)。像素按其CoC半径进行加权,这样前景像素就不会渗入到背景中。谷歌为加权模糊设计了可分离滤波器(separable filters),而不是流行的高斯金字塔(Gaussian pyramid),因为它可以消除人周围的晕影。为了提高效率,模糊是在低分辨率下进行的,并在原始分辨率下与输入帧混合。

对于背景替换,谷歌采用了一种light wrapping的合成技术,将分割的人物和自定义的背景图像混合到会议视频画面中。这项技术通过允许背景光溢出到前景元素上,柔化分割边缘,使合成的视频更加身临其境。当前景和被取代的背景之间对比度很大,它也有助于减少光晕效应的伪影。

04

性能指标

为了优化不同设备的体验,谷歌提供了多种输入尺寸的模型变体(当前放出的版本中为256x144和160x96),根据可用的硬件资源自动选择最佳的模型。

谷歌在两种常见设备上评估了模型推断和端到端管道的速度:搭载2.2 GHz 6核Intel Core i7的MacBook Pro 2018,以及搭载Intel Celeron N3060的宏基Chromebook 11。对于720p的输入,MacBook Pro高质量分割模型的运行速度为120帧/秒,端到端运行速度为70帧/秒,Chromebook低质量模型的运行速度为62帧/秒,端到端运行速度为33帧/秒。

为了定量评价模型的精度,采用了常见的IoU和边界的F-measure,对于这样一个轻量级的网络,两种模型都达到了较好的性能。

谷歌还为发布的分割模型附带了模型卡(Model Card,https://mediapipe.page.link/meet-mc ),其中详细说明了公平性评估的问题。其中,评估数据包含了来自全球17个地理分区的图像,并附有肤色和性别的标注。实验分析表明,该模型在不同地区、肤色和性别的表现是一致的,IoU指标只有很小的偏差。

05

总结

谷歌引入了一种新的浏览器内机器学习解决方案,用于在谷歌会议app中实现背景模糊和替换功能,机器学习模型和OpenGL着色器可以在网络上高效运行,所开发的功能实现了低功耗的实时性能,即使是在低功耗终端设备上。

技术资料来源:Google AI Blog

直播预告

独家解读”历史文章

  • 孙裕道:基于优化的对抗攻击:CW攻击的原理详解与代码解读

  • 李永露:PaStaNet:Toward Human Activity Knowledge Engine

  • 孙裕道:ExprGAN:基于强度可控的表情编辑

  • 杨传广:高效设计图像分类模型:混合连通性的门限卷积神经网络【附PPT与视频资料】

  • 朱时超:图平滑样条神经网络【附PPT与视频资料】

  • 孙裕道:矩阵视角下的BP算法

  • 孙裕道:Capsule Network深度解读

  • 孙裕道:Fisher信息度量下的对抗攻击

  • 曾仙芳:通过自监督解耦身份和姿态特征实现人脸再扮演任务【附PPT与视频资料】

  • “九歌”来了, 清华九歌诗词生成系统工具、数据集和论文大合辑

  • 张杰:针对图像处理网络的模型水印【附PPT与视频资料】

  • 牛广林:规则引导的知识图谱组合式表示学习【附PPT与视频资料】

  • 王井东:物体上下文引导的表征学习在语义分割中的应用

  • 薛广涛:智慧城市中的异构服务协同共性关键技术研究

  • 冯大航:智慧城市中声学与AI融合技术的进展与应用

更多独家解读专栏文章

请点击文章底部“阅读原文”查看

分享、点赞、在看,给个三连击呗!

【独家解读】谷歌会议app背景模糊和替换技术解析相关推荐

  1. 【独家解读】Nature论文AlphaFold:AI推动科学发现

    "独家解读,听听他人的声音",聆听他人的学术成长经历,对科研问题独到的见解,了解产业界的最新进展,相互学习.相互借鉴.集思广益.共同进步.为此,我们特别开辟"独家解读&q ...

  2. 雷锋网独家解读:阿里云原生应用的布局与策略

    简介:阿里云一直希望可以做标准化的技术,跟社区的标准.行业的标准进行打通,这样对于阿里云的客户而言,简化了很多流程,其具备的能力也是未来的主流. 文章来源:雷锋网 作者:杨丽 原标题:<独家解读 ...

  3. 贝壳找房app使用Glide替换Picasso

    贝壳找房app使用Glide替换Picasso 现状 改造成本 原理 Glide比Picasso的2个优势: 展望 现状 操作步骤:打开贝壳找房,设置城市为"徐州", 然后点击&q ...

  4. 【产业互联网周报】网易悄然上架网易会议App;阿里推出阿里云网盘App;腾讯云会展发布 “1+3易服务”体系...

    关注ITValue,看企业级最新鲜.最价值报道! [产业互联网周报是由钛媒体TMTpost发布的特色产品,将整合本周最重要的企业级服务.云计算.大数据领域的前沿趋势.重磅政策及行研报告.] 产业互联网 ...

  5. 谷歌新App观妙中国发布:AR传承文化艺术,小米vivo应用宝可体验

    李根 发自 凹非寺  量子位 报道 | 公众号 QbitAI 观妙中国,谷歌最新官宣的App. 现在在小米.腾讯应用宝和vivo等App商店,就能下载使用. 其中集成了谷歌AI.AR技术,更凝聚了传承 ...

  6. 深度解读谷歌开源的最精确自然语言解析器SyntaxNet

    深度解读谷歌开源的最精确自然语言解析器SyntaxNet 谷歌开源了SyntaxNet,也发布了针对英语的预训练解析程序 Parsey McParseface.除了让更多人使用到最先进的分析技术之外, ...

  7. 测测自己最像哪幅名画?谷歌博物馆App新推自拍功能

    Root 编译整理自 The Inverse 量子位 出品 | 公众号 QbitAI 也许有人觉得自拍是虚荣的表现. 但谷歌旗下的数字博物馆App,Google Arts and Culture想满足 ...

  8. 腾讯会议APP——新手PRD文档

    Hi 作者有话说:本人目前是一名研二学生,近期决定从技术转向产品经理,正在找产品经理实习岗位中~吾辈深知道阻且长,慢慢开始学习吧!这将是我第一篇PRD文档,由于即将面试的岗位都与<视频>相 ...

  9. android 自动替换资源文件,简单高效的实现Android App全局字体替换

    Android O推出了一项新的功能「Fonts in XML」,借助这项功能,我们能够像使用其他资源文件一样使用字体,比较方便地实现App全局字体的替换. 为了能够在API 14或者以上的设备上使用 ...

最新文章

  1. Hibernate Annotation 学习
  2. java 使用 idea 调试 ysoserial
  3. python【蓝桥杯vip练习题库】ALGO-140 P1101(提货单)
  4. html百度地图标记图标,百度地图开发之点击地图给该位置添加标注(图标)并弹出对应的位置...
  5. 开发日记 20210311 重新定义未来
  6. 在JAVA中使用MongoDB
  7. ddd架构 无法重构_漫谈分层架构:为什么要进行架构分层?
  8. Boost:双图bimap分配的测试程序
  9. 赛我 v.s Fzone v.s 喔赛 用户体验对比分析
  10. html点击标签c,html - 标签并以html形式输入点击其他提交按钮(所有浏览器) - 堆栈内存溢出...
  11. android view
  12. 趣谈网络协议——UDP协议
  13. python中rect函数_Rect和RectF函数
  14. 2021年高压电工考试APP及高压电工模拟考试题库
  15. 五百强各大行业简介+面试流程+tips
  16. 已知三角函数值用计算机如何求角度,【已知三角函数值求角度】第一册已知三角函数值求角...
  17. 2021 年公众号苏生不惑百篇原创文章整理
  18. 通过Java监听MySQL数据的变化
  19. HDU 1234 JAVA
  20. Studio5000和SE中如何使用替换功能

热门文章

  1. 看!Tiktok 还能这样为亚马逊店铺引流?--TK领航社最新电商变现干货分享
  2. VS2015 scanf 函数报错 error C4996: 'scanf'
  3. 20条非常实用的Python代码实例
  4. 矩阵范数,向量范数,奇异值有什么用?
  5. 微信小程序 重新刷新页面
  6. 暗藏在 win10 里的 3D 资源宝库
  7. Mysql varchar类型长度计算(mysql字段长度计算)
  8. form表单—2种提交方式
  9. Vultr Debian8系统一键快速DD安装Windows7系统
  10. linux报ora12560,测试ORA-12560和ORA-12500