Semi-Supervised Video Salient Object Detection Using Pseudo-Labels 论文详读
Semi-Supervised Video Salient Object Detection Using Pseudo-Labels ——使用偽標簽的半監督式的重要目標(顯著目標)檢測。
abstract
???????雖然近些年基于深度學習的視頻目標檢測方法與無監督學習的方法相比效果有著長足的進步,但是這些數據驅動的方法依賴大量被詳細標記的視頻數據來區分每一個目標的類別。
???????本文基于refinement網絡和光流信息,提出一個利用稀疏的標記幀生成像素級偽標簽的方法。通過利用這些偽標簽和部分手動標記的數據,突出目標檢測器從中學到空間和時間信息并進行對比推斷和相關的增強,從而產生準確的突出圖。
???????經過在VOS、DAVIS和FBMS三個標準進行對比發現,本文算法比其他的全監督方法相比性能更好。
Introduce
???????突出目標(Salient Object)也就是對于人來說,在視覺觀感上與其他目標區別最大的、最易注意到的目標。
???????與人眼注視預測(eye fixation prediction)相比,突出目標檢測(salient objection detection)主要關注的是精確的分割出大部分突出目標的輪廓,其檢測結果可以被用來進行目標分割、視覺跟蹤、視頻壓縮和視頻概況(video summarization),而eye fixation prediction的關注點在于定位人眼聚焦的位置。
???????近些年由于深度學習的發展使得突出目標檢測得到長足的發展,但是深度學習方法需要大量被逐幀標記的數據,這是非常耗時耗力的,另一方面,因為視頻片段中會有很多幀的內容非常相似,為了消除標記噪聲的影響,標記者需要仔細檢查標記前后的連續性和一致性。由此標記的質量很難被保證。
???????盡管現有的大量無監督學習方法不需要大量的訓練樣本,僅使用手動制作的低維特征(顏色、梯度、對比度等),但是這些算法的準確率和效率都不夠高。
???????Weakly supervised salient object detection using image labels中提到了無監督學習方法的缺點,并指出了基于深度學習的方法缺少標記數據的問題(隨后會針對該篇論文更新博文),他們嘗試結合粗糙的激活圖(activation map)和顯著性圖(saliency map)來作為像素級的標記數據用于訓練(其中activation map由分類網絡產生,saliency map由無監督方法產生)。但是該方法不適用于視頻突出目標檢測任務,因為視頻中目標的運動和外觀的改變主要需要關注的是人類注意力的改變而不是目標類別的變化。除此之外,在缺少時間線索的稀缺的標記幀的情況下,為了生成具有時間一致性的saliency map而訓練視頻突出目標檢測器是非常困難的。
提出本文算法的原因
???????通過觀察,發現視頻的鄰近幀在高采樣率下存在微小的不同。所以推測不需要對所有的幀進行標記,因為一些幀的標記信息可以利用運動信息估計得到。并且最新的研究成果表明,訓練好的CNN模型可以修正一些存在于訓練樣本中的手動標記所產生的錯誤。
???????因為上述的原因提出一個利用帶有偽標簽的無標記幀和少量標記幀、半監督的視頻突出目標檢測算法。使用根據少量標記幀生成的偽標簽,為saliency map訓練一個具有時空一致性的、基于視頻的卷積網絡。
模型
???????首次提出一個基于殘差鏈接的細化網絡RCRNet來提取空間信息,并通過一系列基于細化操作的上采樣生成一個具有高分辨率的saliency map。
???????然后RCRNet網絡裝備了一個非本地增強循環模塊來增強其結果saliency map的時空一致性。
???????為了生成偽標簽,使用一個預訓練的FlowNet 2.0網絡在標記幀和非標記幀之間進行運行估計,并把鄰近幀的標記傳播給不含標記的幀。
???????與此同時,另一個RCRNet網絡接收多通道數據(包含RGB通道、運動估計、傳播的正確標記)作為輸入,生成連續像素的偽標簽。使用上述數據作為輸入是因為少量的含標記數據中時間信息較為匱乏。
???????可以看出本文的算法可以生成合理和連貫的偽標簽,甚至可以提升邊緣細節、克服幀之間標記模棱兩可的情況(如b中所示,GT mask鄰近幀之間對同一個物體的劃分并不相同,而本文算法不存在這個問題)。
本文的幾個contribute:
相關工作
顯著目標檢測Salient Object Detection
???????因為近些年深度學習的發展,使得顯著目標檢測技術得到長足的發展,全連接網絡FCN及其衍生的各種方法因為其具有的端到端的特征學習及其計算的高性能,成為目標檢測的主流方法。但是FCN因為沒有考慮到時空信息、幀之間的運動和外觀信息,所以并不適用于視頻目標檢測。
???????因為FCN的不足,近些年開始使用CNN來解決視頻目標檢測問題,但是這些方法都需要依賴大量被標記的數據,而大部分方法沒有去減少對密集標記數據的依賴。
視頻目標分割
???????視頻目標分割可以分為兩類——一類是半監督的視頻目標分割,其目標是追蹤給定的目標對象,另一類是無監督視頻目標分割,其主要目標是自動檢測整個視頻中最主要的目標。
???????需要指出的是,無論是監督的目標分割還是半監督的目標分割,其訓練過程都是全監督的,兩者的區別只存在于測試過程中。
???????本文中半監督方法的主要目的是為了減少對密集標記數據的依賴,這一點與無監督目標分割很類似。近些年的無監督目標分割方法,如雙流結構(two-stream architecture)、FCN、RNN等主要依賴深度學習,并會因為全監督的訓練過程需要大量密集標記的數據。
本文算法細節及實現
本文算法包含三個主要部件:
???????利用含有大量的偽標簽和少量稀疏標記的數據,包含NER模塊的RCRNet可以捕獲時空信息,并且可以為連續的輸入幀生成準確的saliency map。
殘差鏈接的細化網絡 Residual Connection Refinement Network
???????通常的深度卷積神經網絡可以根據圖像中的低維特征如顏色、紋理等,利用堆疊的卷積層和下采樣操作,提取出高維特征。下采樣操作可以通過卷積層,逐漸增加接收域最終獲取到抽象的特征表示,但是很多的空間細節損失了,導致像素級的預測方法對邊緣細節和小型對象的處理結果較差。
???????受 Instancelevel salient object segmentation的啟發,使用一個細化結構來吸收低維信息,以實現在解碼過程中進行像素級的顯著性目標預測(saliency inference)。
???????如圖所示,RCRNet包含一個空間特征提取器NfeatN_{feat}Nfeat?和一個像素級的分類器NsegN_{seg}Nseg?,兩者中間使用位于不同層次的三個連接層進行連接。具體的計算過程為:S=Nseg(Nfeat(I))S=N_{seg}(N_{feat}(I))S=Nseg?(Nfeat?(I)),其中III為輸入幀。
空間特征提取器基于ResNet-50模型,使用ResNet-50中的前五組layer,并且刪除第五組的下采樣操作以減少空間信息的損失(前文中提到了,隨著卷積層的增加,接收域隨之增加,部分空間信息也損失了)。
為了獲得相同大小的接受域,使用比率為2的膨脹卷積操作(dilated convolution)取代第五組layer中的卷積層。
然后在第五組layer上附加一個多孔空間金字塔池化模塊(ASPP atrous spatial pyramid pooling 出自Rethinking atrous convolution for semantic image segmentation一文,后期會對該論文進行概述),從而獲取圖像級的全局上下文信息和多分辨率的空間上下文信息。
最后,該空間特征提取器生成一個256通道、原始輸入分辨率1/6的特征。
像素級分類器由三個級聯的細化模塊構成,每個模塊通過一個連接層與空間特征提取器鏈接,其作用是緩解下采樣過程中造成的空間信息損失所帶來的影響。
每個細化模塊把前一個自下而上的輸出特征圖及其自上而下流鏈接的特征圖作為輸入,這兩個特征圖的分斌率要一致,所以必要的時候需要進行非線性插值的上采樣操作。
細化模塊首先將特征圖進行級聯,然后將其傳入一個128通道的3×3的卷積層。
殘差瓶頸結構(residual bottleneck architecture或殘差跳躍連接層residual skip connection layer)作為連接層來連接低維和高維特征圖。它對低維特征圖進行下采樣,使得通道數由MMM下降為N=96N=96N=96并且為細化模塊提供更多的空間信息。
殘差學習使像素級的分類器與預訓練的空間特征提取器可以在不破壞雙方原有結構的前提下進行連接。
非本地增強的循環模塊non-locally enhanced recurrent module
???????對于輸入的連續視頻幀Ii,i=1,2,..TI_i,i=1,2,..TIi?,i=1,2,..T,視頻顯著目標檢測的目的是對每一幀生成對應的顯著性圖Si,i=1,2,..TS_i,i=1,2,..TSi?,i=1,2,..T。即便RCRNet針對空間顯著性學習進行了加強,但其仍舊缺乏對視頻幀的時空建模。所以提出了非本地增強時態模塊(怎么翻譯都感覺怪怪的,原文為non-locally enhanced temporal module),其中包含兩個non-locally模塊和一個ConvGRU(Convolutional Gated Recurrent Unit,其中GRU是2014年提出的,是RNN的一種,其作用與LSTM類似,效果也類似,但是更易計算)模塊,主要目的是提高高維特征的時空一致性。
???????首先把提取自輸入連續幀Ii,i=1,2,..TI_i,i=1,2,..TIi?,i=1,2,..T的特征Xi,i=1,2,..TX_i,i=1,2,..TXi?,i=1,2,..T合并為X(Xi=Nfeat(Ii)X_i=N_{feat}(I_i)Xi?=Nfeat?(Ii?)),然后把合并特征X傳入non-locally模塊,non-locally模塊將某個位置的響應計算為輸入特征圖所有位置的加權和,它可以在輸入視頻幀之間建立時空連接。
???????另一方面,當一個視頻序列是由按時間順序捕獲的一系列場景組成時,對時間領域外觀對比度的順序變化進行描述是非常必要的。所以使用ConvGRU模塊對特征的順序變化進行建模。
???????ConvGRU是傳統全連接GRU的拓展,在input-to-state(輸入到狀態)和state-to-state(狀態到狀態)之間的連接中添加卷積結構。把X1,X2,..XtX_1,X_2,..X_tX1?,X2?,..Xt?作為ConvGRU的輸入,H1,H2,..HtH_1,H_2,..H_tH1?,H2?,..Ht?表示其隱藏狀態(hidden state)。一個ConvGRU包括一個reset gate RtR_tRt?和一個update gate ZtZ_tZt?,通過這兩個gate,可以實現選擇性的記憶和遺忘,ConvGRU中所有的更新操作如下:
???????其中?*?表示卷積操作,ooo表示矩陣的Hadamard product(哈達瑪積),σ(?)\sigma(·)σ(?)表示sigmoid函數,WWW表示可學習權重矩陣。堆疊兩個分別為前向和后向的ConvGRU模塊來增強兩個方向時空信息的交換。這個雙向的ConvGRU模塊可以記錄過去和現在的序列:
???????其中HtfH_t^fHtf?和HtbH_t^bHtb?表示前向和后向ConvGRU單元的隱藏單元(hidden unit),HtH_tHt?表示雙向ConvGRU的最終輸出結果。XtX_tXt?表示non-local模塊第 ttt 次輸出的特征。
???????實驗證明添加non-local模塊可以獲得更好的效果,所以在雙向ConvGRU的前后分別放置一個non-local模塊來更好的增強時空信息的一致性。
基于流引導的偽標簽生成模型 Flow-guided pseudo-label generation model
???????盡管RCRNet加上NER可以產生時空一致性較好的saliency map,但是在僅有少量稀疏標記樣本的情況下,其無法獲取足夠的時間信息,導致時空一致性急劇下降,為了解決這個問題,使用從少量稀疏標記數據獲取的稠密的偽標簽訓練模型。
???????對于輸入的三個幀Ii,Ik,IjI_i,I_k,I_jIi?,Ik?,Ij?,FGPLG模型的目的是根據ground truth GiG_iGi?和GjG_jGj?生成幀IkI_kIk?的偽標簽——首先使用現成的FlowNet 2.0 模型生成由幀IiI_iIi?到IkI_kIk?的光流Oi→kO_{i→k}Oi→k?,使用同樣的方法獲得光流Oj→kO_{j→k}Oj→k?,然后根據ground truth GiG_iGi?和GjG_jGj?使用warping function獲得幀IkI_kIk?的標簽。
???????下圖可以看出warp得到的結果仍舊含有很多的噪聲,不能被用來直接作為監督信息進行訓練。
???????為了解決這個問題,使用另一個RCRNet來處理包含7個通道的幀Ik+I_k^+Ik+?(其中包含RGB通道)、兩個warp結果WGi→kWG_{i→k}WGi→k?和WGj→kWG_{j→k}WGj→k?、兩個光流的大小∣∣Oi→k∣∣||O_{i→k}||∣∣Oi→k?∣∣和∣∣Oj→k∣∣||O_{j→k}||∣∣Oj→k?∣∣,從而生成偽標簽PGk=Nseg(Nfeat(Ik+))PG_k = N_{seg}(N_{feat}(I_k^+))PGk?=Nseg?(Nfeat?(Ik+?))。
???????其中光流大小的計算——先把光流正則化到[-1,1],然后再計算其歐幾里得范數,從而獲得光流的大小。
???????實際的編碼過程中,固定幀IiI_iIi?到IkI_kIk?、IjI_jIj?到IkI_kIk?的幀數為lll。綜上,通過“三采樣”的方法可以在較長的視頻中生成大量高質量的偽標簽用于訓練。
處理過程總結
本文方法總的處理過程如下:
總結
以上是生活随笔為你收集整理的Semi-Supervised Video Salient Object Detection Using Pseudo-Labels 论文详读的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html提交成功跳转页面,提交表单后跳转
- 下一篇: cookie用法--抽屉网的自动登录(c