標籤:
論文的三個貢獻
(1)提出了two-stream結構的CNN,由空間和時間兩個維度網路組成。
(2)使用多幀的密集光流場作為訓練輸入,可以提取動作的資訊。
(3)利用了多任務訓練的方法把兩個資料集聯合起來。
Two stream結構
視屏可以分成空間與時間兩個部分,空間部分指獨立幀的表面資訊,關於物體、情境等;而時間部分資訊指幀間的光流,攜帶著幀之間的運動資訊。相應的,所提出的網路結構由兩個深度網路組成,分別處理時間與空間的維度。
可以看到,每個深度網路都會輸出一個softmax層,最後會通過一種方法把兩個softmax層的輸出融合:一種是平均層,一種是訓練一個以這些softmax輸出作為特徵的SVM。
空間卷積網路
網路的輸入是單幀,這樣的分類網路其實有很多,例如AlexNext,GoogLeNet等,可以現在imageNet上預訓練,再進行參數遷移。
光流場卷積網路(時間維度網路)
光流場卷積網路的輸入是 stacking optical flow displacement fields between several consecutive frames(不會翻譯……),就是多層兩幀間的光流場,可以從看出。因為光流場可以描述物體的運動資訊。
簡單光流場疊加
方法是計算每兩幀間的光流,簡單地疊加在一起。假設需要追蹤L+1幀(會產生L幀的光流),那麼會把光流分解成X,Y兩個方向的光流,這時會有2L個通道。
軌跡追蹤光流疊加
假設一幀的像素點,可以通過光流來追蹤它在視頻中的軌跡點,從而計算它在每一幀的相應位置的光流向量。同樣的會把光流分解成X,Y兩個方向的光流,這時會有2L個通道。
對於這種方法,我想到DT的論文中談到的一個問題就是:像素點的“漂移”,這很可能會出現在追蹤多幀之後。猜想的是,這個L幀應該不是指訓練視頻的所有幀,這種方法可以很好地區分出前景和背景。
減去平均光流
這主要是為了消去網路攝影機運動引起的相對運動。
多任務訓練
對於空間卷積網路,因為它輸入的只是映像,而且只是一個分類網路,它有大量的資料集可供預訓練,這是為了應對過擬合的問題。
但是對於時間卷積網路,可供訓練的視頻集很少。作者使用多任務訓練的方法,提供兩個softmax輸出層,但網路只有一個。論文的依據是,提供兩個softmax輸出層相當於正則化的過程。這樣融合兩個資料集對網路進行訓練時,其中一個softmax層對其中一個資料集的視頻進行分類,另一個softmax層對另一個資料集進行分類,在最後BP演算法時,把兩個softmax層的輸出加和,作為總的誤差執行BP演算法更新網路的權值。
一些細節問題
1、計算光流是預先處理後儲存的,因為這會影響網路的速度。
2、測試時,對於一個輸入視頻,隨機抽樣固定數的幀,它們的時間維度間隔是一樣的。對於每幀,又計算它的光流場疊加。而每一幀又會在不同的位置採樣,對於一個視頻的誤差,就是總的誤差的平均。
【CV論文閱讀】Two stream convolutional Networks for action recognition in Vedios