视频理解学习笔记(二):I3D and Kinetics Dataset

news/2024/12/21 16:20:12/

视频理解学习笔记(二):I3D and Kinetics Dataset

  • 视频理解的三个流派(怎么处理时序)
  • 论文概览
  • Kinetics Dataset
  • 模型详解
    • 将2D卷积网络扩张到3D(Inflating 2D ConvNets into 3D)
    • 如何用预训练好的2D网络来初始化3D网络(Bootstrapping 3D filters from 2D Filters)
    • 网络结构
  • 实验

视频理解的三个流派(怎么处理时序)

  • LSTM (a): ConvNet + LSTM
  • 3D网络 (b): 3D-ConvNet
  • 双流网络,利用光流 (c): Two-Stream

其他

  • 将3D和双流结合 (d): 3D-Fused
  • I3D (e): Two-Sream I3D
    在这里插入图片描述

论文概览

Workshop: CVPR’17
论文标题:Quo Vadis, Action Recognition? A New Model and the Kinetics Dataset

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

论文作者

  • Joao Carreira from DeepMind
  • Andrew Zisserman from DeepMind and Department of Engineering Science, University of Oxford (他也是双流网络的二作)

主要贡献

  1. I3D:Two-Stream Inflated(扩大、膨胀)3D ConvNet,如何将2D模型扩大膨胀到3D模型。
  2. Kinetics Dataset

Kinetics Dataset

该数据集包括400个人类动作的类别,每个类别对应至少400的视频片段,且每个片段都来自不同的YouTube视频。每个视频片段(clip)都是10s。

模型详解

将2D卷积网络扩张到3D(Inflating 2D ConvNets into 3D)

Inflate:保持2D卷积网络框架,将2D的卷积核全部替换成3D的卷积核,将2D的pooling全部替换成3D的pooling。

如何用预训练好的2D网络来初始化3D网络(Bootstrapping 3D filters from 2D Filters)

bootstrap:引导
将2D图片重复n次获得一个n帧的boring video;将2D预训练好的模型的参数重复n次,并且rescale(即除以n,因为初始化要保证2D网络和3D网络面对同样的输入,可以得到同样的输出),赋给3D模型。

网络结构

在这里插入图片描述

实验

在这里插入图片描述

迁移学习实验效果:
在这里插入图片描述
肯定了预训练和迁移学习。

和其他方法对比:
在这里插入图片描述


http://www.ppmy.cn/news/86027.html

相关文章

项目总结:YOLOv8 人体姿态估计 跌倒检测

细节贴: YOLOv8 人体姿态估计 跌倒检测_爱钓鱼的歪猴的博客-CSDN博客 yolov8-pose的输出中有17个人体关键点 在胸膛处计算出一个中心点,腰部计算出一个中心点,连线,做一个直角三角形,求角的大小。 当角大于60度&…

css选择器及其权重

1. 类型选择器 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-wid…

【华为OD机试】寻找身高相近的小朋友【2023 B卷|200分】

【华为OD机试】-真题 !!点这里!! 【华为OD机试】真题考点分类 !!点这里 !! 题目描述 小明今年升学到小学一年级,来到新班级后发现其他小朋友们身高参差不齐, 然后就想基于各小朋友和自己的身高差对他们进行排序,请帮他实现排序。 输入描述: 第一行为正整数H和N,0<…

Linux学习笔记 --- Linux基础命令Part2

2.9 查找命令(which、find&#xff09; 目标&#xff1a;1. 掌握使用which命令查找命令的程序文件 2. 掌握使用find命令查找指定文件 which命令 我们在前面学习的Linux命令&#xff0c;其实它们的本体就是一个个的二进制可执行程序。 和Windows系统中的.exe文件&#x…

谈谈linux网络编程中的应用层协议定制、Json序列化与反序列化那些事

linux【网络编程】之协议定制、序列化与反序列化 一、序列化与反序列化二、应用层协议如何定制三、网络通信中数据流动的本质四、网络版计算器编写4.1 业务流程4.2 核心代码 一、序列化与反序列化 由于socket api的接口&#xff0c;在读写数据的时候是以字符串的方式发送接收的…

happens-before的定义

JSR-133使用happens-before的概念来指定两个操作之间的执行顺序。由于这两个操作可以在一个线程之内&#xff0c;也可以是在不同线程之间。因此&#xff0c;JMM可以通过happens-before关系向程序员提供跨线程的内存可见性保证&#xff08;如果A线程的写操作a与B线程的读操作b之…

【SpringBoot】过滤器,监听器,拦截器介绍

文章目录 一、简介1、过滤器2、拦截器3、监听器 二、如何创建1、过滤器2、监听器3、拦截器 三、总结 一、简介 通过两幅图我们可以理解拦截器和过滤器的特点 1、过滤器 过滤器是在请求进入tomcat容器后&#xff0c;但请求进入servlet之前进行预处理的。请求结束返回也是&…

Jupyter notebook 和 Jupyter lab 的区别

Jupyter Notebook和JupyterLab都是用于交互式计算和数据科学的开源工具 它们都是基于Jupyter项目构建的&#xff0c;提供了一种以笔记本形式创建、运行和共享代码、文本和可视化结果的方式。然而&#xff0c;Jupyter Notebook和JupyterLab在用户界面、功能和扩展性方面存在一些…