【CV论文阅读】Rank Pooling for Action Recognition

这是期刊论文的版本,不是会议论文的版本。看了论文之后,只能说,太TM聪明了。膜拜~~

 

视频的表示方法有很多,一般是把它看作帧的序列。论文提出一种新的方法去表示视频,用ranking function的参数编码视频的帧序列。它使用一个排序函数(ranking function)主要基于这样的假设:帧的appearance的变化与时间相关,如果帧vt+1在vt后面,则定义;此外,假设同一动作的视频帧序列,学习到的排序函数的参数,应该的大致一致的。但实际上,后面的假设并没有给出严格的证明,只能说实验的结果证明了这样的想法。

 

参数定义

假设输入的原始帧为x,则一个视频的帧序列为。把原始帧序列经过smooth操作,得到新的序列。但实际上,这个新的序列,可以是与原始帧有同样大小的image,也可以是原始帧的特征向量。视频的实际动态信息为D,而使用一个线性排序函数编码视频的动态信息为,u是函数的参数,也就是需要学习的对象,并用它来表示一个视频。那么,学习的目标就是

 

 

Rank pooling

Rank pooling 的方法是使用一个RankSVM的学习排序算法计算的。整个Rank pooling的学习过程可以总结如下:(1)输入的数据为处理过的帧序列V,由于RankSVM实际上是有监督学习,所以序列的顺序是知道的(2)如上定义了序列的先后顺序,定义正例样本为,其中时间ti在tj之后,反例样本为它的相反数。(3)可以通过SVM的学习算法,学习如下的凸优化问题

 

(4)如果学习到的参数为u,则一个vi的score定义为,并且有

 

Rank pooling方法的优点

(1)与其他的pooling方法对比,如max pooling,average pooling对比,它的鲁棒性更好。

(2)训练的过程是一个最优化问题,所以它的参数可以很好地表达数据的隐含结构。

 

其他参数化的视频表示方法

论文在这里主要介绍了一种PCA的方法,提取k个特征向量,达到降维的目标,这k个主成分同样反映了视频序列的结构。

 

Smooth操作

这里使用的smooth的操作是time varying mean vector,定义一个mean为,则smooth后的image为。使用time varying mean vector学习RankSVM之后的向量u,计算每一帧的score,如下图

 

可以看到,它几乎是有序严格上升的,这表明可以很好地区分出帧的先后顺序。从另一个方面而言,这种方法可以看到它刻画了帧与时间的关系。

 

非线性的rank pooling

通过对输入应用一个非线性映射来获得。由于RankSVM其实也是学习SVM,所以可以应用一个非线性的核,论文选用的是Hellinger核:

 

训练的过程

(1)对输入的每一帧,计算它们的特征向量(HOG、HOF、MBH、TRJ)(2)对特征向量进行smooth,然后通过学习RankSVM得到参数u(3)通过训练数据来类别的SVM。

对于第1、2步的提取特征向量一步,似乎并不是必要的,个人认为。

转载于:https://www.cnblogs.com/jie-dcai/p/5755650.html

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

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

相关文章

VS2019 WPF制作OTA上位机(一)新建工程

首先创建新项目,文件 -> 新建 -> 项目 下拉菜单选择C#和Window,选择WPF应用程序,下一步 输入项目名,下一步 这里选择.NET 5.0,也可以选择其他的,个人习惯.NET,点击创建 这时候出现初始…

户籍恢复需要体检吗_脑梗死后脚麻能恢复吗?需要多久能恢复呢?

脑梗死之后脚部麻木,这个有一部分是能够恢复的,但是相对而言,恢复的时间比较长,在临床当中出现脚麻主要是因为梗死破坏了患者的感觉神经中枢从而造成。脚部感觉麻木,瘙痒或者是有蚂蚁在上面爬的感觉。而且有的更加严重…

Alpha版本测试报告

一、测试计划 Alpha版本即将发布,我们组织队员进行这一版本的测试。 测试主要针对两方面:浏览器兼容性和功能完善性。 测试分兼容性测试与功能完善性两部分,兼容性测试分Windows操作系统、Linux系操作系统、Mac OS X操作系统以及手机端Androi…

VS2019 WPF制作OTA上位机(二)获取bin文件路径

OTA升级是通过无线通信远程把bin文件内容传输到单片机,完成升级。 因此上位机需要获取bin文件的路径,读取bin文件内容,将内容分割依次发送(因为单片机的接收缓存不会开得和bin文件一样大(十几K甚至几十K)&a…

linux更改用户名_破旧安卓手机第二春,在安卓手机上使用Linux_deploy运行Linux

由于服务器位于国外,害怕被墙掉导致数据丢失,所以在本地写了脚本每小时从服务器上导出并下载到本地。但是电脑不可能二十四小时开机,所以很想买一个树莓派4玩玩。但是太贵辽,还好搜索到了Android运行Linux的方法,下面记…

MCUXpress IDE常用设置

NXP的开发工具Xpress是基于eclipse制作的,我们如果需要设置一些东西可以直接搜索eclipse是怎么设置的。 1、字体大小 搜索eclipse字体大小,菜单Window > Preference 而Xpress是汉化了的,英语不好的同学可能懵逼,其实就是菜单栏…

C语言中空格符、空字符、字符数组结束符、换行、回车的区别

空格符和空字符是不一样的,在ASCII里面,空格(space)符号的ASCII码是32,而空字符是0, 2个是完全不一样的2个字符 空字符 一般来描述一个字符串的结尾,其实是控制符的一种,但不能理解为没有字符,应该理解为代表什么都没有的字符.好比回车0x0A和换行0x0D虽然不显示,但是也是控制字…

anaconda如何卸载库_小白必看!Anaconda安装全攻略

本文作者:戴 雯文字编辑:方 言技术总编:张馨月爬虫俱乐部云端课程来袭!爬虫俱乐部将于2020年8月25日至28日在线上举行Stata数据分析法律与制度专题训练营,主要是为了让学员掌握Stata软件进阶操作,涉及…

iOS开发网络篇—文件的上传

说明:文件上传使用的时POST请求,通常把要上传的数据保存在请求体中。本文介绍如何不借助第三方框架实现iOS开发中得文件上传。 由于过程较为复杂,因此本文只贴出部分关键代码。 主控制器的关键代码: YYViewController.m 1 #import…

var模型的matlab实现_Eviews中VAR模型的操作、脉冲响应分析和方差分解的实现

打开文件所在位置,获取数据。选中变量右键open打开var操作EViews,在VAR对象的工具栏中选择“View”|“Lag Structure”|“AR Roots Table/ AR Roots Graph”选项,得到AR根的表和图。结果显示:VAR模型所有根模的倒数都小于1,即都在…

结构体、枚举类型

一、结构体 结构体:就是一个自定义的集合,里面可以放各种类型的元素,用法大体跟集合一样。 1、定义的方法: struct student { public int nianling; public int fenshu; public string name; public string sex; public int sum; …

NXP KW38开发杂记(一)MCUXpress 运行进入NMI_Handler

这里是大佬的具体分析过程,感兴趣可以看看 https://www.cnblogs.com/wenhao-Web/p/13618703.html 解决办法: 在startup_mkw38a4.c文件里,定位到Flash_Config {0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFE}; 把最后一个参数0xFFFFFFFE改…

25个让Java程序员更高效的Eclipse插件

Eclipse提供了一个可扩展插件的开发系统。这就使得Eclipse在运行系统之上可以实现各种功能。这些插件也不同于其他的应用(插件的功能是最难用代码实现的)。拥有合适的Eclipse插件是非常重要的,因为它们能让Java开发者们无缝的开发基于J2EE和服…

NXP KW38蓝牙开发(一)入门第一课:官网蓝牙广播和连接例程,NMI禁止

首先要下载开发使用的IDE:MCUXpresso IDE 下载链接: 进入nxp的官网,搜索KW38 向下翻看,找到Xpresso,点击进入 习惯使用IAR开发的同学也可以下IAR版本,这里以Xpresso为例 下载好后安装,一路默…

views 多个文件夹 netcore_.NET Core中的使用Kestrel服务器理解及应用

Kestrel是一个基于libuv的跨平台.NET Core web服务器,libuv是一个跨平台的异步I/O库。ASP.NET Core模板项目使用Kestrel作为默认的web服务器。Kestrel支持以下功能:HTTPS用于启用不透明升级的WebSockets位于Nginx之后的高性能Unix socketsKestrel 被.NET…

NXP UWB NCJ29D5开发(一)环境搭建

1、从NXP的共享账号下载资料 共享账号需要找对接的NXP人员拿到,他会把资料分享到这个账号,在这个账号里面可以下载 进入nxp官网,登录后点击my nxp,选择Software Licensing and Support 进入后接着选择View accounts 进入后选择…

Stack的三种含义

作者:阮一峰 学习编程的时候,经常会看到stack这个词,它的中文名字叫做”栈”。 理解这个概念,对于理解程序的运行至关重要。容易混淆的是,这个词其实有三种含义,适用于不同的场合,必须加以区分。…

NXP UWB NCJ29D5开发(二)BlinkyLed例程

路径为UWB\NCJ29D5\NCJ29D5_CAS_Examples_v1.4\onic\BlinkyLed\toolsupport\keil 例程怎么来的可以看看上一篇NXP UWB NCJ29D5开发(一)环境搭建 1、 //系统选择外部晶振,时钟频率为55.2Mhz phscaAppHal_Init(PHSCA_APPHAL_XO_CLOCK_SOURCE_…

强肝保肝养肝4大食物

“强肝的食物,保肝的食物有哪些,养肝的食物有哪些”如果您对这些食物不了解不明白。那就看看专家为您推荐的四款强肝保肝养肝的食物。荔枝(供图/华盖)一、是荔枝,荔枝可以保肝,对肝有好处根据《本草纲目》记载荔枝有强肝健胰的效果…

如何查看注解实现_该怎么运用注解呢?Java团队元老有话说

来源 | 异步 15讲能学好诞生24年的JAVA吗?你当然会感到怀疑,众所周知,在技术向的IT论坛上,“如何在十天之内快速掌握好Java?”这类问题,往往会招来嘲笑。来源于知乎但在当下,5分钟能看完一部电影…