周華平,殷 凱,桂海霞,姚尚軍,丁金虎
(1.安徽理工大學(xué) 計(jì)算機(jī)科學(xué)與工程學(xué)院,安徽 淮南232000;2.淮北礦業(yè)物業(yè)管理服務(wù)有限公司,安徽 淮北235000)
在計(jì)算機(jī)視覺任務(wù)中,常常面臨一個(gè)基本問題:怎樣理解現(xiàn)實(shí)世界中的場(chǎng)景結(jié)構(gòu)? 在現(xiàn)實(shí)世界中,人們通過視覺獲得的外部信息達(dá)到80%以上。人眼就如同監(jiān)控器一樣,我們通過視覺獲得的信息往往是一段動(dòng)態(tài)視頻。而當(dāng)提取監(jiān)控器所記錄的視頻信息時(shí),往往先將其拆分為一張一張的圖像,通過對(duì)圖像的分析來(lái)理解所記錄視頻的全部信息,理解圖像的意思意味著理解真正的場(chǎng)景。圖像處理越來(lái)越重要,并且目標(biāo)檢測(cè)是圖像處理和計(jì)算機(jī)視覺任務(wù)的基礎(chǔ)。目標(biāo)檢測(cè)任務(wù)不僅僅是單純地檢測(cè)目標(biāo)是否在圖像或者視頻中,更重要的是能夠確定目標(biāo)所在的位置。比如,當(dāng)進(jìn)行一個(gè)人物的目標(biāo)檢測(cè)時(shí),在一張圖像中,可能存在一個(gè)甚至多個(gè)人物目標(biāo),可以輕松地判定圖像中有人;然而,當(dāng)想要在圖像中確定目標(biāo)人物出現(xiàn)的位置時(shí),往往需要以某種方式探索。
目前,卷積神經(jīng)網(wǎng)絡(luò)[1]廣泛應(yīng)用于各種領(lǐng)域。在目標(biāo)檢測(cè)領(lǐng)域中,區(qū)域卷積神經(jīng)網(wǎng)絡(luò)R-CNN[2]顯著地提升了目標(biāo)檢測(cè)器的準(zhǔn)確率和運(yùn)行速度,并且以R-CNN 及其變體Fast R-CNN[3]和Faster R-CNN[4]為代表的二階段目標(biāo)檢測(cè)網(wǎng)絡(luò)一直在各個(gè)常用的目標(biāo)檢測(cè)數(shù)據(jù)集上獲得最高的準(zhǔn)確率。相比AlexNet[5],VGG16[6]等特征提取網(wǎng)絡(luò),ResNet[7]具有更好的提取圖像深層信息的能力。在使用Batch Normalization[8]解決了模型的收斂問題之后,原則上ResNet的深度可以持續(xù)增加,He等[9]使用ResNET來(lái)解決增加模型的深度反而導(dǎo)致訓(xùn)練誤差的增加。
Faster R-CNN目標(biāo)檢測(cè)網(wǎng)絡(luò)主要分為兩個(gè)步驟:① 定位目標(biāo)。通過輸入一張圖片進(jìn)入特征提取網(wǎng)絡(luò),經(jīng)過一系列的卷積、池化操作來(lái)提取圖像的特征圖,目標(biāo)檢測(cè)任務(wù)不僅是檢測(cè)目標(biāo),還有通過RPN網(wǎng)絡(luò)在特征圖上找到定位的候選目標(biāo)。② 對(duì)目標(biāo)的特定類別進(jìn)行分類。范圍框回歸器用于修改候選目標(biāo)的位置以生成最終候選目標(biāo)區(qū)域,而softmax分類器用于識(shí)別候選目標(biāo)的類別。本文使用分類網(wǎng)絡(luò)來(lái)判別候選區(qū)域是否屬于人,從而實(shí)現(xiàn)對(duì)目標(biāo)人物的檢測(cè)。Faster R-CNN結(jié)構(gòu)如圖1所示。
圖1 Faster R-CNN結(jié)構(gòu)Fig.1 Faster R-CNN Structure
1.1.1 ResNet
本文通過對(duì)基于卷積神經(jīng)網(wǎng)絡(luò)的ResNet-101模型進(jìn)行改進(jìn)來(lái)完成對(duì)目標(biāo)人物的特征提取,相比AlexNet,VGG16等特征提取網(wǎng)絡(luò),其特點(diǎn)如下:
(1) ResNet采用“shortcut”恒等映射網(wǎng)絡(luò)的快捷連接方式,既不會(huì)產(chǎn)生附加參數(shù)也不會(huì)增加計(jì)算復(fù)雜度。如圖2所示,快捷連接簡(jiǎn)單地執(zhí)行身份映射,并將其輸出添加到疊加層的輸出中。通過SGD反向傳播,使整個(gè)網(wǎng)絡(luò)可以以端到端的形式進(jìn)行訓(xùn)練,從而使得網(wǎng)絡(luò)性能一直處于最優(yōu)狀態(tài)。
Xl+1=Xl+F(Xl,Wl),
(1)
Xl+2=Xl+1+F(Xl+1,Wl+1)=
Xl+F(Xl,Wl)+F(Xl+1,Wl+1),
(2)
(3)
(4)
式中,網(wǎng)絡(luò)輸入值為Xl,網(wǎng)絡(luò)輸出值為Xl+1,Xl+2,…,XL,ε,網(wǎng)絡(luò)殘差塊為F(Xl,Wl),F(xiàn)(Xl+1,Wl+1)。
圖2 殘差網(wǎng)絡(luò)模型Fig.2 Residual network model
(2) ResNet采用“Bottleneck design”網(wǎng)絡(luò)設(shè)計(jì)方式結(jié)構(gòu),使用1×1的卷積改變維度,3×3卷積繼承網(wǎng)絡(luò)性能,并使3×3卷積的輸入輸出特征圖數(shù)量得到控制。在層數(shù)較高時(shí)減少了3×3卷積個(gè)數(shù),使得在增加網(wǎng)絡(luò)深度和寬度的同時(shí),大幅降低了卷積參數(shù)的個(gè)數(shù)和計(jì)算量。
1.1.2 改進(jìn)的特征提取網(wǎng)絡(luò)
在傳統(tǒng)ResNet-101的基礎(chǔ)上,結(jié)合圖片的特點(diǎn),嘗試改進(jìn)殘差結(jié)構(gòu),通過增加網(wǎng)絡(luò)的寬度,提取人物深層特征使網(wǎng)絡(luò)學(xué)習(xí)到關(guān)鍵性的可區(qū)分特征,提出了一種改進(jìn)的深度殘差網(wǎng)絡(luò)結(jié)構(gòu),從而提高目標(biāo)人物的識(shí)別精度。本文使用的殘差單元如圖3所示,采用兩個(gè)并列的3×3卷積層。其中1×1的卷積層作用是改變維度,兩個(gè)并列的3×3卷積層繼承了VGG網(wǎng)絡(luò)的性能,單元采用預(yù)激活方式,所有的卷積層都使用ReLU作為激活函數(shù),即在使用激活函數(shù)和卷積操作之前先進(jìn)行批正則化,這種結(jié)構(gòu)與原始?xì)埐顔卧啾仍谟?xùn)練參數(shù)上相差不大,但后續(xù)實(shí)驗(yàn)表明,本文提出的殘差單元結(jié)構(gòu)對(duì)目標(biāo)人物的檢測(cè)和模型的性能都有明顯提升。
圖3 殘差單元結(jié)構(gòu)設(shè)計(jì)Fig.3 Structural design of residual element
區(qū)域生成網(wǎng)絡(luò)(Region Proposal Network,RPN)具體結(jié)構(gòu)如圖4所示。
圖4 RPN網(wǎng)絡(luò)Fig.4 RPN network
特征提取網(wǎng)絡(luò)提取圖片特征時(shí),是由低層向深層的一個(gè)過程,每一層都有各自的RPN,通過提取出的不同尺度的feature map來(lái)生成候選區(qū)域,不同比例對(duì)應(yīng)的的RPN不同。當(dāng)深層神經(jīng)元接受范圍擴(kuò)大時(shí),相應(yīng)的錨定箱尺寸也增加。候選面積越大,RPN越小。在獲得候選區(qū)域之后,特征通過RI pooling被轉(zhuǎn)換成統(tǒng)一大小,并且最終將其發(fā)送到分類器,從而完成整個(gè)Faster R-CNN過程。
在RPN結(jié)構(gòu)中,滑動(dòng)窗口對(duì)特征圖進(jìn)行卷積操作產(chǎn)生n維特征向量,產(chǎn)生的特征向量輸入到回歸層和分類層。其中,滑動(dòng)窗口滑動(dòng)一次會(huì)預(yù)測(cè)出k個(gè)區(qū)域建議,回歸層需要預(yù)測(cè)出包圍框的寬高和中心坐標(biāo),分類層需要辨別建議框是前景還是背景的概率,因此回歸層需要輸出4k個(gè)坐標(biāo),分類層包含2k得分。RPN網(wǎng)絡(luò)進(jìn)行的是端到端的訓(xùn)練過程,使用反向傳播法和梯度下降法進(jìn)行調(diào)優(yōu)。在訓(xùn)練時(shí),RPN使用重疊交并比IoU進(jìn)行正負(fù)標(biāo)簽的分配,IoU>0.7時(shí)分配正標(biāo)簽,IoU<0.3分配負(fù)標(biāo)簽。
檢測(cè)網(wǎng)絡(luò)在Faster R-CNN中進(jìn)行感興趣區(qū)域(Region of Interest,ROI)池化操作。網(wǎng)絡(luò)由邊框分類網(wǎng)絡(luò)與邊框回歸網(wǎng)絡(luò)構(gòu)成,并含有兩個(gè)平行的輸出層。在ROI提取通過RPN對(duì)應(yīng)的區(qū)域特征后,使用檢測(cè)網(wǎng)絡(luò)對(duì)得到特征進(jìn)行人物分類和邊界框的預(yù)測(cè)。分類層的輸出是人類和非人類分類中每個(gè)框架的概率分布;回歸層輸出的則是邊框位置參數(shù)。此階段的損失函數(shù)為:
L(p,m,tm,n)=Lcls(p,m)+λ[m≥1]·Lreg(tm,n),
(5)
(6)
本文人物數(shù)據(jù)集包含320張圖片,選擇300張圖片作為訓(xùn)練集,20張圖片選為測(cè)試集,使用Image Labeler工具對(duì)圖片進(jìn)行標(biāo)注,測(cè)試集圖片尺寸更改為227×227 px。使用Matlab 2018b作為實(shí)驗(yàn)平臺(tái),實(shí)驗(yàn)所用設(shè)備為Windows 8.1家庭版64位,采用CPU為Intel(R)Core(TM)i5—5200U @2.20 GHz,內(nèi)存4 G,GPU為NIVDIA GeForce 830 M,Cuda9.1實(shí)驗(yàn)過程中調(diào)用GPU進(jìn)行加速運(yùn)算,學(xué)習(xí)率設(shè)定為0.000 1,共進(jìn)行1 000次迭代。
從表1可以得出,改進(jìn)后的模型準(zhǔn)確率最高,比原始模型的準(zhǔn)確率高出1.6%,即對(duì)于AlexNet和原始的特征網(wǎng)絡(luò),改進(jìn)后的特征網(wǎng)絡(luò)能夠更好地提取圖片特征,可以更加準(zhǔn)確地檢測(cè)目標(biāo)。同時(shí),改進(jìn)后的ResNet101網(wǎng)絡(luò)模型mAP數(shù)值最高,即目標(biāo)網(wǎng)絡(luò)模型性能相對(duì)較好,從而增加模型的識(shí)別精度。所以改進(jìn)后的模型檢測(cè)效果相對(duì)較好。
表1 不同特征網(wǎng)絡(luò)下的準(zhǔn)確率和mAP值Tab.1 Accuracy and map value under different characteristic networks
由圖5可知,訓(xùn)練集中樣本的數(shù)量不同對(duì)目標(biāo)檢測(cè)的準(zhǔn)確率有一定的影響,識(shí)別精度會(huì)隨著訓(xùn)練樣本的增加而提高。在不同訓(xùn)練樣本下,改進(jìn)網(wǎng)絡(luò)的識(shí)別精度一直高于原始網(wǎng)絡(luò),在低樣本的情況下準(zhǔn)確率明顯高于原始網(wǎng)絡(luò),說明改進(jìn)后的特征網(wǎng)絡(luò)能夠更好地提取圖片特征,提高識(shí)別精度。
圖5 不同訓(xùn)練集下的準(zhǔn)確率Fig.5 Accuracy under different training sets
針對(duì)人物識(shí)別的準(zhǔn)確率以及人物定位精度,在基于Faster R-CNN框架的基礎(chǔ)上提出了一種改進(jìn)其特征網(wǎng)絡(luò)ResNet-101的方法。并用人物圖像訓(xùn)練模型,最后得到人物檢測(cè)和定位的結(jié)果如圖6和圖7所示,可以得到如下的結(jié)論。
圖6 單目標(biāo)人物檢測(cè)率Fig.6 Single target detection effect
圖7 多目標(biāo)人物檢測(cè)率Fig.7 Multi-target character detection effect
① 改進(jìn)基于卷積神經(jīng)網(wǎng)絡(luò)的ResNet-101特征提取網(wǎng)絡(luò)設(shè)計(jì),為了讓模型對(duì)目標(biāo)更加敏感,本文在原始網(wǎng)絡(luò)的基礎(chǔ)上增加了網(wǎng)絡(luò)的寬度,該改進(jìn)使網(wǎng)絡(luò)學(xué)習(xí)到關(guān)鍵性可區(qū)分特征,從而提高目標(biāo)人物的識(shí)別精度。
② 相對(duì)原始模型,改進(jìn)的Faster RCNN模型對(duì)人物識(shí)別的準(zhǔn)確度提升了1.6%,并且在一張圖片上含有多個(gè)人物時(shí)依然能夠精確地定位識(shí)別人物在圖像中的位置,這充分說明了改進(jìn)的Faster RCNN的魯棒性更強(qiáng)。
以Faster RCNN框架為基礎(chǔ),提出了一種改進(jìn)的特征網(wǎng)絡(luò)模型。實(shí)驗(yàn)結(jié)果表明相對(duì)于傳統(tǒng)方法,改進(jìn)方法在測(cè)試精度和泛化能力上都有比較明顯的優(yōu)勢(shì),驗(yàn)證了本文所提出方法的有效性。隨著深度學(xué)習(xí)的快速發(fā)展,目標(biāo)檢測(cè)技術(shù)已經(jīng)取得了長(zhǎng)足的進(jìn)步,但是與人眼分辨物體的能力還有一定差距。為了使目標(biāo)檢測(cè)更好的應(yīng)用在生活中,在接下來(lái)的研究中,將繼續(xù)擴(kuò)充數(shù)據(jù)的規(guī)模、充實(shí)樣本的多樣性以及通過對(duì)RPN的改進(jìn)來(lái)提升模型的性能,同時(shí)將改進(jìn)的技術(shù)應(yīng)用于視頻檢測(cè)當(dāng)中。