武光利,李雷霆,郭振洲,王成祥
(1.甘肅政法大學網絡空間安全學院,蘭州 730070;2.中國民族語言文字信息技術教育部重點實驗室(西北民族大學),蘭州 730030)
近年來,隨著科技的不斷進步,人們拍攝各種高質量的視頻變得越來越方便,一部手機就可以滿足日常的視頻拍攝需求,在享受便捷視頻捕獲與分享時也面臨一個嚴峻挑戰:海量視頻數據的理解與分析。面對這些無窮盡的視頻數據,用戶迫切需要一個能夠快速分析視頻內容的有效工具,視頻摘要技術因此應運而生,成為幫助人們快速瀏覽視頻數據的關鍵工具[1]。
視頻摘要就是以視頻的結構和內容為主要分析目標,獲取其中有意義的片段,然后用特定的方法將片段拼接成能概括視頻內容的視頻概要。視頻摘要根據不同的獲取方式可以分為兩類:動態視頻摘要和靜態視頻摘要。
靜態視頻摘要是從原始視頻中提取少部分圖像作為摘要內容,這些靜止幀概括了視頻的關鍵內容,稱為關鍵幀。靜態視頻摘要按關鍵幀提取方法不同,主要分為以下幾類:
1)基于視頻聚類的關鍵幀提取方法。聚類算法廣泛應用于模式識別、音頻分析、圖片分割、信息檢索等領域。鏡頭聚類以聚類的方法為基礎,對每個鏡頭進行分析,然后將特征相近的幀劃分為一類,最后從每一類中按照一定方法選取關鍵幀,文獻[2-4]通過對圖像視覺特征的提取和改進,提升了聚類方法的準確率。聚類方法對未知視頻的預測效果較差,而且運算復雜度較高。
2)基于視頻幀信息的關鍵幀提取方法。這一類方法主要考慮視頻幀包含的特征信息,例如顏色、形狀、紋理等,通過提取到的特征信息,計算相鄰幀之間的相似性,將相似性低的幀按照需求選為關鍵幀[5-6]。基于視頻幀信息的方法可以根據視頻內容的顯著性變化來靈活確定關鍵幀數目,但不足之處是:當鏡頭的變化較多時,容易導致選取的關鍵幀數目過多,造成冗余。
3)基于鏡頭邊界的關鍵幀提取方法。這類方法首先要將源視頻進行鏡頭劃分,之后在不同鏡頭中選取關鍵幀[7-9]。Gong 等[10]提出的SeqDPP(Sequence Determinantal Point Process)方法是一個用于不同序列子集選擇的概率模型,能夠較好地考慮到幀之間的依賴關系和視頻的順序結構。基于鏡頭的方法容易設計,計算速度快,非常適合于場景變換少的情況;但當視頻的鏡頭變換復雜且方式多樣時,會導致提取的關鍵幀不能準確概括源視頻內容。
靜態摘要最大的不足是合成的摘要不具有時序連貫性,給人一種快進的感覺,而動態摘要是將鏡頭進行組合,在不丟失關鍵內容的同時保留了視覺連貫性。因此本文重點研究動態摘要。
動態視頻摘要主要包括視頻鏡頭分割、視頻鏡頭評價、視頻鏡頭選擇。視頻鏡頭分割是將一個完整視頻切分成若干個短視頻,是動態摘要的基礎;視頻鏡頭評價則是根據不同的方法計算出每個鏡頭的重要性;視頻鏡頭選擇是根據具體需求選擇合適的鏡頭組合成視頻摘要。
鏡頭劃分完成后,需要選出關鍵鏡頭組合成摘要。視頻可以看作具有時間連續性的圖片集,目前循環神經網絡(Recurrent Neural Network,RNN)在處理序列數據方面效果顯著,雖然常用的卷積神經網絡(Convolutional Neural Network,CNN)在提取單張圖片特征方面能力較強,但往往忽視了圖片間的內在關聯,而RNN 充分考慮時間維度,能夠描述出時間上連續狀態的輸出,還具有一定的記憶功能。其中長短期記憶(Long Short-Term Memory,LSTM)網絡作為RNN的變體,常用于解決RNN 無法構建遠程依賴的問題,對長序列數據的處理十分擅長。LSTM網絡大多數用于編碼器-解碼器架構,這種架構可以高效率處理變長序列問題。因此,基于編碼器-解碼器架構的LSTM 網絡應用于視頻摘要領域是可行且有效的。
Zhang 等[11]首次將LSTM 網絡應用到視頻摘要任務,提出了VSLSTM(Video Summary Long-Short Term Memory)模型,通過雙向長短期記憶(Bi-directional Long-Short Term Memory,BiLSTM)網絡預測視頻幀的重要性得分,同時為了提高生成摘要的多樣性,還提出了DPPLSTM(Determinantal Point Process Long-Short Term Memory)模型,通過BiLSTM 網絡輸出幀級重要性分數和幀間相似度,然后將它們與行列式點過程結合,選擇出最終摘要。Ji 等[12]將注意力機制與編碼解碼器相結合完成視頻摘要任務,其中編碼部分由BiLSTM 網絡構成,解碼器部分通過基于注意力機制的LSTM 網絡完成解碼并輸出。
上述基于編碼器-解碼器架構的模型已被驗證能有效處理長序列數據,但仍有一些不足。例如,編碼器-解碼器框架的預測效果雖然較好,但是計算復雜度非常高,尤其是選擇了BiLSTM 網絡作為基礎模型時,隨著輸入序列增加,計算量急劇增大,模型輸出的特征維度變大,使得全連接層參數過多,容易出現過擬合問題。
為了減少過擬合問題的出現,同時考慮到視頻摘要具有時序性質,本文提出了基于改進的BiLSTM網絡的視頻摘要生成模型。該模型基于編碼器-解碼器框架,編碼器部分由CNN 提取視頻幀的深度特征,而解碼器則由結合了最大池化的BiLSTM 網絡構成。本文的訓練是基于有監督的訓練,當CNN 提取的視頻幀特征傳入BiLSTM 網絡后,輸出基于時間序列的特征,該特征輸入最大池化進行特征優化后,經由全連接層輸出模型最終結果。將BiLSTM網絡與最大池化結合后,能夠降低特征維度,突出關鍵特征,過濾無關特征,減少全連接層所需參數,避免過擬合問題。
本文的主要工作如下:
1)提出了一種基于改進的BiLSTM網絡的視頻摘要模型。通過將BiLSTM網絡與最大池化的結合,有效降低了輸出特征維度,降低了全連接層的運算復雜度,避免出現過擬合問題。
2)在兩個公開數據集TvSum 和SumMe 上與基于LSTM 網絡的方法進行了比較,結果顯示本文模型的F1-score 分別提高1.4和0.3個百分點。
本文使用的CNN模型是VGG(Visual Geometry Group)[13]。VGG 網絡突出特點是簡單,這體現在它的所有卷積層的卷積核尺寸均為3,池化層核均為2,模型由各個層堆疊而成。例如VGG 網絡的經典之一:VGG16,它包含13 個卷積層和5 個池化層以及3 個全連接層,相同尺寸卷積核經過卷積后能夠產生相同尺寸特征圖,2×2 的池化核使得池化后的特征圖大小縮減為原來一半。圖1展示了VGG16的網絡結構。

圖1 VGG16網絡結構Fig.1 VGG16 network structure
BiLSTM 網絡由一個前向的LSTM 和一個后向的LSTM 組成,能夠對輸入數據進行正向和反向遍歷,可以為網絡提供更豐富的信息,讓網絡能夠更快、更充分地學習。
LSTM 是RNN 的一個變形,RNN 的一個顯著缺點就是沒辦法處理較長的序列數據,會出現梯度消失和梯度爆炸問題。針對這種問題,LSTM新增了一種結構:細胞結構,這種結構由細胞狀態ct和三個門組成。細胞狀態可以理解為一條傳送帶,它在整條鏈上運行,通常ct是由上一個狀態ct-1和一些其他數值構成,因此細胞態的改變是緩慢的。門可以讓信息選擇性地通過,主要由一個sigmoid 層和點乘運算構成,sigmoid層的輸出中每個元素都是0~1 的實數,它的大小代表著是否讓信息通過的權重,0 代表不允許通過,1 代表全部通過。細胞結構如圖2所示。

圖2 LSTM細胞結構Fig.2 LSTM cell structure
細胞結構中的第一個門被稱為遺忘門ft,從名字上不難理解,它決定著從細胞狀態中丟棄多少信息。該門首先會讀取上一次輸出的隱藏狀態ht-1和本次的輸入xt,經過處理后,輸出一個0 和1 之間的數,這個數的意義就是前面提到的sigmoid輸出值的意義。遺忘門計算公式如下:

式中:σ為sigmoid函數,wf是權重系數,bf是偏置系數。
細胞結構中的第二個門被稱為輸入門,該門控制著有多少新信息加入到細胞狀態中,它需要兩步來實現,第一步輸入狀態it決定哪些信息需要更新,決定備選用于更新的信息。第二步通過乘運算將兩者結合,來對細胞狀態更新。ct-1與ft進行乘運算,然后加上it與的乘運算結果,形成新的候選值。用到公式如下:

細胞結構中的第三個門被稱為輸出門,這個門決定最終輸出哪些信息。輸出的信息基于細胞狀態和輸出狀態ot,ot根據上時刻隱藏狀態ht-1和當前輸入xt來決定要輸出細胞狀態的哪部分,然后將細胞狀態經過tanh 后與ot進行乘運算得到最終輸出結果,用到公式如下:

池化具有兩大優點:一是能夠顯著減少參數數量。圖像經過卷積后獲得圖像的特征,若直接用特征進行運算,將會面臨巨大運算量的挑戰。但是經過池化以后特征減少,模型復雜度降低,能夠極大提高運算速度,同時減少過擬合的出現。二是池化具有平移不變性,這意味著即使圖像產生了小的平移,仍然會產生同樣的池化特征。例如在對視頻中關鍵人物進行特征提取時,即使兩張圖像中關鍵人物的位置不同,經過池化后依舊可以提取到相同的關鍵特征,更好地完成任務。
常用的池化方式有最大池化(max pooling)和平均池化(mean pooling)。兩者都是提取區域特征,能夠過濾部分不重要信息,使得細節上更容易識別。通常來說,最大池化能夠更多地保留紋理特征,平均池化能更多地保留背景特征,根據任務不同選擇合適的池化方式。圖3展示了特征的池化過程。

圖3 特征池化過程Fig.3 Process of feature pooling
基于監督學習的視頻摘要任務可以看作是序列預測問題,因此設計了一個基于改進的BiLSTM網絡的視頻摘要生成模 型BLMSM(Bi-directional Long short-term memory Max pooling Summarization Model),模型結構如圖4 所示。該網絡通過卷積神經網絡VGG16 來提取圖像特征,然后通過BiLSTM 網絡將圖像特征轉換為時序特征,增加了模型可學習的上下文特征;之后創新地結合最大池化方法,將特征進行優化,更加突出中心關鍵特征淡化無關特征;最后通過全連接層得到視頻幀的重要性得分,然后將視頻幀得分轉換為鏡頭得分,通過0/1背包算法選擇出關鍵鏡頭,最后合成為視頻摘要。圖5展示了算法流程。

圖4 BLMSN模型結構Fig.4 BLMSN model structure

圖5 基于改進BiLSTM的視頻摘要生成技術流程Fig.5 Flowchart of video summarization generation technology based on improved BiLSTM
圖像特征提取部分主要由VGG16 的卷積層和池化層完成,共13 個卷積層和5 個池化層,卷積層的卷積核大小均為3×3,池化核均為2×2。每經過一次卷積提取的圖像特征便不斷加深,然后利用池化層過濾部分無效特征,突出局部重要特征,通過這種反復堆疊3×3 的小卷積核與2×2 池化核,容易形成深層的網絡結構來提升性能,進而提取出更加有效的圖像特征。圖6展示了圖像特征提取過程。

圖6 VGG16提取圖像特征Fig.6 VGG16 extracting image features
LSTM將卷積神經網絡階段輸出的深度特征,以時間步的形式輸入到LSTM 的網絡中,并基于監督學習與深度學習進行模型訓練,得到時序特征。由前面可知,VGG16 最終輸出特征維度為(b,c,h,w),LSTM 中batch-first 參數設置為True 后輸入張量的維度(batch_size,seq_len,input_size),因此重新定義VGG16 輸出維度為(b,c,h×w)作為LSTM 輸入,使得每一幀的特征信息能夠完整傳遞。同時,為了能更好地考慮時間序列帶來的影響,本文選取BiLSTM,因為當前時刻的輸出不僅與之前的狀態相關,還可能與將來的狀態有關,因此兩個LSTM 分別從正向和反向進行計算,最后對兩個結果進行合并。圖7展示了BiLSTM提取圖像時序特征。

圖7 BiLSTM提取圖像時序特征Fig.7 BiLSTM extracting image sequence features
max pooling 的應用,減少了網絡參數與運算量,能降低模型復雜度,防止過擬合發生,同時對于之后的全連接層,還能減少單個過濾器的參數數量,提升運算效率。
本次max pooling 由MaxPool2d 實 現,其 中kernel_size 和stride 參數均設置為5,padding 參數置為0,dilation 參數置為0。池化的輸出尺寸計算公式如下:

式中:p為參數padding,d為參數dilation,ksize為參數kernel。
特征優化處理是整個模型的核心,同時也是創新點所在,采用了最大池化的方法對LSTM 輸出的時序特征進行降維壓縮,提升運算速度。最大池化對于不同位置的關鍵特征,既可以保持特征位置信息,又具有平移不變性,因此關鍵特征即使出現位置不同,也能將其提出。在視頻摘要任務中,關鍵特征十分重要,例如關鍵的人和物,這些關鍵特征的信息能否成功提取對于視頻摘要的生成起決定性作用。特征優化如圖8所示。

圖8 特征優化過程Fig.8 Process of feature optimization
視頻摘要最終展現出的是關鍵幀組合成的壓縮視頻,因此關鍵幀的選擇直接影響到視頻摘要的質量。本文模型輸出的是幀級別的重要性得分,相比對幀集合的打分,計算復雜度明顯降低,同時對于幀數的選擇靈活,能夠根據不同場景選擇適當數目關鍵幀。


式(7)亦可稱為經驗風險,因此最優模型的策略等價于經驗風險最小,最優化問題轉換為經驗風險最小化問題:
式中Γ為模型假設空間
本文任務基于動態視頻摘要技術,最終合成的摘要應當是視頻鏡頭的合集,由于模型輸出結果是幀級別重要性得分,因此需要將幀級分數轉化為鏡頭分數。首先要對視頻進行鏡頭劃分,本文使用在鏡頭分割方面效果優異的內核時間分割(Kernel Temporal Segmentation,KTS)算法[14]。對視頻執行變點檢測并將視頻進行鏡頭分段。然后根據鏡頭中每幀的分數加和求平均得到鏡頭的分數ci(式(9))。此外,根據Fajtl等[15]的建議,生成摘要的長度限制為原始視頻長度的15%,本文任務需要選擇最大化分數的鏡頭,選擇滿足條件的鏡頭等價于NP 難問題,因此使用0/1 背包算法來選擇合適鏡頭組成摘要(式(10))。

其中:ci為第i個鏡頭,Ni為第i個鏡頭包含的幀數,si,j為第i個鏡頭中第j幀的分數;ui∈{0,1}表示是否被選為關鍵鏡頭;K表示鏡頭的數量,L表示視頻的總幀數。
3.1.1 數據集
本次實驗主要在TvSum[16]和SumMe[17]兩個數據集上進行,表1展示了它們的具體信息。

表1 兩個標準數據集的詳細信息Tab.1 Details of two standard datasets
TvSum 數據集是視頻摘要領域常用的數據集。它包含了50 個視頻,所有視頻均來自YouTube,這50 個視頻共分成10個主題,每個主題包含5 個視頻。該數據集還包含了每個視頻的標注得分,這些得分來自20 個不同人使用亞馬遜儀器進行標注,標注從1(不重要)到5(重要)進行選擇。圖9 展示了數據集部分圖像。

圖9 TvSum視頻圖像示例Fig.9 Video image examples of TvSum
SumMe數據集是驗證視頻摘要技術的一個常用基準。它由25 個視頻組成,視頻包含假日外出、美食鑒賞、運動挑戰等多個主題。每個視頻由15~18個人進行標注。圖10展示了數據集的部分圖像。

圖10 SumMe視頻圖像示例Fig.10 Video image examples of SumMe
3.1.2 評估指標
為了與其他方法進行比較,本文按照文獻[14]中的評價方法,即通過對比模型生成的視頻摘要和人工選擇的視頻摘要的一致性來評估模型的性能,衡量指標采用計算F1-score值。假設S為模型生成的摘要,G為人工選擇的摘要,O為S和G重疊的部分,精準率和召回率計算如下:

由式(11)、(12)可以計算出用于評估視頻摘要的F1-score。

3.1.3 實驗設置
選取數據集的80%作為訓練集,剩下20%作為測試集。TvSum 數據集共50 個視頻,其中40 個視頻用于訓練,10 個視頻用于測試,視頻幀速率均為30 幀/s(Frames Per Second,FPS);SumMe 數據集共25 個視頻,20 個視頻用于訓練,10 個視頻用于測試,視頻幀速率為30 FPS。由于視頻分辨率不同,實驗時將分辨率統一設置為224×224。考慮到視頻進行鏡頭劃分后,同一個鏡頭中的幀是非常相似的,同時相鄰幀包含的信息量也是相同的,因此對每個視頻進行子采樣,每15 幀選取一幀,使得模型訓練速度大大加快。
該次實驗使用的兩個基準數據集數據量較小,同時為了減少過擬合現象的出現和提升模型泛化能力,本項目對數據集使用5 折交叉驗證。此外,根據文獻[16-18]中的相關研究,對TvSum 評估測試時,選取每個用戶F1-score 值的平均值作為最后結果;對SumMe 評估測試時,選取每個用戶F1-score值中最大值作為最后結果。
3.2.1 對比實驗
本文選擇了兩種基于LSTM 算法的視頻摘要模型進行對比,對比數據均來自原始論文:1)VSLSTM[11]使用雙向LSTM為基礎,建立過去和將來方向上的遠程依賴,最后與多層感知器相結合;2)DPPLSTM[11]是在VSLSTM 的基礎上新增了行列式點過程,能夠增加生成摘要的多樣性。
根據表2 數據可知,本文方法在兩個基準數據集上相比其他兩種LSTM 方法取得了更好的效果。在TvSum 數據集上,本文的方法F1-score 值提高了1.4 個百分點,在SumMe 數據集上,本文的方法F1-score 提高了0.3 個百分點。分析可知,本文的方法(BLMSN)將BiLSTM 與max pooling 結合,在保留前面方法優點的同時,通過max pooling保留了重要特征,過濾了部分無關特征,同時達到了降維的效果,減少了全連接層參數數量,避免了過擬合的出現,提高了摘要選擇準確性。

表2 BLMSN模型與其他模型的F1-score比較 單位:%Tab.2 Comparison of F1-score between BLMSN model and other models unit:%
3.2.2 定性結果與分析
為了更好地直觀展示本文模型生成的視頻摘要質量,以數據集TvSum 中的視頻4 為例,繪制它們真實分數與預測分數如圖11 所示,實線表示人工選擇的真實分數,點線表示模型預測分數。從圖11 可以看到本文方法預測得分與人工打分變化趨勢基本一致,說明了方法具有可行性,但在第90 幀與第200 幀附近預測不夠準確,說明方法還有提升空間。總的來說,本文方法與人工摘要之間具有明確的關聯性,證明了該方法的有效性。

圖11 視頻4預測分數對比Fig.11 Comparison of prediction scores in video 4
3.2.3 效果預測
本文提出的BLMSN 模型可用于制作視頻摘要,能向用戶快速展示一個較長視頻的整體內容。為了檢驗模型的泛化性能,本文選取數據集UCF-crime中第10個視頻進行測試。
原始視頻“Crime_10”時長約為2 min 12 s,描述了一伙人用車撞開防護進行偷盜的事件,提取到的關鍵鏡頭如圖12 所示。

圖12 本文方法提取視頻“Crime_10”中的關鍵鏡頭Fig.12 Key shots extracted by the proposed method in vi deo“Crime_10”
原視頻是監控攝像頭下拍攝到的犯罪事件,通過視頻摘要技術能夠將數分鐘的視頻壓縮至數十秒甚至數秒,同時不丟失關鍵信息。這也是將來打算更深一步研究的方向,將視頻摘要技術同公安領域結合,使數百小時的監控視頻縮短至幾十分鐘,幫助辦案人員提高效率,快速鎖定目標。
本文提出一種基于改進的BiLSTM的視頻摘要生成方法,該方法通過CNN 提取視頻幀的深度特征,然后利用BiLSTM獲得時序特征,將時序特征經由最大池化進行特征優化,有效降低了特征維度,突出關鍵特征,減少無關特征,同時減少了后續全連接層所需的參數數量,提升了運算速度,避免了過擬合問題。雖然模型預測分數基本與人工選擇分數變化一致,但部分分數轉折段的預測仍不夠準確,導致最終F1-score 值較低,如何構建又快又準的視頻摘要模型,同時跨場景應用時仍然能保持優異的效果是今后主要的努力方向。