林寧寧,高心丹
(東北林業(yè)大學(xué) 信息與計(jì)算機(jī)工程學(xué)院,黑龍江 哈爾濱 150036)
近年來,樹木圖像分割作為樹木的可視化、三維建模、測(cè)量的基礎(chǔ)、其精度直接影響后續(xù)研究的順利進(jìn)行[1]。傳統(tǒng)樹木圖像分割方法[2]需要復(fù)雜的圖像預(yù)處理或交互才能實(shí)現(xiàn)。而基于深度學(xué)習(xí)算法則可以實(shí)現(xiàn)批量化、自動(dòng)化分割。楊國(guó)亮等[3]在全卷積神經(jīng)網(wǎng)絡(luò)中引入Jaccard-Diceloss損失函數(shù)解決皮膚病變與背景差別過大的問題。SegNet[4]提取特征使用VGG-Net,上采樣利用pooling indices技術(shù)更好地保留了邊界。侯騰旋等使用3D-UNet[5]提高了肺結(jié)節(jié)的識(shí)別率。DeepLab V3+[6]的提出使圖像的分割精度得到了提升。王俊強(qiáng)等[7]利用DeepLab V3+結(jié)合CRF使遙感影像邊緣細(xì)節(jié)更加準(zhǔn)確。劉志贏等[8]利用DeepLab V3+對(duì)煙霧區(qū)域邊緣進(jìn)行精細(xì)的分割。仝真等[9]改進(jìn)ResNet-UNet實(shí)現(xiàn)了樹木的自動(dòng)化分割。除此之外,基于深度學(xué)習(xí)的語義分割還應(yīng)用在醫(yī)學(xué)[10]、醫(yī)療器械[11]、農(nóng)作物[12]等各個(gè)方面,但在樹木方面的使用較少。有些結(jié)構(gòu)提取特征的過程中減小了空間分辨率、不利于細(xì)節(jié)的恢復(fù)、忽略了像素之間的關(guān)系或者適合小樣本數(shù)據(jù)集。
本文為實(shí)現(xiàn)自動(dòng)化高精度分割樹木圖像,在編碼端使用基于擴(kuò)張空洞卷積的擴(kuò)張殘留網(wǎng)絡(luò)(dilated residual networks,DRN)[13]提取特征,加入密集特征傳遞方式;將空洞空間卷積池化金字塔(atrous spatial pyramid pooling,ASPP)設(shè)計(jì)為帶有交互式信息傳遞的AIM-ASPP模式;在解碼端多增加一個(gè)中階特征圖,最后使3支不同來源的特征圖進(jìn)行跨層融合。通過對(duì)比實(shí)驗(yàn)驗(yàn)證此網(wǎng)絡(luò)可以提高樹木圖像的分割精度,使邊緣更加清晰。
DeepLab V3+的基礎(chǔ)模型是DeepLab[14-16]系列的第四代,在編碼階段,骨干網(wǎng)絡(luò)使用改進(jìn)的輕量型網(wǎng)絡(luò)Xception[17],它分為輸入流、中間流和輸出流。使用深度可分離卷積使模型的參數(shù)量和計(jì)算量得到降低。由特征提取網(wǎng)絡(luò)輸出的特征圖傳遞給ASPP。在解碼階段接收來自輸入流的低階特征和編碼端的高階特征進(jìn)行多尺度融合。但是在特征提取階段下采樣的過程中降低分辨率導(dǎo)致一些有用信息丟失,ASPP中不同的空洞卷積直接融合導(dǎo)致信息不連續(xù),在解碼階段只融合了一支低階特征圖,不能使細(xì)節(jié)信息得到很好的恢復(fù)。
在卷積神經(jīng)網(wǎng)絡(luò)中,卷積和下采樣分別對(duì)特征進(jìn)行提取和聚合。但是下采樣會(huì)使原始輸入信息細(xì)節(jié)部分丟失,可以采用擴(kuò)張卷積的方式解決不縮小分辨率的同時(shí),增大感受野。如圖1(a)所示,在擴(kuò)張率為1的情況下相當(dāng)于正常的3×3卷積核,卷積核的參數(shù)為9。在圖1(b)中,擴(kuò)張率分別采用的是2,padding的大小跟擴(kuò)張率一樣,在卷積核同樣是9個(gè)參數(shù)的情況下,等效于5×5的卷積核。感受野的大小變?yōu)?×7。
圖1 擴(kuò)張卷積
等效卷積核和感受野大小的計(jì)算如下
K=k+(k-1)×(d-1)
(1)
式中:K為等效卷積;k為卷積核的大?。籨為空洞數(shù)
(2)
式中:Si為之前所有層的步長(zhǎng)乘積;Stridei為第i層的步長(zhǎng)
Fi+1=Fi+(K-1)×Si
(3)
式中:Fi+1為當(dāng)前層的感受野,F(xiàn)i為上一層的感受野,K如式(1)所示,Si如式(2)所示。
本文模型以DeepLab V3+基礎(chǔ)模型,編碼端特征提取網(wǎng)絡(luò)由Xception替換成帶有擴(kuò)張卷積DRN結(jié)構(gòu),改變DRN的層數(shù),增加密集連接方式,得到的中階特征圖傳入本文所設(shè)計(jì)的AIM-ASPP形成高階特征圖,解碼端增加了中階特征圖,并調(diào)整合適的通道數(shù),使其與低階特征圖和高階特征圖進(jìn)行跨層融合。結(jié)構(gòu)如圖2所示。
圖2 本文網(wǎng)絡(luò)結(jié)構(gòu)
ResNet的top layers中使用了下采樣層,造成特征圖分辨率降低,細(xì)節(jié)信息丟失。本文構(gòu)建DRN時(shí)使用擴(kuò)張卷積代替下采樣層,不僅擴(kuò)大感受野的范圍,而且可以維持后續(xù)的分辨率。但當(dāng)擴(kuò)張卷積的擴(kuò)張率較大,采樣點(diǎn)的間隔相距較遠(yuǎn)的情況下,可能會(huì)導(dǎo)致局部信息丟失。為了避免因?yàn)榫植啃畔G失導(dǎo)致預(yù)測(cè)圖產(chǎn)生網(wǎng)格化效應(yīng),使用卷積代替最大池化,在網(wǎng)絡(luò)的后端增加了空洞卷積。DRN-D版本在許多數(shù)據(jù)集上擁有良好的分割性能,經(jīng)過樹木圖像分割對(duì)比實(shí)驗(yàn),綜合考慮參數(shù)量和精確度,設(shè)計(jì)Dense-DRN-D-54作為本文的骨干網(wǎng)絡(luò)。其中所使用的卷積層以及大小如圖3所示。圖中下面橫線上的數(shù)字代表重復(fù)使用幾次其所對(duì)應(yīng)的模塊,上方的數(shù)字代表第幾組。其中前兩組使用的普通卷積模塊,使用7×7的卷積核與兩個(gè)3×3的卷積核粗略的提取圖像的特征信息,使特征圖尺寸減少提高語義性。接下來將會(huì)使用密集連接方式,增加空洞卷積,在4、5、6組中分別使用2、4、2的膨脹卷積。
圖3 特征提取網(wǎng)絡(luò)Dense-DRN-D-54
使用密集連接方式替代原本DRN的3、4、5、6組中的殘差連接方式,可以使信息在傳遞的過程中保留的更加完整,其計(jì)算公式如式(4)所示。為使每組輸出的特征圖可以融合上組的特征圖,提高所有組特征的重復(fù)使用性,本文采用密集連接的方式,主要利用其復(fù)用與旁路特征,將此組的特征圖與此組之前所有輸出的特征圖進(jìn)行通道融合,之后輸入下一組網(wǎng)絡(luò),其計(jì)算方式如式(5)所示。由于使用擴(kuò)張卷積會(huì)產(chǎn)生混疊效應(yīng),為使混疊效應(yīng)不傳遞給接下來的組,在7組之間不使用殘差連接或密集連接。最后刪除池化層與全連接層,此時(shí)輸出的特征圖設(shè)為中階特征圖
Xi=Hi(Xi-1)+Xi-1
(4)
Xi=Hi([X0,X1…Xi-1])
(5)
式(4)、式(5)中Xi為i組的特征圖,Hi為在i組中卷積模塊運(yùn)算。 [X0,X1…Xi-1]為對(duì)各個(gè)組之間特征圖的通道拼接運(yùn)算。
ASPP為使高維特征圖的上下文信息得到更好的概括,主要是依賴于直接融合不同倍率的空洞卷積,結(jié)合不同尺度的特征以達(dá)到提高分割精度的效果。ASPP結(jié)構(gòu)如圖4所示。擴(kuò)張率分別使用的是6,12,18。
圖4 擴(kuò)張空間金字塔
但利用每個(gè)擴(kuò)張率下的特征圖直接進(jìn)行融合,容易忽略不同擴(kuò)張率的特征圖之間的相關(guān)性,感受野利用不足。對(duì)于使用空洞卷積的3×3卷積核,參加有效運(yùn)算的元素?cái)?shù)量是9,擴(kuò)張率只影響感受野的大小,當(dāng)擴(kuò)張率為6時(shí),感受野為13。而如果使臨近的空洞卷積進(jìn)行融合后,參與有效運(yùn)算的元素?cái)?shù)量與感受野大小將會(huì)增大。比如經(jīng)過擴(kuò)張率為6的卷積層與擴(kuò)展率為12的卷積層進(jìn)行拼接融合后感受野將會(huì)由原先的13擴(kuò)大為37,而有效運(yùn)算元素將會(huì)由原先的9增加為49。因此為解決長(zhǎng)距離之間信息的不連續(xù),同時(shí)使有效運(yùn)算元素與感受野得到增加,本文提出在使用空洞卷積的基礎(chǔ)上,再進(jìn)行交互式特征融合。AIM-ASPP如圖5所示。由2.1節(jié)得到的中階特征圖分別使用倍率為1、6、12、18輸出A1-A4的特征圖,A5為進(jìn)行全局池化得到的特征圖。
圖5 AIM-ASPP
其主要步驟是:①A本特征圖與其臨近的特征圖進(jìn)行融合后得到特征圖B。②B再與A進(jìn)行融合得到特征圖C。③得到所有的C后再進(jìn)行融合。其計(jì)算過程為:設(shè)CBR為conv、bn、relu組合,對(duì)B1的計(jì)算為CBR(CBR(A1)+CBR(A2)), 對(duì)B2,B3,B4的計(jì)算為CBR(CBR(Ai-1)+CBR(Ai)+CBR(Ai+1)), B5的計(jì)算為CBR(CBR(A4)+CBR(A5)), 其中C1-C5的計(jì)算為CBR(Ai)+Bi, 其中i表示為本層特征圖。最后使 C1-C5進(jìn)行特征融合得到D高階特征圖。
在一張圖像輸入網(wǎng)絡(luò)的時(shí)候,首先通過編碼端的Dense-DRN-D-54網(wǎng)絡(luò)進(jìn)行提取特征。由于圖像的分類依賴于網(wǎng)絡(luò)所提取的特征,在只使用原圖1/4的低階特征圖進(jìn)行多尺度融合時(shí),將會(huì)導(dǎo)致邊緣信息不夠精細(xì)。為了減少細(xì)節(jié)信息的損失,提高分割精度,增加一路中階特征的來源,如圖6中間傳到解碼端路線所示。之后將原圖1/16的中階特征圖輸入AIM-ASPP,經(jīng)過通道拼接融合后得到高階特征圖。本文所使用的通道拼接融合如式(6)所示。最后在解碼端得到三路來源的特征圖,中階特征圖使用1×1的卷積減少通道數(shù)。因?yàn)檫^多的通道可能會(huì)超過編碼器特征的重要性,加大訓(xùn)練的難度。綜合對(duì)比實(shí)驗(yàn)結(jié)果,本文多加的這一支中階特征圖選擇輸出通道數(shù)為48。中高階特征圖為了與低階特征圖進(jìn)行融合,將調(diào)節(jié)完通道的中階特征圖和高階特征圖進(jìn)行4倍雙線性上采樣后恢復(fù)到原圖的1/4與淺層特征使用通道拼接融合。使得高分辨的細(xì)節(jié)信息得到更好的補(bǔ)充。接著使用3×3卷積進(jìn)行細(xì)化特征,并且調(diào)整通道數(shù)為待分割的類別數(shù)3。再使用倍數(shù)為4的雙線性上采樣,恢復(fù)到原本圖像的分辨率。最后通過Softmax函數(shù)進(jìn)行激活后,輸出預(yù)測(cè)的分割圖像。
圖6 多尺度融合結(jié)構(gòu)
本文多尺度融合時(shí)使用的是concat通道拼接,會(huì)增加通道數(shù),但每個(gè)通道下的特征信息不會(huì)增加。式(6)顯示的兩個(gè)特征圖進(jìn)行的通道拼接,對(duì)于X與Y都有c個(gè)通道數(shù)(在實(shí)際中通道數(shù)可以不同),卷積的時(shí)候不共享一個(gè)卷積核。當(dāng)用多個(gè)特征圖進(jìn)行融合時(shí),按著此公式繼續(xù)添加Zi,Wi,Ki+2c,Ki+3c等即可
(6)
式中:c代表的是通道個(gè)數(shù);Xi代表的是X輸入的通道;Yi代表的是Y輸入的通道;*代表的是卷積;K代表的是卷積核。
3.1.1 數(shù)據(jù)集
圖7 部分?jǐn)?shù)據(jù)集
3.1.2 語義分割實(shí)驗(yàn)評(píng)估指標(biāo)
本文使用MIoU(mean intersection over union)平均交并比、PA(pixel accuracy)等作為語義分割能力評(píng)估的重要指標(biāo)。
MIoU的實(shí)際意義是各個(gè)類別上的真實(shí)值的集合與預(yù)測(cè)值的集合之間的交集比上它們的并集,之后再求它們各個(gè)類別上的平均值,公式如式(7)所示。PA的實(shí)際意義是指預(yù)測(cè)正確的像素?cái)?shù)占總像素?cái)?shù)的比例,公式如式(8)所示
(7)
(8)
式(7)、式(8)中:k為類別;k+1為背景類在內(nèi)的語義類別總數(shù);Pii為像素實(shí)際是i類,預(yù)測(cè)也是i類的數(shù)量;pij為像素實(shí)際為i類但是預(yù)測(cè)為j類的數(shù)量,pji為本來是j類,但是被判斷為i類的像素總量。
3.1.3 訓(xùn)練策略
實(shí)驗(yàn)過程中使用的是CUDA 11.1并行計(jì)算、操作系統(tǒng)是Ubuntu 16.04,編程語言是python3.7,在深度學(xué)習(xí)框架pytorch下進(jìn)行具體實(shí)現(xiàn)。實(shí)驗(yàn)的參數(shù)設(shè)置:學(xué)習(xí)率的初始設(shè)置為0.01,采用隨機(jī)梯度下降(stochastic gradient descent,SGD)方法進(jìn)行訓(xùn)練網(wǎng)絡(luò),損失函數(shù)使用交叉熵?fù)p失函數(shù),batchsize為4,每一輪的迭代次數(shù)為516次,epochs設(shè)置為200。
3.2.1 本文網(wǎng)絡(luò)與DeepLab V3+對(duì)比實(shí)驗(yàn)
為了驗(yàn)證本文網(wǎng)絡(luò)的有效性,對(duì)比DeepLab V3+與本文網(wǎng)絡(luò)在自制的數(shù)據(jù)集上的訓(xùn)練結(jié)果如圖8所示,DeepLab V3+網(wǎng)絡(luò)與本文網(wǎng)絡(luò)在訓(xùn)練過程中的損失值都隨著訓(xùn)練次數(shù)的增多而趨于穩(wěn)定,但是可以看出本文的網(wǎng)絡(luò)損失值(下方折線)小于DeepLab V3+網(wǎng)絡(luò),并且收斂速度更快。這是由于骨干網(wǎng)絡(luò)使用了Dense-DRN-D-54加強(qiáng)了特征映射,使每一層的隱藏信息都能被利用,從而使模型快速收斂。AIM-ASPP加強(qiáng)不同感受野之間信息聯(lián)系,在整個(gè)訓(xùn)練過程中還融合了更多的低階特征,使細(xì)節(jié)得到了更好的恢復(fù)。最終使網(wǎng)絡(luò)的MIoU值提升到97.92%。
圖8 不同算法的loss結(jié)果
圖9是選擇了一些樹木較不清晰的圖像使用本文網(wǎng)絡(luò)與DeepLab V3+模型進(jìn)行分割預(yù)測(cè)結(jié)果對(duì)比,從圖(c)中可以看出比較細(xì)的樹干未被分割出來,而在圖(d)中,樹干被很好的分割出來,邊緣提取的更加精細(xì),驗(yàn)證了本文網(wǎng)絡(luò)在分割難度大的情況下也可以分割出較清晰的邊緣細(xì)節(jié)。
圖9 本文網(wǎng)絡(luò)與DeepLab V3+分割效果對(duì)比
3.2.2 結(jié)構(gòu)和參數(shù)對(duì)比實(shí)驗(yàn)
采用MIoU,PA作為衡量指標(biāo),使用控制變量的方法來對(duì)比分析各個(gè)改進(jìn)點(diǎn)對(duì)模型的影響。如表1所示,其中組別1為基礎(chǔ)DeepLab V3+網(wǎng)絡(luò)模型,組別2是使用Dense-DRN特征提取網(wǎng)絡(luò),組別3是指在組別2的基礎(chǔ)上使用AIM-ASPP替代ASPP,組別4是指在組別的基礎(chǔ)上增加一個(gè)多尺度融合來源。其中“-”代表不使用,“+”代表使用。使用Dense-DRN網(wǎng)絡(luò)更換骨干網(wǎng)絡(luò)Xception,使MIoU提高了1.33個(gè)百分比,說明使用空洞卷積及密集連接的有效性。對(duì)比組別2和組別3,發(fā)現(xiàn)使用AIM-ASPP可以更好利用不同感受野得到的特征圖,提高信息的利用率。在多增加一路多尺度融合的來源時(shí),MIoU最終達(dá)到97.92%,說明融合更多的低階特征可以使細(xì)節(jié)信息得到良好的恢復(fù),達(dá)到更高的分割精度。
表1 不同改進(jìn)措施的分割結(jié)果對(duì)比
本文網(wǎng)絡(luò)訓(xùn)練的過程中增加了一條多尺度融合特征網(wǎng)絡(luò)。在特征圖進(jìn)行拼接融合時(shí),為了獲得更好的分割性能,需要調(diào)整特征圖的輸出通道。設(shè)置通道數(shù)為32、48、64做對(duì)比實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果見表2。通過實(shí)驗(yàn)結(jié)果分析得知,采用過多的通道時(shí)會(huì)使得網(wǎng)絡(luò)太過重視編碼器,從而導(dǎo)致精度下降,過少的通道將會(huì)去掉一些有用的信息。采用通道數(shù)為48時(shí),不僅分割精度最高,而且有助于減少網(wǎng)絡(luò)模型的參數(shù)量。
表2 不同通道數(shù)分割效果對(duì)比
本文網(wǎng)絡(luò)選擇了深度為54、105層的網(wǎng)絡(luò)做實(shí)驗(yàn)對(duì)比,見表3。根據(jù)實(shí)驗(yàn)結(jié)果發(fā)現(xiàn),當(dāng)層數(shù)過多時(shí),會(huì)提取冗余信息,導(dǎo)致精確度下降。當(dāng)選取DRN-D-54作為特征提取網(wǎng)絡(luò),不僅參數(shù)減少,精度也比DRN-D-105高。因此選擇了DRN-D-54作為本網(wǎng)絡(luò)的特征提取網(wǎng)絡(luò)。
表3 不同層的骨干網(wǎng)絡(luò)分割效果對(duì)比
3.2.3 數(shù)據(jù)擴(kuò)充對(duì)比實(shí)驗(yàn)
為了驗(yàn)證擴(kuò)充數(shù)據(jù)集對(duì)本文網(wǎng)絡(luò)的必要性,查看擴(kuò)充數(shù)據(jù)集對(duì)于分割精度的影響,做了以下對(duì)比實(shí)驗(yàn)。對(duì)比在DeepLab V3+網(wǎng)絡(luò)下使用擴(kuò)充數(shù)據(jù)集和未擴(kuò)充數(shù)據(jù)集訓(xùn)練結(jié)果下,發(fā)現(xiàn)使用擴(kuò)充數(shù)據(jù)集訓(xùn)練后,訓(xùn)練集與測(cè)試集的精度都比未使用擴(kuò)充數(shù)據(jù)集時(shí)高。又使用了本文網(wǎng)絡(luò)作對(duì)比,擴(kuò)充之后仍然可以使精度得到提高。驗(yàn)證擴(kuò)充數(shù)據(jù)集可以提高網(wǎng)絡(luò)的泛化能力。對(duì)比實(shí)驗(yàn)結(jié)果驗(yàn)證了擴(kuò)充數(shù)據(jù)集的必要性。實(shí)驗(yàn)結(jié)果見表4。
表4 數(shù)據(jù)集擴(kuò)充的分割效果對(duì)比
3.2.4 本文網(wǎng)絡(luò)與主流網(wǎng)絡(luò)實(shí)驗(yàn)對(duì)比
為了驗(yàn)證分割有效性,利用本文所建立的數(shù)據(jù)集,選取了當(dāng)今主流的分割網(wǎng)絡(luò)U-Net、FCN、DeepLab V3+和本文網(wǎng)絡(luò)作對(duì)比,結(jié)果見表5。從本文提出的指標(biāo)來看,DeepLab V3+比U-net、FCN的精度要好。本文網(wǎng)絡(luò)在MIoU、PA值方面表現(xiàn)的更加突出,分別為97.92%、98.87%,相比較其它網(wǎng)絡(luò)更有優(yōu)勢(shì),且模型大小適中,雖然Unet、FCN的模型文件較小,分割效率較高,但它MIOU較低,time是指從一張圖片輸入到調(diào)用模型輸出分割結(jié)果等整個(gè)過程所使用的時(shí)間,可以看出本文網(wǎng)絡(luò)在分割速度上也有所提升。
表5 不同分割網(wǎng)絡(luò)分割效果對(duì)比
為了驗(yàn)證本文網(wǎng)絡(luò)在其它數(shù)據(jù)集上也可以提高精度,使用了公共Cityscapes數(shù)據(jù)集做對(duì)比實(shí)驗(yàn)。如表6所示,本文網(wǎng)絡(luò)相較與Unet、FCN、DeepLab V3+精度都有提升,MIoU比DeepLab V+提升6.11個(gè)百分點(diǎn),表明本文網(wǎng)絡(luò)具有較好的泛化能力。
表6 不同分割網(wǎng)絡(luò)使用Cityscapes數(shù)據(jù)集分割效果對(duì)比
為了提高樹木圖像分割的精度和增強(qiáng)魯棒性,減少人們的工作量。本文以DeepLab V3+網(wǎng)絡(luò)為基礎(chǔ)模型,使用Dense-DRN-D-54作為特征提取網(wǎng)絡(luò),擴(kuò)張卷積克服了下采樣過程中導(dǎo)致樹木圖像分辨率降低以及樹木邊緣信息丟失等問題,密集連接可以充分利用淺層的所有信息,減少了細(xì)節(jié)信息的丟失,同時(shí)也使邊緣細(xì)節(jié)信息得到更好的恢復(fù)。AIM-ASPP使用了交互式信息補(bǔ)充方式,增強(qiáng)不同感受野之間的相關(guān)性。解碼端增加了不同尺度的中階特征圖,實(shí)現(xiàn)低階和高階特征圖的跨層拼接融合,更加全面獲取高質(zhì)量的上下文信息,有助于目標(biāo)細(xì)節(jié)信息和空間維度的恢復(fù)。接下來將繼續(xù)研究網(wǎng)絡(luò)模型結(jié)構(gòu)在不減少精度的情況下提高分割速度以及將分割預(yù)測(cè)結(jié)果用于樹木測(cè)量當(dāng)中。