写点什么

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:003904

评论

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

企业如何进行信息化

秋去冬来春未远

数字化 信息化管理 如何信息化 信息化规律

通过质量内建,提高交付质量

老张

软件测试 质量内建 交付质量

linux之chroot命令

入门小站

Linux

读《Software Engineering at Google》(03)

术子米德

架构师成长笔记

用 GraphScope 像 NetworkX 一样做图分析

6979阿强

大数据 图计算 GraphScope 图分析 图数据

万字长文:直击关于Docker所必须了解的知识

穿过生命散发芬芳

Docker 4月月更

[Day14]-[动态规划]四键盘问题

方勇(gopher)

LeetCode 数据结构与算法、

在线CSV转Excel工具

入门小站

工具

使用 Helm 部署 GraphScope

6979阿强

大数据 图计算 GraphScope 图分析 图数据

seaborn绘制箱型图

Peter

可视化 数据可视化 seaborn

基于卷积神经网络的猫狗识别

Peter

机器学习 深度学习 tensorflow keras

自己动手写Docker系列 -- 5.7实现通过容器制作镜像

Go Docker 4月月更

“双碳”强风吹拂:数据中心的绿色改革图谱

脑极体

在 K8s 上运行 GraphScope

6979阿强

大数据 图计算 GraphScope 图分析 图数据

一文带你搭建RocketMQ源码调试环境

悟空聊架构

RocketMQ 4月日更 悟空聊架构 4月月更

TypeScript基础学习

乌龟哥哥

4月月更

Docker容器简介、优缺点与安装

乌龟哥哥

4月月更

腾讯阿里工程师所热衷的DPDK到底是个什么东西?该如何学习?

Linux服务器开发

Linux服务器开发 DPDK C++后台开发 Linux后台开发 虚拟化技术

在线IEEE浮点二进制计算器工具

入门小站

工具

图计算 101:图计算的类型、语言与系统

6979阿强

大数据 图计算 GraphScope 图分析 图数据

Python 报错 ValueError list.remove(x) x not in list 解决办法

AlwaysBeta

Python 编程

jupyter notebook换皮肤

Peter

Python 机器学习 数据分析 Jupyter Notebook

从安装到编译: 10分钟教你在本地使用和开发GraphScope

6979阿强

大数据 图计算 GraphScope 图分析 图数据

GraphScope v0.12.0 版本发布

6979阿强

大数据 图计算 GraphScope 图分析 图数据

深入浅出 Ext4 块和 Inode 分配器的优化(上)

焱融科技

云计算 高性能 文件存储 文件系统

Docker 实战教程之从入门到提高(三)

汪子熙

Docker 容器 虚拟化 容器镜像 4月月更

Flutter 2.0的路由把我搞蒙了!!!

岛上码农

flutter 路由 移动端开发 4月月更 跨平台开发

ThreadLocal理解及使用

Rubble

4月日更 4月月更

读《Software Engineering at Google》(04)

术子米德

架构师成长笔记

大厂工程师所热衷的DPDK到底是个什么东西?

赖猫

Linux 网络协议栈 DPDK

基于机器学习算法的钢材缺陷检测分类

Peter

Python 决策树 随机森林 集成学习 LightGBM

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