王元東, 杜宇人
(揚(yáng)州大學(xué)信息工程學(xué)院, 江蘇 揚(yáng)州 225127)
近年來(lái), 顯著性目標(biāo)檢測(cè)(salient object detection, SOD)已成為圖像和視頻壓縮、圖像重定位、視頻跟蹤和機(jī)器人導(dǎo)航等計(jì)算機(jī)視覺(jué)應(yīng)用中重要的預(yù)處理步驟[1].SOD模型的快速發(fā)展得益于卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)能夠同時(shí)提取圖像高層語(yǔ)義信息和低層特征信息, 解決了傳統(tǒng)手工選擇特征方法缺少高級(jí)語(yǔ)義信息的問(wèn)題, 如AFNet[2]、PoolNet[3]等網(wǎng)絡(luò)一般使用編解碼器架構(gòu), 結(jié)構(gòu)簡(jiǎn)單且計(jì)算高效.BASNet[4]網(wǎng)絡(luò)運(yùn)用一種混合損失函數(shù)充分利用了邊界信息; CPD[5]網(wǎng)絡(luò)采用雙分支結(jié)構(gòu)和整體注意力模塊, 通過(guò)一路分支生成的初始顯著圖像去細(xì)化另一路分支的特征信息; MINet[6]網(wǎng)絡(luò)提出一種聚合交互模塊和自交互模塊, 通過(guò)相互學(xué)習(xí)的方式有效利用相鄰層的特征.然而, 在模型提取圖像特征的過(guò)程中不同層次的特征分布特性各異, 如何有效聚合這些特征生成高質(zhì)量的顯著性圖像成為顯著性目標(biāo)檢測(cè)研究的熱點(diǎn).目前, SOD網(wǎng)絡(luò)編碼器部分通常使用深度殘差網(wǎng)絡(luò).由于大卷積核會(huì)導(dǎo)致參數(shù)量增多和計(jì)算復(fù)雜度的提高, 故深度殘差網(wǎng)絡(luò)一般采用3×3的小卷積核, 但該卷積核不能處理全局輸入圖像.本文采用由錐體卷積組成的PyConvResNet[7]網(wǎng)絡(luò)作為F3Net網(wǎng)絡(luò)編碼器部分的特征抽取網(wǎng)絡(luò), 以不同大小和深度的卷積核并行處理輸入圖像, 減少空間分辨率損失, 同時(shí)使最高層特征先通過(guò)一個(gè)感受野模塊(receptive field module, RFB)后進(jìn)入解碼器, 以期進(jìn)一步擴(kuò)大感受野, 改善目標(biāo)細(xì)節(jié)丟失問(wèn)題.
F3Net[8]網(wǎng)絡(luò)通過(guò)在解碼器部分設(shè)計(jì)一種交叉特征模塊(cross feature module, CFM)以緩和特征間的差異.CFM模塊按元素相乘的方法提取出低級(jí)特征和高級(jí)特征的共同部分, 再按元素相加的方式使相乘的結(jié)果與各自原始特征相加.通過(guò)多次特征交叉, 高低級(jí)特征吸收彼此的有用信息, 形成重要特征間的互補(bǔ).此外, F3Net采用如圖1所示的級(jí)聯(lián)反饋解碼器架構(gòu)迭代地改進(jìn)特征.該架構(gòu)中包含多個(gè)子解碼器, 每個(gè)子解碼器都會(huì)經(jīng)歷如下2個(gè)過(guò)程: 1) 自底而上. 由交叉特征模塊逐步聚合多層次特征; 2) 自頂而下. 經(jīng)最后一個(gè)CFM模塊聚合的特征直接進(jìn)行下采樣, 然后反饋至下面的多層特征中并對(duì)多層特征進(jìn)行細(xì)化.
圖1 級(jí)聯(lián)反饋解碼器架構(gòu)Fig.1 Cascaded feedback decoder architecture
F3Net網(wǎng)絡(luò)在編碼器部分選用ResNet-50深度殘差網(wǎng)絡(luò)結(jié)構(gòu).通過(guò)ResNet-50深度殘差網(wǎng)絡(luò)對(duì)輸入圖像進(jìn)行5層特征抽取, 然后將抽取出的第2,3,4,5層特征輸入級(jí)聯(lián)反饋解碼器.
圖2 錐體卷積Fig.2 Pyramidal Convolution
雖然F3Net網(wǎng)絡(luò)采用交叉特征模塊和級(jí)聯(lián)反饋解碼器對(duì)圖像特征進(jìn)行細(xì)致的控制,解決了背景噪聲和冗余特征的問(wèn)題,獲得更加精確的顯著性圖像,但是仍存在因特征抽取而導(dǎo)致空間分辨率損失的問(wèn)題.
錐體卷積(PyConv)是包含n層不同類(lèi)型內(nèi)核的金字塔型結(jié)構(gòu), 如圖2所示.與傳統(tǒng)的標(biāo)準(zhǔn)卷積核相比, 本文采用的錐體卷積可以在不同的內(nèi)核尺度上處理輸入, 且不增加過(guò)多的計(jì)算成本和模型復(fù)雜度.
(1)
(2)
其中O1+O2+O3+…+On=O.
本文針對(duì)深度殘差網(wǎng)絡(luò)下采樣處理中出現(xiàn)的空間分辨率損失問(wèn)題,使用由錐體卷積組成的PyConvResNet網(wǎng)絡(luò), 移除了PyConvResNet網(wǎng)絡(luò)最后的平均池化層和全連接層.根據(jù)輸出特征圖像的空間大小(112×112, 56×56, 28×28, 14×14, 7×7), 將網(wǎng)絡(luò)劃分為5個(gè)階段, 如表1所示, 表中G代表分組數(shù).本文采用的PyConvResNet網(wǎng)絡(luò)與原始?xì)埐罟歉删W(wǎng)絡(luò)不同, 在階段2之前并未應(yīng)用最大池化層來(lái)減小空間尺寸,而是將最大池化層放在階段2的第一個(gè)短連接上.通過(guò)這種方式, 特征圖像下采樣都在階段2,3,4,5的第一個(gè)區(qū)塊執(zhí)行.這將使網(wǎng)絡(luò)能夠在階段2獲得更大的空間分辨率,同時(shí)從最大池化層提供的平移不變性中獲益.
表1 PyConvResNet參數(shù)結(jié)構(gòu)Tab.1 PyConvResNet parameter structure
圖3 改進(jìn)的特征提取融合示意圖Fig.3 Improved feature extraction fusion diagram
為了進(jìn)一步擴(kuò)大感受野以更好地捕獲全局對(duì)比信息, 本文設(shè)計(jì)了一種新的感受野模塊.在編碼器第5層抽取特征的后面設(shè)置RFB模塊, 使第5層特征經(jīng)過(guò)該模塊后再與第4層特征進(jìn)行特征融合, 如圖3所示.
感受野模塊的設(shè)計(jì)分為2個(gè)大分支, 每個(gè)大分支下又有3個(gè)小分支.其中一個(gè)大分支為了更好地獲取全局信息,首先使輸入特征圖像經(jīng)過(guò)自適應(yīng)平均池化層生成7×7的特征圖像,然后進(jìn)行后續(xù)處理.3個(gè)小分支主要使特征圖像經(jīng)過(guò)3×3,5×5, 7×7這3個(gè)卷積核,進(jìn)行不同感受野的特征提?。卣魈崛∵^(guò)程如下:首先, 將3個(gè)小分支提取的特征按通道維連接; 其次, 將兩大分支也按通道維連接, 再經(jīng)過(guò)一個(gè)3×3的卷積核進(jìn)一步特征融合; 最后, 使原始特征圖像經(jīng)過(guò)一個(gè)1×1的卷積核與融合后的特征按元素進(jìn)行相加, 達(dá)到一致映射[9], 防止細(xì)節(jié)丟失.設(shè)計(jì)的感受野模塊如圖4所示.
圖4 感受野模塊Fig.4 Receptive field module
將經(jīng)過(guò)RFB模塊后的最高層輸出特征表示為f′5, 其計(jì)算公式為
(3)
通過(guò)加入自適應(yīng)平均池化層保持最大空間尺寸維數(shù)為7, 即使輸入圖像大小變化,仍可確保網(wǎng)絡(luò)能夠捕獲完整的全局信息.同時(shí), 在小分支上加入3個(gè)不同空間大小的卷積核,隨著空洞率d的不斷增加,原始網(wǎng)絡(luò)最高層接受域變大,可以聚集更多的語(yǔ)義信息, 故新的感受野模塊可有效提高網(wǎng)絡(luò)的檢測(cè)性能.本文改進(jìn)的F3Net網(wǎng)絡(luò)每秒浮點(diǎn)運(yùn)算可達(dá)56次, 相較于目前的主流網(wǎng)絡(luò), 依然具有很快的執(zhí)行速度.
本文實(shí)驗(yàn)環(huán)境為英偉達(dá)RTX2080Ti顯卡,使用框架為PyTorch, 與原始F3Net網(wǎng)絡(luò)一樣采用隨機(jī)梯度下降(stochastic gradient descent, SGD)算法進(jìn)行32輪訓(xùn)練.訓(xùn)練過(guò)程為端到端, 動(dòng)量和權(quán)重衰減分別設(shè)置為0.9和0.000 5, 批量處理中的批量大小設(shè)置為32.為了增加模型的泛化能力和提高魯棒性, 應(yīng)用F3Net網(wǎng)絡(luò)在訓(xùn)練過(guò)程中數(shù)據(jù)增強(qiáng)的方法, 將輸入圖像進(jìn)行水平翻轉(zhuǎn)或隨機(jī)裁剪等處理.同時(shí), 本文利用ECSSD、PASCAL-S、DUT-OMRON、HKU-IS和DUTS-TE等5個(gè)經(jīng)典顯著性檢測(cè)數(shù)據(jù)集進(jìn)行網(wǎng)絡(luò)性能測(cè)試.
顯著性目標(biāo)檢測(cè)常用F測(cè)度值、S測(cè)度值[10]、E測(cè)度值[11]和平均絕對(duì)誤差(mean absolute error, MAE)等4個(gè)評(píng)價(jià)標(biāo)準(zhǔn)來(lái)評(píng)判網(wǎng)絡(luò)性能的好壞, 其中F,S,E測(cè)度值越大, 表明生成的顯著性圖像越好; MAE值越小,表明生成的顯著性圖像和實(shí)際圖像越相似.
F測(cè)度值為準(zhǔn)確率P和召回率R的加權(quán)調(diào)和平均值,
(4)
式中β為平衡參數(shù), 本文設(shè)置為0.3.F測(cè)度值可反映圖像的精確度.
S測(cè)度值用于評(píng)價(jià)生成的顯著圖像和真值圖像之間的結(jié)構(gòu)相似性,
S=α×So+(1-α)×Sr,
(5)
式中So,Sr分別為對(duì)象感知結(jié)構(gòu)相似性度量和區(qū)域感知結(jié)構(gòu)相似性度量, 權(quán)重系數(shù)α設(shè)置為0.5.
E測(cè)度值則綜合考慮局部像素級(jí)值和圖像級(jí)平均值,
(6)
式中φGT,φFM分別為真值圖像的偏差矩陣和二元前景圖像的偏差矩陣;f為一個(gè)凸函數(shù); °表示哈達(dá)瑪積.
MAE可反映顯著性圖像R與真值圖像Y之間的差異,
(7)
本文方法與原始F3Net、AFNet[2]、PoolNet[3]、BASNet[4]、CPD-R[5]及MINet[6]等方法進(jìn)行對(duì)比, 結(jié)果如圖5和表2所示.
圖5 不同模型的視覺(jué)比較圖像Fig.5 Visual comparison figures of different models
表2 指標(biāo)參數(shù)比較
由圖5可見(jiàn), 采用本文方法可生成相比其他網(wǎng)絡(luò)更加精確的顯著性圖像.由于沒(méi)有捕獲足夠多的上下文信息,其他網(wǎng)絡(luò)檢測(cè)出的物體不完整且場(chǎng)景物過(guò)多,而改進(jìn)后的網(wǎng)絡(luò)能很好地檢測(cè)出顯著性物體.
由表2可知, 本文方法的MAE值低于其他方法的, 而F、S、E值都高于其他方法的,表明本文方法可以捕獲更多的目標(biāo)細(xì)節(jié), 有效減少了空間分辨率的損失.