知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

網易易盾發表於2022-03-30

語義分割,旨在將影像中的所有畫素進行分類,一直是計算機視覺影像領域的主要任務之一。在實際應用中,由於能準確地定位到物體所在區域並以畫素級的精度排除掉背景的影響,一直是精細化識別、影像理解的可靠方式。

但是,構建語義分割資料集需要對每張影像上的每個畫素進行標註。據統計,單張1280*720畫素的影像分割標註時間約1.5個小時[1],而動輒上萬、十萬才能產生理想效果的資料集標註,所需要的人力物力讓實際業務專案投入產出比極低。

針對這個問題,僅需影像級標註即可達到接近的分割效果的弱監督語義分割是近年來語義分割相關方向研究的熱點。該技術透過利用更簡單易得的影像級標註,以訓練分類模型的方式獲取物體的種子分割區域並最佳化,從而實現影像的畫素級、密集性預測。

易盾演算法團隊經過深入調研後在實踐中分析弱監督語義分割技術方向的特點,以及在實際專案上驗證了其有效性,從而成功將該技術落地到實際專案中,並取得了顯著的專案指標提升,有效助力易盾內容安全服務的精細化識別。

本文將介紹弱監督語義分割的分類和常規流程,並選擇該方向中有代表性的幾篇論文進行簡單介紹。

基本資訊

一、# 分類 #

根據弱監督訊號的形式,常見的弱監督語義分割可分為以下四類:

影像級標註:僅標註影像中相關物體所屬的類別,是最簡單的標註;

物體點標註:標註各個物體上某一點,以及相應類別;

物體框標註:標註各個物體所在的矩形框,以及相應類別;

物體劃線標註:在各個物體上劃一條線,以及相應類別。

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖1 | 弱監督語義分割的分類

本文主要關注標註最簡單方便的、也是最難的基於影像級標註的弱監督語義分割。

二、# 基於影像級標註的弱監督語義分割步驟 #

基於影像級標註的弱監督語義分割大多采用多模組串聯的形式進行,如圖2[2]:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖2 | 弱監督語義分割的步驟

首先,利用影像級標註的影像類別標籤,透過單標籤或多標籤分類的方式,訓練出一個分類模型。該分類模型透過計算影像中相應類別的類別特徵響應圖 CAM[3]來當作分割偽標籤的種子區域;接著,使用最佳化演算法(如 CRF[4]、AffinityNet[5]等)最佳化和擴張種子區域,獲得最終的畫素級的分割偽標籤;最後,使用影像資料集和分割偽標籤訓練傳統的分割演算法(如 Deeplab 系列[6])。

三、代表性工作

這部分主要介紹一下影像級弱監督分割中幾篇典型的論文。首先介紹弱監督分割的基礎論文 CAM[3],然後介紹2篇如何獲取覆蓋度更廣、更精準的 CAM 的演算法(OAA[7]、SEAM[8])作為分割偽標籤的種子區域,最後介紹一篇典型的種子區域最佳化擴張演算法 AffinityNet[5]。

1、CAM (Class Activation Mapping)

這篇文章是由周博磊在2016年的 CVPR 提出,作者發現了即使在沒有定位標籤的情況下訓練好的 CNN 中間層也具備目標定位的特性,但是這種特性被卷積之後的向量拉伸和連續的全連線層破壞,但若是將最後的多個全連線層換成了全域性平均池化層 GAP 和單個後接 Softmax 的全連線層,即可保留這種特性。同時,經過簡單的計算,可以獲取促使 CNN 用來確認影像屬於某一類別的具有類別區分性的區域,即 CAM。

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖3 | CAM

其中,CAM 的具體計算方式如下(如圖3所示):

設為最後一層卷積層獲取的第k個特徵圖在位置的值,是類別c對應最後一層全連線層第k個權重,則類別c的響應特徵圖 CAM 在位置的值為:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

即為 CAM。最終 CAM 的值越大,表示對分類貢獻度越高:如圖3最後一幅圖的熱力圖紅色區域表示 CAM 值最大,也正是澳洲犬臉部區域。

在文章中,作者表示 CAM 所在區域可直接作為弱監督目標定位的預測,並進行了相關實驗,不僅相比當時最好的弱監督定位演算法效果提升明顯,而且僅需單次前向推理過程即可得到定位框。

在弱監督語義分割中,CAM 一直是產生種子區域的核心演算法。但是 CAM 缺點也很明顯:僅關注最具辨別度的區域,無法覆蓋到整個目標,後續的演算法中大多是在解決這個問題或者對 CAM 進行後處理,接下來,會挑選幾篇代表性的工作進行介紹。

2、獲取更好的種子區域

 (1)#OAA# 

這篇文章的動機簡單而直接,作者透過觀察發現:在訓練收斂前不同的訓練階段,模型所產生的 CAM 會在同一目標上的不同部位移動,如圖4 中的b、c、d表示不同的訓練階段,其 CAM(高亮區域)在移動。當整合同一影像在不同階段產生的 CAM 時,整合後的 CAM 更能覆蓋完全整個目標,如圖4-e。

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖4 | CAM 移動圖

其演算法示意圖如下:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖5 | OAA演算法示意圖

對單張影像中的某個類別而言,在第t個 epoch 訓練該影像時對其 CAM 特徵圖進行 ReLU 和標準化:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

然後與前一 epoch 儲存的特徵圖進行畫素級比較,選擇每個畫素的最大值,最終輸出為作為累積後的響應圖。在訓練完成後,即當作弱監督語義分割偽標籤的種子區域。

OAA 演算法簡單且有效,當時在 VOC 弱監督分割資料集上取得了 SOTA 的表現;但筆者在實際專案嘗試中發現其效果一般,原因在於多個 epoch 的 CAM 取最大值的方式容易使得種子區域出現較多噪聲,而這些噪聲是很難透過後處理消除的,最終導致分割精度明顯下降。

(2)#SEAM#

該文章引入大火的自監督學習理念,透過觀察發現同一影像經過不同的仿射變換所產生的 CAM 不一致這一特點(如圖6-a中不同尺寸變換),利用隱式的等變換約束的方式建立類似自監督對比學習的一致性正則化學習機制,減少這種不一致程度來最佳化 CAM,從而得到高精度的種子區域(圖6-b)。

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖6 | 不同尺寸輸入的影像的 CAM

SEAM 演算法示意圖如下:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖7 | SEAM 演算法示意圖

將原始影像和其經過簡單的放射變換A(·)後(如縮小、左右翻轉)的影像分別送入到共享引數的 CNN 中獲取各自對應的 CAM 特徵圖和,這兩個特徵圖再經過畫素關係最佳化模組 Pixel Correlation Module (PCM) 的學習後分別得到最佳化後的 CAM 特徵圖和。其中,PCM 是類似於 self-attention 的操作,query 和 key 是 CNN 得到的特徵圖,value 是 CAM 特徵。其 loss 由3部分構成:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

其中,是常用的多標籤分類損失函式 multi-label soft margin loss,equivariant regularization (ER) loss 為:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

equivariant cross regularization (ECR) loss 為:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

推理時,採用多個尺度及其左右翻轉後的影像產生的多個 CAM 加和、標準化後作為最終的 CAM。

SEAM 演算法不僅在開放資料集相對其他演算法取得了較大的提升,在易盾的實際專案中也取得較好的結果,其缺點是演算法的訓練和推理都比較耗時。

3、CAM後處理

在得到 CAM 種子區域後,可以直接作為語義分割偽標籤進行訓練,但為了更好的分割結果,通常會對種子區域進行最佳化,接下來會介紹一篇非常有效的演算法 AffinityNet[5]。

該篇文章主要的做法是:對於一張影像和其相應的 CAM,建立所有畫素與其周圍一定半徑的畫素的鄰接圖,然後使用 AffinityNet 估計鄰接圖中畫素對之間的語義密切關係以建立機率轉移矩陣。對每個類別而言,鄰接圖中在目標邊緣的點會根據機率轉移矩陣以 random walk 鼓勵該點擴散到相同語義的邊緣位置,同時會懲罰擴散到其他類別的行為。這種語義的擴散和懲罰能顯著最佳化 CAM,使其能較好地覆蓋到整個目標,從而得到更精確、完整的偽標籤。

該模型訓練的主要難點在於如何不使用額外的監督資訊,作者透過觀察發現 CAM 可以作為產生訓練 AffinityNet 監督資訊的來源。雖然 CAM 存在覆蓋不完全以及噪聲問題,但是,CAM 依然會正確地覆蓋區域性區域並確認該區域畫素間的語義密切關係,這正是 AffinityNet 所需要達成的目標。為了獲取 CAM 可靠的標籤,作者摒棄了 CAM 特徵圖分數相對較低的畫素,只保留高得分和背景畫素。在這些特徵區域上採集畫素對,如果它們屬於同一類別則 label 為1,否則為0,如圖8所示。

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖8 | AffinityNet樣本和標籤示意圖

在訓練過程中影像經過 AffinityNet 得到特徵圖,則特徵圖上畫素i和j的語義密切度計算方式如下:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

其中,表示第i個畫素特徵在特徵圖上的座標位置。然後,利用交叉熵損失函式進行訓練。

整體的訓練和推理過程如下圖所示:

知物由學 | 弱監督語義分割:從影像級標註快進到畫素級預測

圖9 | AffinityNet訓練和推理示意圖

首先利用訓練影像的 CAM 選擇多個畫素對作為訓練樣本,並得到語義密切關係的 label,這些資料用來訓練 AffinityNet(如圖9左);然後使用訓練好的 AffinityNet 在每張影像上進行推理計算以獲取該影像鄰接圖的語義密切矩陣作為機率轉移矩陣;最後在該圖的 CAM 上以 random walk 的形式使用該矩陣,得到最終最佳化後的語義分割偽標籤(如圖9右)。

AffinityNet 演算法思路清晰,結果可靠,常常作為 OAA 或 SEAM 等演算法獲取的 CAM 後處理方法用來最佳化偽標籤精度和擴充套件偽標籤覆蓋區域,其提升效果在定性和定量分析中都很明顯。

本文簡單介紹了弱監督語義分割的概念和流程,並簡單介紹了其中的幾篇文章,以實踐的角度分析了這些演算法的落地優缺點。現有的弱監督語義分割也存在流程較為繁瑣冗長的問題,在學界已經有一些工作提出端到端的解決方案,並取得了一定的效果(如[9][10])。未來,易盾演算法團隊會持續跟進學界最新方向,並嘗試落地,以進一步提升內容安全服務精細化識別的效果。

四、參考文獻

[1] Cordts M, Omran M, Ramos S, et al. The cityscapes dataset for semantic urban scene understanding[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 3213-3223.

[2] Zhang D, Zhang H, Tang J, et al. Causal intervention for weakly-supervised semantic segmentation[J]. Advances in Neural Information Processing Systems, 2020, 33: 655-666.

[3] Zhou B, Khosla A, Lapedriza A, et al. Learning deep features for discriminative localization[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 2921-2929.

[4] Krähenbühl P, Koltun V. Efficient inference in fully connected crfs with gaussian edge potentials[J]. Advances in neural information processing systems, 2011, 24.

[5] Ahn J, Kwak S. Learning pixel-level semantic affinity with image-level supervision for weakly supervised semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2018: 4981-4990.

[6] Chen L C, Papandreou G, Kokkinos I, et al. Deeplab: Semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs[J]. IEEE transactions on pattern analysis and machine intelligence, 2017, 40(4): 834-848.

[7] Jiang P T, Hou Q, Cao Y, et al. Integral object mining via online attention accumulation[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019: 2070-2079.

[8] Wang Y, Zhang J, Kan M, et al. Self-supervised equivariant attention mechanism for weakly supervised semantic segmentation[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 12275-12284.

[9] Zhang B, Xiao J, Wei Y, et al. Reliability does matter: An end-to-end weakly supervised semantic segmentation approach[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2020, 34(07): 12765-12772.

[10] Araslanov N, Roth S. Single-stage semantic segmentation from image labels[C]//Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020: 4253-4262.


相關文章