Efficient Semantic Video Segmentation with Per-frame Inference


paper code
摘要
對于語意分割,大多數實時的方法都是在單幀影像上訓練的,當在視頻上測驗時,分割結果可能會產生不一致的結果,少數方法考慮了視頻流序列影像的相關性,如通過光流利用相鄰幀的分割結果做反向傳播,或者利用多幀資訊提前影像的特征表達,這些方法可能會導致不好的影響,相反的,我們在訓練的程序中,額外用一個約束來考慮幀間時序的一致性,在預測的時候,不會增加任何的計算開銷,一個緊湊的模型被用來做實時預測,為了減小緊湊模型與大模型直接的性能差距,提出了一種時序上的知識蒸餾方法,權衡精度、時序一致性和效率,在Cityscapes和Camvid上,我們提出的方法在性能上超越了基于關鍵幀的方法和對應的基準模型,
論文貢獻
- 在引入后處理和額外計算開銷的情況下,可對視頻的每一幀影像進行預測,且無延時;
- 提出了一個考慮幀間一致性的損失函式(temporal loss)和一個基于幀間一致性的知識蒸餾方法;
- 實驗,在視頻語意分割上,取得了state-of-the-art的效果,
方法
主要包括2部分:temporal loss(圖b所示),基于時序一致性的知識蒸餾策略(temporal consistency knowledge distillation strategies, 圖c和d所示).

temporal loss(TL)

TL需用到光流資訊,簡而言之,就是前一幀的預測結果經過光流補償后,與當前幀的預測結果要一致,,預測光流的模型為FlowNetV2,在訓練程序中其權重固定,損失函式運算式如下:

為第t幀影像位置i出的預測結果,
為第t+k幀影像經過光流變換到第t幀時位置i出的預測結果,
為一個occlusion mask,用來移除光流變換產生的誤差,

其中,是經過光流變換后的影像,
Temporal Consistency Knowledge Distillation
蒸餾策略用到了一個學生網路S和一個教師網路T,S對應實際預測用到的緊湊網路,T對應訓練用到的大網路,T事先用交叉熵損失和TL損失訓練好,與基于單幀的蒸餾方法不同之處在于,設計了2種新的知識蒸餾策略:pair-wise-frames dependency(PF)和multi-frame dependency(MF).在實際訓練的程序中,T的中間結果和最后輸出的logit將作為S對應位置的soft targets,
pair-wise-frames dependency(PF)
如figure 2(c)所示,令為2個輸入tensor,
表示X1和X2逐點計算的相似度特征圖,相似度采用余弦距離計算,AT為一種self-attention操作,用來計算A,令
為A中的一個像素,
分類為X1和X2中第i和第j行特征,那么
![]()
PF損失函式的定義如下:

其中,分別表示第t幀和第t+k幀的分割圖,
multi-frame dependency(MF)
如圖figure 2(d)所示,令視頻序列,對應的特征圖
,
為捕捉幀間的結構資訊和對齊S和T中的特征圖,針對每幀都計算自身的相似度特征圖(self-similarity map),我們采用ConvLSTM來將序列的
編碼為一個嵌入向量
,
表示E的維度,將前面t-1個時刻的F依次輸入ConvLSTM,得到t時刻的嵌入向量
.
令分別表示T和S最后時刻的嵌入向量,那么,MF的損失函式定義如下:
![]()
Optimization
總的損失函式定義如下:

其中,T為所有用于訓練的幀數,為帶標注的幀數,
為0.1.
實驗結果

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/264235.html
標籤:其他
下一篇:【三、打磚塊】
