写点什么

阿里达摩院:1 秒替换直播背景,像素级视频分割如何实现? | CVPR 技术解读

  • 2020-06-24
  • 本文字数:2196 字

    阅读完需:约 7 分钟

阿里达摩院:1秒替换直播背景,像素级视频分割如何实现? | CVPR 技术解读

计算机视觉领域的 AI 顶会 CVPR 2020 刚刚落下帷幕,与往年更专注图片识别不同,学术界和工业界的研究方向逐渐转向了更难的视频分割和三维视觉等领域。本次,阿里巴巴拿下了四项比赛的世界冠军,其中就包括 CVPR 2020 的 DAVIS 视频目标分割比赛,本文将详细解读这项冠军技术背后的原理。


与图像识别不同,AI 分析理解视频的技术门槛较高。长期以来,业界在视频 AI 技术的研究上鲜有重大突破。以 CVPR 会议难度最高的比赛之一 DAVIS( Densely Annotated Video Segmentation)为例,该比赛需要参赛团队精准处理复杂视频中物体快速运动、外观变化、遮挡等信息,过去几年,全球顶级科技在该比赛中的成绩从未突破 80 分,而达摩院的模型最终在 test-challenge 上取得了 84.1 的成绩。



DAVIS 的数据集经过精心挑选和标注,视频分割中比较难的点都有体现,比如:快速运动、遮挡、消失与重现、形变等。DAVIS 的数据分为 train(60 个视频序列), val(30 个视频序列),test-dev(30 个视频序列),test-challenge(30 个视频序列)。 其中 train 和 val 是可以下载的,且提供了每一帧的标注信息。对于半监督任务, test-dev 和 test-challenge,每一帧的 RGB 图片可以下载,且第一帧的标注信息也提供了。算法需要根据第一帧的标注 mask,来对后续帧进行分割。分割本身是 instance 级别的。

阿里达摩院:像素级视频分割

阿里达摩院提供了一种全新的空间约束方法,打破了传统 STM 方法缺乏时序性的瓶颈,可以让系统基于视频前一帧的画面预测目标物体下一帧的位置;此外,阿里还引入了语义分割中的精细化分割微调模块,大幅提高了分割的精细程度。最终,精准识别动态目标的轮廓边界,并且与背景进行分离,实现像素级目标分割。

基本框架

达摩院的算法基于去年 CVPR 的 STM 做了进一步改进。STM 的主要思想在于,对于历史帧,每一帧都编码为 key-value 形式的 feature。预测当前帧的时候,以当前帧的 key 去和历史帧的 key 做匹配。匹配的方式是 non-local 的。这种 non-local 的匹配,可以看做将当前 key,每个坐标上的 C 维特征,和历史每一帧在这个坐标上的 C 维特征做匹配。 匹配得到的结果,作为一个 soft 的 index,去读取历史 value 的信息。读取的特征和当前帧的 value 拼接起来,用于后续的预测。



三大技术创新

1. 空间约束

STM 的特征匹配方式,提供了一种空间上的长依赖, 类似于 Transformer 中,通过 self-attention 来做序列关联。这种机制,能够很好地处理物体运动、外观变化、遮挡等。但也有一个问题,就是缺乏时序性,缺少短时依赖。当某一帧突然出现和目标相似的物体时,容易产生误召回。在视频场景中,很多情况下,当前帧临近的几帧,对当前帧的影响要大于更早的帧。基于这一点,达摩院提出依靠前一帧结果,计算 attention 来约束当前帧目标预测的位置,相当于对短期依赖的建模。


具体的方法如下图所示:


  1. 当前帧的特征和前一帧的预测 mask 在 channel 维度上做 concat,得到 HxWx(c+1) 的特征;

  2. 通过卷积将特征压缩为 HxW;

  3. 用 sigmoid 函数将 HxW 的特征,压缩范围,作为空间 attention;

  4. 把 attention 乘到原特征上,作为空间约束。



下图为空间 attention 的可视化结果,可以看到大致对应了前景的位置。


2. 增强 decoder

达摩院引入了语义分割中的感受野增强技术 ASPP 和精细化分割的微调(refinement)模块。ASPP 作用于 memory 读取后的特征,用于融合不同感受野的信息,提升对不同尺度物体的处理能力。


3. 训练策略

达摩院提出了一个简单但是有效的训练策略,减少了训练阶段和测试阶段存在的差异,提升了最终效果。


原始 STM 训练时,会随机从视频中采样 3 帧。这三帧之间的跳帧间隔,随着训练逐渐增大,目的是增强模型鲁棒性。但达摩院发现,这样会导致训练时和测试时不一致,因为测试时,是逐帧处理的。为此,在训练的最后阶段,达摩院将跳帧间隔重新减小,以保证和测试时一致。

其他

backbone: 达摩院使用了 ResNeST 这个比较新的 backbone,它可以无痛替换掉原 STM 的 resnet。在结果上有比较明显提升。


测试策略: 达摩院使用了多尺度测试和 model ensemble。不同尺度和不同 model 的结果,在最终预测的 map 上,做了简单的等权重平均。


显存优化: 达摩院做了一些显存优化方面的工作,使得 STM 在多目标模式下,可以支持大尺度的训练、测试,以及支持较大的 memory 容量。


数据: 训练数据上,达摩院使用了 DAVIS、Youtube-VOS,以及 STM 原文用到的静态图像数据库。没有其他数据。

结果

达摩院的模型,最终在 test-challenge 上取得了 84.1 的成绩。



在 test-dev 上的消融实验。达摩院复现的 STM 达到了和原文一致的结果。在各种 trick 的加持下, 得到了 11 个点的提升。



随着互联网技术、5G 技术等的发展,短视频、视频会议、直播的场景越来越多,视频分割技术也将成为不可或缺的一环。比如,在视频会议中,视频分割可以精确区分前背景,从而对背景进行虚化或替换;在直播中,用户只需要站在绿幕前,算法就实时替换背景,实现一秒钟换新直播间; 在视频编辑领域,可以辅助进行后期制作。


Reference:


  1. Oh SW, Lee JY, Xu N, Kim SJ. Video object segmentation using space-time memory networks. InProceedings of the IEEE International Conference on Computer Vision 2019

  2. Wang X, Girshick R, Gupta A, He K. Non-local neural networks. InProceedings of the IEEE conference on computer vision and pattern recognition 2018


2020-06-24 13:572957

评论

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

一文剖析:LVS/Nginx/HAProxy原理及应用场景

穿过生命散发芬芳

3月月更

LabVIEW保存、读取配置文件

不脱发的程序猿

LabVIEW 保存、读取配置文件

最棒的 7 个 Laravel admin 后台管理系统推荐 - 卡拉云

蒋川

laravel vue admin

欧拉的奇异之旅·共赴开源时代

脑极体

低调不了!最佳体验尽在 Erda 2.0 版本

尔达Erda

云计算 云原生 设计 发布 界面改版

LabVIEW设计自定义滚动条

不脱发的程序猿

LabVIEW 设计自定义滚动条

OceanBase 在线体验环境,现已上线!

OceanBase 数据库

oceanbase OceanBase 社区版 在线体验站

限时200位免费!网易云信娱乐社交公开课来啦!

网易云信

娱乐社交

尤达 DDD 领域驱动设计思想 第三章作业(识别SmartRM系统货柜机免密支付购物场景里的聚合)

代廉洁

尤达DDD领域驱动设计思想

重学架构之微博评论高性能高可用计算架构

陈华英

架构实战营 #架构实战营

ShardingSphere-Proxy分库分表(一)

神农写代码

分库分表

利用Struts拦截器限制上传图片的格式和大小

喀拉峻

网络安全

微博评论高性能高可用场景

风中奇缘

架构实战营 「架构实战营」

什么是 503 服务不可用错误?

Ethereal

VUE创建视频流应用

devpoint

Vue Video播放器 3月月更

OpenHarmony设备开发环境搭建/源码获取/编译/烧录

拓维信息

OpenHarmony 烧录

2021物联之星评选结果重磅出炉!AIoT产业核心玩家已经浮现

dgiot

搜索引擎Elasticsearch简介实践

yuexin_tech

elasticsearch

Linux网络管理工具:ifconfig,从入门到精通!

Ethereal

7 种最棒的 Vue Loading 加载动画组件测评与推荐 - 穷尽市面上所有加载动画效果(Vue loader)类型 - 卡拉云

蒋川

Vue vue admin vue loading

扎“芯”了——CP探针卡的国产替代道阻且长

IC男奋斗史

芯片技术 芯片上游

使用 CachedNetworkImage 实现图片离线缓存

岛上码农

flutter ios Android开发 移动端开发 3月月更

Redis线程模型

javaadu

redis 面试题

「架构实战营」微博评论高性能可用计算架构

hxb

「架构实战营」

SpringCloud-Ribbon学习记录

昊运

SpringCloud

条码WMS系统与ERP接口实现方法

源字节1号

后端开发 WMS系统 ERP接口

《第四期(2021-2022)传统行业云原生技术落地调研报告——金融篇》重磅发布!

York

容器 DevOps 云原生 金融科技 金融行业

微博评论高性能高可用架构设计

随欣所遇

架构训练营5期

大型企业SAP集成WMS系统方案流程

源字节1号

开源 解决方案 后端技术

持续集成引擎篇:K8S与服务自动发布

Docker 架构 k8s 持续集成 jenkins

《软件开发的201个原则》思考:2. 质量在每个人眼中都不同

非晓为骁

程序员 个人成长 开发

阿里达摩院:1秒替换直播背景,像素级视频分割如何实现? | CVPR 技术解读_AI&大模型_赵钰莹_InfoQ精选文章