3DCNN参数解析:2013-PAMI-3DCNN for Human Action Recognition

2024-06-14 21:32

本文主要是介绍3DCNN参数解析:2013-PAMI-3DCNN for Human Action Recognition,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

3DCNN参数解析:2013-PAMI-3DCNN for Human Action Recognition


3DCNN框架图

参数分析
Input:7 @ 60 × \times × 40, 7帧,图片大小60 × \times × 40

hardwired: H1
产生5通道信息,分别是gray, gradient-x, gradient-y, optflow-x, optflow-y。前三个对于每一张图片都计算得到一张图,后两个是相邻两张图片得到一张图。
因此,经过hardwired可以得到:7 × \times × 3 + 6 × \times × 2 = 33
经过hardwired可以得到33 @ 60 × \times × 40

3DCNN layer:C2
对于前面的5个通道,每个通道都用2个kernel size: 7 × \times × 7 × \times × 3 (7 × \times × 7是spatial dimension, 3是temporal dimension)的3D卷积(padding=0, stride=1)
((7-3+1) × \times × 3 + (6-3+1) × \times × 2) × \times × 2 = 23 × \times × 2 (5个通道分别有[5,5,5,4,4]个)
输出大小是:(60-7+1)/1 = 54; (40-7+1)/1 = 34
因此,经过C2可以得到 23 × \times × 2 @ 54 × \times × 34
C2的参数量:5 × \times × 2 × \times × (7 × \times × 7 × \times × 3+1)= 1480

Subsampling layer: S3
用2 × \times × 2的subsampling
输出:23 × \times × 2@27 × \times × 17
参数量:23 × \times × 2 × \times × 2=92

3DCNN layer:C4
对于前面的5个通道(5个通道分别有[5,5,5,4,4]个feature maps),每个通道都用2个kernel size: 7 × \times × 6 × \times × 3 (7 × \times × 6是spatial dimension, 3是temporal dimension)的3D卷积(padding=0, stride=1),每个位置用了3个conv
((5-3+1) × \times × 3 + (4-3+1) × \times × 2 ) × \times × 2 × \times × 3 = 13 × \times × 6 (5个通道分别有[3,3,3,2,2]个)
输出大小是:(27-7+1)/1=21;(17-6+1)/1=12
因此,经过C4可以得到 13 × \times × 6 @ 21 × \times × 12
C2的参数量:5 × \times × 6 × \times × (7 × \times × 6 × \times × 3+1)=3810

Subsampling layer: S5
用3 × \times × 3的subsampling
输出:13 × \times × 6 @7 × \times × 4
参数量:13 × \times × 6 × \times × 2=156

CNN layer:C6
kernel size: 7 × \times × 4,num output = 128 (每个都和前面S5的78个feature map连接)
因此,经过C6可以得到 128 @ 1 × \times × 1
C6的参数量:128 × \times × 78 × \times × (7 × \times × 4+1)= 289536

最后一层:
输出3 classes, 全连接
参数量:3 × \times × 128 = 384

综上,整个网络的参数量是1480 + 92 + 3810 + 156 + 289536 + 384 = 295458

喜欢请打赏,一毛两毛也是个意思,么么哒
支F宝账号:2363891614@qq.com
在这里插入图片描述

这篇关于3DCNN参数解析:2013-PAMI-3DCNN for Human Action Recognition的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

MySQL中时区参数time_zone解读

《MySQL中时区参数time_zone解读》MySQL时区参数time_zone用于控制系统函数和字段的DEFAULTCURRENT_TIMESTAMP属性,修改时区可能会影响timestamp类型... 目录前言1.时区参数影响2.如何设置3.字段类型选择总结前言mysql 时区参数 time_zon

Python如何使用seleniumwire接管Chrome查看控制台中参数

《Python如何使用seleniumwire接管Chrome查看控制台中参数》文章介绍了如何使用Python的seleniumwire库来接管Chrome浏览器,并通过控制台查看接口参数,本文给大家... 1、cmd打开控制台,启动谷歌并制定端口号,找不到文件的加环境变量chrome.exe --rem

使用Python实现批量访问URL并解析XML响应功能

《使用Python实现批量访问URL并解析XML响应功能》在现代Web开发和数据抓取中,批量访问URL并解析响应内容是一个常见的需求,本文将详细介绍如何使用Python实现批量访问URL并解析XML响... 目录引言1. 背景与需求2. 工具方法实现2.1 单URL访问与解析代码实现代码说明2.2 示例调用

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

SpringCloud配置动态更新原理解析

《SpringCloud配置动态更新原理解析》在微服务架构的浩瀚星海中,服务配置的动态更新如同魔法一般,能够让应用在不重启的情况下,实时响应配置的变更,SpringCloud作为微服务架构中的佼佼者,... 目录一、SpringBoot、Cloud配置的读取二、SpringCloud配置动态刷新三、更新@R

Linux中Curl参数详解实践应用

《Linux中Curl参数详解实践应用》在现代网络开发和运维工作中,curl命令是一个不可或缺的工具,它是一个利用URL语法在命令行下工作的文件传输工具,支持多种协议,如HTTP、HTTPS、FTP等... 目录引言一、基础请求参数1. -X 或 --request2. -d 或 --data3. -H 或

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

在C#中合并和解析相对路径方式

《在C#中合并和解析相对路径方式》Path类提供了几个用于操作文件路径的静态方法,其中包括Combine方法和GetFullPath方法,Combine方法将两个路径合并在一起,但不会解析包含相对元素... 目录C#合并和解析相对路径System.IO.Path类幸运的是总结C#合并和解析相对路径对于 C

详解Spring Boot接收参数的19种方式

《详解SpringBoot接收参数的19种方式》SpringBoot提供了多种注解来接收不同类型的参数,本文给大家介绍SpringBoot接收参数的19种方式,感兴趣的朋友跟随小编一起看看吧... 目录SpringBoot接受参数相关@PathVariable注解@RequestHeader注解@Reque

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的