【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.pswp.cn/news/374178.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374178.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374178.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

java不要在常量和變量中出現易混淆的字母

public class proposal {public static void main(String[] args) {long i1l; System.out.println("i的兩倍是:"(ii));System.out.println("i的兩倍是:"ii); //注意此處和上面的有很大的區別} }輸出:211/** 注意:* …

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

首先創建新項目,文件 -> 新建 -> 項目 下拉菜單選擇C#和Window,選擇WPF應用程序,下一步 輸入項目名,下一步 這里選擇.NET 5.0,也可以選擇其他的,個人習慣.NET,點擊創建 這時候出現初始…

戶籍恢復需要體檢嗎_腦梗死后腳麻能恢復嗎?需要多久能恢復呢?

腦梗死之后腳部麻木,這個有一部分是能夠恢復的,但是相對而言,恢復的時間比較長,在臨床當中出現腳麻主要是因為梗死破壞了患者的感覺神經中樞從而造成。腳部感覺麻木,瘙癢或者是有螞蟻在上面爬的感覺。而且有的更加嚴重…

Alpha版本測試報告

一、測試計劃 Alpha版本即將發布,我們組織隊員進行這一版本的測試。 測試主要針對兩方面:瀏覽器兼容性和功能完善性。 測試分兼容性測試與功能完善性兩部分,兼容性測試分Windows操作系統、Linux系操作系統、Mac OS X操作系統以及手機端Androi…

在J2SE應用程序中模擬CDI的會話和請求范圍

我們目前正在考慮將Naked Objects框架重構為使用JSR-330(依賴注入)和面向EE的老大哥JSR-299(CDI)。 使用香草JSR-330是不費吹灰之力的,但是我們想利用JSR-299中的一些不錯的功能(例如事件和裝飾器&#xff…

VS2019 WPF制作OTA上位機(二)獲取bin文件路徑

OTA升級是通過無線通信遠程把bin文件內容傳輸到單片機,完成升級。 因此上位機需要獲取bin文件的路徑,讀取bin文件內容,將內容分割依次發送(因為單片機的接收緩存不會開得和bin文件一樣大(十幾K甚至幾十K)&a…

java 線程“生產/消費”模型1

/*資源類*/ public class ShareValue {private int total;public ShareValue(int total){this.totaltotal;}//生產void putValue(int value){totalvalue;}//消費資源int getValue(int value){if(total-value>0){total-value;}else{valuetotal;total0;System.out.println(&qu…

PHP - 代碼分離

總代碼&#xff1a; <?php/** Version&#xff1a;1.0* CreateTime&#xff1a;2015年11月11日* Author&#xff1a;HF_Ultrastrong*///引入公共文件,在公共文件中創建&#xff0c;相對于項目的絕對路徑require dirname(__FILE__)./includes/common.inc.php; ?&…

原生js封裝table表格操作,獲取任意行列td,任意單行單列方法

V1.001更新增加findTable-min.js 本次更新&#xff0c;優化了代碼性能方面&#xff0c;增加了部分新功能&#xff0c;可以獲取多個table表格批量操作。 考慮到本人后面的項目中可能涉及到大量的表格操作&#xff0c;提前先封了 一個簡單的操作方法&#xff0c;日后再加完善&…

Spring陷阱:事務測試被認為是有害的

Spring殺手級功能之一是容器內集成測試 。 盡管EJB多年來一直缺乏此功能&#xff08;Java EE 6終于解決了這個問題&#xff0c;但是我還沒測試過&#xff09;&#xff0c;但是Spring從一開始就允許您從Web層開始&#xff0c;通過所有服務來測試整個堆棧。到數據庫的方式。 數據…

python xlwt寫入已有表_Python中,添加寫入數據到已經存在的Excel文件

1.安裝xlrd、xlwt、xlutilshttps://pypi.org/project/xlutils/pip安裝&#xff1a;cmd下輸入&#xff1a;pip install xlrd #讀取exclepip install xlwt #寫入exclepip install xlutils #操作 Excel 文件的實用工具&#xff0c;如復制、分割、篩選等2.代碼主要部分實現import x…

java線程“生產/消費”模型2

/* 資源類 */ class ShareValue {private int total;//判斷對象是否為空private boolean isEmptytrue;//判斷對象是否已滿private boolean isFulltrue;public ShareValue(int total) {this.total total;if(total>0) isEmptyfalse;if(total<1000) isFullfalse;}/** sync…

linux更改用戶名_破舊安卓手機第二春,在安卓手機上使用Linux_deploy運行Linux

由于服務器位于國外&#xff0c;害怕被墻掉導致數據丟失&#xff0c;所以在本地寫了腳本每小時從服務器上導出并下載到本地。但是電腦不可能二十四小時開機&#xff0c;所以很想買一個樹莓派4玩玩。但是太貴遼&#xff0c;還好搜索到了Android運行Linux的方法&#xff0c;下面記…

關于Cocos2d-x中init方法和onEnter方法的區別

init()和onEnter()這兩個方法都是寫實例化對象的類(比如繼承自Node的一些類等等)的時候用到的方法。 一般都是public類型下面的 bool init(); void onEnter(); 兩個方法在實現的時候都要先執行父類方法&#xff0c;比如 Node::init(); Node::onEnter(); 注意&#xff1a; 1.ini…

在5分鐘內在MacOSX Lion中設置JAVA_HOME,MAVEN_HOME,ANT_HOME

人們一直試圖通過Mac上的Java開發世界來解決這個問題&#xff0c;這一直是我一直遇到的問題。 他們必須解決的第一件事就是設置適當的工具和環境。 幸運的是&#xff0c;足夠多的MacOSX &#xff08;Lion或以前的版本&#xff09;仍然有許多重要的工具可用于Java開發&#xff0…

MCUXpress IDE常用設置

NXP的開發工具Xpress是基于eclipse制作的&#xff0c;我們如果需要設置一些東西可以直接搜索eclipse是怎么設置的。 1、字體大小 搜索eclipse字體大小&#xff0c;菜單Window > Preference 而Xpress是漢化了的&#xff0c;英語不好的同學可能懵逼&#xff0c;其實就是菜單欄…

C語言中空格符、空字符、字符數組結束符、換行、回車的區別

空格符和空字符是不一樣的,在ASCII里面,空格(space)符號的ASCII碼是32,而空字符是0, 2個是完全不一樣的2個字符 空字符 一般來描述一個字符串的結尾,其實是控制符的一種,但不能理解為沒有字符,應該理解為代表什么都沒有的字符.好比回車0x0A和換行0x0D雖然不顯示,但是也是控制字…

hdu5823 (附帶數的二進制子集)

二進制數子集的取法,結果不會輸出0&#xff0c;且從大到小 for(int i0 i;i0;i0(i0-1)&i)cout<<i0<<endl; 題意&#xff1a; 給定一個 N個點的圖&#xff0c; 求它的每一個子圖的最小染色數 染色方法是所有子圖中相連接兩點顏色不一致 其中 N≤18 題解&…

anaconda如何卸載庫_小白必看!Anaconda安裝全攻略

本文作者&#xff1a;戴 雯文字編輯&#xff1a;方 言技術總編&#xff1a;張馨月爬蟲俱樂部云端課程來襲&#xff01;爬蟲俱樂部將于2020年8月25日至28日在線上舉行Stata數據分析法律與制度專題訓練營&#xff0c;主要是為了讓學員掌握Stata軟件進階操作&#xff0c;涉及…

RESTful Web服務可發現性,第4部分

這是有關使用Spring 3.1和Spring Security 3.1和基于Java的配置來建立安全的RESTful Web Service的系列文章的第四篇 。 本文將重點介紹REST API&#xff0c;HATEOAS的可發現性以及由測試驅動的實際方案。 引入REST可發現性 API的可發現性是一個值得引起足夠關注的主題&#x…