宋 佳,陳程立詔
(青島大學計算機科學技術學院,山東青島 266071)
視頻顯著性物體檢測旨在提取人眼最感興趣的目標區域,并在動態場景中將其與背景分離[1]。視頻顯著性物體檢測作為計算機視覺的預處理步驟,被廣泛應用于視頻質量評估[2]、目標跟蹤[3]、視頻壓縮[4]等領域。
目前,圖像顯著性物體檢測研究比較深入,但視頻顯著性物體檢測依然面臨巨大挑戰,其原因是視頻顯著性物體檢測不僅考慮視頻中單幀圖像的空間特征,還考慮受時域上運動特征的影響[6]。根據人體視覺系統特點,人眼對正在運動的物體更敏感,因此將己有的視頻單幀圖像顯著性檢測方法與視頻序列的運動信息相結合能夠有效提高顯著性檢測精確度。隨著深度神經網絡的發展,許多研究[7-8]已經將卷積神經網絡運用到視頻顯著性檢測領域中,而運動信息也作為一個重要因素被考慮在內。研究表明,將運動信息嵌入網絡的優勢,一方面減少問題域并屏蔽非顯著的背景區域,例如當視頻場景中的背景復雜且多樣時,人們僅依靠顏色信息難以識別顯著性物體,但運動信息可以突出顯著性物體的位置信息,另一方面提供了空間連貫性的基本提示,即具有相同位移的圖像像素屬于同一區域的概率較高[7]。
對于運動信息的提取,通過設計有效的網絡結構來實現,如單流網絡和雙流網絡[6]。單流網絡中運動信息的提取依賴循環卷積[8],循環卷積一般以長短期記憶(convLSTM)[9]模型為代表,通過提取長期時序信息以實現具有強時空一致性的較優檢測。然而,convLSTM 模型因過度依賴長期的時序一致性,當連續多幀出現誤檢時,當前幀的特征無法被相鄰幀修復,導致其存在性能瓶頸。由于convLSTM 模型與單流網絡都忽略了光流圖[10]的空間信息,因此在單流網絡的基礎上增加運動分支的雙流網絡能夠有效提取光流的空間線索[11]。
雖然雙流網絡的檢測精度較高,但光流對光強度和局部變化敏感,當顯著物體發生劇烈或慢速地移動時,導致運動估計準確率低和檢測性能下降。針對以上問題,本文提出基于多流網絡一致性的視頻顯著性檢測算法(MSNC),在雙流網絡的基礎上增加先驗流,從而彌補光流信息的不足,同時通過多流一致性融合(MCP)模型優化多流分支,采用循環訓練策略均衡三重網絡的權重。
傳統視頻顯著性檢測算法是以低級線索為主導,采用手工提取特征方式提取運動信息。文獻[13]提出一種兩級學習策略來提取長期時空線索。文獻[14]設計一種簡單的方法,即通過對框級物體進行排序和選擇來識別顯著物體。文獻[15]提取空間和時間邊緣信息,以增強顯著物體定位。傳統視頻顯著性檢測算法是最基礎的檢測算法,其操作簡便。由于運動場景的更新、目標尺寸的變化以及拍攝視角的切換,使得該類算法的檢測準確率難以達到理想的要求,有待進一步提高和完善。
為彌補傳統手工提取特征方式的不足,基于深度學習的視頻顯著性檢測算法通過數據驅動自動提取特征,從而實現較高的精確度和較優的魯棒性。視頻顯著性檢測主流網絡結構如圖1 所示,按照網絡結構不同,分為單流網絡、雙流網絡、3D 卷積網絡、三流網絡。

圖1 視頻顯著性檢測網絡結構Fig.1 Structure of video saliency detection network
單流網絡以長短期記憶(Long Short Term Memory,LSTM)網絡模型為代表,其結構如圖1(a)所示。從圖1(a)可以看出,連續幀作為輸入,首先提取靜態特征,然后利用LSTM 融合幀間信息,并間接獲取時間序列線索。3D 卷積網絡結構如圖1(b)所示,其同時提取時空線索,避免出現時空信息分離的情況,減少了時間消耗。文獻[16]設計一個端到端的3D 框架以獲取時空特征,該框架在編碼器和解碼器后增加了細化組件,主要原理是提取更深層的語義信息來細化時空顯著圖。文獻[17]提出一種基于全卷積的網絡,采用分階段的方式進行顯著性檢測。全卷積網絡首先預計算空間顯著圖,然后融合該空間顯著圖和連續幀以產生最終的時空顯著圖。為擴大感知范圍,文獻[18]采用基于光流的映射關系將長期時序信息添加到當前視頻幀中。文獻[19]提出一種新的方案來感知多尺度時空信息,采用多孔空間金字塔池化[20](Atrous Spatial Pyramid Pooling,ASPP)提取多尺度空間顯著性特征,隨后將這些特征送入雙向convLSTM 網絡中,以獲取長期和多尺度信息。文獻[21]提出一個注意力轉移基線,同時開源了針對視頻顯著性檢測問題的大規模注意力轉移數據集。
雙流網絡結構如圖1(c)所示,以MGA[7]為代表,光流和靜態圖分別作為兩個分支的輸入,之后單個分支對特征信息進行多向融合以得到最終檢測結果。其主要原理是利用運動信息定位顯著物體,同時提供顏色特征的通道權重。此方法的檢測性能雖優于許多單流結構,但其顯著結果極易受光流質量影響。若視頻中運動模式出現快速運動或靜止的情況,光流信息可能會無作用甚至產生負面作用。針對以上問題,本文提出多流網絡一致性檢測算法(MSNC),如圖1(d)所示,利用先驗分支彌補低質量的光流分支,將融合后的分支作用于空間分支,以得到最終的顯著圖。
MSNC 算法使用三重網絡對提取的信息進行檢測,即在雙流的基礎上增加先驗流來彌補運動流的不足,同時實現多流的多向融合互補,采用循環訓練策略避免網絡產生過擬合現象。MSNC 算法主要分為4 個步驟:1)利用空間子網提取顏色信息;2)利用運動子網提取時序信息;3)利用先驗子網提取先驗特征;4)利用多流一致性融合模型多流信息,并生成最終的顯著圖。
MSNC 網絡結構如圖2 所示。該網絡由空間子網、運動子網、先驗子網以及MCP 模型組成。三重分支都采用卷積神經網絡提取預選目標區域特征,使用VGG16[22]前5 層卷積層作為編碼器,其中空間分支和運動分支采用相同的網絡結構,均由編碼器和級聯解碼器構成,分別輸入靜態圖片和光流圖。相比三重分支和空間分支,先驗分支僅包含VGG16[22]基礎網絡的前5 層結構。此外,經MCP 模型融合后的特征輸入到級聯解碼器中,進而融合多級特征以生成最終的檢測圖。

圖2 MSNC 網絡結構Fig.2 Structure of MSNC network
對于卷積神經網絡,淺層網絡提取邊緣和細節信息,其深層網絡提取語義和位置信息。本文使用級聯網絡融合多級特征,使得網絡更關注顯著物體,通過引入注意力機制來增大位置權重。空間子網的結構如圖3 所示。本文采用級聯方式融合多層信息,以降低前2 層卷積的利用率來加快運行速度,以VGG16 作為基礎網絡進行特征提取,該過程分別使用殘差空洞卷積池化金字塔(ResASPP)在Conv3、Conv4、Conv5 這3 個卷積層上提取多尺度特征。ResASPP 模型由ASPP[20]和一個殘差連 接[23]構 成。ASPP 由4 個平行的分支組成,首先將特征通過1×1卷積降維到通道數C為32,對于每個分支都使用空洞卷積,膨脹率分別是1、3、5、7,然后分別用3×3 卷積統一到相同的通道數并進行疊加操作,最后通過殘差連接得到新的特征信息。

圖3 空間子網結構Fig.3 Structure of spatial subnet
新生成的多尺度特征以UNet[24]的形式進行融合,融合方式如式(1)~式(3)所示:

其中:Fi表示第i層卷積特 征;Conv(·)為卷積操 作;Cat(·)為特征在 通道維度的疊 加;Up(·)為上采樣 操作;×為逐元素相乘。首先將第5 層卷積特征Conv5進行上采樣操作,然后與第4 層特征Conv4 相乘得到F1特征,F1繼續上采樣與第3 層卷積Conv3 相乘得到F2特征,最后將融合后的特征在通道維度上進行疊加,得到融合后特征F3,再經過1×1 卷積降維,獲得最終的顯著圖。
目前,提取運動信息的通用技術主要以光流為代表,利用時域中像素的位移以及相鄰幀之間的相關性建立前一幀和當前幀之間的關系。計算光流最先 進的方法包括SPyNet[25]、PWCNet[10],這些光流估計方法在檢測精度和速度方面都具有較優的性能。
深度學習需要大量相關數據進行訓練,但光流圖缺少相應的像素級人工標注,在訓練數據較少的條件下難以得到高質量的運動顯著圖[26]。為此,本文利用顏色真值圖作為訓練標簽對靜態圖像模型進行微調,能夠有效解決在小樣本訓練過程中的過擬合問題,首先,在光流網絡中輸入相鄰視頻幀,經過光流網絡PWCNet[10]獲得稠密的光流圖;其次,對于每個光流數據,使用文獻中的編碼方式將2 通道的光流數轉換為3 通道RGB 圖像,之后將生成的3 通道光流圖輸入到運動子網中,以產生最終的運動顯著圖。為提高網絡的泛化能力,本文在空間子網預訓練模型的基礎上,利用Davis 數據集2 000 幀來微調該模型,且將學習率設置為10-5,并使用二值交叉熵損失指導訓練。
先驗網絡由VGG16 前5 層網絡構成,3 通道先驗疊加作為網絡輸入。先驗圖的構成相對簡單,因此,使用較淺層的網絡就可以提取先驗特征。在訓練過程中,為保持訓練數據和測試數據的一致性,輸入網絡的先驗圖不能直接用標簽替代,而使用腐蝕后的標簽。
為獲取三重網絡的最優組合,本文提出MCP 模型,該模型通過融合三分支權重,使得三重網絡具有一致性,MGA[7]和MCP 結構如圖4 所示。其中:Fa、Fm、Fp分別為空間、運動及先驗特征。

圖4 MGA 與MCP 模型結構對比Fig.4 Structure comparison of MGA and MCP models
MGA 模型以空間特征Fa和運動特征Fm作為輸入,Fm經1×1 卷積和Sigmoid 激活得到空間權重圖,之后與Fa相乘得到Fa1。Fa1經過GAP 操作將新的特征降維后使用1×1 卷積及Softmax 函數得到通道權重,此權重作用于Fa1得到融合后的特征。MCP 模型首先對運動特征Fm進行GAP 操作,將其展成一個一維特征,然后經過2 層全連接操作更新通道權重,之后對更新過的權重進行Softmax 操作,使特征權重的值歸一化為0~1,生成新的特征向量并作為權重,將其與先驗特征相乘,從而保留運動特征與先驗特征的一致性,并與原先的先驗特征進行殘差連接,進而將Fpm作為新的注意力權重與空間特征相融合。該融合過程首先使用1×1 卷積大小將C×W×H的Fpm特征降維到W×H的權重圖,并增加Sigmoid 激活操作,并與空間特征Fa相乘產生新的特征Fa1,最終對Fa1進行GAP 操作降維成高維向量g1,經過多層感知機(Multilayer Perceptron,MLP)操作得到更新后的向量g3,MLP 比MGA 中的卷積操作更復雜,使網絡更易保留有用信息。g3經Softmax 操作后作為Fa1的通道注意力權重,該權重向量與之前的特征Fa1相乘再加上最初的特征Fa以得到最終的輸出特征。MLP操作過程如式(4)所示:

其中:g1為更新前高維向量;g3為更新后高維向量;為第i次全連接操作;σ為Relu 激活函數。
三重網絡中先驗分支的輸入作為三通道疊加的先驗圖,通過傳統方法和深度學習算法生成先驗圖,其中傳統方法[27-28]通過RGB 圖的顏色對比生成粗略的顯著圖,深度學習算法是采用當前主流的深度學習檢測模型的預測顯著圖作為先驗圖。這兩種方法都屬于外部干預,且得到的先驗圖受限于模型本身,很難找到先驗圖存在的共性,并對網絡的訓練造成干擾。因此,本文使用網絡訓練過程中生成的上一幀顯著圖作為當前幀先驗圖的輸入,在訓練過程中,將經過腐蝕處理的真值標簽作為網絡的輸入,降低先驗圖在網絡訓練過程中的權重。網絡的輸入以每批大小為一個輪次,每次循環的第一幀使用腐蝕后的真值圖,之后每次輸入網絡的先驗圖為上一幀所產生的顯著圖。以上訓練策略生成的先驗模式多樣,可以避免網絡出現過擬合現象。在測試過程中,先驗分支首次輸入高質量關鍵幀先驗圖,本文使用顏色顯著圖和運動顯著圖的一致性度量來選取關鍵幀,其中一致性度量使用S-Measure[29]進行計算。通常S-Measure 值越大,說明顏色和運動顯著圖的一致性越高,其主要原因是低質量運動顯著圖和顏色顯著圖完全一致的概率通常較低。因此,按上述方法確定關鍵幀所對應的顏色顯著圖(先驗圖)的質量通常較高。對于非關鍵幀,本文將上一幀或者下一幀的最終顯著圖作為當前幀的先驗圖輸入,假設關鍵幀先驗圖是第i幀,那么第i幀先驗圖作為第i+1 幀的先驗輸入,得到第i+1 的最終顯著圖,第i+1 幀最終顯著圖又可以作為第i+2 幀的先驗輸入,后續依次傳遞。
為準確地評估模型的精度及魯棒性,本文使用通用評價指標對顯著圖進行定量評估,包括F值度量(maxF[30])、平均絕對誤差、結構度量(SMeasure[29])。
3.1.1F值度量
maxF 是準確率(P)和召回率(R)的綜合評估,如式(5)所示:

在顯著性工作[7]的基礎上增加準確率的權重值,本文將β2設置為0.3,并且認為準確率比召回率更重要。
本文在計算準確率和召回率時,輸出的顯著圖首先需要進行二值化,二值化閾值為0~255,大于等于閾值的像素值設為1,小于閾值的像素值設為0。本文將生成的255 張二值顯著圖與真值圖進行比較,計算得到255 個準確率和召回率。準確率越高,說明有較多的顯著區域被正確檢測,并作為前景區域,召回率越高,說明顯著區域覆蓋真值圖的前景區域越完整。
3.1.2 平均絕對誤差
平均絕對誤差能夠直觀地計算預測值和真實值之間的誤差,如式(6)所示:

其中:W和H分別為圖像的寬度和高度;S(x,y)為顯著性預測圖在像素點處的預測值;G(x,y)為像素點的真實值。
3.1.3 結構度量
結構度量被定義為評估非二進制前景圖的結構相似性,用于評估基于區域和基于對象的誤差,如式(7)所示:

其中:Sr為區域感知的結構相似性,將顯著性圖分為許多塊,以評估物體部分的結構相似性;So為對象級別的結構相似性,用于評估考慮全局的相似性;×表示像素間的乘法操作;α通常設置為0.5。
在深度學習中,視頻顯著性檢測通常需要較多的數據集以驗證實驗的有效性,研究人員對數據集進行標注,評估顯著性算法的性能。目前常用的數據集主要有以下5 類。
Davis 數據集[32]是視頻任務中通用的數據集,包含3 455 幀數據,其中訓練數據集包含2 076 幀,測試數據集包含1 379 幀,每段視頻都能夠提供稠密的人工標記的標簽。
Segtrack-v2 數據集[33]包含豐富的運動模式,如快速運動、劇烈形變等,其中顯著物體偏小,當背景發生輕微運動時,使得檢測變得更困難。
Visal 數據集[34]只 有17 段視頻(193 幀),每 隔5 幀給出像素級人工標記,運動模式較單一,一般以慢速運動為主。
Davsod 數據集[21]不僅是最新提出的大型視頻顯著性物體檢測數據集,而且是第一個與人眼注意力相關的數據集。根據檢測難度不同,該數據集分為簡單、正常和困難3 個級別,共有2.4×104的數據,同時提供相關的眼動注視點及實例級標注。
Vos 數據集[35]共有7 464 幀視頻數據,包含較多的室內場景,且多數為靜止及相機晃動的情況。
本文所有訓練過程的損失函數都使用二值交叉熵損失,其具體實現如式(8)所示:

其中:gi為真值圖第i個像素值;pi為預測圖第i個像素值;×為逐元素乘法;ln()為對數函數。
本文所有實驗使用Pytorch 深度學習框架,在RTX2080Ti 工作站上進行訓練。此外,為減少時間消耗,網絡所有的輸入都下采樣到352×352,BatchSize 設置為5,參數學習率為10-5,使用Adam[36]優化器,訓練迭代次數設置為20。本文采用多階段訓練策略對多流網絡中的空間和運動分支進行預先訓練,進而再微調多流網絡。除使用Duts10000的圖片顯著性數據集以外,所有的分支和融合模型僅使用Davis 訓練集中2×103張圖片來進行訓練。
4.1.1 多流融合的有效性
為驗證本文算法的有效性,在不同數據集上不同融合分支的評價指標進行對比,如表1 所示,加粗表示最優數據。其中運動分支以光流圖作為輸入,使用Davis 2000 數據量在空間子網預訓練模型上進行微調,外觀分支表示外觀子網原始結果,雙流分支是按照MGA 的融合方式進行復現,多流分支是本文方法(MSNC)。雙流分支的評價指標均優于運動分支,其原因是雙流分支中的光流圖缺少節信息以及存在運動靜止的情況。此外,在運動比較復雜的Davsod 和Segtrack-v2 數據集上,多流分支相較于雙流分支評價指標較高。

表1 不同融合分支的評價指標對比Table 1 Evaluation indexs comparison among different fusion branches
不同的消融分析結果如圖5 所示。當視頻中運動顯著性處于靜止時(如第2 行和第3 行),光流圖未能表征運動線索,提供了錯誤的位置信息,從而影響雙流網絡的最終結果,如圖5(f)所示。本文算法通過兩流彌補光流的不足,能夠有效解決上述問題。

圖5 多流融合網絡消融結果Fig.5 Ablation results of muti-stream fusion network
4.1.2 多種融合方式對比
不同融合方式的評價指標對比如表2 所示,加粗表示最優數據。從表2 可以看出,在Davis、Segtrack-v2 和Davsod 數據集上多流融合方式的MMAE相較于乘法融合和加法融合較低。在Visal和VOS 數據集上,多流融合方式的評價指標均較高,能夠充分驗證多流融合中MCP 融合的有效性。

表2 不同融合方式的評價指標對比Table 2 Evaluation indexs comparison among different fusion methods
4.1.3 訓練策略的指標對比
本文以隨機訓練和循環訓練作為自變量進行實驗對比。不同訓練策略的性能指標對比如表3所示,加粗表示最優數據。t=0 表示不使用循環訓練策略,并且先驗圖全部使用經腐蝕得到的真值標簽。t=4 表示BatchSize=4,即4 張先驗圖為一個循環,每個循環僅使用一個經腐蝕處理過的手工標注,之后依次向下傳遞。從表3 可以看出,當BatchSize(t)=5 時,MSNC在不同數 據集上的性能指標均較優。

表3 不同訓練策略的評價指標對比Table 3 Evaluation indexs comparison among different training strategies
本文主要從指標得分、視覺顯著圖和運行速度3 個方面對本文算法與其他算法進行了比較。
1)定量分析
為驗證本文算法的有效性,本文以maxF、S-meature和MMAE作為評價指標,與當前主流算法進行比較,包括PCSA[37]、LSTI[38]、MGA、SSAV[21]、CPD[39]、PDBM[19]、MBNM[40]。在不同數據集上不同算法的性能指標對比如表4所示,加粗表示最優數據,本文算法在Davis數據集上的性能指標較優,對比MGA算法,MSNC在VOS數據集上maxF指標上提升了1個百分點,與PCSA[37]相比,MSNC未使用Davis的訓練集卻得到了較高的檢測精度。

表4 不同算法的評價指標對比Table 4 Evaluation indexs comparison among different algorithms
2)結果可視化分析
在不同的視頻場景中,不同算法的顯著性檢測結果對比如圖6 所示。本文所提算法在不同運動模式下都能取得較好的檢測結果。當物體運動緩慢時,如第3 段視頻,MSNC 算法能夠得到較完整的顯著圖,而其他算法在車身位置易發生空洞檢測,如第1、2 段視頻。與其他算法相比,本文算法提取的顯著性圖中背景區域包含的噪聲較少,顯著物體更凸顯,表明在背景復雜以及低對比度的場景中三重網絡定位更準確。此外,針對遮擋問題(如第4 段視頻),MSNC 算法提取的顯著性圖與真值圖具有較高的一致性,并未存在假陽性的問題。

圖6 不同算法的顯著性檢測結果對比Fig.6 Saliency detection results comparison among different algorithms
3)效率對比
不同算法的運行速度對比如表5所示。相比當前主流算法,本文算法更高效,其運行速度達到21.00 frame/s。其中,FPS表示模型運行速度,即每秒測試的幀數。MSNC算法運行速度為21.00 frame/s。Ours+表示本文的雙流網絡,運行速度為24.00 frame/s,因此,先驗分支會增加網絡的耗時,但僅是每秒3幀的差距。即使先驗分支增加了耗時,其運行速度依然比當前主流算法快。從表5可以看出,MSNC算法的運行速度是LSTI算法的30倍。由于LSTI算法使用超像素分割方法,因此增加了總體時間消耗。同時MSNC算法的運行速度也是MGA算法的1.5倍,因為本文的網絡結構比MGA 更加簡單。

表5 不同算法的運行速度對比Table 5 Comparison of running speed of different algorithms
本文提出基于多流網絡一致性的檢測算法,設計并使用一種新的三重網絡結構來提取預選目標區域的顏色信息、時序信息和先驗特征。利用多流一致性融合模型對三流分支進行優化,從而得到最優的視頻顯著性檢測結果。同時使用循環訓練策略防止網絡產生過擬合,增強網絡的泛化能力。實驗結果表明,相比PCSA、SSAV、MGA 等算法,MSNC 算法在Davis 數據集上的性能指標較優,具有較高的視頻顯著性檢測精度。后續將對冗余的卷積層進行剪枝,優化網絡結構,在不降低精確度的前提下加快檢測速度。