?

基于Transformer的透明物體圖像語義分割

2023-09-23 02:00朱松豪孫冬軒
關鍵詞:解碼器編碼器注意力

朱松豪,孫冬軒,宋 杰

(南京郵電大學 自動化學院、人工智能學院,江蘇 南京 210023)

語義分割作為計算機視覺研究的重要內容之一,結合了目標檢測、圖像分類和圖像分割。 通過某種方法將圖像中的每個像素進行分類,最終得到一幅具有語義標注的分割圖像,這種像素級分割也被稱為密集預測。

隨著全卷積神經網絡的出現[1],深度學習逐漸用于解決圖像語義分割問題。 由于圖像分類和語義分割間存在著密切的聯系,因此許多先進的語義分割框架都是基于ImageNet 的圖像分類體系的變體,如AlexNet[2]、VGGNet[3]和GoogleNet[4]。 全卷積神經網絡通過將以上這些分類網絡的全連接層調整為卷積層,再經過端到端、像素到像素的訓練,語義分割性能超越傳統機器學習方法。

從模式識別的角度,語義分割問題可視為一個結構化預測問題,其難點在于如何設計能夠有效捕獲上下文信息的模塊。 這方面的一個典型例子是空洞卷積[5],它通過在卷積核中“膨脹”孔洞增加感受野。 隨著自然語言處理的巨大成功[6],Transformer橫空出世,創造性地實現了對序列化數據的并行處理,極大提高了計算效率,因此Transformer 被引入視覺任務。 Dosovitskiy 等[7]提出視覺Transformer,首次將Transformer 引入計算機視覺領域。 按照自然語言處理的思路,Dosovitskiy 等將圖像分割成多個線性嵌入的圖像塊,并將這些圖像塊輸入帶有位置嵌入的標準Transformer,作為向量進行多頭注意力操作,實現圖像全局上下文信息的捕獲,從而在ImageNet 上獲得了令人印象深刻的性能。

作為Trans10K-V2 數據集的創作者,Xie 等[8]提出用于解決透明物體語義分割的方法,該方法通過將卷積神經網絡提取的初始特征和位置信息輸入到Transformer,用以提取注意力特征,最后通過一個小的卷積頭獲得最終的語義分割結果。 由于透明物體具有透視、反射等特殊性質,因此需要借助豐富的上下文信息才能推斷某個像素到底屬于哪個類別。 受該方法啟示,本文在編碼器的注意力模塊中增加了一個卷積模塊,如圖1 所示,其中圖1(a)為文獻[7]中編碼器部分的結構,圖1(b)為改進后的混合結構。 其多頭注意力模塊用于捕獲圖像的全局信息,卷積模塊用于捕獲圖像的局部信息,這對于改善復雜場景下的語義分割性能至關重要。

圖1 Transformer 編碼器結構示意圖

文獻[9]利用空洞空間卷積池化金字塔獲取多尺度信息,用以獲取更精確的分割結果。 文獻[10]利用空洞空間卷積池化金字塔挖掘多尺度卷積特征,并對圖像全局特征進行編碼。 受該方法啟示,本文在最后的特征融合模塊引入了改進的金字塔模塊,將主干網絡提取的特征映射與注意力特征映射相結合,進一步提升透明物體語義分割效果。

本文所提方法主要貢獻描述如下:

(1) 為更好地捕獲圖像上下文信息,提出將多頭自注意力與卷積相結合的注意力機制模塊引入Transformer 編碼器,以期獲得更為精確的特征映射;

(2) 為 更 好 地 融 合 多 尺 度 特 征 映 射, 在Transformer 解碼器得到注意力特征映射后,引入了包含空洞空間卷積池化金字塔結構的特征融合模塊,以期更好地融合主干網絡特征映射和注意力特征映射,用以提升透明物體語義分割效果;

(3) 本文所提方法模型在Trans10K-v2 數據集上展現了良好的性能。

1 相關工作

1.1 語義分割

作為深度學習開山之作的全卷積神經網絡,其將傳統的分割方法轉換為端到端的全卷積分類網絡。 之后,研究人員從不同角度致力于改善全卷積神經網絡。 繼承全卷積神經網絡的思想,文獻[11]提出基于編解碼結構和跳躍連接的分割方法。 文獻[12]將邊界信息引入條件隨機場,用于改進分割結果。 文獻[5,13]均通過引入空洞卷積擴大感受野,提高語義分割效果。 文獻[14]利用金字塔解析模塊獲取不同區域上下文信息,用于解決語義分割問題。 同時,基于注意力機制的網絡模型也廣泛用于捕獲上下文信息。 文獻[15]利用點式空間注意模塊,動態捕捉上下文信息,研究結果表明,全局上下文信息有利于提高場景分割精度。 文獻[16]的網絡模型中同時嵌入了空間注意力機制和通道注意力機制。 上述這些方法的主干網絡依然基于全連接網絡,其中的編碼和特征提取部分大多都基于文獻[3]提出的VGG 和文獻[17]提出的ResNet 等經典卷積網絡。

1.2 視覺任務中的Transformer

文獻[6]中Transformer 和自注意力模型的出現,突破性地改變了自然語言處理的研究現狀。 文獻[7]首次將自然語言處理中的純Transformer 引入視覺任務,構成視覺Transformer,并在圖像分類方面取得令人滿意的結果,為在語義分割模型中開發基于純Transformer 編碼器的設計提供了直接啟發。在目標檢測領域,文獻[18]利用Transformer 對目標位置信息和全局圖像上下文關系進行推理,且不使用非極大值抑制,而直接輸出最終檢測結果。 文獻[19]首次在Transformer 中引入金字塔結構,展現了在視覺任務中純Transformer 模型與卷積神經網絡模 型 相 似 的 潛 力。 文 獻[20] 采 用 視 覺Transformer 作為編碼器,卷積神經網絡作為解碼器,獲得了不錯的性能。

1.3 特征融合

文獻[11]中的U-Net 方法在下采樣時提取分辨率較小的特征,在上采樣時又將分辨率逐層回復到原來大小,在此過程中采用串聯方式將兩種尺度特征相結合,得到預測結果。 這種思想也常常出現在Transformer 結構中,但最后的融合特征尺寸過大,訓練時間和預測時間較長。 文獻[21]中的特征金字塔網絡模型既可用于目標檢測,也可用于語義分割,與U-Net 網絡模型類似,特征金字塔網絡模型也是基于編碼-解碼過程提取全局特征,區別在于特征金字塔網絡模型采用疊加方式,并基于多個特征映射進行預測分類。 文獻[9]提出基于空洞卷積特征金字塔的特征融合方式,對于主干網絡提取的不同尺度的特征映射,分別使用不同空洞率的卷積得到新的特征映射,再進行融合,獲得最終的特征。 文獻[22]利用跨步卷積和空洞卷積進行特征融合,進一步提高了語義分割結果。

1.4 Trans10K-V2 數據集

文獻[23]中的Trans10K 數據集是第一個大規?,F實世界透明物體語義分割數據集,但其只有兩個類別。 Trans10K-V2 數據集在其基礎上,進一步使用更細粒度的類別對圖像進行注釋。 Trans10KV2 數據集共有10 428 張圖像,分為2 個大類以及11 小類,具體信息如下:(1) 透明物品。 茶杯、玻璃瓶、玻璃罐、玻璃碗和眼鏡。 (2) 透明材質。 窗戶、透明隔板、透明盒子、冰柜蓋板、玻璃墻和玻璃門。這些物體常出現在人們的生活中,更適合現實世界的應用。 圖2 給出來自Trans10K-V2 數據集的例圖。

圖2 Trans10K-V2 數據集示意圖

2 本文所提方法

圖3 給出本文所提出的基于視覺轉換器的透明物體語義分割網絡模型結構圖。 首先,利用卷積神經網絡提取輸入圖像的初始特征映射,并將其展開平鋪成一維特征序列;然后,將得到的一維特征序列輸入至帶有位置嵌入的視覺轉換器的編碼器,用以獲取帶有注意力的編碼特征映射;其次,將編碼特征映射與一組可學習的類別嵌入傳至視覺轉換器的解碼器,用以獲取注意力特征映射,其中N為類別數,M為多注意力的頭數;最后,利用不同采樣率的空洞卷積,實現來自卷積神經網絡的初始特征映射與來自視覺轉換器的注意力特征映射的融合,得到最終的透明物體語義分割結果。

圖3 本文所提網絡模型的結構示意圖

2.1 主干網絡模塊

對于圖像語義分割算法而言,絕大多數主干網絡均為來自文獻[17]的殘差網絡,該網絡的核心思想是引入一個恒等捷徑連接結構,直接跳過一個或多個中間層。 通過殘差學習,殘差網絡能夠有效解決隨著網絡深度不斷加深,網絡性能不斷退化的問題。 特征提取過程中,通常選取殘差網絡第一層至第五層的特征映射,這是因為相較于輸入圖像原始尺寸,第一層至第五層的特征映射分別縮減至1/2~1/25。

如圖3 所示,將一幅尺寸為H×W×3 的原始圖像,輸入至殘差網絡-101 網絡,通過下采樣進行提取特征,文中提取網絡第四層的特征映射。 由于視覺轉換器的輸入為一維數據序列,因此將二維圖像特征進行分割并拉伸為C×(H/16,W/16)的圖像塊序列(C表示特征通道數),以便傳入編碼器中進行編碼。

2.2 視覺轉換編碼器模塊

視覺轉換編碼器模塊由多層編碼器模塊堆疊而成,其中每層編碼器模塊由一個注意力模塊、一個多層線性感知器以及一個歸一化層組成,需要注意的是,這里的注意力模塊包含一個多頭自注意力模塊和一個卷積模塊,多層線性感知器包含一個ReLU激活函數和兩個全連接層。 圖4 給出視覺轉換編碼器模塊的結構示意圖。

圖4 視覺轉換編碼器模塊的結構示意圖

視覺轉換編碼器模塊的流程描述如下:首先,利用殘差網絡提取特征映射,并將其與位置嵌入信息作為視覺轉換編碼器的輸入;然后,依次利用層標準化和多頭自注意力提取特征映射;接下來,依次利用層標準化和多層線性感知器提取特征映射,并進行多層以上的處理過程;最后,再次利用層標準化獲得最終的編碼特征映射。

由于視覺轉換編碼器的輸入特征須是一維序列,因此為彌補空間維度上的缺失,本文引入文獻[24]中的一組位置嵌入補充至一維特征序列,用以提供這些圖像塊在整幅圖像中的絕對位置信息和相對位置信息,此時的位置嵌入與展開的特征映射具有相同的維度C×(H/16,W/16)。 除了采用位置嵌入策略外,本文還引入了文獻[7]中的類別標記,其輸出特征加上一個線性分類器即可實現分類。 網絡模型訓練過程中,隨機初始化類別標記,并將其與位置嵌入進行相加。

在注意力機制方面,本文將原始視覺轉換器中的多頭注意力模塊改變成多頭自注意力與卷積層的混合結構,采用線性多頭自注意力捕獲全局上下文信息,采用卷積層捕獲局部上下文信息。 最后,對全局上下文和局部上下文進行一個與操作,提取全局-局部上下文信息。

對于能夠捕獲全局上下文信息多頭自注意力而言,其輸出形式表示為

其中,Q、K、V分別表示查詢、鍵、特征信息,分別通過3 個不同的權值矩陣WQ、WK、WV乘以輸入一維特征序列獲得,且采用softmax 函數計算注意力特征,表達式為

多頭自注意力的特征提取過程描述如下:首先,通過n個不同的線性變換對Q、K、V進行投影;然后,將不同的線性投影結果進行拼接,具體操作為

經過編碼器后,特征映射的維度依然為C×(H/16,W/16)。

卷積層部分采用卷積核分別為1、3、5 的3 個并行卷積,再分別進行批歸一化操作來提取局部上下文信息,生成的全局和局部上下文進一步進行深度卷積、批歸一化操作和1×1 卷積,以增強泛化能力。圖3 中編碼器模塊中的注意力機制混合結構細節如圖5 所示。

圖5 注意力機制混合結構示意圖

整個編碼流程可用式(4)表示。

其中,x表示特征映射,PE表示位置嵌入信息,l表示編碼器層數。

2.3 視覺轉換解碼器模塊

解碼器模塊由多層解碼器模塊堆疊而成,其中每層解碼器模塊包含一個多頭自注意力模塊、一個標準化層以及一個多層線性感知器。 圖6 給出視覺轉換解碼器模塊的結構示意圖。

圖6 視覺轉換解碼器模塊的結構示意圖

視覺轉換解碼器模塊的流程描述如下:首先,將編碼器得到的特征映射與一組可學習的類別嵌入輸入到解碼器;然后,利用多頭自注意力機制獲得一個注意力特征映射以及一個新的目標區域特征映射;接下來,分別將編碼特征映射、注意力特征映射、目標區域特征映射依次通過層歸一化、多層線性感知器提取特征映射;最后,進行多層處理,獲得不同類別的注意力特征映射。

本文在解碼器的輸入端初始化一組可學習的類別嵌入Ecls作為查詢Q,由多層視覺轉換解碼器模塊通過多頭自注意力進行迭代學習,且每次迭代后的類別嵌入Ecls可表示為

其中,n表示解碼器層數。 每次迭代更新一次,就會生成一個新的類別嵌入供下一層查詢。 經過多層解碼后,最后獲得的注意力特征映射的維度為N ×M ×(H/16,W/16)。

整個解碼流程可用式(6)表示。

其中,CE表示類別嵌入,F表示編碼特征映射,A表示注意力特征映射,l表示解碼器層數。

2.4 特征融合模塊

經過視覺轉換器編碼-解碼后,將得到的注意力特征映射與主干網絡提取的初始特征映射合并,然后進行每類別上的像素分類。 由于視覺轉換器關注圖像的全局上下文信息,因而得到的注意力特征映射往往忽略一些細節特征,需要融合不同尺度的特征才能達到更好的分割效果。

與文獻[25]采用的特征融合方法不同,這里將最大池化層替換為包括深度卷積和點卷積的深度可分離卷積,其中的深度卷積是指首先對輸入特征的每個通道分別進行卷積,然后再進行1×1 的全卷積,這樣可大幅減少參數量并大幅降低計算量。

特征融合模塊的流程描述如下:首先,對主干網絡提取的第三層特征進行自適應平均池化,且利用空洞率分別為6、12 及18 的3 組卷積核進行卷積操作;然后,將解碼器獲得的注意力特征映射上采樣至N×M×(H/4,W/4)維度,并與卷積神經網絡提取的特征映射融合至N×(M+C)×(H/4,W/4)維度,再經過卷積等操作降至N×(H/4,W/4)維度;最后,利用平均最大池化函數獲得分割結果。

對于優化器的選擇,很多深度學習任務都會使用基于隨機梯度下降的優化算法,實現模型收斂,但隨機梯度下降算法存在以下問題:(1) 很難選擇合適的初始學習率;(2) 各個參數只能使用同一種學習率;(3) 學習率調整策略受限。 為此,這里選擇適應性矩估計優化器完成模型收斂。 這是因為適應性矩估計優化器結合了自適應學習梯度下降算法和動量梯度下降算法的優點,因而使得適應性矩估計優化器既能適應梯度稀疏問題,又能緩解梯度振蕩問題。

3 實驗結果

3.1 實驗設置

(1) 利用殘差網絡-101 的預訓練模型初始化網絡參數。

(2) 對于優化損失,設置學習率為1×10-8,權重衰減設置為1×10-4,動量設置為0.9 的適應性矩估計優化器。

(3) 多頭自注意力的頭部數設置為8,編碼層和解碼層的層數均設置為16,多層線性感知器的比率設置為3,訓練次數設置為50 個周期,初始學習率設置為1×10-4。

3.2 實驗結果

由表1 所示的實驗結果可以看出,本文所提方法的準確率和平均交并比分別達到最高的94.85%和73.86%。 相較于性能最好的文獻[8]中語義分割方法Trans2Seg,本文所提方法的準確率和平均交并比分別提高了0.86%和1.71%。

表1 Trans10K-V2 數據集實驗結果 %

此外,由表1 的實驗結果還可以看出,在所有類別的透明物體上,本文方法的分割性能總體上都得到了提高,特別是在大面積和整體透明物體方面。 例如,與目前整體性能先進的Trans2Seg 方法相比,本文提出的方法在“冰柜”、“玻璃門”和“玻璃盒子”3 個類別的平均交并比分別提高了7.47%、2.68%和2.04%。

3.3 消融實驗

本文以文獻[8]中的方法作為基線方法,首先通過卷積神經網絡提取輸入圖像的初始特征,然后將其與位置信息輸入到Transformer 的編碼器和解碼器中提取注意力特征,最后通過一個卷積頭得到最終的分割結果。 由于Transformer 和卷積神經網絡都具有特征提取的功能,Transformer 中強大的注意力機制側重于提取圖像的全局特征,而卷積神經網絡則側重于提取圖像的局部特征。 對此,本文進行了全部的消融實驗,具體包括以下3 個方面:(1)標準的多頭注意力機制與卷積層輔助的注意力-卷積機制的對比實驗;(2) 是否有特征融合模塊的對比實驗;(3) 多頭自注意力中不同頭數的對比實驗。

第一組實驗研究了Transformer 編碼器中卷積層對注意力機制的輔助對實驗結果的影響。 作為對比,使用圖1(a)所示的標準Transformer 編碼器結構。 從表2 所示的對比實驗結果可以看出,使用卷積層輔助的注意力-卷積結構可以有效提高分割精度。

表2 注意力機制中卷積層的對比實驗結果 %

第二組實驗研究了特征融合模塊對實驗結果的影響。 作為對比,本文沒有采用Transformer 解碼器輸出注意力特征映射后的空洞空間卷積金字塔結構,而是對注意力特征映射進行上采樣后,直接與從卷積主干網絡中提取的初始特征映射進行連接操作,最終得到分割結果。 從表3 所示的對比實驗結果可以看出,通過使用空洞卷積對主干網絡特征映射進行多尺度處理后,再與注意力映射融合,可以獲得更好的實驗結果。

表3 特征融合模塊的對比實驗結果 %

第三組實驗研究了多頭自注意力中頭部的數量對實驗結果的影響。 頭部數是影響注意力機制性能的一個重要超參數。 文獻[31]中的研究表明,類似于卷積神經網絡同時使用多個濾波器,多頭的自注意力有助于網絡利用各種特征。 本文設置了3 種多頭自注意力,分別為4 頭、8 頭和16 頭,進行對比實驗。 從表4 所示的對比實驗的結果可以看出,隨著頭數的增加,平均交并比值先增大后減小,并不是頭數越多,分割性能的提高就越大,所以選擇設置頭數為8 進行實驗。

表4 多頭自注意機制中不同頭數的對比實驗結果 %

3.4 可視化實驗結果

為了更直觀地評價本文網絡模型的性能,本文將日常生活中的實拍物品、一些復雜場景下的物體、提升最為明顯的3 類物體以及本文方法與其他語義分割方法的對比進行分割結果的可視化展示。

圖7 為對日常生活中的透明物體的實拍圖像進行分割的結果。 從分割圖像中可以看出,本文的網絡模型對于生活中的實拍物體也具有較高的準確度,對瓶子、杯子、眼鏡等常見物品識別得比較精細,也進一步說明本方法具有一定的實際意義。

圖7 日常物品實拍分割結果

圖8 為一些在復雜場景下的透明物體的分割結果。 例如,有樹木和樓房等其他干擾物體作為背景的窗戶和玻璃墻、商場中陳列商品的玻璃櫥窗、多個交叉放置的玻璃杯、裝有其他物體的杯子和罐子以及容易與玻璃墻和窗戶混淆的玻璃門等。 從分割結果可以看出,在較為復雜的環境狀態下,本文方法也能夠輕松識別出透明物體的所在位置,并能分割出相對清晰的物體輪廓。

圖8 復雜場景下的分割結果

圖9 列出了“冰柜”、“玻璃門”和“玻璃盒子”3 種物體的原始圖像、語義標注信息以及本文方法與Trans2Seg 方法的分割結果對比。 可以看出,本文對這3 類對象的分割精度有了明顯的提高。 由于冰柜內部有許多陳列物品的干擾,Trans2Seg 很容易將冰柜誤識別為窗戶或隔板。由于玻璃墻與門的特征極其相似,在識別過程中很難把握門的特征而混淆。 Trans10K-V2 數據集還將一些如透明尺子和透明牌子的物體歸類到盒子類別中,這進一步增加了分割的難度。 本文方法可以有效地克服這些問題,獲得相對精確的分割結果。

圖9 3 種物體分割結果對比

圖10 為不同方法的分割結果示意圖。 可以看出,與其他傳統的卷積神經網絡方法相比,本文方法最終預測到的結果更加準確,特別是在較為復雜的場景下。 在物體邊緣的地方識別得更加精細,而且一些玻璃物體上的細節也可以高質量地預測出來,例如商場里的玻璃門、玻璃墻和透明櫥窗。

圖10 與其他方法的分割結果對比

通過上述可視化結果可以發現,本文方法中強大的注意力機制結構和特征融合方法能有效地捕捉到透明物體與周圍環境之間的關系,并能在多種干擾因素存在下,較為準確地判斷出該部位屬于透明物體的一部分還是周圍其他物體。

4 結束語

本文針對一種新的透明物體數據集的語義分割方法進行了相關研究。 以Trans2Seg 方法作為基線,提出了一種基于Transformer 的分割網絡,并在此基礎上優化了編碼-解碼過程的結構,設計了Transformer 編碼器的多頭自注意力與卷積的混合結構。 一方面,利用傳統的卷積方法捕捉圖像的局部特征;另一方面,利用多頭自注意力提取圖像全局特征,更好地理解圖像上下文信息。 此外,為了提高分割效果,還引入了包含空洞空間卷積金字塔結構的特征融合模塊。 實驗結果表明,該網絡模型能有效提高透明目標分割的性能。

猜你喜歡
解碼器編碼器注意力
讓注意力“飛”回來
科學解碼器(一)
科學解碼器(二)
科學解碼器(三)
線圣AudioQuest 發布第三代Dragonfly Cobalt藍蜻蜓解碼器
基于FPGA的同步機軸角編碼器
“揚眼”APP:讓注意力“變現”
基于PRBS檢測的8B/IOB編碼器設計
A Beautiful Way Of Looking At Things
JESD204B接口協議中的8B10B編碼器設計
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合