当前位置: 首页 > news >正文

视频理解开山之作 “双流网络”

1 论文核心信息

1.1核心问题

  • 任务:如何利用深度学习方法进行视频中的动作识别(Action Recognition)。
  • 挑战
    • 视频包含时空信息,既需要捕捉静态外观特征(Spatial Information),也需要建模运动信息(Temporal Information)。(空间以及时间)
    • 现有基于单帧输入的 CNN 模型在视频理解任务上的表现不如传统的手工特征(如 Dense Trajectories)。
  • 解决方案:提出双流卷积神经网络(Two-Stream ConvNets),分别建模静态和运动信息。

1.2 论文主要贡献 

  • 提出 Two-Stream ConvNet 架构:由空间流(Spatial Stream)时间流(Temporal Stream) 组成:

    • 空间流(Spatial Stream):基于单帧 RGB 图像进行分类。
    • 时间流(Temporal Stream):基于**多帧密集光流(Dense Optical Flow)**进行分类。
    • 两个流的 softmax 预测结果融合,提高识别性能。
  • 证明光流作为输入有助于学习时序信息:相比直接输入多帧 RGB 图像,基于光流的方法效果更好

  • 利用多任务学习(Multi-task Learning):在多个数据集上进行联合训练,提高泛化能力。

  • 在 UCF-101、HMDB-51 数据集上达到 SOTA:比之前 CNN 方法显著提升,并接近于基于手工特征的 SOTA 方法

2 深度技术细节

2.1 神经架构

(1) 输入数据

  • 输入视频(左侧):视频序列被送入两个不同的 CNN 流。

  • 空间流(Spatial Stream ConvNet)(上方绿色框):

    • 输入单帧 RGB 图像(single frame)。

    • 主要学习静态外观信息,如背景、物体形状等。

  • 时间流(Temporal Stream ConvNet)(下方紫色框):

    • 输入多帧光流(multi-frame optical flow)。

    • 主要学习运动信息,如物体的移动方向、速度等。

(2) CNN 结构

两个流的 CNN 结构基本相同:

  • conv1:7×7 卷积核,stride=2,norm,pooling 2×2
  • conv2:5×5 卷积核,stride=2,pooling 2×2
  • conv3, conv4, conv5:3×3 卷积核,stride=1,pooling 2×2
  • 全连接层(FC)
    • fc6:4096 维 + dropout(40%)
    • fc7:2048 维 + dropout(40%)
    • softmax 分类

(3) 结果融合

  • 两个 CNN 输出的 softmax 结果融合(右侧红色框)。

  • 融合方式

    • 平均融合(Averaging)

    • SVM 训练(支持向量机)

2.2 为什么使用光流? 

  • 光流(Optical Flow) 提供了显式的运动信息,使网络能够直接学习时序关系,而不需要 CNN 直接从 RGB 帧中推导运动。(de就是竖直和水平方向)
  • 试验表明,使用多帧 RGB 作为输入时,CNN 无法有效建模运动信息,而光流可以显著提升性能。

2.3   训练策略

  • 空间流 CNN 预训练于 ImageNet,然后迁移到 UCF-101 和 HMDB-51 进行微调。
  • 时间流 CNN 直接在视频数据集上训练,因没有类似 ImageNet 的大规模视频数据可供预训练。
  • 采用多任务学习(Multi-task Learning),在 UCF-101 和 HMDB-51 数据集上联合训练,以增强泛化能力。

3 优缺点分析(现在)

双流网络(Two-Stream Networks)是一种常见的深度学习架构,通常用于视频分析、动作识别等任务。它的基本思想是通过两个不同的网络流来处理不同类型的信息流。最典型的例子是视频分类任务中的两个流,一个处理静态图像信息(通常是视频的每一帧),另一个处理动态信息(通常是光流,描述了视频帧之间的运动)。下面是双流网络的优缺点分析:

优点

  1. 能够处理多模态信息

    双流网络能够同时处理不同类型的输入信息,例如静态图像流和动态光流流。通过结合这两种信息,可以更全面地理解视频内容,尤其在动作识别中,静态图像能够捕捉物体的外观信息,而动态流可以捕捉物体的运动信息。
  2. 增强表达能力

    每个流都专注于不同的特征提取任务,从而有助于模型提取更多的信息并增强分类的准确性。例如,光流流能够捕捉时间上的运动变化,静态图像流则可以捕捉空间上的细节。
  3. 提高鲁棒性

    由于网络通过不同流处理不同类型的信息,能够在某种信息缺失的情况下,仍然保持较强的鲁棒性。例如,如果一个流受到噪声影响,另一个流仍然能提供有用的信息。

缺点:

  1. 计算开销大

    • 双流网络需要两个独立的网络处理不同的流,这意味着需要更多的计算资源,尤其是在处理长视频或高分辨率图像时。两条流分别进行计算和特征提取,导致网络参数量和计算复杂度较高。

  2. 训练难度高

    • 双流网络需要同时训练两个流,这可能会增加训练过程的复杂性,并且两个流之间的学习过程可能不完全同步,导致训练过程不稳定或收敛速度较慢。

  3. 难以共享信息

    • 虽然两个流可以分别处理不同的信息,但它们并不总是能够很好地共享信息。这可能导致某些信息在流之间没有得到有效融合,降低模型的整体性能。

  4. 对数据质量要求高

    • 双流网络依赖于不同类型的数据(如图像和光流),如果数据不充分或质量不高,可能会导致信息缺失或冗余,影响最终的识别效果。

相关文章:

视频理解开山之作 “双流网络”

1 论文核心信息 1.1核心问题 任务:如何利用深度学习方法进行视频中的动作识别(Action Recognition)。挑战: 视频包含时空信息,既需要捕捉静态外观特征(Spatial Information),也需要…...

每日一题——搜索二维矩阵

搜索二维矩阵 一、题目背景二、题目描述示例 1:示例 2:约束条件: 三、解题思路分析1. **错误思路回顾**2. **Z字形查找算法**算法步骤: 3. **算法优势** 四、代码实现代码说明: 五、测试用例测试用例 1:测试…...

PPT 小黑第21套

对应大猫22 动作按钮 “转到首页” 编号从1开始显示,点设计 -幻灯片大小 -修改幻灯片编号起始值为0(那么第二张幻灯片页码为1)...

大模型day01自然语言+大模型+环境

[TOC]大模型day01 自然语言处理 汉字的词是连着的,所以需要一个汉语处理模块,把词语、成语自动加空格隔开。 知识图谱构建——>从大语言文本挖掘出来 自然语言处理:翻译、智能语音 自然语言处理:理解一句话意思&#xff0c…...

VSTO(C#)Excel开发3:Range对象 处理列宽和行高

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…...

【2025】Electron + React 架构筑基——从零到一的跨平台开发

引言 源代码仓库: Github仓库【electron_git】 你是否厌倦了在命令行中反复输入git status,却依然无法直观看到文件变化? 是否羡慕VS Code的丝滑Git集成,却苦恼于无法定制自己的专属工具? 本专栏将为你打开一扇新的…...

AWS 如何导入内部SSL 证书

SSL 证书的很重要的功能就是 HTTP- > HTTPS, 下面就说明一下怎么导入ssl 证书,然后绑定证书到ALB. 以下示例说明如何使用 AWS Management Console 导入证书。 从以下位置打开 ACM 控制台:https://console.aws.amazon.com/acm/home。如果您是首次使用 ACM,请查找 AWS Cer…...

清华北大推出的 DeepSeek 教程(附 PDF 下载链接)

清华和北大分别都有关于DeepSeek的分享文档,内容非常全面,从原理和具体的应用,大家可以认真看看。 北大 DeepSeek 系列 1:提示词工程和落地场景.pdf  北大 DeepSeek 系列 2:DeepSeek 与 AIGC 应用.pdf  清华 Deep…...

【空地协同技术教程:概念与技术手段解析】

空地协同技术教程:概念与技术手段解析 一、空地协同的概念与核心价值 定义 空地协同(Air-Ground Collaboration)是指通过无人机(UAV)与无人车(UGV)等异构平台的跨域协作,利用各自的…...

【2025小黑课堂】计算机二级WPS精选系列20G内容(可下载:真题+预测卷+软件+选择题)

2025年3月全国计算机等级考试即将于3月29日至31日举行。为了帮助广大考生高效备考,小编特意收集并整理了最新版(备考2025年3月)的小黑课堂计算机二级WPS 电脑题库软件,助力考生在考试中游刃有余,轻松通关! …...

蓝桥杯备赛:炮弹

题目解析 这道题目是一道模拟加调和级数,难的就是调和级数,模拟过程比较简单。 做法 这道题目的难点在于我们在玩这个跳的过程,可能出现来回跳的情况,那么为了解决这种情况,我们采取的方法是设定其的上限步数。那么…...

kotlin高级用法总结

Kotlin 是一门功能强大且灵活的编程语言,除了基础语法外,它还提供了许多高级特性,可以帮助你编写更简洁、高效和可维护的代码。以下是 Kotlin 的一些高级用法,涵盖了协程、扩展函数、属性委托、内联类、反射等内容。 协程&#x…...

transformers - AWQ

本文翻译整理自:https://huggingface.co/docs/transformers/main/en/quantization/awq 文章目录 一、引言二、加载 autoawq 量化的模型三、Fused modules支持的架构不受支持的架构 四、ExLlamaV2五、CPU 一、引言 Activation-aware Weight Quantization (AWQ) 激活…...

mysql下载与安装、关系数据库和表的创建

一、mysql下载: MySQL获取: 官网:www.mysql.com 也可以从Oracle官方进入:https://www.oracle.com/ 下载地址:https://downloads.mysql.com/archives/community/ 选择对应的版本和对应的操作系统&#xff…...

在华为设备上,VRRP与BFD结合使用可以快速检测链路故障并触发主备切换

在华为设备上,VRRP与BFD结合使用可以快速检测链路故障并触发主备切换。以下是VLAN接口下配置VRRP与BFD的步骤: 目录 1. 配置BFD会话 2. 配置VLAN接口 3. 配置VRRP 4. 验证配置 5. 保存配置 1. 配置BFD会话 在两台设备之间配置BFD会话,…...

RK3588开发笔记-fiq_debugger: cpu 0 not responding, reverting to cpu 3问题解决

目录 前言 一、FIQ Debugger介绍 二、rockchip平台配置方法 三、问题分析定位 IRQF_NOBALANCING 的含义 总结 前言 在进行 RK3588 开发的过程中,我们可能会遇到各种棘手的问题。其中,“fiq_debugger: cpu 0 not responding, reverting to cpu 3” 这个错误出现在RK3588的…...

新能源汽车充电综合解决方案:安科瑞电气助力绿色出行

安科瑞 华楠 18706163979 随着新能源汽车的迅猛发展,充电基础设施的建设成为了推动行业进步的关键。然而,充电技术滞后、运营效率低下、车桩比失衡等问题,依然困扰着广大车主和运营商。今天,我们要为大家介绍一款新能源汽车充电…...

大语言模型进化论:从达尔文到AI的启示与展望

文章大纲 引言大语言模型中的“进化论”思想体现遗传变异过度繁殖和生存斗争大模型“过度繁殖”与“生存竞争”机制解析**一、过度繁殖:技术迭代的指数级爆发****二、生存竞争:计算资源的达尔文战场****三、生存竞争胜出关键要素****四、行业竞争格局演化趋势**核心结论自然选…...

Spring Boot与Axon Framework整合教程

精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 简介 Axon Framework是一个用于构建CQRS(命令查询职责分离)和事件溯源(Event Sourcing)应用的框架&#xff0…...

深度学习Dropout

一、概念 Dropout是为了解决过拟合,当层数加深,就有可能过拟合,这个时候模型太复杂就会过拟合,那么可以让模型变得简单一点,所以就可以随机挑一些神经元,让某些神经元的输出是0,只保留部分神经…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

解锁数据库简洁之道:FastAPI与SQLModel实战指南

在构建现代Web应用程序时,与数据库的交互无疑是核心环节。虽然传统的数据库操作方式(如直接编写SQL语句与psycopg2交互)赋予了我们精细的控制权,但在面对日益复杂的业务逻辑和快速迭代的需求时,这种方式的开发效率和可…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

如何将联系人从 iPhone 转移到 Android

从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...

C# SqlSugar:依赖注入与仓储模式实践

C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...