写点什么

阿里达摩院: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:573565

评论

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

重学JS | 数组遍历的7种方法及兼容性处理(polyfill)

梁龙先森

大前端 编程语言

人工智能不过尔尔,基于Python3深度学习库Keras/TensorFlow打造属于自己的聊天机器人(ChatRobot)

刘悦的技术博客

人工智能 tensorflow chatbot 聊天机器人 keras

移动生态盘点与HMS生态解析

华章IT

华为 Android Studio 移动开发 HMS

盘点 2020 | 10 天开发前台系统技术系列

老魚

CSS 大前端 全栈 js 盘点2020

直播中不可缺少的一环-rtmp直播推流

anyRTC开发者

音视频 WebRTC CDN RTC RTMP

“盗窃”公司源代码被开除的CTO | 法庭上的CTO(20)

赵新龙

CTO 法庭上的CTO

为什么要TDD(测试驱动开发)

sherlockq

敏捷开发 TDD 极限编程

什么是浮点数?

Kaito

计算机基础 浮点数

英特尔力邀150家产业大咖推动Evo严苛认证,打造PC界的奥斯卡

E科讯

英特尔赵宏:从硬件创新到平台突破,PC的未来非常值得期待

E科讯

计算机网络简述

lee

计算机网络 网络协议 网络

智慧仓储管理系统,是否能解决购物狂欢节后新一轮爆仓危机?

一只数据鲸鱼

物联网 数据可视化 智慧物流 智慧仓储

云视频技术领军人赵加雨:如何提升在线教育课堂互动体验

拍乐云Pano

音视频 在线教育 RTC 互动课堂 白板

高空立体云防控系统搭建,智能化平安小区建设方案

t13823115967

平安小区 智慧平安社区建设

扒开 SqlSession 的外衣

田维常

mybatis

Spring 源码学习 11:invokeBeanFactoryPostProcessors

程序员小航

Java spring 源码 源码阅读

anonymous匿名者场外交易系统APP软件开发

系统开发

深入浅出 ZooKeeper

vivo互联网技术

zookeeper 分布式 ZAB

从MongoID的生成讨论分布式唯一ID生成方案

行如风

雪花算法 分布式ID 全局唯一ID 流星算法

为什么说rollup比webpack更适合打包库

fengxianqi

大前端 Rollup webpack

没能进入大数据领域

escray

面试 面经

应急指挥中心平台搭建,移动可视化指挥解决方案

t13823115967

可视化数据分析搭建 应急指挥

像用户一样测试:打破知识的诅咒

QualityFocus

测试 软件质量 可用性 用户体验

从一个模糊词查询需求的处理方案讨论到一种极速匹配方案的实现

行如风

模糊匹配 双数组trie树 ahocorasick ac自动机 黑名单过滤

星域母子币系统软件开发|星域母子币APP开发

系统开发

抢先体验全新升级版Eternal Wallet!

Geek_c610c0

数字货币 数字货币钱包开发

生产环境全链路压测建设历程 21:某快递 A 股上市公司的生产压测案例之基于测试流量的混沌工程(故障演练)

数列科技杨德华

全链路压测 七日更

快速接入 | 从 0 到 1 构建语音聊天室

拍乐云Pano

音视频 RTC 实时语音 语音聊天室 语聊房

如何基于 SDK 快速开发一款IoT App 控制智能灯(iOS 版)

IoT云工坊

ios App 物联网 IoT sdk

重磅|中国PostgreSQL分会与腾讯云战略合作协议签订

PostgreSQLChina

数据库 postgresql 软件 开源社区

九环智能合约开发

V19927655815

APP开发

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