戴云峰,馮興明,丁亞杰,王瀚,王慶華
1. 國(guó)網(wǎng)江蘇省電力有限公司鹽城供電分公司,江蘇 鹽城 224000
2. 常州中能電力科技有限公司,江蘇 常州 213000
近年來(lái),深度神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺(jué)(computer vision, CV)領(lǐng)域的應(yīng)用已經(jīng)從圖像級(jí)別擴(kuò)展到像素級(jí)別[1]。隨著深度神經(jīng)網(wǎng)絡(luò)的能力越來(lái)越強(qiáng)大,區(qū)分粒度也越來(lái)越細(xì)致。實(shí)例分割算法中以Mask-RCNN[2]為代表的兩階段方法遵循先檢測(cè)后分割的理念。兩階段的實(shí)例分割方法在截取到目標(biāo)實(shí)例邊界框作為感興趣區(qū)域(region of interest, RoI)時(shí),RoI 的特征改變了原有特征的長(zhǎng)寬比,導(dǎo)致輸入語(yǔ)義分割網(wǎng)絡(luò)的RoI 特征不會(huì)保留原始輸入圖像其他區(qū)域的特征,并且基于兩階段的實(shí)例分割方法由于其整個(gè)網(wǎng)絡(luò)的參數(shù)量相比單一的網(wǎng)絡(luò)更多,導(dǎo)致基于兩階段的實(shí)例分割網(wǎng)絡(luò)在訓(xùn)練階段需要更復(fù)雜的策略[3]。此類(lèi)方法通常精度較高,但實(shí)時(shí)性較差。
為了解決兩階段實(shí)例分割方法中實(shí)時(shí)性較差的問(wèn)題,基于單階段的實(shí)例分割方法逐漸成為了熱門(mén)的研究方向[4]。Bolya 等[5]提出的YOLCAT 網(wǎng)絡(luò)模型,在現(xiàn)有的單階段目標(biāo)檢測(cè)框架上添加了用于語(yǔ)義分割的掩膜分支,將實(shí)例分割任務(wù)分解為2 個(gè)并行的子任務(wù):一是生成1 組原型掩膜;二是預(yù)測(cè)每個(gè)實(shí)例的掩膜置信度,之后將原型掩膜與其對(duì)應(yīng)的置信度線性組合得到輸出的實(shí)例掩膜。Wang 等[6]提出的SOLO 網(wǎng)絡(luò)模型將實(shí)例分割任務(wù)轉(zhuǎn)化為單純的分類(lèi)任務(wù),以目標(biāo)實(shí)例的位置與形狀作為分類(lèi)依據(jù),判斷像素是否屬于同一實(shí)例。Tian 等[7]提出的全卷積單階段目標(biāo)檢測(cè)( fully convolutional one-stage object detection,F(xiàn)COS)網(wǎng)絡(luò)模型,以全卷積神經(jīng)網(wǎng)絡(luò)為基本架構(gòu),采取逐像素的預(yù)測(cè)方法實(shí)現(xiàn)對(duì)目標(biāo)邊界框的檢測(cè)。同時(shí),F(xiàn)COS 網(wǎng)絡(luò)模型是一種基于無(wú)錨點(diǎn)(anchor-free)的目標(biāo)檢測(cè)方法[8],避免了在檢測(cè)錨點(diǎn)(anchor)框時(shí)會(huì)引入更多需要優(yōu)化的超參數(shù)以及計(jì)算量較大等問(wèn)題。但是,anchor-free 目標(biāo)檢測(cè)模型的檢測(cè)頭通常是由若干卷積層堆疊而成,這種簡(jiǎn)單的結(jié)構(gòu)設(shè)計(jì)導(dǎo)致網(wǎng)絡(luò)的特征表征能力不足,從而限制了目標(biāo)檢測(cè)的性能[9]。
針對(duì)上述問(wèn)題,提出了一種基于改進(jìn)FCOS 框架的實(shí)例分割網(wǎng)絡(luò),該網(wǎng)絡(luò)能夠準(zhǔn)確地分割出目標(biāo)在圖像中的位置。本文提出的網(wǎng)絡(luò)在單階段目標(biāo)檢測(cè)框架的基礎(chǔ)上添加底層分支、頂層注意力分支以及融合模塊,融合多尺度的特征信息,獲取更為豐富的語(yǔ)義信息,消除冗余信息的干擾,細(xì)化分割結(jié)果,能夠更加精確地實(shí)現(xiàn)目標(biāo)物體實(shí)例分割。在MSCOCO 數(shù)據(jù)集[10]上開(kāi)展的實(shí)驗(yàn)及在實(shí)際場(chǎng)景中的定性實(shí)驗(yàn)結(jié)果表明了所提出的方法的優(yōu)越性,結(jié)合自頂向下的注意力以及自底向上的局部特征不僅減少了誤檢率,也提高了分割結(jié)果的穩(wěn)定性,在融合模塊中的非極大值抑制操作抑制了冗余信息的干擾,提高了網(wǎng)絡(luò)的分割精度[11]。
本文提出的方法在單階段目標(biāo)檢測(cè)框架FCOS 的特征提取階段新增了一個(gè)底部分支,用于計(jì)算特征圖在像素粒度的得分;在FCOS 框架的主干(Head)模塊后添加了一個(gè)頂層注意力分支,用于計(jì)算FCOS 框架特征金字塔每一層輸出邊界框內(nèi)的全局注意力特征圖;最后設(shè)計(jì)一個(gè)融合模塊融合底層分支和頂層分支的特征圖并輸出最終的實(shí)例分割預(yù)測(cè)結(jié)果。所提出的網(wǎng)絡(luò)結(jié)構(gòu)如圖1 所示。
如圖1 所示,底層分支的輸入既可以是FCOS 框架骨干網(wǎng)絡(luò)的輸出特征圖Ci,也可以是特征金字塔的輸出特征圖Pi。頂層注意力分支的輸入為FCOS 框架的Head 模塊,其在Head 模塊的輸出上添加了1 層卷積層來(lái)預(yù)測(cè)邊界框內(nèi)每個(gè)位置的注意力得分[12]。對(duì)于每個(gè)預(yù)測(cè)的實(shí)例,融合模塊將底層分支的輸出裁剪到實(shí)例對(duì)應(yīng)邊界框的大小,并將其與注意力分支的輸出線性組合。
如圖1 所示,底層分支是在FCOS 框架的骨干網(wǎng)絡(luò)或者特征金字塔之上引申出來(lái)的,本節(jié)以B表示底層分支的輸出。B的大小為N×K×其中N為批次(batch size)大小,K為B的數(shù)量,H、W分別為底層分支輸入特征圖的高度和寬度大小,S為底層分支中卷積層的步長(zhǎng)。
頂層注意力分支是在FCOS 框架的Head 網(wǎng)絡(luò)之后添加了1 層卷積層用以預(yù)測(cè)目標(biāo)檢測(cè)邊界框內(nèi)的注意力圖,該分支的輸出表示為A。假定FCOS 框架Head 網(wǎng)絡(luò)的第l層 輸出大小為Hl×Wl,則頂層注意力分支在每個(gè)位置的注意力圖的大小為N×(K×M×M)×Hl×Wl,其中M×M為注意力圖的分辨率。
頂層注意力分支的注意力圖能夠?qū)COS 框架預(yù)測(cè)的目標(biāo)檢測(cè)框內(nèi)實(shí)例的粗略形狀以及姿態(tài)信息進(jìn)行編碼,頂層注意力分支卷積層輸出大小為Hl×Wl的K×M×M通道特征圖。在輸入融合模塊之前,對(duì)頂層注意力分支的特征圖應(yīng)用FCOS 框架的后處理操作挑選出D個(gè)目標(biāo)檢測(cè)邊界框及其對(duì)應(yīng)的注意力圖FCOS 框架的后處理操作為非極大值抑制(non-maximum suppression, NMS)[13]方法,其作用是消除目標(biāo)檢測(cè)方法中對(duì)于同一個(gè)物體冗余的預(yù)測(cè)框。
融合模塊的輸入來(lái)自底層分支的特征圖B、頂層注意力分支的注意力圖A及其對(duì)應(yīng)的預(yù)測(cè)邊界框O。首先利用Mask-RCNN 中的感興趣區(qū)域池化(region of interest pooling,RoIPool)操作將特征圖B裁剪到與預(yù)測(cè)邊界框O相同的尺寸,輸出固定大小為R×R的特征圖,該過(guò)程表示如下:
圖2為RoIPool 操作的示意圖,其可以總結(jié)為以下3 個(gè)步驟。
圖2 RoIPool 操作示意
1)輸入為特征圖B以及目標(biāo)檢測(cè)的邊界框O,將邊界框O映射回特征圖B上的對(duì)應(yīng)RoI區(qū)域;
2)對(duì)映射后的RoI 區(qū)域劃分為大小相同的網(wǎng)格;
3)在劃分后的網(wǎng)格內(nèi)應(yīng)用最大池化操作。
具體到本文提出的方法中,在訓(xùn)練階段使用真值圖(ground truth)的預(yù)測(cè)框作為RoIPool 操作的邊界框O,在前向計(jì)算階段使用目標(biāo)檢測(cè)網(wǎng)絡(luò)輸出的預(yù)測(cè)框作為RoIPool 操作的邊界框O。處理完特征圖B和預(yù)測(cè)邊界框O后需要將注意力圖A也統(tǒng)一至同樣的尺寸R×R,通常來(lái)說(shuō)注意力圖A的尺寸M×M小于R×R,因此這里需要對(duì)注意力圖A進(jìn)行插值:
接著對(duì)插值后的注意力圖a′
d的K個(gè)通道施加softmax 激活函數(shù)對(duì)其進(jìn)行正則化,得到一組注意力得分圖sd:
最后對(duì)RoIPool 操作的輸出rd和式(1)的注意力得分圖sd在K個(gè)維度上逐像素點(diǎn)乘,得到掩膜圖md:
本文算法在MSCOCO[10]數(shù)據(jù)集上進(jìn)行多種對(duì)比實(shí)驗(yàn)以及消融實(shí)驗(yàn),并在實(shí)際場(chǎng)景中全面評(píng)估提出的實(shí)例分割方法。實(shí)驗(yàn)數(shù)據(jù)集選擇MSCOCO 2017 實(shí)例分割數(shù)據(jù)集,該數(shù)據(jù)集包含123 000 張圖像,涉及80 個(gè)類(lèi)別標(biāo)簽。提出的網(wǎng)絡(luò)模型選擇train 2017 子集作為訓(xùn)練集,包含115 000 張訓(xùn)練圖像。消融實(shí)驗(yàn)選擇val 2017 子集作為評(píng)估模型的驗(yàn)證集,包含5 000 張圖像。最終在test-dev 子集上評(píng)估提出方法的性能,選擇平均精度(average precision,AP)[14]作為評(píng)價(jià)指標(biāo)。MSCOCO 2017數(shù)據(jù)集對(duì)AP 按照交并比(intersection over union,IoU)[15]和目標(biāo)尺寸大小將AP 細(xì)分為RAP、RAP,50、RAP,75以及RAP,S、RAP,M、RAP,L。其中RAP,50表示只統(tǒng)計(jì)IoU 大于50%的AP,RAP,75表示只統(tǒng)計(jì)IoU 大于75%的AP。RAP,S、RAP,M和RAP,L分別表示小尺寸目標(biāo)、中等尺寸目標(biāo)以及大尺寸目標(biāo)的AP。
具體來(lái)說(shuō),提出的網(wǎng)絡(luò)模型選擇ResNet-50[16]作為特征提取的骨干網(wǎng)絡(luò),選擇DeepLabV3+的解碼器作為底層分支的網(wǎng)絡(luò)結(jié)構(gòu)。在訓(xùn)練階段的batch size 設(shè)置為8,初始學(xué)習(xí)率設(shè)置為0.01。
本文方法在MSCOCO[10]數(shù)據(jù)集的test-dev 子集上全面評(píng)估提出的方法并與Mask-RCNN[2]、PolarMask[17]、YOLACT[5]以及TensorMask[18]這4 種方法進(jìn)行對(duì)比。本文提出的網(wǎng)絡(luò)模型超參數(shù)的設(shè)置為:融合模塊特征圖大小R=56,底層分支輸出特征圖的通道數(shù)K=4,頂層注意力圖大小M=14。插值方法選取雙線性插值,底層分支的輸入為FCOS 框架特征金字塔的P3層和P5層。
本文提出的網(wǎng)絡(luò)模型將訓(xùn)練集增加至270 000張圖像,采取多尺度訓(xùn)練策略以降低訓(xùn)練難度。表1 為對(duì)比實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)果。在表1 中,所評(píng)估的方法分別在2 種骨干網(wǎng)絡(luò)下進(jìn)行了對(duì)比,R-50 表示骨干網(wǎng)絡(luò)為ResNet-50[16],R-101 表示骨干網(wǎng)絡(luò)為ResNet-101[19]。表1 表明本文算法在MSCOCO 數(shù)據(jù)集上取得了超越所有對(duì)比算法的性能,同時(shí)運(yùn)算時(shí)間短于除YOLACT 以外的所有方法。
表1 不同實(shí)例分割方法的定量對(duì)比實(shí)驗(yàn)結(jié)果
除了在MSCOCO[10]數(shù)據(jù)集上評(píng)估本文所提出的方法,還在實(shí)際場(chǎng)景下進(jìn)行了定性實(shí)驗(yàn)。在定性實(shí)驗(yàn)中選取9 個(gè)場(chǎng)景,將提出的方法與Mask R-CNN[2]方法進(jìn)行對(duì)比,圖3 為實(shí)驗(yàn)結(jié)果。
圖3 實(shí)際場(chǎng)景下的定性實(shí)驗(yàn)結(jié)果
與Mask R-CNN 方法相比,本文提出的方法誤檢率更低,例如圖3 的場(chǎng)景4 中的雨傘,Mask R-CNN 方法將其檢測(cè)為“stop sign”;在圖3 的場(chǎng)景7 中,Mask R-CNN 方法對(duì)同一個(gè)斜挎包檢測(cè)出2 個(gè)目標(biāo)框;在圖3 的場(chǎng)景9 中,Mask RCNN 方法將摩托車(chē)背后的樹(shù)檢測(cè)成了“人”。
同時(shí),雖然本文方法存在個(gè)別的漏檢目標(biāo),例如圖3 場(chǎng)景1 中的凳子以及場(chǎng)景2 中的手提箱,但是相比于Mask R-CNN 方法來(lái)說(shuō)穩(wěn)定性更高。本文方法在目標(biāo)檢測(cè)框的預(yù)測(cè)方面更加穩(wěn)定的原因在于提出的方法結(jié)合自頂向下的注意力以及自底向上的局部特征,而在融合模塊中采取了非極大值抑制的后處理操作,抑制了頂層分支注意力圖中概率較小的目標(biāo)檢測(cè)框。
本文提出的網(wǎng)絡(luò)模型由FCOS 目標(biāo)檢測(cè)網(wǎng)絡(luò)、底層分支、頂層注意力分支以及融合模塊4 個(gè)部分組成。FCOS 目標(biāo)檢測(cè)網(wǎng)絡(luò)的超參數(shù)與其論文保持一致,底層分支的超參數(shù)包括底層分支輸出的通道數(shù)K以及底層分支的輸入來(lái)源于FCOS 目標(biāo)檢測(cè)框架的特征提取骨干網(wǎng)絡(luò)還是特征金字塔部分。頂層分支的超參數(shù)為注意力圖的分辨率M,融合模塊的超參數(shù)包括RoIPool 操作的輸出維度R以及注意力圖上采樣的方法選擇最近鄰上采樣方法還是雙線性上采樣方法。文中進(jìn)行了大量的消融實(shí)驗(yàn)研究不同超參數(shù)的組合對(duì)網(wǎng)絡(luò)性能的影響。
對(duì)于底層分支輸出特征圖的通道數(shù)K,設(shè)置一組對(duì)比實(shí)驗(yàn)分別將K的值設(shè)置為1、2、4、8。表2為該組對(duì)比實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)果,實(shí)驗(yàn)結(jié)果表明當(dāng)K取4 時(shí)網(wǎng)絡(luò)模型能夠達(dá)到最優(yōu)性能。
表2 超參數(shù)K 的對(duì)比實(shí)驗(yàn)%
接下來(lái)設(shè)計(jì)一組對(duì)比實(shí)驗(yàn)研究頂層注意力圖的分辨率M和融合模塊RoIPool 操作的輸出大小R的選取。由于超參數(shù)M與R的設(shè)置與K相關(guān),具體來(lái)說(shuō)當(dāng)K設(shè)置為4 時(shí),M和R的上采樣比例應(yīng)當(dāng)大于4。因此設(shè)計(jì)的對(duì)比實(shí)驗(yàn)選取了4~14 的4 種不同上采樣比例,RoIPool 操作按照輸出大小R設(shè)計(jì)了28 和56 這2 組對(duì)照實(shí)驗(yàn),表3為實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果表明隨著注意力圖分辨率M的增加,在上采樣的過(guò)程中能夠合并更詳細(xì)的實(shí)例信息,而網(wǎng)絡(luò)的總體耗時(shí)基本保持不變。因?yàn)樽⒁饬D來(lái)自頂層分支,本身包含有限的細(xì)節(jié)信息,所以當(dāng)注意力圖分辨率M增大到P的1/4 時(shí),邊際效應(yīng)越來(lái)越明顯。
表3 超參數(shù)M 和R 的對(duì)比實(shí)驗(yàn)
由于大小為M×M的頂層注意力圖需要上采樣到R×R才能與融合模塊的特征圖進(jìn)行融合,因此上采樣的方法也會(huì)對(duì)網(wǎng)絡(luò)模型的性能產(chǎn)生影響。為了研究上采樣方法對(duì)網(wǎng)絡(luò)性能的影響,本節(jié)設(shè)置最近鄰和雙線性這2 種插值方法的對(duì)比實(shí)驗(yàn)。實(shí)驗(yàn)結(jié)果顯示在表4 中,實(shí)驗(yàn)結(jié)果表明雙線性插值方法比最近鄰插值方法在平均精度上提升了0.2%。
表4 最近鄰上采樣與雙線性上采樣的對(duì)比實(shí)驗(yàn)
為了研究底層分支的輸入對(duì)網(wǎng)絡(luò)整體性能的影響,設(shè)置2 組不同輸入來(lái)源的對(duì)比實(shí)驗(yàn)。底層分支的輸入來(lái)源有2 種:一種是FCOS 目標(biāo)檢測(cè)框架特征提取的骨干網(wǎng)絡(luò),在本節(jié)具體為ResNet-50 網(wǎng)絡(luò)的輸出;另一種底層分支的輸入來(lái)源是FCOS 目標(biāo)檢測(cè)框架的特征金字塔,表5 為這組對(duì)比實(shí)驗(yàn)的實(shí)驗(yàn)結(jié)果。在表5 中,與圖1 對(duì)應(yīng),第1 行表示底層分支的輸入為FCOS 框架骨干網(wǎng)絡(luò)的C3層和C5層,第2 行表示底層分支的輸入為FCOS 框架特征金字塔的P3層和P5層。表5 表明以特征金字塔作為底層分支的輸入來(lái)源能夠在提高網(wǎng)絡(luò)精確度的同時(shí)減少耗時(shí)。
表5 底層分支不同輸入來(lái)源的對(duì)比實(shí)驗(yàn)
針對(duì)單階段實(shí)例分割方法網(wǎng)絡(luò)的特征表征能力不足問(wèn)題,本文提出一種基于改進(jìn)FCOS 的實(shí)例分割方法,該方法在FCOS 網(wǎng)絡(luò)架構(gòu)的基礎(chǔ)上增加了底層分支、頂層注意力分支及特征融合模塊,以便更好地結(jié)合局部空間位置特征和全局語(yǔ)義信息,提高檢測(cè)的精度和穩(wěn)定性。在MSCOCO 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,本文方法相比兩階段實(shí)例分割方法不僅提高了分割精度而且降低了運(yùn)算時(shí)間;在實(shí)際場(chǎng)景下的定性實(shí)驗(yàn)同樣顯示了本文方法的有效性。下一步將研究在網(wǎng)絡(luò)結(jié)構(gòu)中增加邊緣信息以提高本文算法的分割精度。