霍占強(qiáng),賈海洋,喬應(yīng)旭,雒 芬,陳 瑋
河南理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,河南 焦作 454003
語(yǔ)義分割是一個(gè)基本且具有挑戰(zhàn)性的計(jì)算機(jī)視覺(jué)分類任務(wù),其主要目的是為圖像中的每個(gè)像素標(biāo)注預(yù)定義的高級(jí)語(yǔ)義類別標(biāo)簽[1-2],屬于像素密集型的分類任務(wù),其可視化如圖1所示。實(shí)時(shí)語(yǔ)義分割具有廣闊的應(yīng)用前景,例如醫(yī)學(xué)圖像分割、人機(jī)交互、汽車的自動(dòng)駕駛[3-5]、視頻監(jiān)控等領(lǐng)域。
圖1 邊界分割可視化展示Fig.1 Visualization of boundary segmentation
基于手工設(shè)計(jì)的傳統(tǒng)語(yǔ)義分割方法主要分為五類:(1)閾值法[6],試圖將圖像分為兩個(gè)區(qū)域,目標(biāo)區(qū)域和背景區(qū)域;(2)聚類法[7],基于顏色、梯度等像素特征或相對(duì)距離的相似度度量為每一個(gè)像素分配一個(gè)類別;(3)邊緣檢測(cè)法[8],利用邊界幫助圖像進(jìn)行分割;(4)圖論法[9],將每個(gè)像素視為頂點(diǎn),將像素之間的連線視為邊,用邊的權(quán)重度量其相似度;(5)條件隨機(jī)場(chǎng)法[10],將這一種用于標(biāo)記和分割數(shù)據(jù)的概率框架應(yīng)用于圖像分割。
近些年,深度學(xué)習(xí)方法在計(jì)算機(jī)視覺(jué)領(lǐng)域發(fā)展迅速,基于深度卷積神經(jīng)網(wǎng)絡(luò)的語(yǔ)義分割方法與基于手工設(shè)計(jì)的語(yǔ)義分割方法相比性能上取得顯著的提升。Long 等[11]在2015 年提出一種全卷積網(wǎng)絡(luò)(fully convolutional networks,F(xiàn)CN)的語(yǔ)義分割模型,首次成功應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)解決像素級(jí)的語(yǔ)義分割問(wèn)題,使用全卷積層替代圖像分類網(wǎng)絡(luò)的全連接層來(lái)解決輸入圖像分辨率固定的問(wèn)題,在網(wǎng)絡(luò)末端采用上采樣操作恢復(fù)到原始分辨率。然而FCN 輸出特征圖感受野較小,會(huì)導(dǎo)致無(wú)法很好地分割不同尺度的物體。為了解決該問(wèn)題,Chen 等[12]在2018 年提出了DeepLabv3+網(wǎng)絡(luò),設(shè)計(jì)了一種空洞空間金字塔池化模塊(atrous spatial pyramid pooling,ASPP),并行地使用多個(gè)不同膨脹率的卷積核對(duì)單一分辨率的輸出特征圖進(jìn)行處理來(lái)得到不同大小的感受野區(qū)域,從而能夠有效地分割不同尺寸的物體并捕獲多尺度的語(yǔ)義邊界區(qū)域信息。Yu等[13]在2020年提出基于語(yǔ)義分支和細(xì)節(jié)分支構(gòu)成的雙分支實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò)BiSeNetV2,基于輕量級(jí)的骨干網(wǎng)絡(luò)通過(guò)融合低層的細(xì)節(jié)信息和高層的語(yǔ)義信息來(lái)補(bǔ)償精度的損失。語(yǔ)義分支利用深度可分離卷積構(gòu)成的深層次網(wǎng)絡(luò)來(lái)負(fù)責(zé)提取高級(jí)別的語(yǔ)義信息,從而提高模型的推理速度。細(xì)節(jié)分支利用淺層次的卷積網(wǎng)絡(luò)以保留低層的細(xì)節(jié)信息。Yin 等[14]在2020 年提出Disentangled Non-local 通過(guò)解耦標(biāo)準(zhǔn)的Non-local模塊得到不同的視覺(jué)線索,白化的成對(duì)項(xiàng)用于學(xué)習(xí)區(qū)域內(nèi)關(guān)系,一元項(xiàng)用于學(xué)習(xí)顯著的邊界特征。Fan 等[15]在2021 年提出Rethinking BiSeNet通過(guò)重新設(shè)計(jì)網(wǎng)絡(luò)架構(gòu)將空間邊界信息的學(xué)習(xí)集成到低層級(jí)部分,同時(shí)設(shè)計(jì)短期密集連接模塊(short-term dense concatenate,STDC),通過(guò)融合連續(xù)若干個(gè)不同感受野的卷積核來(lái)彌補(bǔ)語(yǔ)義分支感受野的不足,從而有效地提取語(yǔ)義邊界區(qū)域特征。Zhu 等[16]在2021 年提出一種新的統(tǒng)計(jì)紋理學(xué)習(xí)網(wǎng)絡(luò)(learning statistical texture),通過(guò)設(shè)計(jì)一種新的量化和計(jì)數(shù)算子以統(tǒng)計(jì)的方式描述紋理信息,從而有效地利用低層紋理特征來(lái)保持語(yǔ)義分割的精確邊界?,F(xiàn)有的模型由于細(xì)節(jié)分支和語(yǔ)義分支缺乏特殊的邊界設(shè)計(jì),使得邊界信息被統(tǒng)一處理導(dǎo)致物體邊界分割不準(zhǔn)確。
針對(duì)上述存在的問(wèn)題,本文提出一種高效的邊界感知實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò)(boundary-aware segmentation network,BASeNet)。網(wǎng)絡(luò)的創(chuàng)新設(shè)計(jì)主要包括:(1)為了提取更具有鑒別性的邊界特征,本文設(shè)計(jì)邊界感知學(xué)習(xí)機(jī)制。該機(jī)制通過(guò)將不同方向的位置信息整合到細(xì)節(jié)邊界中有效促進(jìn)全局空間坐標(biāo)信息和細(xì)節(jié)邊界特征之間的交互;(2)針對(duì)不同物體復(fù)雜的幾何結(jié)構(gòu),設(shè)計(jì)輕量級(jí)區(qū)域自適應(yīng)模塊來(lái)產(chǎn)生多樣化采樣方案,通過(guò)稀疏、密集、自適應(yīng)組合的策略增強(qiáng)網(wǎng)絡(luò)對(duì)復(fù)雜語(yǔ)義邊界區(qū)域的建模能力;(3)設(shè)計(jì)高效的獨(dú)特空洞空間金字塔池化模塊,通過(guò)融合策略重新衡量多分支池中不同大小相鄰像素的貢獻(xiàn),強(qiáng)化語(yǔ)義邊界區(qū)域和細(xì)節(jié)邊界特征的重要性。
為了提高實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò)的性能以及邊界感知能力,本文提出了邊界感知的實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò)BASeNet。
BASeNet網(wǎng)絡(luò)主要分為語(yǔ)義分支(semantic branch)和細(xì)節(jié)分支(detail branch)。BASeNet 是在BiSeNetV2網(wǎng)絡(luò)架構(gòu)的基礎(chǔ)上進(jìn)行改進(jìn)的。首先,語(yǔ)義分支設(shè)計(jì)輕量級(jí)區(qū)域自適應(yīng)模塊LRA(lightweight region adaptive)有助于充分利用語(yǔ)義邊界信息。其次,細(xì)節(jié)分支添加邊界感知的學(xué)習(xí)機(jī)制模塊(boundary-aware,BA)有助于利用細(xì)節(jié)邊界信息。最后,模型末尾添加高效的空洞空間金字塔池化模塊EDASPP(efficient distinctive atrous spatial pyramid pooling)進(jìn)一步地增強(qiáng)語(yǔ)義和細(xì)節(jié)邊界特征,BASeNe網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。
圖2 BASeNet網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Structure of BASeNet network
本文提出BASeNet 網(wǎng)絡(luò)詳細(xì)信息如表1 所示。其中Dopr 表示細(xì)節(jié)分支操作單元,Ds 表示細(xì)節(jié)分支下采樣的步長(zhǎng),Sopr 表示語(yǔ)義分支操作單元,Ss 表示語(yǔ)義分支下采樣的步長(zhǎng)。
表1 BASeNet網(wǎng)絡(luò)架構(gòu)Table 1 Architecture of BASeNet network
相比于BiSeNetV2,BASeNet 主要采取以下三方面優(yōu)化:(1)細(xì)節(jié)分支中的S1~S3仍然保留,使輸出分辨率降至輸入1/8,新增BA模塊用于提取細(xì)節(jié)邊界特征和精確的位置坐標(biāo)信息。(2)語(yǔ)義分支中Stem(stem block)[13]和CE(context embedding block)[13]模塊仍保留,將S3~S5 第一個(gè)聚集擴(kuò)展層模塊(gather-and-expansion layer,GE)[13]更換為L(zhǎng)RA(步長(zhǎng)為2)模塊用于降采樣操作,S5中的第二個(gè)GE模塊替換為L(zhǎng)RA(步長(zhǎng)為1)模塊,保辨率不變。(3)新增的EDASPP 模塊用于提取顯著性的語(yǔ)義邊界區(qū)域信息和細(xì)節(jié)邊界特征。
由于BiSeNetV2 網(wǎng)絡(luò)的邊界和紋理特征是統(tǒng)一處理,從而導(dǎo)致細(xì)節(jié)分支對(duì)細(xì)節(jié)邊界信息利用可能不充分。為了提取細(xì)節(jié)分支的邊界視覺(jué)線索和定位精確位置信息,受到Disentangled Non-local[14]中一元項(xiàng)(unary non-local,unary NL)和協(xié)調(diào)注意力(coordinate attention,CA)[17]的啟發(fā),本文提出邊界感知學(xué)習(xí)機(jī)制模塊BA,其結(jié)構(gòu)如圖3所示。
圖3 BA模塊結(jié)構(gòu)Fig.3 Structure of BA module
首先,給定輸入特征圖X,通過(guò)沿水平方向的平均池化WAvg和垂直方向的平均池化HAvg生成ZH∈RH×1×C,ZW∈R1×W×C,如公式(1)、(2)所示:
為了減少通道數(shù),ZH、ZW利用hConv和wConv的控制縮放因子r分別得到新的特征圖V∈RH×1×C/r、M1∈R1×W×C/r,如公式(3)、(4)所示:
式中,hConv和wConv表示1×1卷積(Conv)操作,r設(shè)置為4。為了計(jì)算兩者的關(guān)聯(lián)性對(duì)M1進(jìn)行歸一化處理,如公式(5)所示:
式中,norm表示L2歸一化,通過(guò)對(duì)V、M運(yùn)用矩陣乘法得出的時(shí)間復(fù)雜度是O(H×W),僅為原來(lái)一元項(xiàng)的1/(H×W)。盡管細(xì)節(jié)分支輸出特征圖的分辨率依舊相對(duì)較大,但計(jì)算成本相對(duì)于一元項(xiàng)已經(jīng)大幅度的降低,比較適合應(yīng)用于輕量級(jí)的語(yǔ)義分割網(wǎng)絡(luò)。為了保持與X形狀一致且重新編碼邊界位置依賴關(guān)系,相乘后的矩陣首先進(jìn)行reshape操作,然后將其和輸入特征圖X相加用于得到矯正后的特征Y,如公式(6)所示:
本文提出一種邊界感知學(xué)習(xí)機(jī)制用于充分利用邊界和坐標(biāo)位置信息。一方面,為了將方向感知和位置敏感的注意力圖作為顯著性邊界的輸入,與一元項(xiàng)通過(guò)卷積獲取輸入不同的是,邊界感知模塊是通過(guò)沿水平和垂直方向的池化操作實(shí)現(xiàn)的。另一方面,為了促進(jìn)精確的位置信息和鑒別性較強(qiáng)的邊界信息之間相互交流,與協(xié)調(diào)注意力相加的方式不同的是,邊界感知模塊是通過(guò)矩陣相乘的方式實(shí)現(xiàn)的。同時(shí),采用轉(zhuǎn)換函數(shù)對(duì)注意力圖進(jìn)行重新編碼,有助于捕獲不同通道之間的相互依賴關(guān)系和恢復(fù)通道數(shù)。此外,邊界感知模塊不僅可以提高模型的推理速度,還可以通過(guò)邊界卷積通道和坐標(biāo)卷積通道之間的相互依賴關(guān)系有效處理細(xì)節(jié)分支中的邊界坐標(biāo)信息,有助于利用精確的位置信息增強(qiáng)細(xì)節(jié)分支獲取邊界的能力。
對(duì)于語(yǔ)義邊界區(qū)域特征的提取,通常在編碼器后面使用空間金字塔塊的方法來(lái)提取有效的語(yǔ)義邊界區(qū)域信息[18-20]。而本文認(rèn)為獲取語(yǔ)義邊界區(qū)域的能力在網(wǎng)絡(luò)不同階段是不同的,例如,淺層階段提取細(xì)節(jié)邊界特征,中間階段提取語(yǔ)義和細(xì)節(jié)邊界特征,末尾階段提取更豐富的語(yǔ)義邊界區(qū)域信息。
為了解決語(yǔ)義邊界區(qū)域的問(wèn)題,受到聚集-擴(kuò)展層(GE)[13]和金字塔基本塊(pyramid building blocks)[21]的啟發(fā),本文提出輕量級(jí)區(qū)域自適應(yīng)模塊LRA,其結(jié)構(gòu)如圖4、5所示。
圖4 LRA步長(zhǎng)為2結(jié)構(gòu)Fig.4 Structure of LRA whose stride equals two
如圖4 所示,步長(zhǎng)為2 的LRA 模塊由擴(kuò)張卷積、區(qū)域自適應(yīng)模塊RA(region adaptive)和映射層組成。首先,給定輸入維度為C的特征圖,依次經(jīng)過(guò)3×3 Conv、步長(zhǎng)為2的3×3卷積(SDConv),得到維度為6C的特征圖X,并分別流入由深度空洞卷積(DDConv)且空洞率全部為1 的區(qū)域自適應(yīng)模塊RA,卷積核的大小從左至右依次是3、5、7,為了加強(qiáng)不同分支間的信息交流,對(duì)不同分支間的輸出特征DDConvi(X)進(jìn)行融合得到y(tǒng)i,第i-1 分支和第i分支的關(guān)系,如公式(7)所示:
最后,將不同分支得到的yi拼接起來(lái),并通過(guò)1×1 Conv將輸出維度降為C。同時(shí),為了維持?jǐn)?shù)值穩(wěn)定性,采用3×3 SDConv 和1×1 Conv 組成的殘差結(jié)構(gòu)。此外,為了維持分辨率,還設(shè)計(jì)步長(zhǎng)為1的LRA,其殘差結(jié)構(gòu)去掉3×3 SDConv和1×1 Conv,其結(jié)構(gòu)如圖5所示。
圖5 LRA步長(zhǎng)為1結(jié)構(gòu)Fig.5 Structure of LRA whose stride equals one
與金字塔基本塊不同的是,首先,本文將深度卷積替換為深度空洞卷積有助于網(wǎng)絡(luò)擴(kuò)大感受野的學(xué)習(xí)區(qū)域;其次,使用聚集擴(kuò)展層有助于聚合更多有效的局部特征信息;然后,LRA 模塊批處理歸一化(batch norm,BN)在每個(gè)深度空洞卷積后使用有助于提高網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定性,并使用ReLU函數(shù)增加語(yǔ)義邊界區(qū)域的非線性;最后,為了充分挖掘不同階段的語(yǔ)義邊界區(qū)域特征,LRA在網(wǎng)絡(luò)的不同階段,設(shè)計(jì)不同大小的空洞率有助于網(wǎng)絡(luò)學(xué)習(xí)可變的采樣區(qū)域。將LRA模塊插入骨干網(wǎng)絡(luò)的不同階段用于增強(qiáng)模型獲取語(yǔ)義邊界區(qū)域信息的能力,在網(wǎng)絡(luò)的淺層階段插入LRA 用于學(xué)習(xí)低層次的細(xì)節(jié)邊界特征。在網(wǎng)絡(luò)的中間階段插入LRA用于學(xué)習(xí)部分語(yǔ)義邊界對(duì)象特征,并充分利用語(yǔ)義和細(xì)節(jié)邊界能力從而提高網(wǎng)絡(luò)的性能。在骨干網(wǎng)絡(luò)的后端,通過(guò)疊加不同空洞率的濾波器使得接受域的學(xué)習(xí)區(qū)域自適應(yīng)于網(wǎng)絡(luò),獲取更多上下文信息,進(jìn)一步增強(qiáng)語(yǔ)義邊界區(qū)域信息。可變的采樣區(qū)域還有助于網(wǎng)絡(luò)解決因使用級(jí)聯(lián)的擴(kuò)張卷積帶來(lái)的“棋盤效應(yīng)”。
為了進(jìn)一步增強(qiáng)語(yǔ)義和細(xì)節(jié)邊界信息,考慮DASPP(distinctive atrous spatial pyramid pooling)[22]模塊提取語(yǔ)義多尺度特征的優(yōu)勢(shì)。本文設(shè)計(jì)EDASPP模塊,其結(jié)構(gòu)如圖6 所示,通過(guò)少量的參數(shù)和單向融合策略,進(jìn)一步提升分割網(wǎng)絡(luò)建模語(yǔ)義邊界區(qū)域和細(xì)節(jié)邊界的能力。
圖6 EDASPP模塊結(jié)構(gòu)Fig.6 Structure of EDASPP module
為了減少計(jì)算成本,首先,改進(jìn)后的EDASPP 模塊的輸入特征圖,經(jīng)過(guò)1×1分組卷積(GConv)將維度降至96維。其次,在并行的卷積分支中,該模塊分別采用3×3深度卷積(DConv)和3×3、5×5、7×7的平均池化。其中3×3 DDConv 在四個(gè)分支中對(duì)應(yīng)的空洞率分別為1、3、9、27。然后,為了提高信息的利用率,通過(guò)采取單向融合策略得到多級(jí)融合特征信息Z。同時(shí),X依次經(jīng)過(guò)圖像級(jí)池化、1×1 DConv 后與多級(jí)融合特征信息Z拼接。最后,經(jīng)過(guò)1×1 GConv 操作后和輸入特征采取殘差方式得到最終的輸出Y,如公式(8)、(9)、(10)和(11)所示:
其中,X為經(jīng)過(guò)1×1 GConv后的特征,AvgPoolingi(X)代表大小為k的平均池化操作,k的取值是3、5、7。DDConvi(X)代表空洞率大小是i的深度空洞卷積,i的取值分別是1、3、9、27,D表示特征圖先經(jīng)過(guò)深度卷積后,再經(jīng)過(guò)深度空洞卷積,Pi,k表示先經(jīng)過(guò)平均池化后經(jīng)過(guò)深度空洞卷積的特征圖,F(xiàn)表示單向融合策略,Z為多級(jí)融合特征信息,Concat表示特征圖的拼接,IP(X)表示圖像級(jí)平均池化,GConv用于恢復(fù)信道數(shù),Y為EDASPP輸出特征圖。
此設(shè)計(jì)使模型參數(shù)從70 萬(wàn)降到了3 萬(wàn)。單向融合單元充分利用多尺度的語(yǔ)義邊界區(qū)域信息提升模型建模語(yǔ)義和細(xì)節(jié)邊界的能力。圖像級(jí)平均池化用于獲取全局上下文信息,對(duì)于融合多尺度多階段的骨干網(wǎng)絡(luò)是至關(guān)重要的,會(huì)在實(shí)驗(yàn)部分證明該觀點(diǎn),快捷連接用于提升網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定性。
Cityscapes[23]評(píng)測(cè)數(shù)據(jù)集是最具代表性和重要性的圖像分割數(shù)據(jù)集基準(zhǔn)之一。Cityscapes 數(shù)據(jù)集包含5 000 張高分辨率的圖片,圖片的內(nèi)容是城市環(huán)境中的駕駛場(chǎng)景,以汽車的角度對(duì)這些場(chǎng)景進(jìn)行語(yǔ)義理解。數(shù)據(jù)集劃分為2 975 張訓(xùn)練集圖像,500 張驗(yàn)證集圖像,1 525 張測(cè)試集圖像,分辨率為2 048×1024。根據(jù)內(nèi)容進(jìn)行劃分,數(shù)據(jù)集標(biāo)簽包括30個(gè)類別,其中可用于語(yǔ)義分割任務(wù)的類別為19個(gè)。在實(shí)驗(yàn)中使用精細(xì)標(biāo)注的樣本進(jìn)行訓(xùn)練和驗(yàn)證所提方法的準(zhǔn)確度。
CamVid(Cambridge-driving labeled video database)[24]
數(shù)據(jù)集是第一個(gè)具有目標(biāo)類別語(yǔ)義標(biāo)簽的視頻集合。數(shù)據(jù)集提供32 個(gè)語(yǔ)義標(biāo)簽,將每個(gè)像素與語(yǔ)義類別之一相關(guān)聯(lián)。數(shù)據(jù)是從駕駛汽車的角度拍攝的,駕駛場(chǎng)景增加觀察目標(biāo)的數(shù)量和異質(zhì)性。
模型實(shí)驗(yàn)采用的深度學(xué)習(xí)框架是Pytorch,顯卡是GeForce RTX 2080 Ti GPU,CUDA 9.0 和CuDNN v7版本。測(cè)試階段使用一個(gè)GPU測(cè)量前向傳播的推理時(shí)間,輸入分辨率的大小為2 048×1024。重復(fù)1 000 次取平均值以減少實(shí)驗(yàn)誤差,測(cè)量精度指標(biāo)是平均像素交并比(mIoU),效率是每秒傳輸幀數(shù)(FPS)。對(duì)于所有數(shù)據(jù)集中的樣本,使用數(shù)據(jù)增強(qiáng)策略,包括隨機(jī)水平翻轉(zhuǎn)、隨機(jī)縮放、隨機(jī)剪切到固定分辨率大小的輸入圖像,隨機(jī)尺度包含{0.75,1,1.25,1.5,1.75,2.0}。
訓(xùn)練是從頭開(kāi)始,沒(méi)有使用預(yù)訓(xùn)練模型,采用隨機(jī)梯度下降(SGD)算法優(yōu)化模型,初始動(dòng)量為0.9,批處理的大小為8,權(quán)重衰減為0.000 5。采取指數(shù)學(xué)習(xí)速率策略,初始學(xué)習(xí)率乘以設(shè)為0.9,初始速率為0.05。iter和max_iter表示當(dāng)前的迭代次數(shù)和迭代次數(shù)最大值,對(duì)Cityscapes 數(shù)據(jù)集、CamVid 數(shù)據(jù)集模型分別訓(xùn)練了175 000、11 000個(gè)周期。
(1)BA模塊的消融實(shí)驗(yàn)
為了驗(yàn)證BA 模塊的性能,實(shí)驗(yàn)結(jié)果如表2 所示。
表2 在Cityscapes驗(yàn)證集驗(yàn)證不同設(shè)置下的性能Table 2 Performance of validation set of Cityscapes with different validation settings
本網(wǎng)絡(luò)使用BiSeNetV2 作為基準(zhǔn)網(wǎng)絡(luò)。DLRA(No dilation)表示細(xì)節(jié)分支降采樣后串聯(lián)不帶空洞率的LRA,CA[17]表示細(xì)節(jié)分支和協(xié)調(diào)注意力串聯(lián),Unary NL[14]表示細(xì)節(jié)分支和一元項(xiàng)串聯(lián),BA表示細(xì)節(jié)分支與邊界感知學(xué)習(xí)機(jī)制串聯(lián)。
由表2可知,加入BA的網(wǎng)絡(luò)與骨干網(wǎng)絡(luò)相比mIoU從71.80%提升到73.10%,mIoU值提升了1.3個(gè)百分點(diǎn),速度從94.03 降到92.46,降低了約1.57。DLRA(No dilation)與骨干網(wǎng)絡(luò)相比mIoU提高了0.85個(gè)百分點(diǎn),盡管精度有略微提升,但速度大幅度下降導(dǎo)致不適用于實(shí)時(shí)語(yǔ)義分割。BA 與CA[17]相比以相似的分割速度實(shí)現(xiàn)更高的分割精度,主要是因?yàn)榍度脒吔缧畔⒂欣谔岣咦鴺?biāo)位置信息的利用。BA 與Unary NL[14]相比雖然精度略有下降但取得了更快的分割速度,主要是因?yàn)槭褂米鴺?biāo)位置信息提高了邊界的推理速度?;趯?shí)驗(yàn)分析驗(yàn)證了邊界信息和坐標(biāo)位置信息對(duì)于細(xì)節(jié)分支的重要性,說(shuō)明了細(xì)節(jié)分支不僅僅需要位置依賴關(guān)系,更需要學(xué)習(xí)顯著的邊界信息。
(2)空洞率對(duì)LRA性能影響的消融實(shí)驗(yàn)
為了驗(yàn)證LRA 模塊采取空洞率的性能差異,實(shí)驗(yàn)結(jié)果如表3 所示。LRA(No dilation)表示語(yǔ)義分支S5階段全部空洞率為1的LRA,LRA表示語(yǔ)義分支使用帶有空洞率輕量級(jí)區(qū)域自適應(yīng)模塊。
表3 空洞率對(duì)模型性能的影響Table 3 Influence of dilation rate on model performance
由表3可知,加入LRA模塊的網(wǎng)絡(luò)與骨干網(wǎng)絡(luò)相比mIoU從71.80%提升到75.94%,mIoU提高了約4個(gè)百分點(diǎn),表明語(yǔ)義邊界區(qū)域特征的重要性。加入LRA 模塊的網(wǎng)絡(luò)與加入LRA(No dilation)模塊的網(wǎng)絡(luò)相比,在保持相同的推理速度的條件下,mIoU 提高了約0.92 個(gè)百分點(diǎn),表明輕量級(jí)區(qū)域采樣模塊中空洞率的設(shè)計(jì)比較合理。LRA 模塊利用可變的采樣區(qū)域增強(qiáng)了語(yǔ)義分支對(duì)語(yǔ)義邊界區(qū)域的建模能力,使輕量級(jí)語(yǔ)義分割模型精度得到顯著提升。
(3)EDASPP有效性的消融實(shí)驗(yàn)
為了證明EDASPP 模塊的有效性,實(shí)驗(yàn)結(jié)果如表4所示。DASPP 表示基線網(wǎng)絡(luò)和DASPP 串聯(lián),EDASPP(No fusion)表示基線網(wǎng)絡(luò)和EDASPP 串聯(lián),EDASPP(Cascade)表示將EDASPP中的平均池化的連接方式由并行改為串行,EDASPP(Max)表示在池化層中采用最大值池化,EDASPP(Avg)表示在池化層中采用平均池化。EDASPP默認(rèn)為EDASPP(Avg)。
表4 EDASPP與DASPP在Cityscapes驗(yàn)證集上的性能比較Table 4 Comparison of performance between EDASPP and DASPP on Cityscapes validation set
由表4 可知,加入DASPP 的網(wǎng)絡(luò)mIoU 為74.15%,加入EDASPP的網(wǎng)絡(luò)為75.80%,可以發(fā)現(xiàn),加入DASPP的網(wǎng)絡(luò)精度相對(duì)較低,是因?yàn)镈ASPP 每個(gè)并行分支后的卷積操作的輸入采取簡(jiǎn)單的融合機(jī)制未能充分利用更多語(yǔ)義邊界區(qū)域信息。與EDASPP(No fusion)相比,EDASPP 獲得了更好的精度,是因?yàn)镋DASPP 通過(guò)單向融合策略能夠有效利用不同尺度的信息提高不同特征圖的信息利用率。與EDASPP(No fusion)相比,EDASPP獲得了更好的精度,是因?yàn)镋DASPP通過(guò)單向融合策略能夠有效利用不同尺度的信息提高不同特征圖的信息利用率,體現(xiàn)了EDASPP 融合模塊的有效性。EDASPP(Cascade)將mIoU 從75.80%(由EDASPP 得到)降低到71.72%,這表明級(jí)聯(lián)方式會(huì)因不斷的池化操作失去更多的信息。而EDASPP 是因?yàn)椴⒙?lián)不同尺度邊界信息來(lái)獲得每個(gè)池化層和卷積層的特征圖信息,使得精度得到顯著提升。EDASPP相比于EDASPP(Max)的mIoU 提高約3.70 個(gè)百分點(diǎn),是因?yàn)槠骄鼗瘯?huì)帶有更多的特征信息。實(shí)驗(yàn)表明EDASPP 能夠更有效地利用來(lái)自不同分支的邊界語(yǔ)義信息和細(xì)節(jié)邊界特征。
(4)EDASPP和LRA結(jié)合合理性的消融實(shí)驗(yàn)
為了驗(yàn)證EDASPP 模塊對(duì)LRA 模塊結(jié)合的合理性,實(shí)驗(yàn)結(jié)果如表5 所示。LRA 與表3 的意義一樣,LRA-Shortcut表示骨干網(wǎng)絡(luò)加入LRA和跳遠(yuǎn)連接分支,LRA-EDASPP 表示骨干網(wǎng)絡(luò)加入LRA 和EDASPP,帶有“√”的表示加入圖像級(jí)平均池化(Image Pooling)。
表5 驗(yàn)證EDASPP與帶有LRA的語(yǔ)義分支結(jié)合的合理性Table 5 Testing rationality of combination of EDASPP and semantic branch with LRA
由表5可知,加入帶有Image Pooling的LRA-EDASPP的網(wǎng)絡(luò)與只加LRA 的網(wǎng)絡(luò)相比mIoU 從75.94%增加到76.81%,mIoU值增加了約0.87個(gè)百分點(diǎn)。速度從57.22下降到50.96,下降了約6.26。與只加LRA 的網(wǎng)絡(luò)相比帶有Image Pooling的LRA-Shortcut網(wǎng)絡(luò)的精度降低了0.03個(gè)百分點(diǎn),速度相似,加入Image Pooling和跳遠(yuǎn)連接雖然利用全局上下文語(yǔ)義信息,但由于未能充分利用語(yǔ)義分支模塊多尺度邊界區(qū)域信息,導(dǎo)致性能略有下降。不帶Image Pooling 的LRA-EDASPP 的網(wǎng)絡(luò)相比帶Image Pooling 的LRA-EDASPP 網(wǎng)絡(luò)的精度降低了1.10 個(gè)百分點(diǎn),不帶Image Pooling 的LRA-EDASPP 雖然進(jìn)一步增加了模型的感受野,但面臨會(huì)丟失全局信息的能力。實(shí)驗(yàn)表明EDASPP分支可以有效融合LRA中的語(yǔ)義邊界區(qū)域特征和細(xì)節(jié)邊界特征,驗(yàn)證了EDASPP與語(yǔ)義分支LRA結(jié)合的合理性。
在城市景觀測(cè)試集上給出該算法的分割精度和推理速度。數(shù)據(jù)集輸入圖像為1 024×2 048,首先將輸入的分辨率調(diào)整為512×1 024 進(jìn)行訓(xùn)練,然后在驗(yàn)證集和測(cè)試集上恢復(fù)至原始分辨率評(píng)估分割精度。推斷時(shí)間是在一個(gè)NVIDIA GeForce 2080Ti 卡上進(jìn)行測(cè)試。所提方法和現(xiàn)有方法的比較結(jié)果如表6 所示。第一組為非實(shí)時(shí)方法,包括DeepLabv2[25]、PSPNet[26]。第二組為實(shí)時(shí)語(yǔ)義分割算法,包括ENet[27]、ERFNet[28]、GUN[29]、BiseNet[30、]ICNet[31、]ESPNetV2[32、]Fast-SCNN[33、]BiSeNetV2[13]。所提方法在Cityscapes 測(cè)試集以47.2 FPS 獲得74.9%的mIoU,精度比表6 第二組中大部分實(shí)時(shí)算法更好,驗(yàn)證邊界感知方法的有效性。
表6 在Cityscapes測(cè)試集上與其他方法比較Table 6 Comparison with other methods on Cityscapes test set
為了定性分析本網(wǎng)絡(luò)的分割效果,本文方法與BiSeNetV2 在Cityscapes 數(shù)據(jù)集上進(jìn)行可視化對(duì)比,結(jié)果如圖7所示。其中圖7(a)為Cityscapes驗(yàn)證集的輸入圖像,圖7(b)為Cityscapes驗(yàn)證集對(duì)應(yīng)的真實(shí)圖像標(biāo)簽,圖7(c)為本文算法的分割結(jié)果,圖7(d)為BiSeNetV2的分割結(jié)果。可以發(fā)現(xiàn),本文邊界分割準(zhǔn)確度相比于基礎(chǔ)算法更高,主要分為三種情況,第一,BiSeNetV2相比于原圖會(huì)產(chǎn)生多劃分的情況,如圖7第四列的第一行和第二行,會(huì)在道路上添加原圖中不存在的人行道,原因是不同的類之間缺乏語(yǔ)義邊界區(qū)域信息,而本網(wǎng)絡(luò)在語(yǔ)義分支通過(guò)充分考慮語(yǔ)義邊界區(qū)域特征,有效增強(qiáng)像素之間的語(yǔ)義邊界關(guān)系,這樣多劃分的情況就會(huì)有效減少。第二,BiSeNetV2相比于原圖會(huì)產(chǎn)生人行道之間馬路少劃分的情況,如圖7 第四列的第三行,造成的原因是由于基礎(chǔ)算法沒(méi)有充分考慮細(xì)節(jié)邊界信息,因此會(huì)造成邊界劃分不準(zhǔn)確的現(xiàn)象。而本網(wǎng)絡(luò)通過(guò)在細(xì)節(jié)分支充分利用細(xì)節(jié)邊界信息,對(duì)物體邊界的少劃分提供有效的幫助。第三,BiSeNetV2相比于原圖會(huì)出現(xiàn)交叉劃分的情況,如圖7第四列的第四行,人行道之間會(huì)混有道路,造成的原因是語(yǔ)義和細(xì)節(jié)等上下文信息的利用不充分,而本網(wǎng)絡(luò)通過(guò)增強(qiáng)物體的上下文信息來(lái)減少交叉劃分的錯(cuò)誤現(xiàn)象。由于本文算法充分考慮細(xì)節(jié)邊界和語(yǔ)義邊界區(qū)域的作用,因此增強(qiáng)網(wǎng)絡(luò)對(duì)于圖像邊界的建模能力。
圖7 Cityscapes數(shù)據(jù)集可視化結(jié)果Fig.7 Visualization result of Cityscapes dataset
為了證明BASeNet的泛化性和高效性,表7顯示了在CamVid 數(shù)據(jù)集上進(jìn)行精度和速度結(jié)果。在推理階段,訓(xùn)練集和驗(yàn)證集的輸入分辨率為960×720。BASeNet 不僅與一些非實(shí)時(shí)算法SegNet[34]、PSPNet[26]進(jìn)行了對(duì)比,還與實(shí)時(shí)算法ENet[27]、ICNet[31]、SwiftNet[35]對(duì)比,以及最新的BiSeNetV2[13]。BASeNet 的mIoU 達(dá)到76.36%,比性能最好的BiSeNetV2[13]網(wǎng)絡(luò)增加了3.96 個(gè)百分點(diǎn),驗(yàn)證了模型的泛化性。
表7 在CamVid測(cè)試數(shù)據(jù)集上與其他方法進(jìn)行了比較Table 7 Accuracy and speed of proposed method compared with other methods on CamVid test dataset
基于邊界問(wèn)題的分析,本文提出了一種基于邊界感知的實(shí)時(shí)語(yǔ)義分割網(wǎng)絡(luò)BASeNet。首先,邊界感知學(xué)習(xí)機(jī)制通過(guò)不同方向的位置坐標(biāo)和邊界信息的相互交流來(lái)產(chǎn)生低耦合度的細(xì)節(jié)邊界特征。其次,輕量級(jí)區(qū)域自適應(yīng)模塊利用可變的區(qū)域采樣方案,通過(guò)插入網(wǎng)絡(luò)的各個(gè)階段來(lái)獲取不同效果的語(yǔ)義邊界區(qū)域特征使網(wǎng)絡(luò)增強(qiáng)了建模復(fù)雜語(yǔ)義邊界區(qū)域的能力。最后,高效的獨(dú)特空洞空間金字塔池化模塊利用重要性不同的采樣值和高效的單向融合策略有助于網(wǎng)絡(luò)提取豐富的語(yǔ)義邊界區(qū)域信息和空間邊界信息。實(shí)驗(yàn)結(jié)果表明,該網(wǎng)絡(luò)實(shí)現(xiàn)了分割精度和推理速度之間的良好平衡。在后續(xù)的研究中,還需要考慮多尺度特征的細(xì)節(jié)邊界真實(shí)標(biāo)簽的信息用于指導(dǎo)網(wǎng)絡(luò)學(xué)習(xí)。