视频理解学习笔记(四)

news2024/12/24 21:34:28

视频理解学习笔记(四)

  • 3D CNN
    • C3D
    • I3D
    • Non-local算子 (Self-attention替换掉LSTM)
    • R (2 + 1) D
    • SlowFast
  • Video Transformer
    • TimeSformer
  • 总结
  • Reference

3D CNN

双流的缺点:光流抽取太慢——tvl one算法,0.06s抽取一个光流帧;消耗空间
3D Conv:同时学习空间和时间信息

C3D

论文地址:Learning Spatiotemporal Features with 3D Convolutional Networks_ICCV’15 from FAIR and Dartmouth College

用3D网络来学习时空特征。A simple, yet efficient approach for spatiotemporal feature learning using deep 3-dimensional convolutional networks (3D ConvNets) trained on a large scale supervised video dataset (sports 1M).

不是第一个用3D卷积做视频理解,但是第一个用大规模数据集和更深的网络,达到了比较好的效果。

CSD是指fc6抽取出来的特征,叫做C3D特征。作者给出了现成的实现,给定视频,可以直接返回1 * 4096的C3D特征。

在这里插入图片描述

和DeepVideo的区别:直接用3D卷积来处理视频

实验:
在这里插入图片描述

I3D

论文概览_CVPR’17

降低了网络训练的难度(如何从2D网络inflate成3D网络,如何利用预训练好的2D模型初始化3D模型bootstrap),提出了Kinetics-400数据集

I3D和C3D的区别:虽然两者都是用3D卷积做处理,但是C3D仅仅是在参考2D模型做3D设计,没办法将2D的模型迁移到3D;而I3D本质上是一个迁移学习,将2D模型和参数inflate到3D,从而实现3D卷积。

实验:
在这里插入图片描述

  • 证明了2D迁移到3D的有效性。

Non-local算子 (Self-attention替换掉LSTM)

论文地址:Non-local Neural Networks_IEEE’18 by Xiaolong Wang, Ross Girshick, Abhinav Gupta, Kaiming He from CMU and FAIR
Non-local是一个可以即插即用(plug and play)的模块(building block),用来建模长距离信息。

Non-local算子:
在这里插入图片描述
其实就是将自注意力(self-attention)模块从2D转化(膨胀,inflate)成了3D。

消融实验
在这里插入图片描述
点积最好(transformer本来就用的点积)

在这里插入图片描述
r e s 5 res_{5} res5上加的效果最差:可能是因为该层特征图已经很小了,空间信息不充分。
考虑到non-local算子的开销,作者只在 r e s 3 res_{3} res3 r e s 4 res_{4} res4上应用了non-local算子。

在这里插入图片描述
说明non-local算子确实有用。10-block:resnet的结构是3、4、6、3,只在 r e s 3 res_{3} res3 r e s 4 res_{4} res4加non-local算子。

在这里插入图片描述
证明【时】【空】注意力是有效的(因为transformer本身是融合空间信息)。

在这里插入图片描述
证明non-local在长时序建模上是有效的。

和其他模型对比:
在这里插入图片描述

R (2 + 1) D

实验性论文,研究时空卷积到底怎么做比较好。

出发点:对视频用2D卷积一帧一帧抽取特征的效果也很好,而3D卷积计算昂贵,能否使用2D卷积代替部分3D卷积。

  • 先2D再3D
  • 先3D再2D
  • ……

结论:拆分成空间上的2D + 时间上的1D

论文地址:A Closer Look at Spatiotemporal Convolutions for Action Recognition_CVPR’18 from Facebook Research and Dartmouth College

方法:
在这里插入图片描述
在这里插入图片描述
模型确实更容易训练了:
在这里插入图片描述

结果对比:
在这里插入图片描述
R (2 + 1) D的结果不比I3D好。主要亮点在于参数大大减少,训练速度更快。输入是112 * 112,对显存友好。
在这里插入图片描述

SlowFast

论文地址:SlowFast Networks for Video Recognition_ICCV’19 by Christoph Feichtenhofer, Haoqi Fan, Jitendra Malik and Kaiming He from FAIR

启发:人的视觉系统中有两种细胞,一种叫P细胞,一种叫M细胞。其中P细胞占据80%,主要负责处理静态图像;M细胞负责处理高频运动信息。和双流系统类似。将以上内容借鉴到3D网络上。

方法:

  • 慢分支(Slow Pathway):隔得比较远抽帧,且该分支网络较大(标准的I3D网络)。
  • 快分支(Fast Pathway):隔得比较近抽帧,且该分支网络较小。
  • 最后将两个分支的信息融合起来。
    在这里插入图片描述
    在这里插入图片描述
    实验结果:
    在这里插入图片描述
    精度高,推理高效,但训练时间依旧很长。

Video Transformer

TimeSformer

第一篇将ViT从图像迁移到视频的实验性paper,能处理超过1min的视频。
Is Space-Time Attention All You Need for Video Understanding_ICML’21 from FAIR and Dartmouth College.

方法:
在这里插入图片描述
上述方法的可视化理解:
在这里插入图片描述
实验结果:
在这里插入图片描述

总结

在这里插入图片描述

  • Beyond Short Snippets:LSTM
  • TDD:按照光流轨迹去做叠加
  • TSN:把长视频分成短的clip
  • I3D:Inflate和K400

Reference

Bilibili-视频理解论文串讲(下)

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

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

相关文章

什么是浅拷贝和深拷贝

javascript 中有不同的方法来复制对象,那么我们怎样才能正确地复制一个对象呢?,本文来介绍一下浅拷贝和深拷贝。 一、什么是浅拷贝(Shallow Copy) 浅拷贝是创建一个新对象,这个对象有着原始对象属性值的一份精确拷贝。如果属性是基本类型,拷…

遗传算法在数学建模中的应用及MATLAB实现

2023年9月数学建模国赛期间提供ABCDE题思路加Matlab代码,专栏链接(赛前一个月恢复源码199,欢迎大家订阅):http://t.csdn.cn/Um9Zd 目录 遗传算法基本概念 遗传算法原理 MATLAB实现 1. 使用ga求解遗传算法问题 数学建模案例:旅行商问题(TSP&#xf…

操作系统原理 —— 内存连续分配管理方式(二十)

在之前的章节中,我们到了内存管理,其中有一个很重要的功能,就是对操作系统中的内存进行分配和回收。 那如何对操作系统的内存进行分配呢? 整体上可以分为两种方式:连续分配管理方式、非连续分配管理方式。 这里提到的…

【vue3】08-vue的组件化开发-插槽(Slots)的完全指南

Vue插槽(Slots)的完全指南 插槽的作用插槽的基本使用具名插槽作用域插槽(难点) 插槽的作用 在开发中,我们会经常封装一个个可复用的组件: 前面我们会通过props传递给组件一些数据,让组件来进行展示;但是为…

【CVPR2023】TPS详解:联合令牌剪枝与压缩以实现视觉变形器更积极的压缩

【CVPR2023】TPS详解:联合令牌剪枝与压缩以实现视觉变形器更积极的压缩 0. 引言1. 为什么要使用TPS?2. TPS介绍3. TPS 详解3.1 重要性计算3.2 令牌压缩3.2.1 匹配3.2.2 融合 4. 简化版理解5. 总结 0. 引言 虽然 Vision Transformers (ViTs&a…

小文智能宣布接入ChatGPT,智能化客户服务,开创全新用户体验

小文智能是一家致力于用AI技术解放劳动力的公司,最近我们接入了ChatGPT技术,深度探索AI在智能对话机器人领域应用的更多可能,这将为我们的客户带来更为优质的人机对话服务和全新的用户体验。 ChatGPT是一种基于人工智能的自然语言处理技术&a…

案例31:基于Springboot企业员工薪酬关系系统开题报告设计

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

逍遥自在学C语言 | break-循环的中断与跳转

前言 在C语言中,break语句是一种控制流语句,它用于终止当前所在的循环结构(for、while、do-while)或者switch语句,从而跳出循环或者结束switch语句的执行。 一、人物简介 第一位闪亮登场,有请今后会一直…

ML算法——梯度下降随笔【机器学习】

文章目录 11、梯度下降 11、梯度下降 梯度下降如何帮助参数优化? 梯度下降是一种用于参数优化的常见方法。它的基本思想是通过迭代地更新参数,以减小损失函数|代价函数的值,从而找到一个最优解。 梯度方向:→|向右|正向 ←|向左|反…

PostGIS(1):PostGIS概述

作为对象关系型数据库PostGreSQL的拓展模块,PostGIS可用于存储GIS数据,并提供了对基于GiST的R树索引支持、以及面向GIS对象的分析和处理相关的函数。 以下是PostGIS官网对其特征的介绍, (1) 先看一下百度对PostGIS的介…

Langchain-ChatGLM:基于本地知识库问答

文章目录 ChatGLM与Langchain简介ChatGLM-6B简介ChatGLM-6B是什么ChatGLM-6B具备的能力ChatGLM-6B具备的应用 Langchain简介Langchain是什么Langchain的核心模块Langchain的应用场景 ChatGLM与Langchain项目介绍知识库问答实现步骤ChatGLM与Langchain项目特点 项目主体结构项目…

php7新特性详细介绍(二)

一、PHP 7 异常 PHP 7 异常用于向下兼容及增强旧的assert()函数。它能在生产环境中实现零成本的断言,并且提供抛出自定义异常及错误的能力。 assert() 配置 | 配置项默认值可选值zend.assertions11 - 生成和执行代码 (开发模式) 0 - 生成代码,但在执…

智警杯excel和sql实训盲点

目录 excel基础操作: excel函数:智警杯赛前学习1.2--excel统计函数_lulu001128的博客-CSDN博客知识点https://blog.csdn.net/lulu001128/article/details/130936259?spm1001.2014.3001.5501 excel报表实战: excel数据透视及绘图&#xff…

Amino框架无锁算法实现并发线程安装组件(一)

Amino是无锁并行框架,线程安装,该框架封装了无锁算法,提供了可用于线程安全的一些数据结构,同时还内置了一些多线程调度模式。使用Amino进行软件开发有以下的优势: 1.对死锁的问题免疫 2.确保系统并发的整体进度 3.降低高并发下无锁竞争带…

java设计模式之:建造者模式

文章目录 建造者模式介绍建造者模式适用场景案例场景一坨坨代码实现重构代码 与工厂模式区别建造者模式优缺点总结 该说不说几乎是程序员都知道或者了解设计模式,但大部分小伙伴写代码总是习惯于一把梭。好的代码不只为了完成现有功能,也会考虑后续扩展。…

springboot自动配置源码解析

概述 使用springboog的时候引入starter就自动为我们加载,例如我们引入 spring-boot-starter-web 之后,就自动引入了 Spring MVC 相关的 jar 包,从而自动配置 Spring MVC 。 自动装配原理 SpringBootApplication SpringBootApplication: Spri…

Java的引用

一、概述 其实java有4种引用,4种可分为强、软、弱、虚。我们将从这四个方面入手进行介绍。 二、强引用 首先看到我们有一个类叫M,在这个类里我重写了一个方法叫finalize(),我们可以看到这个方法是已经被废弃的方法,为什么要重写…

【jupyter】Jupyter Notebook如何导入导出文件

目录 0.系统:windows 1.打开 Jupyter Notebook 2.Jupyter Notebook导入文件 3.Jupyter Notebook导出文件 0.系统:windows 1.打开 Jupyter Notebook 1)下载【Anaconda】后,直接点击【Jupyter Notebook】即可在网页打开 Jupyte…

用户研究干货——这一篇就够啦

一、基本概念: ①工作内容:用户研究的首要目的是帮助企业定义产品目标用户群,明确、细化产品概念,并通过对用户的任务操作特性、知觉特征、认知心理特征的研究,使用户的实际需求成为产品设计的导向,使产品…

建面超72万㎡,南山红花岭旧改规划公示,配套近15万㎡宿舍

近日,深圳市南山区城市更新和土地整备局发布关于桃源街道红花岭工业南区更新单元(暂定名)03-01、02-02地块《建设工程规划许可证》及总平面图的公告。 此次批复的红花岭工业南区02-02、03-01块,总建面超72万㎡,用地单…