ECCV 2018(European Conference on Computer Vision,計算機視覺歐洲大會)與CVPR、ICCV共稱為計算機視覺領域三大頂級學術會議,從今天到14日正在德國慕尼黑舉辦。
騰訊AI Lab 是第二次參加,入選了19篇文章,位居國內企業前列。會議期間,我們選取四篇入選論文做深度解讀,主題依次為影象到影象轉換方法SCAN、視訊再定位、單幀RGB生成三維網路模型和跨年齡人臉識別演算法。
在這篇由騰訊 AI Lab 主導,與美國羅切斯特大學(University of Rochester)合作完成的論文中,作者提出一種新的視訊再定位方法,能在多個備選視訊中快速找到希望搜尋的片段。以下是技術詳細解讀。
■ 論文 | Video Re-localization
■ 連結 | https://www.paperweekly.site/papers/2272
■ 作者 | Yang Feng / Lin Ma / Wei Liu / Tong Zhang / Jiebo Luo
該研究的研究目的是在給定一個欲搜尋的視訊後,在某個備選視訊中,快速找到與搜尋視訊語義相關的片段,這在視訊處理研究領域仍屬空白。
因此本文定義了一個新任務——視訊再定位(Video Re-localization),重組 ActivityNet 資料集視訊,生成了一個符合研究需求的新資料集,並提出一種交叉過濾的雙線性匹配模型,實驗已證明了其有效性。
目前應用最廣泛的視訊檢索方法是基於關鍵字的視訊檢索,這種檢索方法依賴人工標記,而人工標記不能涵蓋視訊的所有內容。基於內容的視訊檢索(CBVR)可以克服上述不足,但是 CBVR 方法一般返回完整的視訊,並不會返回具體的相關內容的位置。行為定位(Action Localization)方法可以定位到具體行為在視訊當中發生的位置,但是這類方法一般只能定位某些具體的行為類別。
▲ 圖1:一段查詢視訊(上)和兩段備選視訊(中、下)。與查詢視訊相關的片段已經用綠色方框標出。
圖 1 當中有三段視訊,當給定圖 1 中的查詢視訊之後,如何在兩個備選視訊當中找到與查詢視訊語義相關的片段?
已有的視訊處理方法並不能很好的解決這個問題。比如,視訊拷貝檢測(Video Copy Detection)方法只能檢測同一段視訊出現的不同位置,拷貝檢測不能處理圖 1 當中的場景變化和動作角色變化的情況。另外,也很難用行為定位方法來解決這個問題,因為訓練行為定位的模型需要大量的行為樣本資料,在圖 1 的例子當中,我們只有一個資料樣本。
思路
為了解決這類問題,我們定義了一項新的任務,任務的名字是視訊再定位。在給定一段查詢視訊和一段備選視訊之後,視訊再定位的目標是快速的在備選視訊當中定位到與查詢視訊語義相關的視訊片段。
要解決視訊再定位問題,面臨的第一個困難是缺少訓練資料。雖然目前有很多視訊資料集,但是它們都不適合視訊再定位研究。訓練視訊再定位模型,需要成對的查詢視訊和備選視訊,並且備選視訊當中需要有和查詢視訊語義相關的片段,相關片段的起始點和終止點也需要標註出來。
收集這樣的訓練資料費時費力。為了得到訓練資料,我們決定重新組織現有的資料集,來生成一個適合視訊再定位研究的新資料集。經過調研,我們決定使用 ActivityNet 資料集當中的視訊,來構建新資料集。
ActivityNet 資料集當中包含 200 類行為,我們認為同一個類別下的兩個行為片段是互相語義相關的。在 ActivityNet 資料集當中,每類行為的樣本被劃分到訓練集,驗證集和測試集。因為視訊再定位並不侷限在一些特定的類別,這種劃分並不適合視訊再定位任務。
因此,我們決定根據行為的類別,來劃分訓練集,驗證集和測試集。我隨機選取了 160 類行為作為訓練用,其餘的 20 類行為做驗證用,再剩餘的 20 類行為做測試用。經過一系列的視訊預處理和篩選,我們得到了近 10000 個可用的視訊。在訓練的過程當中,我們隨機的選擇同一行為類別的兩個視訊,分別作為查詢視訊和備選視訊。測試的時候,我們固定了查詢視訊和備選視訊的組合。圖 2 展示了本文構建的資料集中每部分視訊樣本的數量。
▲ 圖2:本文構建的資料集當中,每類行為當中的視訊樣本個數。綠色,藍色和紅色分別表示訓練,驗證和測試用的視訊。
模型
為了解決視訊再定位問題,我們提出了一種交叉過濾的雙線性匹配模型。對於給定一段查詢視訊以及一段備選視訊,我們首先分別對查詢視訊和備選視訊進行特徵提取,然後將查詢視訊使用注意力機制合併成一個特徵向量用於與備選視訊匹配。匹配的時候,我們過濾掉不相關的資訊,提取相關的資訊,然後用雙向 LSTM 來生成匹配結果。最後,我們把匹配結果整合,輸出預測的起始點和終止點的概率。
接下來,我們著重介紹模型中具有創新性的交叉過濾機制,雙向性匹配機制,以及定位層。
▲ 圖3:模型的框架圖
交叉過濾 (Cross Gating)
因為在備選視訊當中有很多我們不關心的內容,所以在匹配的過程當中,我們需要一種過濾機制來去除不相關的內容。我們根據當前的查詢視訊的特徵,來生成一個過濾門,用來過濾備選視訊。相應的,我們根據備選視訊的特徵,來生成另外一個過濾門,來過濾查詢視訊。
這裡的 σ 表示 sigmoid 函式,⊙ 表示對對應位相乘,、、、是模型的引數。和分別是備選視訊和查詢視訊的特徵表示。
雙線性匹配 (Bilinear Matching)
在得到查詢視訊和備選視訊的特徵表示之後,傳統的方法將他們拼接到一起,然後輸入到神經網路來計算匹配結果。直接的拼接的方法,並不能很好的得到視訊中相關的內容,所以我們採用雙線性匹配的方法來代替拼接,來更加全面的獲取視訊的相關內容。
上式中,、是模型的引數。
定位層(Localization)
根據視訊匹配結果,我們來預測備選視訊當中每個時間點是開始點和結束點的概率。除此之外,我們還預測了一個時間點是在相關視訊片段之內或者不在相關視訊片段之內的概率。
其中,是 LSTM 的隱含狀態,、是模型的引數,是上一層匹配得到的結果。在預測的時候,我們選擇聯合概率最大的視訊片段。
其中,是第 s 個時間點是視訊片段的起始點的概率,是第 e 個時間點是視訊片段的終止點的概率,是第 i 個時間點是視訊片段中的一個時間點的概率。
實驗
在實驗當中,我們設計了三種基線方法。第一個基線方法根據視訊幀之間的相似度,計算兩個視訊片段的相關程度。第二個基線方法把每個視訊編碼成一個特徵向量,然後用特徵向量的距離表示兩段視訊的相關程度。第三個基線方法沒有使用查詢視訊,僅根據備選視訊選擇最有可能包含行為的視訊片段。
在新構建的資料集上定位的定量結果如表 1 所示。另外,一些定性的結果如圖 4 所示。可以看到我們提出的方法取得的較優的定位結果。
▲ 表1. 不同方法的定位結果
▲ 圖4. 定性結果