给1万帧视频做目标分割,显存占用还不到1.4GB | ECCV2022

6438f23f177a031acd5e384662cfb956.jpeg

文 | 明敏 发自 凹非寺
源 | 量子位 | 公众号 QbitAI

咦,怎么好好的藤原千花,突然变成了“高温红色版”?

87d25d30b94fea0e24acda2a8817cef8.gif

这大紫手,难道是灭霸在世??

99fe5b1d252e3ecee8285b237e12f028.gif

如果你以为上面的这些效果只是对物体后期上色了,那还真是被AI给骗到了。

这些奇怪的颜色,其实是对视频对象分割的表示。

但u1s1,这效果还真是让人一时间分辨不出。

无论是萌妹子飞舞的发丝:

b505214f5fc6e3912fdda3605999f4d8.gif

还是发生形状改变的毛巾、物体之间来回遮挡:

c40fd3cc77e8287673766e611c3d082b.gif

AI对目标的分割都称得上是严丝合缝,仿佛是把颜色“焊”了上去。

不只是高精度分割目标,这种方法还能处理超过10000帧的视频。

而且分割效果始终保持在同一水平,视频后半段依旧丝滑精细。

2e72066e1d0bfc577f8306fe4fd75c39.png

更意外的是,这种方法对GPU要求不高。

研究人员表示实验过程中,该方法消耗的GPU内存从来没超过1.4GB

要知道,当下基于注意力机制的同类方法,甚至都不能在普通消费级显卡上处理超过1分钟的视频。

这就是伊利诺伊大学厄巴纳-香槟分校学者最新提出的一种长视频目标分割方法XMem

目前已被ECCV 2022接收,代码也已开源。

如此丝滑的效果,还在Reddit上吸引不少网友围观,热度达到800+。

4d10e5803055fc6698178695d0e46c0c.png

网友都在打趣说:

为什么要把你的手涂成紫色?
谁知道灭霸是不是有计算机视觉方面的爱好呢?

c8574c1e0868c7753b1b42e020f25716.png

模仿人类记忆法

目前已有的视频对象分割方法非常多,但是它们要么处理速度比较慢,要么对GPU要求高,要么精度不够高。

而本文提出的方法,可以说是兼顾了以上三方面。

不仅能对长视频快速进行对象分割,画面帧数可达到20FPS,同时在普通GPU上就能完成。

其特别之处在于,它受人类记忆模式所启发。

1968年,心理学家阿特金森和希夫林提出多重存储模型(Atkinson-Shiffrin memory model)。

该模型认为,人类记忆可以分为3种模式:瞬时记忆、短期记忆和长期记忆。

参考如上模式,研究人员将AI框架也划分出3种内存方式。分别是:

  • 及时更新的瞬时内存

  • 高分辨率工作内存

  • 密集长期记忆内存。

b699ba06bd8c578c7b8361e94486dbe1.png

其中,瞬时内存会每帧更新一次,来记录画面中的图像信息。

工作内存从瞬时内存中收集画面信息,更新频率为每r帧一次。

当工作内存饱和时,它会被压缩转移到长期内存里。

而长期内存也饱和时,会随着时间推移忘记过时的特征;一般来说这会在处理过数千帧后才会饱和。

这样一来,GPU内存也就不会因为时间推移而不足了。

通常,对视频目标进行分割会给定第一帧的图像和目标对象掩码,然后模型会跟踪相关目标,为后续帧生成相应的掩码。

具体来看,XMem处理单帧画面的过程如下:

94ded925b2dc6fffa3cd0bb96c2a1cfa.png

整个AI框架由3个端到端卷积网络组成。

一个查询编码器(Query encoder)用来追踪提取查询特定图像特征。

一个解码器(Decoder)负责获取内存读取步骤的输出,以生成对象掩码。

一个值编码器(Value encoder)可以将图像和目标的掩码相结合,从而来提取新的内存特征值。

最终值编码器提取到的特征值会添加到工作内存中。

从实验结果来看,该方法在短视频和长视频上,都实现了SOTA。

2dd0aa36ff4b6515a5313721bb7aca9c.png

在处理长视频时,随着帧数的增加,XMem的性能也没有下降。

9580f8bb1f5f2bf402d5a2b740336129.png

研究团队

作者之一为华人Ho Kei (Rex) Cheng

7dfae196cf7f30e445d53312647b5846.png

他研究生毕业于香港科技大学,目前在伊利诺伊大学厄巴纳-香槟分校读博。

研究方向为计算机视觉。

他先后有多篇论文被CVPR、NeurIPS、ECCV等顶会接收。

另一位作者是 Alexander G. Schwing。

0252f59086b843320d72b2f0202c6de4.png

他现在是伊利诺伊大学厄巴纳-香槟分校的助理教授,博士毕业于苏黎世联邦理工学院。

研究方向为机器学习和计算机视觉。

论文地址:
https://arxiv.org/abs/2207.07115

GitHub:
https://github.com/hkchengrex/XMem

3518f7053c025798b39ca884e8276f60.jpeg后台回复关键词【入群

加入卖萌屋NLP、CV、搜推广与求职讨论群

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/477137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

互联网公司数据安全保护新探索

近年来,数据安全形势越发严峻,各种数据安全事件层出不穷。在当前形势下,互联网公司也基本达成了一个共识:虽然无法完全阻止攻击,但底线是敏感数据不能泄漏。也即是说,服务器可以被挂马,但敏感数…

剑指Offer - 面试题47. 礼物的最大价值(动态规划)

1. 题目 在一个 m*n 的棋盘的每一格都放有一个礼物,每个礼物都有一定的价值(价值大于 0)。你可以从棋盘的左上角开始拿格子里的礼物,并每次向右或者向下移动一格、直到到达棋盘的右下角。给定一个棋盘及其上面的礼物的价值&#…

大佬在线复盘:我在训练 DALL·E 时犯过的错

文 | jxyxiangyu在写了一周的业务代码后,沏一杯绿茶,总算可以有时间看看鸽了一个月的素材了。好的,小伙伴们,废话不多说,今天我们将跟随 Boris Dayma 大佬,看看他在训练 DALLE-Mega 时遇到的一系列问题。据…

Toast与Snackbar的那点事

背景 Toast是Android平台上的常用技术。从用户角度来看,Toast是用户与App交互最基本的提示控件;从开发者角度来看,Toast是开发过程中常用的调试手段之一。此外,Toast语法也非常简单,仅需一行代码。基于简单易用的优点&…

LintCode 1683. 杀怪兽(队列)

1. 题目 有 n 只怪兽和一个奥特曼,奥特曼和怪兽都有5个属性值。 当且仅当奥特曼的5个属性值都不小于怪兽时,奥特曼可以杀死怪兽。 当一个怪兽被杀掉时,这个怪兽的5个属性会增加到奥特曼身上。 请问奥特曼最多可以杀死多少怪兽? 样例 1: 输…

聊聊大火的多模态

多模态机器学习,英文全称 MultiModal Machine Learning (MMML),旨在通过机器学习的方法实现处理和理解多源模态信息的能力。每一种信息的来源或者形式,都可以称为一种模态。例如,人有触觉,听觉,视觉&#x…

2018开春大礼:750页电子书 + 33场技术沙龙资料 + 17场线上课程分享

2017年,美团成长为中国领先的生活服务电子商务平台,在吃喝玩乐住行等200多个品类,2800多个城区县,服务了亿万消费者、数百万商家,日订单数超过2200万,年度交易总额达到了3600亿。2017年10月,美团…

LintCode 1677. 石头(自定义优先队列)

1. 题目 给定数组 p 代表 n 个石头的位置和数组 d 代表这 n 块石头能够扔的距离。 从左(0位置)往右走。当你第 k 次碰到一个石头时, 如果 k 是奇数, 把这个石头往右扔; 如果 k 是偶数,跳过这个石头。 返回不再会碰到石头时&…

手机上也能训练BERT和ResNet了?!

源 | 机器之心研究者表示,他们将边缘训练看作一个优化问题,从而发现了在给定内存预算下实现最小能耗的最优调度。目前,智能手机和嵌入式平台等边缘设备上已经广泛部署深度学习模型来进行推理。其中,训练仍然主要是在具有 GPU 等高…

LintCode 125. 背包问题 II(DP)

1. 题目 有 n 个物品和一个大小为 m 的背包. 给定数组 A 表示每个物品的大小 数组 V 表示每个物品的价值. 问最多能装入背包的总价值是多大? 样例 1: 输入: m 10, A [2, 3, 5, 7], V [1, 5, 2, 4] 输出: 9 解释: 装入 A[1] 和 A[3] 可以得到最大价值, V[1] V[3] 9 样例…

大众点评App的短视频耗电量优化实战

前言 美团测试团队负责App的质量保证工作,日常除了App的功能测试以外,还会重点关注App的性能测试。现在大家对手机越来越依赖,而上面各App的耗电量,直接影响了手机的待机时间,是用户非常关心的一点。本文主要通过一个典…

解决CNN固有缺陷!通用 CNN 架构CCNN来了| ICML2022

文 | David W. Romero等源丨机器之心在 VGG、U-Net、TCN 网络中... CNN 虽然功能强大,但必须针对特定问题、数据类型、长度和分辨率进行定制,才能发挥其作用。我们不禁会问,可以设计出一个在所有这些网络中都运行良好的单一 CNN 吗&#xff1…

境外业务性能优化实践

本文根据第16期美团技术线上沙龙OnLine演讲内容整理而成。 前言 性能问题简介 应用性能是产品用户体验的基石,性能优化的终极目标是优化用户体验。当我们谈及性能,最直观能想到的一个词是“快”,Strangeloop在对众多的网站做性能分析之后得出…

LeetCode 第 21 场双周赛(779/1913,前40.7%)

文章目录1. 比赛结果2. 题目LeetCode 5336. 上升下降字符串 easyLeetCode 5337. 每个元音包含偶数次的最长子字符串 mediumLeetCode 5338. 二叉树中的最长交错路径 mediumLeetCode 5339. 二叉搜索子树的最大键值和 hard1. 比赛结果 只做出来了第1题,第3题有一个例子…

算法工程师的三观测试

文 | 小戏编 | 小轶如果我在谷歌输入“How to improve my machine learning models”,我会得到形形色色花样繁多的提升模型性能的方法。从调参到特征工程,从集成模型到数据增强,琳琅满目,不胜枚举。可是如果我在这个问题上加一点限…

领域驱动设计在互联网业务开发中的实践

至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,并形成一种思潮,Eric Evans将其定义为领域驱动设计(Domain-Driven Design,简称DDD)。在互联网开发“小步快跑,迭代试错”的大…

LeetCode 1377. T 秒后青蛙的位置(BFS)

1. 题目 给你一棵由 n 个顶点组成的无向树,顶点编号从 1 到 n。青蛙从 顶点 1 开始起跳。规则如下: 在一秒内,青蛙从它所在的当前顶点跳到另一个 未访问 过的顶点(如果它们直接相连)。青蛙无法跳回已经访问过的顶点。…

已删除

7.12更新:部分基金赎回的钱已经到账小金库了,今日从小金库提现时又提示银行卡已删除,不过这次可以点击重新绑定,重新绑定时会报错“绑定的卡与原卡一致”,流程没法走完。但这时候再退回去却发现“银行卡已删除”的提示没有了。于是…

即时配送的ETA问题之亿级样本特征构造实践

ETA(Estimated time of Arrival,预计送达时间)是外卖配送场景中最重要的变量之一(如图1)。 我们对ETA预估的准确度和合理度会对上亿外卖用户的订单体验造成深远影响,这关系到用户的后续行为和留存&#xff…

LeetCode 1376. 通知所有员工所需的时间(DFS)

1. 题目 公司里有 n 名员工,每个员工的 ID 都是独一无二的,编号从 0 到 n - 1。公司的总负责人通过 headID 进行标识。 在 manager 数组中,每个员工都有一个直属负责人,其中 manager[i] 是第 i 名员工的直属负责人。对于总负责人…