国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于ENet的輕量級語義分割算法研究*

2021-09-24 12:06:50徐世杰吳思凡
計算機工程與科學(xué) 2021年8期
關(guān)鍵詞:空洞注意力語義

徐世杰,杜 煜,鹿 鑫,吳思凡

(北京聯(lián)合大學(xué)智慧城市學(xué)院,北京 100101)

1 引言

語義分割算法廣泛應(yīng)用于無人駕駛感知、醫(yī)學(xué)圖像識別和視頻特效等領(lǐng)域,具有重要的研究價值。目前語義分割算法的研究重點在于降低算法參數(shù)量級,提升算法實時性[1]。Paszke 等人[2]提出的ENet(Efficient Net)算法是經(jīng)典的輕量級語義分割算法,具有推理速度快、參數(shù)量少和精度較高的特點。但是,隨著相關(guān)研究的深入,ENet簡單的線性編碼-解碼結(jié)構(gòu)無法滿足更高的應(yīng)用要求。ENet使用較為對稱的編碼-解碼結(jié)構(gòu),采用傳統(tǒng)的逐級下采樣方式緩慢減小特征圖尺度。然而淺層卷積結(jié)果雖具有豐富空間信息,但特征感受野較小、經(jīng)過的非線性結(jié)構(gòu)少,不能獲得有效的語義信息。并且,空間信息傳遞損失會隨著網(wǎng)絡(luò)層數(shù)的加深而增加。Yu等人[3]認為淺層卷積進行了較多大尺寸矩陣運算,減少淺層卷積數(shù)量能有效降低計算量。ENet采用逐級上采樣的解碼方式恢復(fù)特征尺度,造成解碼器過于龐大,也增加了大尺寸矩陣運算。此外,ENet在bottleneck2.0~3.0中穿插了大量空洞卷積[4]以提升算法感受野[5,6,7],過多的空洞卷積不僅增加了內(nèi)存占用,其疊加結(jié)構(gòu)還造成了網(wǎng)格效應(yīng)[8],而文獻[9]的實驗表明感受野過大會造成過擬合現(xiàn)象。

針對以上問題,本文提出了改進的ENet算法 C-ENet+AM+RAM,首先對ENet編解碼部分進行剪裁,以加快特征圖采樣過程并降低空洞卷積的使用率,然后引入通道注意力機制[10],并受其啟發(fā)設(shè)計了空間注意力機制,將2種注意力機制結(jié)合設(shè)計了注意力模塊AM(Attention Module),將淺層的空間特征與解碼器的語義特征融合,最后利用金字塔結(jié)構(gòu)[11]的擴張率疊加空洞卷積,設(shè)計感受野聚合模塊RAM(Receptive field Aggregation Module)改善算法感受野。改進后的算法參數(shù)量降低了22%,在公開數(shù)據(jù)集Cityscapes[12]和BDD100K[13]上的實驗結(jié)果超越了原有算法,推理速度提升了23%和17%,分割結(jié)果的平均交并比在2個數(shù)據(jù)集上分別提升了0.9%和0.5%。

2 ENet算法優(yōu)化

2.1 結(jié)構(gòu)剪裁

ENet算法的基本卷積結(jié)構(gòu)為bottleneck結(jié)構(gòu),本文以此為最小裁剪單元。若輸入數(shù)據(jù)尺寸為P×Q×3,有C個類別,則其原始結(jié)構(gòu)與裁剪部分如表1所示,其中加粗部分為裁剪部分。網(wǎng)絡(luò)結(jié)構(gòu)名稱為ENet的各個卷積結(jié)構(gòu),操作類型為此結(jié)構(gòu)的主要卷積類型(空為普通卷積),輸出尺寸是當(dāng)前卷積結(jié)構(gòu)的輸出尺寸。

Table 1 ENet structure cutting表1 ENet結(jié)構(gòu)剪裁

2.2 模塊設(shè)計

本文不再依賴解碼器提取淺層的空間信息,而是將空間信息直接傳至解碼器,通過設(shè)計的空間注意力模塊SAM(Spatial Attention Module)與通道注意力模塊CAM(Channel Attention Module)融合淺層的空間信息與深層的語義信息,降低空間信息的傳遞損失;通過對感受野模塊的設(shè)計,改善算法的感受野,消除網(wǎng)格效應(yīng)。

Figure 1 Structure overview of improved ENet圖1 改進的ENet結(jié)構(gòu)總覽

改進的ENet算法的模塊結(jié)構(gòu)圖如圖1所示。其中,⊕為通道相加以形成殘差結(jié)構(gòu);?為相乘加權(quán)以實現(xiàn)注意力機制;M(Mean)為通道求平均操作。首先,以bottleneck1.2與bottleneck4.0的輸出作為輸入,2個輸入分別包含了淺層的空間信息與深層的語義信息,通過將輸入信息進行通道串聯(lián)聚合2種信息,將聚合信息嵌入其中的感受野聚合模塊,提升特征圖的感受野并進行初步融合;然后,再利用注意力機制對信息進行通道維與空間維加權(quán),進一步融合聚合信息;最后,對特征圖進行2倍上采樣恢復(fù)至輸入圖像尺寸并進行像素分類。

2.2.1 感受野聚合模塊

ENet算法在bottleneck2.1~3.7部分循環(huán)了2次擴張率為2,4,8,16的空洞卷積。但是,根據(jù)混合空洞卷積理論HDC(Hybrid Dilated Convolution),這種擴張率的組合會造成網(wǎng)格效應(yīng)。

HDC提出了連續(xù)串聯(lián)空洞卷積的3個設(shè)計原則:

(1)多層空洞卷積的擴張率不能有大于1的公約數(shù)。

(2)連續(xù)的空洞卷積的擴張率應(yīng)設(shè)計成鋸齒狀結(jié)構(gòu)。

(3)每層空洞卷積的擴張率應(yīng)滿足式(1):

Mi=max[Mi+1-2di,Mi+1-2(Mi+1-di),di]

(1)

其中,Mi是第i層的最大擴張率(默認Mi=di,di是第i層的擴張率)。通過調(diào)整卷積的擴張率滿足上述3個設(shè)計原則以避免網(wǎng)格效應(yīng)。在ENet算法中,每層的擴張率設(shè)計如表1中的操作類型所示,除去dilatedn表示擴張率為n的卷積操作外,其余卷積結(jié)構(gòu)的擴張率均為1。

在bottleneck結(jié)構(gòu)中,1×1卷積不影響感受野,而尺度為5的非對稱卷積對感受野的影響等同于5×5卷積。因此,bottleneck3.2可看做擴張率為1的普通卷積,bottleneck3.3可看作擴張率為4的空洞卷積,不滿足HDC第3個設(shè)計原則,會造成網(wǎng)格效應(yīng),并且后續(xù)結(jié)構(gòu)會加重這種效應(yīng)。

本文采用并聯(lián)結(jié)構(gòu)設(shè)計空洞卷積,避免了HDC嚴格的設(shè)計要求。將擴張率D為1,2,4,8的空洞卷積進行通道并聯(lián)(取消了擴張率為16的操作),這種擴張率遞增的并聯(lián)結(jié)構(gòu)能夠避免網(wǎng)格效應(yīng)的產(chǎn)生,緩解感受野過大造成的過擬合現(xiàn)象和減少大擴張率造成的內(nèi)存占用問題。感受野聚合模塊細節(jié)如圖2所示,若設(shè)bottleneck1.2與bottleneck4.0的輸出為x1,x2,則RAM的輸入f可表示為式(2)所示:

f=conv(cat(x1,x2))

(2)

其中,cat是通道串聯(lián)操作,conv是卷積操作。則RAM的輸出FRAM可表示為式(3)所示:

FRAM=conv[cat(D1,D2,D4,D8)]

(3)

其中,Dn表示對f進行擴張率為n的空洞卷積后的輸出。

Figure 2 Receptive field aggregation module圖2 感受野聚合模塊

擴張率為1的卷積保證了特征點近距離感受野的完整性,擴張率為2,4,8的空洞卷積并聯(lián)用于提升特征點感受野,并聯(lián)方式不會產(chǎn)生感受野的重疊,并且疊加后的空洞卷積核的權(quán)重分布為放射狀,即特征點更加重視近距離信息,更符合信息的處理原則。

一個特征點分別經(jīng)過bottleneck3.0~3.7與感受野聚合模塊后,對輸入信息的感受野可視化如圖3所示。其中圖3a為bottleneck的感受野可視化圖,可以看出特征點的感受野有嚴重的網(wǎng)格效應(yīng),特征點忽視了近距離信息,卻包含了豐富的遠距離信息。圖3b為感受野聚合模塊的感受野可視化圖,沒有網(wǎng)格效應(yīng),包含了更豐富的近處信息,感受野強度由近及遠變化均勻,可減少信息傳遞損失和信息位置偏差。

Figure 3 Receptive field visualization圖3 感受野可視化

并聯(lián)結(jié)構(gòu)的感受野增大速率比串聯(lián)結(jié)構(gòu)的感受野增大速率慢,因此由圖2可以看出,感受野聚合模塊最終輸出的感受野不能達到原結(jié)構(gòu)輸出的感受野的大小,但本文認為遠距離的信息并不一定對特征點的正確分類起增益效果,且大于圖像尺寸的感受野不合理,即感受野并不是越大越好,分析如下:

卷積神經(jīng)網(wǎng)絡(luò)每層感受野大小可使用式(4)計算:

(4)

其中,lk是第k層特征的感受野,fk和dk是第k層卷積核的尺寸與擴張率,si是第i層的卷積步長。由于1×1卷積與上采樣不影響感受野,則原算法與改進后算法的感受野變化趨勢如圖4所示。圖4的橫坐標(biāo)為使感受野增加的有效卷積層數(shù),縱坐標(biāo)為特征點對應(yīng)輸入圖像的感受野大小,鏈狀曲線為ENet算法感受野增長曲線,實線為剪裁后算法的感受野增長曲線,點狀曲線顯式了剪裁后算法增加本文設(shè)計模塊后的感受野變化。

Figure 4 Receptive field growth curve圖4 感受野增長曲線

ENet算法最終感受野大小為1 265,剪裁后的最終感受野大小為625,增添所設(shè)計模塊后的感受野大小增長到801。感受野大于輸入圖像尺寸時,會造成過擬合,導(dǎo)致準(zhǔn)確率降低,對于常見的圖像尺寸,如512×1024, 720×1280或者1080×1920,改進后算法的感受野更加合適。

2.2.2 注意力模塊

注意力模塊包含通道注意力和空間注意力2個部分,本文分別對輸入數(shù)據(jù)進行通道維和空間維的加權(quán),將傳入的空間信息與語義信息進行進一步融合。本文引入通道壓縮理論[10]設(shè)計了通道注意力機制。

通道注意力的實現(xiàn)如圖5所示,輸入為感受野聚合模塊的輸出FRAM。對輸入數(shù)據(jù)每個通道進行全局平均池化GAP(Global Average Pooling)得到特征圖每個通道的平均值,再經(jīng)過2層全連接FC(Fully Connected)層得到通道維權(quán)重,對特征通道維進行加權(quán)。

Figure 5 Channel attention mechanism圖5 通道注意力機制

通道注意力模塊的輸出FCAM可表示為式(5)所示:

FCAM=FC2(FC1(GAP(FRAM)))

(5)

其中,FC為全連接操作,第1個全連接操作(FC1)壓縮通道降低計算量,激活函數(shù)為RuLU,第2個全連接操作(FC2)恢復(fù)通道數(shù)生成對應(yīng)通道數(shù)的權(quán)重,激活函數(shù)為Sigmod。由于通道注意力機制處于解碼部分,特征圖的通道數(shù)僅有128,將第1次全連接操作FC1的通道壓縮率設(shè)置為2(原最佳壓縮率為16),取得了計算量與精度上的較好平衡。

其中全局平均池化操作如式(6)所示:

(6)

其中,F(xiàn)RAMx為輸入特征的第x個通道的特征圖,F(xiàn)RAMx(i,j)為輸入特征第x通道在位置(i,j)處的值,通過當(dāng)前通道特征權(quán)重平均值衡量其在所有通道中的重要性,若輸入特征維度為H×W×N,則得到N個特征平均值,之后通過2次全連接層得到N個通道維權(quán)重,再對輸入特征的每個通道進行加權(quán)突出重要特征通道,實現(xiàn)通道維的注意力機制。

空間注意力的實現(xiàn)如圖6所示,輸入為通道注意力模塊的輸出FCAM。受通道注意力機制的啟發(fā),本文通過對每個空間位置的所有通道求平均獲取對應(yīng)空間位置的特征強度,利用空間的特征強度設(shè)計了空間注意力機制。首先,對輸入特征矩陣的每個位置的所有通道求平均,獲得包含每個空間位置均值的單通道矩陣,再通過2次3×3卷積層得到空間權(quán)重矩陣,然后,將空間權(quán)重矩陣在通道維進行復(fù)制使得特征維度與輸入特征維度對齊,最后利用權(quán)重矩陣對輸入特征進行加權(quán)。

Figure 6 Spatial attention mechanism圖6 空間注意力機制

則空間注意力模塊的輸出FSAM可表示為式(7)所示:

FSAM=conv(conv(M(FCAM(i,j))))

(7)

(8)

其中,F(xiàn)CAMk(i,j)為輸入特征第k個通道在位置(i,j)處的值,通過對當(dāng)前位置所有通道求平均獲得此位置空間均值,之后通過2次3×3卷積獲得對應(yīng)空間位置權(quán)重,激活函數(shù)均為ReLU。若輸入特征維度為H×W×N,則得到維度為H×W×1的空間權(quán)重圖,最后進行通道復(fù)制,將其維度擴充到H×W×N,與輸入特征進行加權(quán)突出重要特征空間位置,實現(xiàn)空間維的注意力機制。

3 實驗

在同一軟件框架與硬件水平下(Keras深度學(xué)習(xí)框架;AMD Ryzen 5 3600X處理器;GTX1080ti顯卡)和大型公開數(shù)據(jù)集Cityscapes和BDD100K上進行實驗,以驗證本文提出的結(jié)構(gòu)剪裁方法和輕量級注意力機制的正確性(所有數(shù)據(jù)進行2倍縮小,未進行數(shù)據(jù)增強)。

3.1 參數(shù)分析

對ENet、裁剪后的ENet C-ENet和及C-ENet+AM+RAM進行浮點量與參數(shù)量統(tǒng)計,結(jié)果如表2與表3所示。

Table 2 Calculation volume statistics表2 計算量統(tǒng)計 Flops

Table 3 Parameter statistics表3 參數(shù)統(tǒng)計

從表2中可以看出,浮點量的差距主要產(chǎn)生在Mul節(jié)點和Add節(jié)點,分別對應(yīng)卷積計算中的乘法和加法運算。原算法浮點計算量為745 451,參數(shù)量為3.7×106B。通過算法剪裁后,計算量與參數(shù)量降至412 078與2.1×106B,精簡算法并增加本文設(shè)計模塊后計算量與參數(shù)量為586 607與2.9×106B。

改進后的算法計算量降低了21.3%,參數(shù)量降低了21.6%。

3.2 消融實驗

對算法與各模塊在Cityscapes與BDD100K上進行消融實驗,使用平均交并比MIoU(Mean Intersection over Union)與每秒分割圖像數(shù)FPS(Frames Per Second)作為評價指標(biāo),結(jié)果如表4和表5所示。

Table 4 Performance of algorithms on Cityscapes表4 算法在Cityscapes上的表現(xiàn)

Table 5 Performance of algorithms on BDD100K表5 算法在BDD100K上的表現(xiàn)

圖7a和圖7b為本文改進后算法(C-ENet+AM+RAM)與原算法ENet在Cityscapes與BDD100K數(shù)據(jù)集上部分分割結(jié)果可視化,圖7中從左至右、從上至下分別為原圖、標(biāo)簽、ENet分割結(jié)果和本文算法分割結(jié)果。

Figure 7 Visualization of partial segmentation results of ours and ENet on Cityscapes and BDD100K datasets圖7 本文算法和ENet在Cityscapes 與BDD100K上的部分分割結(jié)果可視化

3.3 對比實驗

實驗還將本文算法(C-ENet+AM+RAM)與當(dāng)今主流語義分割算法進行了實驗對比。具體結(jié)果如表6所示(最優(yōu)結(jié)果使用方框黑體標(biāo)注,次優(yōu)結(jié)果使用黑體標(biāo)注)。

表6中,F(xiàn)CN8S、UNet和SegNet都是經(jīng)典的語義分割算法。FCN8S最大進行了8倍下采樣,采用跨通道相加的方法增強信息傳遞性;UNet精度較高,常用于醫(yī)學(xué)圖像處理,算法結(jié)構(gòu)為U型結(jié)構(gòu),對相同尺度的編解碼使用加法進行信息融合;SegNet算法的結(jié)構(gòu)類似FCN,不同之處在于編碼部分采用了VGG-16結(jié)構(gòu)的前13層,解碼部分的上采樣操作使用了空間的索引信息(在編碼時的pooling操作記錄了相應(yīng)的索引信息)。

Table 6 Result comparisons of various algorithms表6 各算法實驗對比結(jié)果

在Keras(TensorFlow)深度學(xué)習(xí)框架和GTX1080ti顯卡計算下,各算法在Cityscapes上的性能對比如圖8所示。

Figure 8 Performance comparison of various algorithms圖8 各算法性能對比

圖8中,縱坐標(biāo)為分割精度指標(biāo)——平均交并比(MIoU),橫坐標(biāo)為每秒鐘分割圖像的數(shù)量(FPS),坐標(biāo)軸上的實心圓對應(yīng)各個算法,實心圓的直徑大小與算法參數(shù)量成正比??梢姳疚乃惴ㄔ诒姸嗨惴ㄖ校瑓?shù)量最少,推理速度最快,并且精度達到了第2的高水平(越靠近右上方性能越好)。

4 結(jié)束語

本文通過對輕量級語義分割算法ENet進行改進,提出了一種優(yōu)化基于編碼-解碼結(jié)構(gòu)的語義分割算法的思路,通過注意力機制與空洞卷積理論,創(chuàng)新性地設(shè)計了2種計算復(fù)雜度較小的網(wǎng)絡(luò)模塊,提升了算法的精度與推理速度。本文所提出的算法對于需要實時分割的應(yīng)用場景,如無人駕駛場景有較大價值。

猜你喜歡
空洞注意力語義
讓注意力“飛”回來
語言與語義
“揚眼”APP:讓注意力“變現(xiàn)”
傳媒評論(2017年3期)2017-06-13 09:18:10
空洞的眼神
A Beautiful Way Of Looking At Things
“上”與“下”語義的不對稱性及其認知闡釋
用事實說話勝過空洞的說教——以教育類報道為例
新聞傳播(2015年20期)2015-07-18 11:06:46
認知范疇模糊與語義模糊
臭氧層空洞也是幫兇
語義分析與漢俄副名組合
金溪县| 楚雄市| 哈巴河县| 阿鲁科尔沁旗| 三河市| 新田县| 阳高县| 城口县| 德令哈市| 麻城市| 海原县| 拜泉县| 漳州市| 青州市| 将乐县| 进贤县| 广东省| 神农架林区| 普宁市| 大英县| 遂川县| 涿鹿县| 资阳市| 无棣县| 柏乡县| 平乐县| 突泉县| 洪雅县| 武威市| 台前县| 花莲县| 亳州市| 城口县| 庄浪县| 沈阳市| 鸡西市| 衡山县| 黄梅县| 天长市| 溧阳市| 都安|