王云艷,王重陽,武華軒,楊智偉
(1. 湖北工業(yè)大學電氣與電子工程學院,湖北 武漢 430068;2. 太陽能高效利用及儲能運行控制湖北省重點實驗室,湖北 武漢 430068)
語義分割是智能計算機系統(tǒng)理解自然場景的關鍵性技術,在無人駕駛、智能機器人、醫(yī)學圖像分析等領域得到了廣泛的應用[1-2]。目前,語義分割算法可以分為兩類[3-4]:第一類是基于傳統(tǒng)機器學習的語義分割算法,傳統(tǒng)語義分割算法通過提取人工特征作為視覺信息來進行圖像分割,如:楊蘊等提出的基于局部空間信息的可變類模糊閾值分割算法,首先通過二分法原理和區(qū)域間最大相似度準則來確定類別數(shù)及其中心,然后利用嶺形模糊隸屬函數(shù)計算各像素點對不同類的隸屬程度[5];龐明明等將模糊數(shù)學結合Canny算子提取目標輪廓[6];胡高珍等利用Canny邊緣檢測算子解決局部區(qū)域馬爾可夫隨機場模型對圖像分割邊緣的模糊作用[7];楊夢等將單閾值隸屬度函數(shù)推廣到多閾值形式,提出基于標準離差法的模糊散度多閾值圖像分割算法[8];孫楊等利用特征融合策略提出一種融合區(qū)域和邊緣特征的圖像分割算法[9]。第二類是基于深度學習的語義分割算法,如:Long等提出的全卷積神經(jīng)網(wǎng)絡(Fully Convolutional Networks,F(xiàn)CN),利用卷積層替換卷積神經(jīng)網(wǎng)絡中的全連接層,并以反卷積的方式進行上采樣獲得結果[10-11];魏幗等利用遷移學習提高全卷積神經(jīng)網(wǎng)絡的模型的泛化能力,優(yōu)化了分割效果[12];王海鷗等利用濾波模型濾除噪聲,并利用批量歸一化層增強U-net網(wǎng)絡對參數(shù)的敏感性[13];chen等針對FCN下采樣過程中細節(jié)信息丟失的問題提出了deeplabv1模型,采用空洞卷積擴大感受野范圍的方式提升分割精度[14];SegNet中首次提出編碼器-解碼器結構,減少訓練參數(shù)的同時捕捉底層信息幫助分割更加精確的物體邊緣[15];chen等在Deeplabv2的基礎上進行改進提出了Deeplabv3模型,采用不同尺度大小的空洞卷積核構建空間空洞金字塔模塊,從而獲取多尺度的特征信息[16-17]。
縱觀上述語義分割算法,基于傳統(tǒng)機器學習的語義分割算法過于依賴人工特征的選取,分割表現(xiàn)往往差于深度學習語義分割算法。上述深度學習語義分割算法通過擴大感受野范圍等操作提升了模型的分割性能,但在分割物體邊界時往往容易出現(xiàn)不連續(xù)以及分割錯誤的現(xiàn)象。本文以底層特征復用以及捕獲多尺度語義信息為出發(fā)點,對Deeplabv3算法進行改進,通過構建并行卷積神經(jīng)網(wǎng)絡提取網(wǎng)絡淺層細節(jié)信息,之后進行級聯(lián)式特征融合,完成底層信息的復用,最終利用空間金字塔結構進一步獲取多尺度特征信息,以達到物體邊界分割更加準確的效果。
空洞卷積實際是一種數(shù)據(jù)采樣的方式,相較于傳統(tǒng)卷積,其不同之處在于在采樣的卷積核中增加了空洞,空洞的數(shù)量決定空洞率的大小以及采樣的稀疏程度。如圖1所示,傳統(tǒng)卷積得到的感受野范圍大小為3*3,而空洞率為1的空洞卷積得到的感受野范圍增加到5*5大小,從中看出空洞卷積在保持參數(shù)量不變的前提下有效的增加感受野范圍,感受野范圍大小如式(1)所示
N=i+(i-1)(j-1)
(1)
圖1 空洞卷積結構
其中N為感受野范圍,i為原始卷積核大小,j為空洞率。對于神經(jīng)網(wǎng)絡而言,神經(jīng)元的感受野越大意味著特征包含的的全局信息更多,表述作用更強。本文分割模型使用空洞卷積為基礎卷積單元,有效減少了空間信息丟失同時能夠獲取多尺度的語義信息。
卷積神經(jīng)網(wǎng)絡提取圖像各種層次的特征,然而網(wǎng)絡達到一定的深度時,會導致梯度彌散的問題,模型的正確率會開始飽和甚至下降。殘差單元可以解決深層網(wǎng)絡的退化問題,其結構如圖2所示。
假設殘差單元的輸入為i,經(jīng)過三層卷積層后的期待輸出為H(i)。而殘差單元的實際輸出為F(i),其定義如式(2)所示
F(i)=w3σ(w2σ(w1i))
(2)
式中w1、w2、w3為三層卷積層的權重參數(shù),σ為Relu激活函數(shù)。
將F(i)與i進行相加之后利用激活函數(shù)激活得到實際的H(i),如式(3)所示
H(i)=σ(w3σ(w2σ(w1i))+i)
(3)
輸出結果H(i)實際上是F(i)+i經(jīng)過激活函數(shù)的結果,倘若F(i)為0,則有H(i)=i,得到恒等映射。殘差單元的作用是將學習目標轉化為期望輸出H(i)與輸入i的差值F(i),對于神經(jīng)網(wǎng)絡來講,顯而易見的是擬合F(i)=0遠遠比擬合H(i)=i更加容易,因此殘差網(wǎng)絡的網(wǎng)絡層數(shù)能夠達到的深度遠超其它網(wǎng)絡結構。
圖2 殘差單元結構圖
Deeplabv3語義分割模型借鑒SPP-Net網(wǎng)絡提出空洞空間金字塔池化模塊(atrous spatial pyramid pooling,ASPP),ASPP模塊利用空洞卷積有效擴大了感受野范圍,此外通過不同擴張率的空洞卷積核獲取不同的感受野大小,增強分割模型對不同尺度大小物體的敏感程度。
如圖3所示,ASPP模塊中采用擴展率為1、6、12、18大小的的空洞卷積核以及自適應平均值池化,從而捕獲不同尺度的語義信息。
圖3 空洞空間金字塔池化模塊
Deeplab-v3框架中使用殘差網(wǎng)絡作為骨干網(wǎng)絡,傳統(tǒng)殘差網(wǎng)絡下采樣的過程中,特征圖不斷變小的同時其包含的語義信息也更為抽象。理論上更復雜的特征信息擁有更強的表述能力,更能表述圖像的整體語義,但是由于特征圖分辨率的減小,許多關鍵的上下文細節(jié)信息隨之丟失,無疑限制了圖像語義分割的結果。
本文提出一種改進型的ResNet-101網(wǎng)絡結構如圖4所示。假設圖4中Block2的輸出Feature map3為x,經(jīng)過Block3、Block4下采樣處理后即可得到傳統(tǒng)ResNet-101網(wǎng)絡的輸出F(x),其表達式如式(4)所示。
F(x)=f2(f1(x))
(4)
而對于本文提出的改進型ResNet-101網(wǎng)絡而言,設圖4中卷積核ConV2、ConV3為w1、w2,經(jīng)過Block3、Block4以及卷積核采樣處理之后得到改進型ResNet-101網(wǎng)絡的輸出F1(x),其表達式如式(5)所示。
F1(x)=f2(f1(x))+w2?(w1?x+f1(x))
(5)
f1、f2代表Block3、Block4中殘差單元的下采樣過程。淺層網(wǎng)絡Block2的輸出x中含有大量的紋理、輪廓特征,伴隨f1、f2進一步的下采樣,x中含有的細節(jié)信息會不斷丟失。對比式(4)與式(5)可以看出,提出的改進型ResNet-101算法構建并行的卷積網(wǎng)絡層提取Feature Map3的紋理、輪廓等細節(jié)特征信息,并且與Feature Map4進行像素級融合,補充原始圖像的語義信息,其次使用融合得到Feature map4_1繼續(xù)進行下采樣操作,最終與Feature Map5進行特征圖融合,進一步的補充細節(jié)信息。
圖4 改進ResNet-101網(wǎng)絡結構對比圖
完整語義分割網(wǎng)絡包含編碼器、解碼器兩個部分。本文中編碼器網(wǎng)絡由殘差網(wǎng)絡構成,編碼過程圖像的分辨率不斷減小,同時特征信息變得更加抽象。如圖5所示,(a)-(d)為原有Deeplabv3網(wǎng)絡由淺到深輸出的特征圖。從特征圖(a)、(b)可以看出,圖像的輪廓、紋理信息較為清晰,結構信息比較完整,而伴隨著網(wǎng)絡層的加深,從特征圖(c)、(d)中可以看出圖像的輪廓變得模糊,細節(jié)信息丟失,對分割任務造成了阻礙。
圖5 多層次特征可視化圖
針對下采樣過程中細節(jié)信息丟失的問題,構建卷積核尺寸大小為2,步長為2的并行卷積神經(jīng)網(wǎng)絡提取特征圖(b)、(c)中包含的紋理、輪廓等細節(jié)信息如圖(e)、(j)所示。特征圖(f)-(i)為改進Deeplabv3算法編碼器網(wǎng)絡由淺到深輸出的特征圖,對比改進deeplabv3算法與原有deeplabv3算法最終輸出的特征圖(d)與(i),可以看出融合了特征(e)、(j)之后的特征圖(i)相較于特征圖(d),保留了更多的細節(jié)信息。
城市道路圖像語義分割是根據(jù)每個像素點所屬的類別將其劃分為不同的顏色區(qū)域,完成對圖像語義更細致的理解。傳統(tǒng)的聚類分割算法如聚類算法難以對類別進行細分,從而無法獲取有用的語義信息。本文中街景圖像語義分割利用端對端的卷積神經(jīng)網(wǎng)絡獲取圖像的特征信息并對其進行還原得到預測結果,然后通過隨機梯度下降算法減小預測結果與標簽圖像的誤差,通過反復的迭代更新卷積神經(jīng)網(wǎng)絡中的權重參數(shù),得到理想的分割模型。
語義分割算法實現(xiàn)流程如圖6所示。
圖6 語義分割算法流程圖
語義分割算法實現(xiàn)流程具體步驟如下所示。
步驟一:構建模型,采用改進型ResNet-101網(wǎng)絡為模型的骨干網(wǎng)絡,補充下采樣丟失的空間語義信息,然后使用空間金字塔結構獲取多尺度語義信息,最終利用雙線性插值進行上采樣得到預測結果。
步驟二:利用transform模塊對數(shù)據(jù)集進行隨機翻轉、標準歸一化以及隨機裁剪等操作,增強模型的泛化能力。
步驟三:權重初始化,使用Imagenet訓練過的參數(shù),其余部分參數(shù)初始化符合正態(tài)分布,幫助模型更快的完成收斂。
步驟四:計算預測結果與標簽圖像的誤差,利用梯度優(yōu)化算法減小誤差,并更新模型權重參數(shù),通過不斷的優(yōu)化,模型完成收斂后結束訓練過程。
為了驗證本文提出的分割算法,采用Cityscape數(shù)據(jù)并設計5組對比試驗進行驗證。實驗環(huán)境使用window 10操作系統(tǒng),硬件配置使用Nvidia GTX1070 8GB顯卡,搭配CUDA Toolkit 10驅(qū)動軟件組建本次實驗所用的平臺,支撐網(wǎng)絡模型的計算。本次實驗選擇Pytorch深度學習框架進行圖像語義分割模型的訓練和測試。
為了評估本文中提出算法的有效性,本次實驗采用了像素準確度平均像素準確度,平均交并比指數(shù)對實驗結果進行了評估。像素準確度(pixel accuracy,Pa)代表了正確像素占總像素的比例,其定義如式(6)所示。其中k代表類別的數(shù)量,Pii代表正確分類點,Pij、Pji為誤分類的像素點。
(6)
平均像素準確度(mean pixel accuracy,Mpa) 代表了每個類內(nèi)正確分類像素點比例,并對其每個類求均值,其定義如式(7)所示。
(7)
交并比(Intersection over Union,IoU)計算了真實值與預測值的重合程度,對每個類別求取IoU指數(shù),再求取平均值即可得到MIoU指數(shù),MIoU指數(shù)直觀的反應分割的好壞,其定義如(8)所示。
(8)
Cityscapes數(shù)據(jù)集語義分割任務包含19個類別的物體,由于是全景標注因此基本不存在背景。分割結果如表1所示,從中可以看出U-net、FCN-8s、SegNet算法相較于Deeplabv3系列算法,分割精度上有著不小的差距,此外采用Resnet-50為骨干網(wǎng)絡的 PsPNet模型相較于Deeplabv3(ResNet-50)在分割精度上仍然具有一定的差距。
表1 Cityscapes數(shù)據(jù)集分割精度表(單位:%)
而對于Deeplabv3-Res50以及Deeplabv3-Res101,后者采用Resnet101為基礎網(wǎng)絡,相較于應用Resnet50的前者,Pa、Mpa、Miou指數(shù)分別提升了0.26%、1.49%、1.83%,證明了更加深層的網(wǎng)絡結構能夠提取更加有利的特征信息。而本文算法相較于Deeplabv3-Res101算法,MPA、MIoU指數(shù)分別提高了2.21%、1.30%。本文算法在Cityscapes數(shù)據(jù)集上的可視化收斂曲線如圖7所示,其中橫坐標為迭代次數(shù),而縱坐標為損失值,初始學習率為7e-3,從中可以看出,模型達到良好的收斂。
圖7 基于Cityscapes的改進Deeplabv3算法收斂曲線
圖8 Cityscapes圖像部分對比分割結果
Cityscapes測試集的部分分割結果如圖8所示,對于第一列圖像,DeeplabV3以及SegNet等算法在圖像右上角標注的橢圓中出現(xiàn)交通標志(黃色區(qū)域)分割不足現(xiàn)象,而本文算法分割出更加完整的交通標志,減少了誤分割以及分割不足現(xiàn)象。第二列SegNet、Deeplabv3等算法的分割結果出現(xiàn)卡車部分區(qū)域誤分割的現(xiàn)象,代表卡車的深藍色區(qū)域被誤分類為天空(淺藍)與小汽車(藍色),而本文算法整體上分割出較為完整的卡車區(qū)域。針對于上述各例中分割不足、誤分割的現(xiàn)象,本文提出的改進型DeepLabv3算法減少了誤分割區(qū)域,得到了更加連續(xù)的分割邊界,證明了改進的Deeplabv3算法能夠利用提取淺層特征補充上下文信息,從而獲取更好的像素間關聯(lián)性,進一步的模型的分割性能。
1)本文針對于傳統(tǒng)的DeepLab-v3算法下采樣丟失大量的細節(jié)信息的問題,從復用底層特征以及捕獲多尺度語義信息兩個方向出發(fā),實現(xiàn)減少誤分割區(qū)域的目的。
2)該方法通過設計輕量級并行卷積神經(jīng)網(wǎng)絡獲取圖像底層細節(jié)信息,然后利用特征融合補充傳統(tǒng)算法下采樣過程丟失的細節(jié)信息,并使用空洞金字塔池化模塊獲取多尺度語義信息,得到更加準確的語義信息。
3)在城市道路分割結果對比實驗中,本文方法相較于傳統(tǒng)DeepLabv3算法在平均像素準確率以及平均交并比指數(shù)上分別提高2.21%、1.30%,驗證本文方法的有效性。