文獻基本信息
- 標題:Language-Driven Semantic Segmentation
- 作者:Boyi Li、Kilian Q. Weinberger、Serge Belongie、Vladlen Koltun、René Ranftl
- 單位:Cornell University、University of Copenhagen、Apple、Intel Labs
- 會議/期刊:ICLR
- 發表時間:2022年4月3日
- 代碼:https://github.com/isl-org/lang-seg
背景與意義
- 語義分割可以看做是像素級的分類,因此分類的新技術、新思路,一般可以直接用過來。
- ?本文實現了zero-shot的語義分割,實現方式與CLIP實現zero-shot的方式類似,都是通過類別prompt作為文本輸入,然后計算相似度。
- 給定一張圖片,然后通過文本prompt給定任意的類別,從而實現對應的語義分割。
- 從上圖中可以看到,給定了對應的類別prompt:
- 對于圖中明確出現了的語義類別(如dog、tree),模型能夠很清楚地分割出來。
- 對于圖中沒有的類別(如vehicle),模型也不會誤召回(容錯率高)。
- 對于圖中有、但是類別prompt沒給的類別(如grass),也能正確分類為other。
- 同樣可以檢測類別的子類或父類(如dog、pet),模型也能夠通過語義識別出來。
- 由于CLIP類的模型實質上都是通過計算圖文相似度來實現分類或分割的,因此對于“other”類的類別,prompt文本實際可以是任何無意義的文本,如“me”、“a”或“an” 等,只要與目標類別不要太接近即可。
研究方法與創新點
- 如上圖所示,模型整體看來與CLIP模型非常相似,圖像先輸入圖像編碼器(DPT ViT+decoder)得到特征向量,再進行一些upscaling,輸出圖像與原圖像大小保持一致,輸出再與ground-truth做交叉熵,其中將單個的圖像文本特征換成語義分割中逐像素的密集特征。
- 文本編碼器提取
的文本特征(
個類別,
為特征維度),圖像編碼器提取
的密集圖像特征(跟原來相比有所降維,比如1/4、1/16),文本-圖像二者相乘得到
的特征,再經過空間規整模塊上采樣回原圖尺寸,完成語義分割,其中
、
、
和
分別是類別prompt個數(可變)、通道數和特征圖的高、寬。除了上面的文本編碼器提取的文本特征要與密集圖像特征相乘來計算像素級的圖文相似度之外,整個網絡與傳統的有監督網絡完全一致。
- 在訓練過程中,模型是以有監督的方式進行訓練的,也就是說訓練過程中是存在標注的分割圖的,模型在7個分割數據集上進行訓練。
- 在推理時,可以指定任意個數、任意內容的類別prompt來進行zero-shot的語義分割。
- 創新:通過在傳統的有監督分割模型上加入文本特征,通過特征相乘把文本特征和圖像特征結合起來,學到一些languge-aware的特征,在最后就能用文本prompt得到任意的分割效果。
- LSeg整個文本編碼器就是CLIP的文本編碼器的模型和權重,并且訓練、推理全程中都是凍結的;LSeg的圖像編碼器可以是任何網絡(CNN/ViT),需要進行訓練。
- 空間規整模塊是本文提出的一個模塊,為了在計算完像素級圖文相似度后有一些可學習的參數來理解計算結果,由一些卷積和逐深度卷積組成。
研究結論
- 在PASCAL-5、COCO20、FSS-1000上作評價,如PASCAL-5有20類,現在把20類分成4份,每份5類,將其中5類作為已知,其他15類未知,做zero-shot實驗。
- 由上圖可知,LSeg在zero-shot的語義分割上確實大幅領先之前方法,但是與few-shot哪怕是one-shot相比,還是有很大的提升空間。
- 由上圖可知,LSeg在zero-shot的語義分割上確實大幅領先之前方法,但是與few-shot哪怕是one-shot相比,還是有很大的提升空間。
存在的問題
- 空間規整層是簡單的conv卷積或者DWconv,這一層進一步學習文本圖像融合后的特征,理解文本與圖像如何交互。消融實驗證明,兩層空間規整層效果最好,但是四層空間規整層突然就崩了,本文中并沒有對此解釋原因,因此無法得知空間規整是否是一個穩定有效的技巧。
啟發與思考
- 圖像分類任務和圖像分割任務很像,無非就是把圖像級別的分類轉變成像素級別的分類,前者的技術往往都能直接應用到后者。
- 提供了一種利用CLIP的新思路,可以單獨使用其中的文本或圖像編碼器,并且也可以用有監督的方式進行訓練。