商湯:新視頻語義分割和光流聯合學習算法

AAAI 2020 | 商湯:新視頻語義分割和光流聯合學習算法

本文介紹商湯科技在AAAI 2020 上的論文《Every Frame Counts: Joint Learning of VideoSegmentation and Optical Flow》,他們在這篇工作中提出了一種新的視頻語義分割和光流聯合學習算法。

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

論文地址:https://arxiv.org/pdf/1911.12739.pdf

視頻語義分割的一個主要的挑戰是缺少標註數據。在大多數基準數據集中,每個視頻序列(20幀)往往只有一幀是有標註的,這使得大部分監督方法都無法利用剩餘的數據。為了利用視頻中的時間-空間信息,許多現有工作使用預先計算好的光流來提升視頻分割的性能,然而視頻分割和語義分割仍然被看作是兩個獨立的任務。

在這篇文章中,作者提出了一個新穎的光流和語義分割聯合學習方案。語義分割為光流和遮擋估計提供了更豐富的語義信息,而非遮擋得光流保證了語義分割的像素級別的時序一致性。作者提出的語義分割方案不僅可以利用視頻中的所有圖像幀,而且在測試階段不增加額外的計算量。

1、背景

視頻語義分割通過利用前後幀的語義信息,往往有著比圖像分割更高的準確率,因此在機器人和自動駕駛領域有著豐富的應用。然而目前的視頻語義分割主要面臨兩個挑戰:缺少標註數據和實時性的問題。

一方面由於標註工作耗時耗力,一個視頻片段往往只標註一幀,導致很多方法難以利用全部的數據,或者需要使用額外的數據集做預訓練;

另一方面由於對前後幀之間進行信息交互往往為模型引入額外的模塊,導致視頻分割效率低。

視頻分割大致可以分為兩類,

第一類通過利用前後幀的時序信息來為視頻分割加速,如Clockwork network (Shelhamer et al. 2016) ,DeepFeature Flow (Zhu et al. 2017) 和 (Li, Shi, and Lin 2018) 等,這類模型對前一幀的特徵圖或者分割結果進行簡單處理即可得到下一幀的分割結果了,從而大大減少視頻分割中的冗餘和加速,但語義分割的準確率會有所降低;

第二類方法如 (Fayyaz et al. 2016) ,Netwarp (Gadde,Jampani, and Gehler 2017),PEARL (Jin et al. 2017) 等通過光流/RNN等模塊將前後幀的特徵進行融合或添加約束以學習到更強的表示能力,從而提高語義分割的準確率。

本文的方法屬於第二類。

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

圖1:和使用特徵融合(feature aggregation)的方法往往只利用標註幀附近的少數幀相比,本文通過學習的光流來為視頻幀添加時序一致性約束,通過這種約束可以間接把分割標註傳導到其他無標註的幀上,從而利用全部的數據。

2、方法概述

光流作為視頻中前後幀之間像素級別的關聯,在視頻語義分割中一直有著重要的地位。例如 (Li, Shi, and Lin 2018; Zhu et al. 2017; Shelhameret al. 2016) 通過光流來重新利用前一幀的特徵圖從而為視頻分割加速;(Fayyaz et al. 2016; Jin et al. 2017; Gadde,Jampani, and Gehler 2017; Nilsson and Sminchisescu 2018; Hur and Roth 2016) 通過光流指導的特徵融合來獲得更好的分割準確率。

然而上述方法面臨兩個問題,一方面其往往使用現成的在其他數據集上訓練的光流模型(FlowNet),導致了分割效率的降低;另一方面上述方法往往只利用了標準幀附近的少數幀,沒有充分利用整個數據集和發揮光流的作用。

為了解決上述兩個問題,作者提出了一個光流和語義分割聯合學習的框架,語義分割為光流和遮擋估計提供了更豐富的語義信息,而非遮擋得光流保證了語義分割的像素級別的時序一致性。

本文模型通過在視頻中無監督學習光流並且使用光流對前後幀語義分割的特徵圖施加約束來使得兩個任務互相增益並且沒有顯式的特徵融合,這種隱式的約束可以幫助利用數據集中的全部數據並學到更魯棒的分割特徵以提高分割準確率,並且不會在測試階段增加額外的計算量。

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

圖 2:本文提出的聯合學習框架,輸入圖片經過共享編碼器後分為兩個分支,第一個是光流分支,第二個是分割分支。block代表模型的特徵圖,灰色的虛線代表時序一致性約束,灰色實線代表遮擋估計模塊。

時間一致性約束

對於一對圖片I_i和I_{i+t},設其對應的分割特徵圖為S,設學習到的光流為F,遮擋Mask為O,(S,F,O均包含三個block,如圖所示),則兩幀分割特徵圖可以通過光流warp進行轉換:S_i^{warp}= Warp(S_{i+t},F_{i->i+t})。

考慮到遮擋的截斷區域無法使用光流進行對齊,因此這些區域不計算損失。兩幀的其他區域對應的分割特徵圖通過光流進行warp對齊後的一致性損失為第一幀的分割特徵圖和第二幀經過warp的分割特徵圖的非遮擋區域的2範數。

光流和遮擋估計

文中所說的遮擋意味著兩幀圖片中光度的不一致性,它一般由圖像中遮擋,截斷(汽車離開相機拍攝)和移動目標導致,這裡作者使用無監督的方式學習遮擋區域,通過反向光流推測出可能無法對齊的像素位置O,模型根據此學習得到O_{est};兩幀的分割結果通過光流warp不一致的區域設為O_{seg},O_{seg}應包括遮擋區域和光流估計錯誤的區域,因此O_{error} = O_{seg}-O_{est}應為光流估計的重點區域。

在計算光流估計的損失函數時,作者不考慮遮擋區域(O_{est})的損失,而加大重點區域(O_{error})的權重,遮擋估計的示意圖如圖3所示。

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

圖3:遮擋和遮擋估計示意圖

語義分割的學習

在訓練時,作者從每個視頻小段中隨機選擇10對圖片來進行訓練,其中五對包含標註幀,而另外五對均不包含標註幀。

對於標註幀,直接使用監督的語義分割損失來進行學習;對於不包含標註幀的情況,通過兩幀的一致性約束來對模型進行約束和學習。通過這種約束學習,標註信息可以從一幀傳播到其他的未標註幀,而即使是兩個未標註幀也可以通過一致性來學習。

3、實驗結果

Cityscapes數據集上的分割結果:

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

CamVid數據集上的分割結果:

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

KITTI數據集上的光流估計結果:

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

可視化結果:

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

圖4:Cityscapes驗證集分割結果,從上至下分別為原圖,本文算法分割結果,PSPNet分割結果和GT。可以看出本文算法對移動目標(汽車,自行車)和出現頻次較少目標(橫向卡車)分割效果較好。

AAAI 2020 | 商汤:新视频语义分割和光流联合学习算法

圖5:KITTI數據集上光流估計結果,從上至下分別為原圖,本文算法估計結果,GeoNet估計結果和GT。可以看出本文算法對移動目標的邊緣估計更為準確。


分享到:


相關文章: