写点什么

AAAI 2020 论文解读: 商汤科技发布新视频语义分割和光流联合学习算法

  • 2020-02-16
  • 本文字数:2800 字

    阅读完需:约 9 分钟

AAAI 2020论文解读: 商汤科技发布新视频语义分割和光流联合学习算法

视频语义分割的一个主要的挑战是缺少标注数据。在大多数基准数据集中,每个视频序列(20 帧)往往只有一帧是有标注的,这使得大部分监督方法都无法利用剩余的数据。为了利用视频中的时间 - 空间信息,许多现有工作使用预先计算好的光流来提升视频分割的性能,然而视频分割和语义分割仍然被看作是两个独立的任务。近日,商汤科技研究团队发表论文《Every Frame Counts: Joint Learning of Video Segmentation and Optical Flow》,该论文被 AAAI 2020 录用。


在这篇文章中,作者提出了一个新颖的光流和语义分割联合学习方案。语义分割为光流和遮挡估计提供了更丰富的语义信息,而非遮挡的光流保证了语义分割的像素级别的时序一致性。作者提出的语义分割方案不仅可以利用视频中的所有图像帧,而且在测试阶段不增加额外的计算量。

背景

视频语义分割通过利用前后帧的语义信息,往往有着比图像分割更高的准确率,因此在机器人和自动驾驶领域有着丰富的应用。然而目前的视频语义分割主要面临两个挑战:缺少标注数据和实时性的问题。一方面由于标注工作耗时耗力,一个视频片段往往只标注一帧,导致很多方法难以利用全部的数据,或者需要使用额外的数据集做预训练;另一方面由于对前后帧之间进行信息交互往往为模型引入额外的模块,导致视频分割效率低。视频分割大致可以分为两类,第一类通过利用前后帧的时序信息来为视频分割加速,如 Clockwork network (Shelhamer et al. 2016) ,Deep Feature Flow (Zhu et al. 2017) 和 (Li, Shi, and Lin 2018) 等,这类模型对前一帧的特征图或者分割结果进行简单处理即可得到下一帧的分割结果了,从而大大减少视频分割中的冗余和加速,但语义分割的准确率会有所降低;第二类方法如 (Fayyaz et al. 2016) ,Netwarp (Gadde, Jampani, and Gehler 2017),PEARL (Jin et al. 2017) 等通过光流/RNN 等模块将前后帧的特征进行融合或添加约束以学习到更强的表示能力,从而提高语义分割的准确率。本文的方法属于第二类。



图一,和使用特征融合(feature aggregation)的方法往往只利用标注帧附近的少数帧相比,本文通过学习的光流来为视频帧添加时序一致性约束,通过这种约束可以间接把分割标注传导到其他无标注的帧上,从而利用全部的数据。


方法概述

光流作为视频中前后帧之间像素级别的关联,在视频语义分割中一直有着重要的地位。例如 (Li, Shi, and Lin 2018; Zhu et al. 2017; Shelhamer et al. 2016) 通过光流来重新利用前一帧的特征图从而为视频分割加速;(Fayyaz et al. 2016; Jin et al. 2017; Gadde, Jampani, and Gehler 2017; Nilsson and Sminchisescu 2018; Hur and Roth 2016) 通过光流指导的特征融合来获得更好的分割准确率。然而上述方法面临两个问题,一方面其往往使用现成的在其他数据集上训练的光流模型(FlowNet),导致了分割效率的降低;另一方面上述方法往往只利用了标准帧附近的少数帧,没有充分利用整个数据集和发挥光流的作用。


为了解决上述两个问题,作者提出了一个光流和语义分割联合学习的框架,语义分割为光流和遮挡估计提供了更丰富的语义信息,而非遮挡得光流保证了语义分割的像素级别的时序一致性。本文模型通过在视频中无监督学习光流并且使用光流对前后帧语义分割的特征图施加约束来使得两个任务互相增益并且没有显式的特征融合,这种隐式的约束可以帮助利用数据集中的全部数据并学到更鲁棒的分割特征以提高分割准确率,并且不会在测试阶段增加额外的计算量。



图二,本文提出的联合学习框架,输入图片经过共享编码器后分为两个分支,第一个是光流分支,第二个是分割分支。block 代表模型的特征图,灰色的虚线代表时序一致性约束,灰色实线代表遮挡估计模块。


时间一致性约束:


对于一对图片 I_i 和 I_{i+t},设其对应的分割特征图为 S,设学习到的光流为 F,遮挡 Mask 为 O,(S,F,O 均包含三个 block,如图所示),则两帧分割特征图可以通过光流 warp 进行转换:S_i^{warp}= Warp(S_{i+t}, F_{i->i+t})


考虑到遮挡的截断区域无法使用光流进行对齐,因此这些区域不计算损失。两帧的其他区域对应的分割特征图通过光流进行 warp 对齐后的一致性损失为第一帧的分割特征图和第二帧经过 warp 的分割特征图的非遮挡区域的 2 范数。


光流和遮挡估计:


文中所说的遮挡意味着两帧图片中光度的不一致性,它一般由图像中遮挡,截断(汽车离开相机拍摄)和移动目标导致,这里作者使用无监督的方式学习遮挡区域,通过反向光流推测出可能无法对齐的像素位置 O,模型根据此学习得到 O_{est};两帧的分割结果通过光流 warp 不一致的区域设为 O_{seg},O_{seg}应包括遮挡区域和光流估计错误的区域,因此 O_{error} = O_{seg}-O_{est}应为光流估计的重点区域。在计算光流估计的损失函数时,作者不考虑遮挡区域(O_{est})的损失,而加大重点区域(O_{error})的权重,遮挡估计的示意图如图 3 所示。



图 3,遮挡和遮挡估计示意图


语义分割的学习:


在训练时,作者从每个视频小段中随机选择 10 对图片来进行训练,其中五对包含标注帧,而另外五对均不包含标注帧。对于标注帧,直接使用监督的语义分割损失来进行学习;对于不包含标注帧的情况,通过两帧的一致性约束来对模型进行约束和学习。通过这种约束学习,标注信息可以从一帧传播到其他的未标注帧,而即使是两个未标注帧也可以通过一致性来学习。

实验结果

Cityscapes 数据集上的分割结果:



CamVid 数据集上的分割结果:



KITTI 数据集上的光流估计结果:



可视化结果:



图四,Cityscapes 验证集分割结果,从上至下分别为原图, 本文算法分割结果,PSPNet 分割结果和 GT。可以看出本文算法对移动目标(汽车,自行车)和出现频次较少目标(横向卡车)分割效果较好。



图五,KITTI 数据集上光流估计结果,从上至下分别为原图,本文算法估计结果,GeoNet 估计结果和 GT。可以看出本文算法对移动目标的边缘估计更为准确。


论文作者:Mingyu Ding, Zhe Wang, Bolei Zhou, Jianping Shi, Zhiwu Lu, Ping Luo


2020-02-16 12:003811

评论

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

重温亮剑-感悟

superman

个人web分享92道JavaScript面试题附加回答

我是哪吒

程序员 面试 大前端 程序媛

认识Nacos注册中心

登风

nacos

5G机遇 | 如何解决在核心场景的高并发、超低延迟需求?

VoltDB

数据库 5G 通信 VoltDB

扎根CNCF社区贡献五年是怎样的体验?听听华为云原生开源团队的负责人怎么说

华为云开发者联盟

容器 Volcano cncf kubeedge 代码开发

java中的类和object,其实没那么难~

田维常

类集

Kubernetes生产环境最佳实践

xcbeyond

Kubernetes 容器 28天写作

12.4G阿里巴巴面经公开:技术笔记+视频讲解+简历模板,绝了!

996小迁

Java 架构 面试 程序人生

数字货币写进多地“十四五”规划纲要草案 专家建议扩大数字人民币试点范围

CECBC

数字经济

音视频传输协议众多, 5G时代不同业务应该如何选择?

华为云开发者联盟

5G 音视频 直播 流媒体

2021最新Windows10环境下安装MacOS系统(黑苹果)亲测有效!!(VM安装黑苹果)

Z.

macos 黑苹果 windows vmware

Appium下的WDA使用个人开发者证书配置

行者AI

自动化测试

硬核!我花5小时肝出这篇Redis缓存解决方案,带你起飞!

数据库 redis 缓存架构

每日知识总结

country

666666666666666666666

Paul

大数据

区块链有望被主流接纳的四个场景

CECBC

区块链

区块链如何帮助联合国支持全球教育?

CECBC

区块链

怎么理解Kafka消费者与消费组之间的关系?

码农架构

Java 架构 消息队列 消息中间件

一文带你解读Volcano架构设计与原理

华为云开发者联盟

架构 Kubernetes 负载 Volcano 集群

Java 读写锁 原来这么简单

Java架构师迁哥

工具介绍 | 百度开源Server-Agent:高性能、高效率的任务调度执行引擎

百度开发者中心

开源

15道类和对象面试题,快看看自己会几道

田维常

类集

顺利拿到OPPO公司Android架构师offer,Android跨进程通信导论,全套教学资料

欢喜学安卓

android 程序员 面试 移动开发

从设计模式理解Vue响应式(多图警告)

coolFish(呔呆)

JavaScript vue.js 响应式 大前端 设计模式

为什么强烈推荐 Java 程序员使用 Google Guava 编程!

沉默王二

Java Guava

宅米网技术架构演进分析

Andy

太牛了!美团Android开发工程师岗位职能要求,大厂面试题汇总

欢喜学安卓

android 程序员 面试 移动开发

Invalid bound statement (not found)

任广印

Java MyBatisPlus

幕后故事 | YRCloudFile助力顶级视效制作公司MORE VFX打造视觉盛宴

焱融科技

高性能 存储 焱融科技 3D渲染 影视制作

企业项目迁移go-zero全攻略(二)

万俊峰Kevin

微服务 microservice Go 语言

技术赋能教育,浅谈教育机构转型的制胜关键

华为云开发者联盟

音视频 在线教育

AAAI 2020论文解读: 商汤科技发布新视频语义分割和光流联合学习算法_语言 & 开发_Mingyu Ding等_InfoQ精选文章