姚慶安, 張 鑫, 劉力鳴, 馮云叢, 金鎮(zhèn)君
(長(zhǎng)春工業(yè)大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院, 長(zhǎng)春 130012)
圖像語(yǔ)義分割的目標(biāo)是將場(chǎng)景圖像分割為若干有意義的圖像區(qū)域, 并對(duì)不同圖像區(qū)域分配指定標(biāo)簽. 因此, 如何提高語(yǔ)義分割精度是圖像語(yǔ)義分割的關(guān)鍵. 全卷積神經(jīng)網(wǎng)絡(luò)(fully convolutional networks for semantic segmentation, FCN)[1]由于其強(qiáng)大的特征學(xué)習(xí)及表達(dá)能力目前已成為圖像語(yǔ)義分割問(wèn)題的首選方法. 圖像語(yǔ)義分割方法大部分基于FCN, 其中很多網(wǎng)絡(luò)結(jié)構(gòu)都有效提升了語(yǔ)義分割的性能, 但圖像語(yǔ)義分割的發(fā)展仍存在如下問(wèn)題: 1) 網(wǎng)絡(luò)不斷加深, 連續(xù)下采樣導(dǎo)致像素值大幅度丟失, 嚴(yán)重削減了上下文語(yǔ)義信息, 并在上采樣過(guò)程中難以恢復(fù); 2) 圖像多目標(biāo)分割任務(wù)中感受野不同以及高、 低階網(wǎng)絡(luò)間的信息差異性, 導(dǎo)致圖像有效信息嚴(yán)重丟失.
針對(duì)上述問(wèn)題, 本文提出一種融合注意力機(jī)制和多尺度特征的圖像語(yǔ)義分割方法, 以ResNet-101[2]為主干網(wǎng)絡(luò), 采用編碼器-解碼器結(jié)構(gòu)提高精度. 該模型主要包括3個(gè)模塊: 改進(jìn)的帶孔空間金字塔池化模塊(reshape atrous spatial pyramid pooling, RASPP), 采用更密集的空洞率融合多尺度特征, 提取圖像語(yǔ)境信息; 注意力細(xì)化模塊(attention refinement model, ARM), 監(jiān)督特征信息的學(xué)習(xí), 增加上下文語(yǔ)義的關(guān)聯(lián)性; 基于注意力的特征融合模塊(attention-based feature fusion model, A-FFM), 采用通道監(jiān)督有針對(duì)性地指導(dǎo)高、 低階有用信息的融合, 提升網(wǎng)絡(luò)泛化能力. 本文采用改進(jìn)的帶孔空間金字塔池化模塊, 可捕獲多尺度特征的語(yǔ)義信息, 提升多尺度目標(biāo)下有意義特征信息的分割精度; 通過(guò)引入注意力機(jī)制模塊, 用注意力細(xì)化融合模塊, 監(jiān)督上下文信息引導(dǎo)語(yǔ)義特征的學(xué)習(xí), 并設(shè)計(jì)基于注意力的融合模塊, 通過(guò)對(duì)重要通道的監(jiān)督學(xué)習(xí)引導(dǎo)高、 低階特征融合, 提高了模型的泛化能力; 實(shí)驗(yàn)過(guò)程中使用1×1卷積減少了參數(shù)計(jì)算量, 并在數(shù)據(jù)集Cityscapes上取得了72.62%的實(shí)驗(yàn)結(jié)果, 證實(shí)了模型的魯棒性.
全卷積網(wǎng)絡(luò)FCN[1]推動(dòng)了語(yǔ)義分割研究的發(fā)展. 編碼器-解碼器結(jié)構(gòu)也被整合完善用于計(jì)算機(jī)視覺(jué)領(lǐng)域, 如Ronneberger等[3]提出了U-Net, 通過(guò)跳躍連接將編碼器-解碼器中的特征圖進(jìn)行拼接, 有效融合了對(duì)應(yīng)層級(jí)間的特征信息; Badrinarayanan等[4]提出了SegNet, 在編碼階段保留最大池化值和最大索引, 在解碼階段利用最大索引位置信息上采樣得到稠密特征圖. 目前, 編碼器-解碼器作為一種通用的框架模型已廣泛應(yīng)用于各領(lǐng)域. 本文采用編碼器-解碼器結(jié)構(gòu)實(shí)現(xiàn)網(wǎng)絡(luò)設(shè)計(jì).
受人類注意力機(jī)制的啟發(fā), 希望網(wǎng)絡(luò)能自動(dòng)學(xué)習(xí)到圖片中需要關(guān)注的目標(biāo)信息, 抑制其他無(wú)用信息. Hu等[5]提出了SENet, 采用通道注意力對(duì)各通道進(jìn)行學(xué)習(xí), 并將所學(xué)結(jié)果用于指導(dǎo)特征圖, 進(jìn)行調(diào)整; Woo等[6]提出了CBAM, 通過(guò)構(gòu)建空間、 通道兩個(gè)注意力子模塊, 綜合信息獲得更全面可靠的的注意力信息. 目前, 自然語(yǔ)言處理領(lǐng)域中的Transformer[7-9]在計(jì)算機(jī)視覺(jué)領(lǐng)域也得到廣泛關(guān)注. 注意力機(jī)制在圖像語(yǔ)義分割中應(yīng)用廣泛, 本文采用注意力機(jī)制模塊監(jiān)督上下文語(yǔ)義信息, 引導(dǎo)特征學(xué)習(xí).
特征融合可補(bǔ)充像素值的缺失, 常被用于圖像語(yǔ)義分割中. Zhao等[10]提出了PSPNet, 通過(guò)級(jí)聯(lián)不同步長(zhǎng)的全局池化操作(即金字塔池化模塊)融合多尺度特征, 實(shí)現(xiàn)了高質(zhì)量的像素級(jí)場(chǎng)景解析; Chen等[11-14]提出了通過(guò)DeepLab系列優(yōu)化帶孔金字塔池化(atrous spatial pyramid pooling, ASPP)模塊用于融合尺度目標(biāo)的處理, 有效改善了多尺度分割目標(biāo)的任務(wù); Lin等[15]提出了表示圖像特征的金字塔網(wǎng)絡(luò), 以融合上下文語(yǔ)義信息, 組合成新的特征, 解決了目標(biāo)物體性能不佳的問(wèn)題. 為提高多尺度物體分割的性能, 本文通過(guò)改進(jìn)RASPP融合多尺度信息提取語(yǔ)義信息, 并設(shè)計(jì)A-FMM模塊監(jiān)督高、 低階特征融合, 以提高模型的泛化能力.
本文提出的模型旨在解決圖像語(yǔ)義分割中多尺度類別下目標(biāo)分割率低、 圖像上下文特征信息關(guān)聯(lián)性差的問(wèn)題. 網(wǎng)絡(luò)的整體結(jié)構(gòu)如圖1所示. 網(wǎng)絡(luò)的主體為編碼器-解碼器結(jié)構(gòu), 以ResNet-101拓?fù)浣Y(jié)構(gòu)為基準(zhǔn). 編碼階段下采樣到原圖的1/16, 先將下采樣結(jié)果輸入到RASPP模塊, 提高多尺度目標(biāo)類別信息的利用率, 然后通過(guò)1×1卷積優(yōu)化特征圖信息. 解碼階段包含兩部分: 1) 用ARM模塊捕獲解碼器淺層網(wǎng)絡(luò)的上下文信息; 2) 先將編碼結(jié)果特征圖上采樣到同層特征圖的大小, 再將同層特征圖通過(guò)A-FFM進(jìn)行特征融合, 削減高、 低階特征語(yǔ)義間直接跨層融合導(dǎo)致信息丟失的問(wèn)題. 最后輸出得到分割結(jié)果圖.
圖1 網(wǎng)絡(luò)整體架構(gòu)
RASPP模塊在保留全局平均池化和1×1卷積不變的情況下, 可降低維度、 減少參數(shù)量, 并采用稠密空洞率實(shí)現(xiàn)多目標(biāo)分割, 如圖1中RASPP模塊所示. 將RASPP模塊的輸入用
(1)
其中: 空洞卷積在不增加參數(shù)量的情況下增大了感受野, 在保證圖像分辨率的同時(shí)可有效捕獲更大范圍的類別信息[16]; 采用更稠密的空洞率可捕獲更多多尺度目標(biāo)物體的細(xì)節(jié)信息.
由于網(wǎng)絡(luò)深度不同, 其特征圖各通道承載的特征信息也不相同, 將網(wǎng)絡(luò)深、 淺層特征圖直接求和或拼接會(huì)導(dǎo)致大量特征信息的丟失, 影響分割精度.因?yàn)榍罢甙罅康某橄笳Z(yǔ)義信息, 后者更多的是位置細(xì)節(jié)信息.因此, 本文提出添加ARM模塊和A-FFM模塊, 分別如圖2和圖3所示. 前者用于細(xì)化特征圖的上下文關(guān)聯(lián)信息, 后者根據(jù)各通道承載信息對(duì)預(yù)測(cè)目標(biāo)貢獻(xiàn)的大小, 有針對(duì)性的強(qiáng)化重要特征并進(jìn)行突出學(xué)習(xí), 以進(jìn)一步提高模型的學(xué)習(xí)、 泛化能力.
圖2 注意力細(xì)化模塊
圖3 注意力機(jī)制下的特征融合
ARM模塊用公式可表示為
(2)
設(shè)編碼器中淺層位置信息為Xi∈c×h×w(c表示通道數(shù),h和w分別表示特征映射的高度和寬度), 將其輸入到ARM模塊中,Xi依次經(jīng)過(guò)全局池化、 1×1卷積、 批標(biāo)準(zhǔn)化和Sigmoid激活函數(shù), 得到輸出結(jié)果再將與輸入特征Xi相乘, 輸出結(jié)果
(3)
其中G表示全局池化,C表示1×1卷積,B表示批標(biāo)準(zhǔn)化(batch normal),S表示Sigmoid激活函數(shù).
A-FFM模塊用公式可表示為
(4)
(5)
(6)
其中R表示Relu激活函數(shù).
3.1.1 數(shù)據(jù)集
數(shù)據(jù)集Cityscapes[17]提供了50個(gè)不同城市街景記錄的立體視頻序列, 包含20 000張弱注釋圖片和5 000張高質(zhì)量的弱注釋圖片. 圖片像素為1 024×2 048, 涵蓋各時(shí)間及天氣變化情形下的街景, 共19個(gè)語(yǔ)義類別用于訓(xùn)練和評(píng)估.
數(shù)據(jù)集CamVid[18]由車載攝像頭拍攝得到的5個(gè)視頻序列組成, 提供了不同時(shí)段701張分辨率為960×720的圖片和32個(gè)類別的像素級(jí)標(biāo)簽, 包括汽車、 行人、 道路等. 數(shù)據(jù)集中道路、 天空、 建筑物等尺度大, 汽車、 自行車、 行人等尺度小, 待分割物體豐富.
3.1.2 評(píng)價(jià)指標(biāo)
采用平均交并比(mean pixel accuracy, MIoU)[19]作為語(yǔ)義分割質(zhì)量的評(píng)價(jià)標(biāo)準(zhǔn). MIoU是分割結(jié)果真值的交集與其并集的比值, 按類計(jì)算后取平均值, 用公式可表示為
(7)
其中pii表示正確分類的像素個(gè)數(shù),pij表示本應(yīng)屬于第i類卻被分為第j類的像素個(gè)數(shù),n為類別數(shù).
3.1.3 實(shí)驗(yàn)參數(shù)設(shè)置
實(shí)驗(yàn)基于Pytorch網(wǎng)絡(luò)框架使用Python3.7編寫實(shí)現(xiàn). 計(jì)算機(jī)系統(tǒng)為CentOs7.9, 圖形處理器為NVIDIA TITAN XP(4塊), 加速庫(kù)為Cuda10.2. 在數(shù)據(jù)集Cityscapes和CamVid上對(duì)模型進(jìn)行微調(diào), 以加快模型收斂速度, 同時(shí)采用隨機(jī)梯度下降法對(duì)模型進(jìn)行訓(xùn)練, 設(shè)基礎(chǔ)學(xué)習(xí)率為1×10-4, 動(dòng)量為0.9, 將輸入圖片進(jìn)行裁剪.
3.2.1 模型性能對(duì)比
為衡量模型的有效性, 本文在Cityscapes驗(yàn)證集上進(jìn)行實(shí)驗(yàn), 并與DeepLab v3+,SegNet,FCN-8s模型進(jìn)行對(duì)比. 實(shí)驗(yàn)結(jié)果列于表1. 由表1可見, 本文模型比其他模型的結(jié)果更優(yōu), 在相同主干網(wǎng)絡(luò)下, 比DeepLab v3+的預(yù)測(cè)結(jié)果高1.14%, 比FCN-8s的預(yù)測(cè)結(jié)果高7.42%.
表1 在Cityscapes驗(yàn)證集上不同模型的性能實(shí)驗(yàn)結(jié)果
為更直觀展示本文模型的優(yōu)越性, 將DeepLab v3+和本文模型進(jìn)行可視化展示, 結(jié)果如圖4所示. 由圖4中第一、 第二列的圖片可見: DeepLab v3+模型處理近處目標(biāo)分割邊界粗糙, 對(duì)遠(yuǎn)處目標(biāo)細(xì)節(jié)丟失嚴(yán)重, 而本文模型很好地彌補(bǔ)了上述不足, 準(zhǔn)確地捕獲了細(xì)節(jié)信息, 解決了分割模糊和漏分割問(wèn)題; 對(duì)比圖4中第三列可見, 本文模型能正確分割遠(yuǎn)處建筑物的細(xì)節(jié)信息; 對(duì)比圖4中第四列可見, 本文模型成功避免了誤分割和模糊分割的問(wèn)題. 實(shí)驗(yàn)結(jié)果表明, 本文模型能更好地保留圖像細(xì)節(jié)信息, 使預(yù)測(cè)結(jié)果更準(zhǔn)確和全面. 用本文模型對(duì)測(cè)試集的分割結(jié)果進(jìn)行可視化展示如圖5所示.
圖4 Cityscapes驗(yàn)證集上圖片分割示例
圖5 Cityscapes測(cè)試集上圖片分割示例
3.2.2 消融實(shí)驗(yàn)
RASPP是在ASPP基礎(chǔ)上使空洞率稠密化, 本文采用控制變量法進(jìn)行實(shí)驗(yàn), 實(shí)驗(yàn)結(jié)果列于表2, 測(cè)試集Cityscapes上ASPP模塊性能對(duì)比如圖6所示. 由表2可見, 通過(guò)將DeepLab v3+原有空洞率(1,6,12,18)稠密化為(1,3,6,9,12,24), 本文提出密集型感受野相對(duì)于DeepLab v3+原有的感受野提高了0.59%. 由圖6可見, RASPP在兼顧多類別信息的同時(shí)有效捕獲了多尺度細(xì)節(jié)信息, 也為后續(xù)高、 低階特征圖的融合提供了較高分辨率的語(yǔ)義特征圖.
表2 ASPP模塊改進(jìn)前后性能對(duì)比
圖6 Cityscapes測(cè)試集上ASPP模塊性能對(duì)比
為驗(yàn)證本文提出的RASPP,ARM和A-FFM的有效性, 使用數(shù)據(jù)集Cityscapes進(jìn)行逐層消融實(shí)驗(yàn), 對(duì)比指標(biāo)為MIoU, 消融實(shí)驗(yàn)結(jié)果列于表3, 消融過(guò)程中各模塊可視化結(jié)果如圖7所示.
表3 在數(shù)據(jù)集Cityscapes上不同改進(jìn)方案的性能分析
圖7 Cityscapes測(cè)試集上消融實(shí)驗(yàn)結(jié)果
由表3可見, RASPP模塊將網(wǎng)絡(luò)的MIoU從63.49%提升到69.25%, 有效提高了多目標(biāo)物體的分割精度, 而注意力機(jī)制模塊ARM和A-FFM的引入, 對(duì)不同層信息充分保留的同時(shí)極大削減了各特征層之間的語(yǔ)義差異, 最后達(dá)到MIoU為72.62%的結(jié)果輸出, 體現(xiàn)了本文算法的優(yōu)越性.
3.2.3 泛化實(shí)驗(yàn)
為進(jìn)一步檢驗(yàn)本文模型的泛化能力, 將RASPP,ARM和A-FFM模塊分別添加到FCN和DeepLab v3+等模型中, 在數(shù)據(jù)集Cityscapes上可達(dá)到MIoU為65.71%和72.62%的精確度, 驗(yàn)證了本文模型有一定的可適性.
下面在小數(shù)據(jù)集CamVid上進(jìn)行實(shí)驗(yàn), 同樣采用MIoU作為評(píng)價(jià)指標(biāo), 實(shí)驗(yàn)結(jié)果列于表4. 由表4可見, 本文模型相比DeepLab v3+其MIoU提高0.57%, 相對(duì)于SegNet提高9.28%, 證實(shí)了本文模型具有泛化能力.
表4 在數(shù)據(jù)集CamVid上不同模型的性能對(duì)比
綜上所述, 針對(duì)圖像語(yǔ)義分割中空間信息易丟失、 多尺度類別下目標(biāo)分割率較低的問(wèn)題, 本文提出了一種融合注意力機(jī)制和多尺度特征的圖像語(yǔ)義分割方法. 通過(guò)改進(jìn)ASPP模塊, 提供了更豐富的尺度多樣性, 從而提高了類別信息利用率; 使用ARM模塊監(jiān)督上下文語(yǔ)義信息的提取, 細(xì)化了信息邊界; A-FFM模塊通過(guò)降低高、 低階特征圖之間的融合差異, 有針對(duì)性地減少特征丟失以增強(qiáng)模型的泛化能力, 并在不同數(shù)據(jù)集上對(duì)本文模型結(jié)構(gòu)的魯棒性進(jìn)行了驗(yàn)證.