【图像分割模型】感受野与分辨率的控制术—空洞卷积
這是專欄《分割模型解讀》的第3篇文章。在這里,我們將共同探索解決分割問題的主流網(wǎng)絡(luò)結(jié)構(gòu)和設(shè)計思想。
前兩篇文章介紹了編解碼分割結(jié)構(gòu),今天具體聊聊解碼器中涉及到的空間分辨率恢復(fù)問題。
作者 | 孫叔橋
編輯 | 言有三
?
1 緒論
通過前兩篇文章,我們了解到分割任務(wù)是一個像素級別的任務(wù),因此需要在輸入的空間尺寸下對每個像素都有分割的結(jié)果。換句話說,如果輸入的空間尺寸是HxW,那么輸出也需要是HxW的。
然而,為了提高網(wǎng)絡(luò)性能,許多結(jié)構(gòu)采用了池化或striding操作來增加感受野,同時提升遠(yuǎn)程信息的獲取能力。但是這樣的結(jié)構(gòu)也帶來了空間分辨率的下降。
比如之前提到的編解碼結(jié)構(gòu)中的編碼器。
在空洞卷積提出以前,大部分的空間尺寸恢復(fù)工作都是由上采樣或反卷積實現(xiàn)的。前者通常是通過線性或雙線性變換進(jìn)行插值,雖然計算量小,但是效果有時不能滿足要求;后者則是通過卷積實現(xiàn),雖然精度高,但是參數(shù)計算量增加了。
(復(fù)制方法上采樣示意圖)
(反卷積方法上采樣示意圖)
基于此,DeepLab就提出了“空洞卷積”(atrous convolution)的概念。
?
2 空洞卷積
一句話概括空洞卷積:調(diào)整感受野(多尺度信息)的同時控制分辨率的神器。
(1) 控制感受野
下圖是空洞卷積結(jié)構(gòu)的示意圖,從左到右比率(rate)分別為1、6和24,比率可以粗暴理解為卷積核內(nèi)相鄰兩個權(quán)重之間的距離。從圖中可以看出,當(dāng)比率為1的時候,空洞卷積退化為常見的卷積。
很明顯,應(yīng)用空洞卷積后,卷積核中心像素的感受野(也就是一個卷積核能看見的區(qū)域)增大了,但是在步長為1的情況下,特征圖的空間分辨率卻可以保持不變。
(2) 控制分辨率
除了維持空間分辨率,空洞卷積也可以像標(biāo)準(zhǔn)卷積一樣通過設(shè)置輸出步長(output_stride)實現(xiàn)輸出特征圖分辨率的控制。
?
3 網(wǎng)絡(luò)結(jié)構(gòu)
(1) 網(wǎng)絡(luò)結(jié)構(gòu)介紹
在目標(biāo)檢測、圖像分割等計算機(jī)視覺任務(wù)中,圖片中可能出現(xiàn)如下圖情況中的不同大小的目標(biāo)。為了應(yīng)對一個目標(biāo)在不同尺度下的識別或分割造成的困難,研究者們想出了許多方法獲取同一位置上不同尺度的上下文信息,從而保證算法對于尺度變化具有一定魯棒性。
在圖像分割領(lǐng)域中,主要存在下面四種網(wǎng)絡(luò)結(jié)構(gòu)能夠?qū)崿F(xiàn)多尺度上下文的獲取。從左到右分別是金字塔結(jié)構(gòu)、編解碼結(jié)構(gòu)、空洞卷積結(jié)構(gòu)和空間金字塔池化結(jié)構(gòu)。
前兩種結(jié)構(gòu)是通過輸出步長的設(shè)置,逐步縮小輸出特征圖的分辨率,從而使得每層特征上所對應(yīng)的感受野的尺寸變化;第三種結(jié)構(gòu)是通過直接改變每個卷積核的可見區(qū)域?qū)崿F(xiàn)感受野變化;最后一個結(jié)構(gòu)是通過對特征層進(jìn)行不同尺度的池化,實現(xiàn)感受野的遍歷。
(2) 空洞卷積結(jié)構(gòu)1
下圖(b)是基于上面第三種結(jié)構(gòu)的空洞卷積分割網(wǎng)絡(luò)結(jié)構(gòu)圖,(a)是對應(yīng)的第三種結(jié)構(gòu)的網(wǎng)絡(luò)結(jié)構(gòu)圖。
可以看到從block4到block7,通過應(yīng)用不同比率的空洞卷積,該網(wǎng)絡(luò)結(jié)構(gòu)實現(xiàn)了在維持空間分辨率的前提下的感受野(尺度)變化。
(3) 空洞卷積結(jié)構(gòu)2
下圖是基于最后一種結(jié)構(gòu)的空洞卷積網(wǎng)絡(luò)結(jié)構(gòu),也稱為ASPP(Atrous Spatial Pyramid Pooling),也是前兩個DeepLab版本中所使用的網(wǎng)絡(luò)結(jié)構(gòu)。
這種結(jié)構(gòu)將上個結(jié)構(gòu)的串聯(lián)空洞卷積變成了并聯(lián)的空洞卷積運(yùn)算,基于同一級特征結(jié)構(gòu)提取不同尺度下的卷積結(jié)果。
?
4 實驗及分析
(1) 卷積核的有效權(quán)重
通過前面的了解,我們可以發(fā)現(xiàn)一個問題。那就是,當(dāng)空洞卷積的區(qū)域與特征圖實際空間尺寸相近的時候,實際有效的卷積核權(quán)重是非常有限的。
比如,對一個65x65的特征圖應(yīng)用不同比率的3x3濾波器,我們可以得到下圖的結(jié)果。
可見,在極端條件下,當(dāng)空洞卷積的比率接近特征圖空間尺寸時,一個3x3的卷積核就退化成了1x1的卷積核。
為了克服這個問題,DeepLabv3中采用的做法是對最后一層特征圖應(yīng)用全局池化(global pooling),再將其送入一個1x1的卷積層中,最后,通過雙線性上采樣實現(xiàn)希望的空間分辨率。
(2) 實驗總結(jié)
DeepLabv3給出了諸多條件下的剝離實驗,首先給出整體結(jié)論:
輸出步長為8時效果比更大的步長要好;
基于ResNet-101的結(jié)構(gòu)比基于ResNet-50的要好;
用變化的比率比1:1:1的比率要好;
加上多尺度輸入和左右翻折數(shù)據(jù)效果更好;
用MS COCO下預(yù)訓(xùn)練的模型效果更好。
具體結(jié)果看下面表格:
表格均來源于DeepLabv3論文:
《Rethinking Atrous Convolution for Semantic Image Segmentation》
?
5 更多結(jié)果
?
6 總結(jié)
經(jīng)過DeepLab和空洞卷積的學(xué)習(xí),我們一起從之前的編解碼結(jié)構(gòu)共同邁入了第二大分割問題的處理方法:上下文信息整合。從這篇文章開始,我們將一起探索多種不同的上下文信息整合方法。
下篇文章將介紹空洞卷積的實時網(wǎng)絡(luò)結(jié)構(gòu)。下回見!
本專欄文章:
第一期:【圖像分割模型】從FCN說起
第二期:【圖像分割模型】編解碼結(jié)構(gòu)SegNet
第三期:【圖像分割模型】感受野與分辨率的控制術(shù)—空洞卷積
如果想加入我們,后臺留言吧
轉(zhuǎn)載文章請后臺聯(lián)系
侵權(quán)必究
感謝各位看官的耐心閱讀,不足之處希望多多指教。后續(xù)內(nèi)容將會不定期奉上,歡迎大家關(guān)注有三公眾號 有三AI!
?
總結(jié)
以上是生活随笔為你收集整理的【图像分割模型】感受野与分辨率的控制术—空洞卷积的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【图像分割模型】编解码结构SegNet
- 下一篇: 【杂谈】如何应对烦人的开源库版本依赖-做