写点什么

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

2020 年 2 月 16 日

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 年 2 月 16 日 12:002258

评论

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

zookeeper到nacos的迁移实践

捉虫大师

架构 nacos

微软:正式发布针对 .NET Core的 Winform 设计器

Geek_Willie

.net 微软 Win .net core

2020年3月北京BGP机房网络质量评测报告

博睿数据

运维 APM 机房 数据中心 拨测

代码刚提交暂存区,组长突然要我把新增代码 Commit另一分支怎么办?

zhuoqianmingyue

git

数据产品经理实战-DMP搭建

第519区

产品经理 营销

快速入门 Nacos 作为配置中心操作

zhuoqianmingyue

nacos SpringBoot 2

使用Spring Boot和Docker构建微服务架构(一)

MaxHu

Docker 架构 容器 微服务 Spring Boot

2020年3月云主机性能评测报告

博睿数据

云计算 运维 机房 数据中心 主机

美国播客节目《指数视角》专访李飞飞:疫情、 AI 伦理、人才培养

神经星星

人工智能 程序员 李飞飞 硅谷 AI 伦理

足不出户“逛”银行,37家城商行、农商行手机银行App性能大比拼

博睿数据

APM App 评测 网银 银行

企业微信机器人在大型财务共享中心的应用实践

DT极客

微信gif图片大小的规则

石云升

微信 GIF

使用Spring Boot和Docker构建微服务架构(三)

MaxHu

Docker 架构 容器 微服务 Spring Boot

使用Spring Boot和Docker构建微服务架构(四)

MaxHu

Docker 架构 容器 微服务 Spring Boot

玩转SpringBoot2.x之缓存对象

zhuoqianmingyue

redis springboot

使用Spring Boot和Docker构建微服务架构(二)

MaxHu

Docker 架构 容器 微服务 Spring Boot

短视频时代下的知识摄取

Neco.W

学习 知识管理 知识体系 短视频

Flink 完美搭档:数据存储层上的 Pravega

Apache Flink

大数据 flink 流计算 实时计算

程序员的修行之路-关于编程语言

牧马人

程序员人生

系统化服务构建-软件工程分层

图南日晟

微服务 软件工程 架构设计

Jsp页面报错后如何找到提示信息中的_jsp.java文件

阡陌r

Java | @Override 不要再把它当成可有可无的了

YoungZY

Java 注解 Override annotation

配置国内的pip源以提高使用pip安装python软件包的速度

良少

Python pip

是什么在背后支撑起“带货一哥”李佳琦?

博睿数据

负载均衡 APM 压测 秒杀 并发

游戏夜读 | 世界两大游戏评论!

game1night

后台定时统计任务太耗时如何优化一下

zhuoqianmingyue

线程池

程序员的修行之路-保持良好的心态

牧马人

程序员人生

linux 账户及安全管理(一 账户管理)

牧马人

Linux

Spring Cloud 和 Dubbo 哪个会被淘汰?

程序猿DD

Spring Cloud dubbo

卡巴斯基产品本地化用时能缩短 77%,怎么做到的?

葛仲君

项目管理 软件开发 本地化 开发流程

程序员的修行之路-关于编程语言

牧马人

程序员人生

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