CVPR 2022 | 刷新4个SOTA!港大字节开源ReferFormer: 语言作为查询的参考视频目标分割框架...

本文主要是介绍CVPR 2022 | 刷新4个SOTA!港大字节开源ReferFormer: 语言作为查询的参考视频目标分割框架...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

点击下方卡片,关注“CVer”公众号

AI/CV重磅干货,第一时间送达

在本文中,来自香港大学和字节跳动的研究者们提出了一种基于Transformer的参考视频目标分割新框架ReferFormer。其将语言描述视为查询条件,直接在视频中查找目标对象,除此之外,通过实例序列的整体输出自然地完成目标物体的跟踪,无需进行任何后处理。ReferFormer在四个参考视频目标分割数据集上都取得了当前最优的性能。

17b9cb1dea82ce84067a09a965148ed0.png

paper:https://arxiv.org/abs/2201.00487

code: https://github.com/wjn922/ReferFormer

引言

参考视频目标分割(referring video object segmentation,RVOS)是一个新兴且具有挑战性的多模态任务,它需要在视频中将文本所指代的参考对象进行实例分割。

目前得到广泛研究的参考图像分割(referring image segmentation, RIS)任务中,文本描述通常是基于目标的外观特征或者空间关系,RVOS任务则可以对目标所进行的动作进行描述,这要求模型有着更强的时空建模能力,且保证分割目标在所有视频帧上的一致性;与传统的视频目标分割(video object segmentation, VOS)任务相比,RVOS任务在预测阶段没有给定分割目标的真值,从而增加了对目标进行正确精细分割的难度。

现有的RVOS方法往往都依赖于复杂的多阶段框架,以保证分割目标的一致性。为了解决以上问题,香港大学和字节跳动的研究者们提出了一种基于Transformer的端到端RVOS框架 —— ReferFormer,其将语言描述作为查询条件,在视频中仅仅关注于参考目标,且通过连接不同帧上相对应的查询即可完成目标的追踪,无需进行后处理。该模型在四个RVOS数据集上(Ref-Youtube-VOS, Ref-DAVIS17, A2D-Sentences, JHMDB-Sentences) 均取得了当前最优的性能。

方法亮点:

- 提出了一种简单统一,基于Transformer的端到端RVOS框架,无需进行后处理;

- 将语言描述作为查询的限制条件,从而用很少数量的查询即可完成任务;

- 在四个RVOS任务数据集上都取得了当前最优的性能。

方法

f0daac3e72fb4d5987d2a82aca3497a5.png

图1 网络整体结构

网络主要由四个部分组成:Backbone,Transformer,跨模态FPN以及实例分割生成部分。

Backbone. 网络首先使用视觉编码器从视频中抽取每一帧的特征,同时采用文本编码器获得文本描述的语言特征,该特征进行平均池化后获得的向量即为句特征。

Transformer. Transformer编码器用于进一步建模视频帧的多尺度特征;在解码器部分,定义了N个可学习特征作为query,且为所有帧共享。同时,对上述句特征复制N次,query和句特征共同作为解码器的输入。在这种方式下,所有query都会在语言的指引下仅仅关注于目标对象,因此本文将此查询称为“条件查询(conditional query)”。得益于该设计,模型采用很少数量(默认为5)的query即可获得很好的效果。最终,通过在解码器中进行query和视觉特征的交互,每一帧上均获得含有目标信息的N个表征,对于整个视频,则共有Nq个表征。

跨模态FPN. 在这一部分,视觉特征与文本特征以互注意力的形式进行多尺度、细粒度交互,可以获得更好的分割效果。这一过程中,FPN产生了语义丰富、高分辨率的特征图送入后续分割模块。

实例分割生成部分. 对于前述每一帧上获得的N个表征,首先分别通过class head,box head,mask head生成其对应的二分类概率,边界框以及动态卷积核参数。边界框作为relative coordinate特征添加至FPN的输出特征中,获得每个query对应的卷积特征图,目标mask的生成通过动态卷积得到:

e1cddeb26e6bdf3839578884fa310724.png

训练和预测. 每一帧上对应位置的query追踪的是同一实例(图中以相同形状表示),将相对应的query进行连接,即可获得属于同一实例的序列,从而自然地对目标进行各种而无需后处理。在训练和预测阶段,均以实例序列视为整体进行监督和输出。

在训练阶段,由于视频中仅含有一个目标物体,因此采用最小代价匹配进行正样本分配,损失函数包括二分类损失,边界框损失以及掩码损失:

65a6652aa2dd376849c9bd6f312a94f0.png

在预测阶段,输入为一整段视频。首先计算每个实例序列在所有帧上的平均得分,选择分数最高的实例序列,其索引为σ,输出其对应的mask序列即可。

26751416ed88723a31f2b7a61292bcc0.png

Demo

以下展示了模型在多个具有挑战性场景的分割效果:

- Ref-DAVIS17

2b9cb8068c5067f193b5d37358cffb51.gif

遮挡

54c1d4c29c9214cdc281204e7452521a.gif

姿态变化

- Ref-Youtube-VOS

7959deba8e20ce3bf60b8d7318f855e7.gif

精细分割

7b80702c6d8476d58b9d6b9f5d0ae6cb.gif

快速运动

图2 可视化效果展示

性能

本文采用不同的视觉编码器进行了广泛实验,在当前四个RVOS上均取得了当前最好的性能。其中,Ref-DAVIS17和JHMDB-Sentences的评估采用的分别是在Ref-Youtube-VOS和A2D-Sentences上训练好的模型,证明了方法的泛化性能。

- Ref-Youtube-VOS & Ref-DAVIS17

f37f7cd55e482871fe266f37642297cd.png

图3 Ref-Youtue-VOS和Ref-DAVIS17数据集性能比较

- A2D-Sentences & JHMDB-Sentences

25758019416463441578298e8faff403.png

图4 A2D-Sentences数据集性能比较

235f04a37b31fc999fe77b685e93b995.png

图5 JHMDB-Sentences数据集性能比较

结论

本文提出了一个简单统一的参考视频目标分割框架,不同于以往复杂、多阶段的pipeline,本文提出了将语言描述作为查询的概念,使得模型能够精准地关注于目标对象,同时通过实例序列匹配自然地完成目标的跟踪,实现了端到端的输出。

ICCV和CVPR 2021论文和代码下载后台回复:CVPR2021,即可下载CVPR 2021论文和代码开源的论文合集后台回复:ICCV2021,即可下载ICCV 2021论文和代码开源的论文合集后台回复:Transformer综述,即可下载最新的3篇Transformer综述PDF
CVer-Transformer交流群成立
扫描下方二维码,或者添加微信:CVer6666,即可添加CVer小助手微信,便可申请加入CVer-Transformer 微信交流群。另外其他垂直方向已涵盖:目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要备注:研究方向+地点+学校/公司+昵称(如Transformer+上海+上交+卡卡),根据格式备注,可更快被通过且邀请进群▲扫码或加微信: CVer6666,进交流群
CVer学术交流群(知识星球)来了!想要了解最新最快最好的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!▲扫码进群
▲点击上方卡片,关注CVer公众号整理不易,请点赞和在看

这篇关于CVPR 2022 | 刷新4个SOTA!港大字节开源ReferFormer: 语言作为查询的参考视频目标分割框架...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/644491

相关文章

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

SQL 中多表查询的常见连接方式详解

《SQL中多表查询的常见连接方式详解》本文介绍SQL中多表查询的常见连接方式,包括内连接(INNERJOIN)、左连接(LEFTJOIN)、右连接(RIGHTJOIN)、全外连接(FULLOUTER... 目录一、连接类型图表(ASCII 形式)二、前置代码(创建示例表)三、连接方式代码示例1. 内连接(I

Go语言中三种容器类型的数据结构详解

《Go语言中三种容器类型的数据结构详解》在Go语言中,有三种主要的容器类型用于存储和操作集合数据:本文主要介绍三者的使用与区别,感兴趣的小伙伴可以跟随小编一起学习一下... 目录基本概念1. 数组(Array)2. 切片(Slice)3. 映射(Map)对比总结注意事项基本概念在 Go 语言中,有三种主要

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依

Java如何获取视频文件的视频时长

《Java如何获取视频文件的视频时长》文章介绍了如何使用Java获取视频文件的视频时长,包括导入maven依赖和代码案例,同时,也讨论了在运行过程中遇到的SLF4J加载问题,并给出了解决方案... 目录Java获取视频文件的视频时长1、导入maven依赖2、代码案例3、SLF4J: Failed to lo

C语言中自动与强制转换全解析

《C语言中自动与强制转换全解析》在编写C程序时,类型转换是确保数据正确性和一致性的关键环节,无论是隐式转换还是显式转换,都各有特点和应用场景,本文将详细探讨C语言中的类型转换机制,帮助您更好地理解并在... 目录类型转换的重要性自动类型转换(隐式转换)强制类型转换(显式转换)常见错误与注意事项总结与建议类型

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Python实现批量分割PDF文件

《使用Python实现批量分割PDF文件》这篇文章主要为大家详细介绍了如何使用Python进行批量分割PDF文件功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、架构设计二、代码实现三、批量分割PDF文件四、总结本文将介绍如何使用python进js行批量分割PDF文件的方法

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开