陳國(guó)棟
(蘇州大學(xué),江蘇 蘇州 215000)
市場(chǎng)上,大多數(shù)的蠶繭識(shí)別方法還是利用傳統(tǒng)的人工識(shí)別方式,不僅識(shí)別結(jié)果會(huì)受主觀因素的影響,還浪費(fèi)大量的人力和物力。因此,針對(duì)該問(wèn)題提出了利用Faster R-CNN框架進(jìn)行自動(dòng)識(shí)別。由于蠶繭尺寸較小,各類別之間的形態(tài)特征的差異與顏色特征的差異不明顯,F(xiàn)aster R-CNN[1]使用的vgg16特征提取網(wǎng)絡(luò)在提取蠶繭特征過(guò)程中,利用池化操作來(lái)減小特征圖尺寸,以擴(kuò)大感受野,導(dǎo)致部分特征丟失。本研究在Faster R-CNN模型的基礎(chǔ)上,引入模仿人類視覺(jué)注意力原理的注意力機(jī)制模塊,增加有效通道權(quán)重,使關(guān)鍵通道得到更多的注意力,同時(shí)引入空洞卷積代替下采樣過(guò)程中的pooling操作,能夠有效地避免細(xì)節(jié)丟失,提高模型對(duì)蠶繭類別的識(shí)別能力。
注意力機(jī)制最早應(yīng)用在機(jī)器視覺(jué)領(lǐng)域,本質(zhì)上是模仿人類觀察物體的注意力。注意力機(jī)制分為空間注意力機(jī)制和通道注意力機(jī)制??臻g注意力由Google DeepMind[2]提出的Spatial Transformer Network,用于輸入特征向量的變形完成預(yù)處理操作,使得樣本更容易學(xué)習(xí)特征。相比于該方法的一步完成目標(biāo)的變換調(diào)整,Dynamic Capacity Networks[3]采用兩個(gè)子網(wǎng)絡(luò),一個(gè)用于全圖處理,另一個(gè)用于對(duì)感興趣區(qū)域的處理,進(jìn)而獲得更高的精度。通道注意力由HU J[4]等在2017屆ImageNet分類比賽中提出,通過(guò)對(duì)不同通道進(jìn)行建模,分配權(quán)重,使得有效通道獲得更多權(quán)重,無(wú)效通道抑制權(quán)重,進(jìn)而提高模型精度。該方法作為一種通用設(shè)計(jì)思想,可被用于現(xiàn)有的任何網(wǎng)絡(luò)。此后,SKNet[5]方法將這樣的通道加權(quán)思想和Inception中的多分支網(wǎng)絡(luò)結(jié)構(gòu)相結(jié)合,實(shí)現(xiàn)性能的提升。CBAM(Convolutional Block Attention Module)一文將這兩種注意力機(jī)制相融合,同時(shí)使用兩種注意力機(jī)制,提升網(wǎng)絡(luò)精度。徐城極等[6]以及張海濤等[7]分別將注意力模塊加入到y(tǒng)olov3和SSD目標(biāo)檢測(cè)模型中,在VOC2007上的測(cè)試結(jié)果分別提升到了81.9%和79.7%。本研究針對(duì)Faster R-CNN框架短板以及結(jié)合蠶繭形態(tài)、顏色等特點(diǎn),提出Attention Faster R-CNN蠶繭檢測(cè)算法,加入注意力機(jī)制模塊以及引入空洞卷積,彌補(bǔ)特征提取過(guò)程中特征丟失造成的缺陷,提高對(duì)蠶繭的檢測(cè)率。
Faster R-CNN是基于卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)框架,經(jīng)過(guò)R-CNN、Fast R-CNN前兩代檢測(cè)框架的積淀,拋棄了傳統(tǒng)的滑動(dòng)窗口生成檢測(cè)框的方法,直接使用 Region Proposal Networks生成檢測(cè)框,在檢測(cè)精度和檢測(cè)速度上有了很大的提升,常用來(lái)對(duì)物體進(jìn)行識(shí)別和定位。本研究利用Faster R-CNN框架并引入注意力機(jī)制改善對(duì)蠶繭的識(shí)別和定位效果。
視覺(jué)注意力機(jī)制是人類的一種視覺(jué)神經(jīng)機(jī)制。從生物學(xué)角度的注意力機(jī)制延申到機(jī)器視覺(jué)領(lǐng)域,從復(fù)雜的信息中,將注意力投入最有效的目標(biāo)區(qū)域內(nèi)。
在對(duì)圖片進(jìn)行卷積后,會(huì)得到一個(gè)特征向量,特征向量的維度就是通道數(shù),也等于卷積核的個(gè)數(shù)。當(dāng)卷積核的個(gè)數(shù)為1 024時(shí),得到通道數(shù)為1 024的特征圖。但不是每一個(gè)通道得到的信息都是有效的信息,也會(huì)有大量的無(wú)用信息。所以,需要將注意力放在有效信息的通道上,主要的思路就是增大有效通道的權(quán)重,減小無(wú)效通道的權(quán)重,如公式(1)所示。
Fmax、Favgc分別表示對(duì)特征圖的最大池化和平均池化。σ為Sigmoid激活函數(shù)。共享網(wǎng)絡(luò)是由一個(gè)隱藏層和多層感知機(jī)(Multilayer Perceptron,MLP)組成,w0使用Relu作為激活函數(shù)。
空間注意力機(jī)制的實(shí)現(xiàn)同樣使用了最大池化以及平均池化,使用concat連接,再使用7×7的卷積提取特征,用Sigmoid函數(shù)對(duì)權(quán)重進(jìn)行歸一化,如公式(2)所示。
特征提取網(wǎng)絡(luò)vgg16在提取過(guò)程中,經(jīng)過(guò)4次池化操作進(jìn)行下采樣,減小特征圖尺寸以及增加感受野,在池化過(guò)程中造成細(xì)節(jié)的丟失,用空洞卷積代替池化操作,在增加感受野的同時(shí),還能避免特征信息的丟失。普通的卷積公式為:
其中,I(x,y)是卷積前的圖像在點(diǎn)(x,y)上的值,k(s,t)是一個(gè)卷積核,大小為m×n。
空洞卷積公式為:
l為膨脹因子,將提取特征過(guò)程中4次池化操作替換成l=2,Stride=2,卷積核大小為2×2,邊界模式選擇“same”的空洞卷積,使得下采樣的過(guò)程既可以增加感受野,也可以避免細(xì)節(jié)丟失。
區(qū)域生成網(wǎng)絡(luò)(Region Proposal Network,RPN)的引入使得Faster R-CNN的精度提高,但是在特征提取階段使用的vgg16特征提取網(wǎng)絡(luò)提取的特征有細(xì)節(jié)丟失的問(wèn)題,通道注意力機(jī)制有利于重要部分的特征表達(dá)能力。全局池化操作是一種特殊的池化操作,將特征圖上的像素點(diǎn)相加求平均值,有利于主要部分的特征增強(qiáng)。注意力機(jī)制分為3個(gè)部分:squeeze、excitation、attention。本研究對(duì)vgg16輸出的特征X進(jìn)行全局池化操作,得到各通道信息,公式如下:
其中,(i,j)表示的是在大小為H×W的特征圖上的橫縱坐標(biāo)分別為i和j的點(diǎn),將通道內(nèi)的每一個(gè)特征值相加再平均,后使用Relu和sigmoid激活函數(shù)進(jìn)行激活,激勵(lì)函數(shù)如下:
再進(jìn)行加權(quán)處理,公式為:
x為特征提取網(wǎng)絡(luò)輸出的特征圖,該項(xiàng)使不同通道乘以不同的權(quán)重,使關(guān)鍵的通道得到更多的注意。最后將x '代替原有的vgg16輸出的特征圖輸入到檢測(cè)網(wǎng)絡(luò)。
本研究采用Googlecolab作為實(shí)驗(yàn)平臺(tái),深度學(xué)習(xí)框架為keras2.1.3,底層tengsorflow1.3.1-gpu。數(shù)據(jù)集為蠶繭數(shù)據(jù)集,一共含有2 000張標(biāo)注照片,包含7類蠶繭圖片,分別為下?tīng)€繭、束腰繭、薄皮繭、油印繭、柴印繭、尖頭繭、異形繭。
采集蠶繭數(shù)據(jù)集時(shí),不同的角度、光照、拍攝距離、拍攝背景都對(duì)實(shí)驗(yàn)結(jié)果有著很大的影響,當(dāng)光照強(qiáng)度為50 Lux、0°拍攝,即垂直對(duì)蠶繭進(jìn)行圖像采集時(shí),蠶繭圖像質(zhì)量最好[8]。分別對(duì)7類蠶繭進(jìn)行拍照采集數(shù)據(jù),每張照片中3~5個(gè)相同或不同類型蠶繭。當(dāng)拍攝完成后,利用labeling標(biāo)注工具,對(duì)每張照片中的蠶繭位置及蠶繭類別進(jìn)行標(biāo)注。蠶繭照片的采集在模擬識(shí)別環(huán)境中進(jìn)行。蠶繭位于黑色傳送帶表面,由于灰塵、雜屑等影響因素,會(huì)發(fā)生漏檢、錯(cuò)誤識(shí)別等情況。之后,利用opencv庫(kù)中的高斯函數(shù)對(duì)攝取圖片進(jìn)行高斯濾波去噪處理。
本實(shí)驗(yàn)在預(yù)訓(xùn)練權(quán)重上進(jìn)行訓(xùn)練,可以幫助模型加快收斂速度,并且不影響實(shí)驗(yàn)結(jié)果。從表1的實(shí)驗(yàn)結(jié)果可以看出,改進(jìn)后各個(gè)類別蠶繭的識(shí)別率都有所上升。

表1 類別概率
為了直觀地看出訓(xùn)練結(jié)果,給出了蠶繭數(shù)據(jù)集部分實(shí)驗(yàn)結(jié)果,如圖1所示。圖1中(a)(b)為Faster R-CNN模型檢測(cè)結(jié)果,(c)(d)為Attention Faster R-CNN模型的檢測(cè)結(jié)果。從檢測(cè)結(jié)果可以看出,(a)(b)出現(xiàn)了漏檢,(a)圖中出現(xiàn)誤檢。本研究提出的模型無(wú)誤檢和漏檢,與傳統(tǒng)的模型相比更加精確,提高了算法的魯棒性,但兩個(gè)模型對(duì)尖頭繭檢測(cè)能力較低。
(1)相比于Faster R-CNN訓(xùn)練過(guò)程,Attention Faster R-CNN的RPN網(wǎng)絡(luò)的收斂速度加快,total loss減小。
(2)測(cè)試結(jié)果表明,在蠶繭測(cè)試集mAP由75.8%提升到78.2%,準(zhǔn)確度有所提高。從實(shí)驗(yàn)結(jié)果圖可以看出,漏檢誤檢率降低,定位效果以及分類效果明顯提升。
(3)由于注意力模塊的引入以及使用空洞卷積代替池化操作,模型參數(shù)個(gè)數(shù)增加了2.63×105個(gè),使得算法更加復(fù)雜,導(dǎo)致檢測(cè)速度有所下降,單張圖片檢測(cè)時(shí)長(zhǎng)增加了10 ms。
根據(jù)當(dāng)前蠶繭檢測(cè)的短板,提出了使用Fa st e r R-CNN目標(biāo)檢測(cè)算法,針對(duì)蠶繭圖片特點(diǎn)以及Faster R-CNN算法弊端,提出了改進(jìn)的Attention Faster R-CNN目標(biāo)檢測(cè)算法。該算法通過(guò)加入注意力機(jī)制以及引入空洞卷積替換pooling操作,減少提取特征過(guò)程中特征丟失造成的影響,并利用蠶繭測(cè)試集進(jìn)行測(cè)試,使得平均mAP提升2.5%。
本研究所提方法的優(yōu)勢(shì)在于能夠針對(duì)蠶繭的尺寸特點(diǎn)減少提取過(guò)程中的特征丟失。通過(guò)注意力機(jī)制模塊增加有效通道權(quán)重,使得網(wǎng)絡(luò)獲得更多有效的信息,對(duì)于蠶繭類的小物體的檢測(cè)具有重要意義。但是,網(wǎng)絡(luò)參數(shù)量的增加導(dǎo)致速度減慢,減少參數(shù)量是未來(lái)工作的主要方向。