蔣 勝,黃 敏,朱啟兵,王正來
江南大學(xué) 輕工業(yè)過程先進(jìn)控制教育部重點(diǎn)實(shí)驗(yàn)室,江蘇 無錫 214122
隨著模式識別和機(jī)器視覺的發(fā)展,基于計算機(jī)視覺的目標(biāo)檢測技術(shù)得到了廣泛的應(yīng)用。行人檢測作為目標(biāo)檢測的一種,在車輛輔助駕駛[1-4]、智能視頻監(jiān)控和人體行為分析[5]等領(lǐng)域有著廣泛的運(yùn)用。傳統(tǒng)的行人檢測依賴于圖像特征的提取。為了實(shí)現(xiàn)行人的準(zhǔn)確檢測,各種各樣的圖像特征被應(yīng)用到行人檢測中,例如:HOG[6](Histogram of Oriented Gradient)特征、LBP[7-8](Local Binary Pattern)特征、CENTRIST[9](Census Transform Histogram)特征等。自然環(huán)境中背景的復(fù)雜性,拍攝角度和距離,人體姿態(tài)多樣性,遮擋等因素,往往導(dǎo)致提取特征的有效性難以保證,從而使得檢測的精度無法滿足實(shí)際應(yīng)用需要。如何提高復(fù)雜場景下行人檢測的精度,是目前目標(biāo)檢測領(lǐng)域的一個難點(diǎn)問題。
圖1 R-FCN目標(biāo)檢測框圖
近年來,基于深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)在目標(biāo)檢測領(lǐng)域的應(yīng)用得到了廣泛的重視。深度卷積神經(jīng)網(wǎng)絡(luò)依靠卷積等的線性變化和激活函數(shù)的非線性映射把圖片中像素級的信息映射到高維空間,使得某些任務(wù),例如手寫字體識別[10]、行人檢測等,可以在高維空間輕易地實(shí)現(xiàn)。卷積神經(jīng)網(wǎng)絡(luò)不需要手動設(shè)計特征,其通過對圖像的卷積操作,可自動實(shí)現(xiàn)特征的提取,已成為國內(nèi)外研究和應(yīng)用的熱點(diǎn)。
本文把R-FCN[11](Region-based Fully Convolutional Networks)通用目標(biāo)檢測引入到復(fù)雜場景下的行人檢測中。針對自然條件下,廣泛存在的小目標(biāo)、前景和背景遮擋、背景混淆干擾等因素;通過對R-FCN訓(xùn)練和搜索機(jī)制的修改,顯著地減少了由于上述原因?qū)е碌穆﹫蠛驼`報現(xiàn)象。
基于區(qū)域的全卷積網(wǎng)絡(luò)[9]的目標(biāo)檢測分為兩個步驟,先定位目標(biāo),再進(jìn)行目標(biāo)具體類別的分類。R-FCN目標(biāo)檢測框圖如圖1所示,首先利用ResNet[12]網(wǎng)絡(luò)生成特征映射圖,并利用區(qū)域建議網(wǎng)絡(luò)(Region Proposal Networks,RPN[13])對生成的特征映射圖進(jìn)行全圖的前后景目標(biāo)搜索和篩選,以確定目標(biāo)框;在此基礎(chǔ)上,利用分類網(wǎng)絡(luò)對目標(biāo)框進(jìn)行分類識別。
R-FCN網(wǎng)絡(luò)使用ResNet-50網(wǎng)絡(luò)對圖片進(jìn)行卷積池化等操作。ResNet-50網(wǎng)絡(luò)的輸出層為res5c,res5c為一個1×2 048×63×38的張量。RPN在res5c上完成候選區(qū)域的搜索。具體的形式是在res5c輸出層利用512個,尺寸為3×3的卷積核進(jìn)行卷積操作,獲得一個512×63×38的張量;將該張量作為兩個獨(dú)立卷積層的輸入,從而將特征映射圖里的信息轉(zhuǎn)換為候選區(qū)域的位置信息和其為前后景的概率信息。如圖2所示,圖中紅色區(qū)域即為搜索區(qū)域,圖中只畫出了部分搜索的目標(biāo)框。
圖2 RPN網(wǎng)絡(luò)示意圖
RPN默認(rèn)用9個搜索框來搜索一塊區(qū)域,尺度為642、1282、2562,長寬比為1∶1、1∶2、2∶1,以上搜索框的默認(rèn)屬性是針對ImageNet,VOC數(shù)據(jù)集中的通用目標(biāo)的。考慮到小目標(biāo)行人檢測的需要,本文將搜索區(qū)域的尺度設(shè)置為162、322、642,長寬比不變。
對于原始的輸入圖片,RPN網(wǎng)絡(luò)會得到約兩萬個搜索框。在實(shí)際應(yīng)用時,一些超出圖片邊界的搜索框會被剔除;同時,對于同一目標(biāo)重疊覆蓋的搜索框,采用非極大值抑制[14](Non-Maximum Suppression,NMS)方法來處理,以達(dá)到去除重疊搜索框的目的。上述策略可顯著提高候選目標(biāo)框的搜索效率。
R-FCN的分類網(wǎng)絡(luò)基于ResNet-50網(wǎng)絡(luò)生成的特征映射圖,利用卷積操作在整幅圖像上為每類生成k×k個位置敏感分?jǐn)?shù)圖,用于描述對應(yīng)位置的空間網(wǎng)格;每個位置敏感圖有C個通道輸出(代表C-1類物體外加一個背景)。對于一個w×h大小的候選目標(biāo)框(由RPN網(wǎng)絡(luò)獲得),將目標(biāo)框劃分為k×k個子區(qū)域,則每個子區(qū)域?yàn)閣×h/k2大小,對于任意一個子區(qū)域bin(i,j),0≤i,j≤k-1,定義一個位置敏感池化操作:
傳統(tǒng)R-FCN行人檢測把自然場景下的行人都?xì)w為一類,由于訓(xùn)練集中的完整行人樣本占的比例較大,R-FCN形成的判別準(zhǔn)則對這一類行人有明顯的偏向,從而導(dǎo)致對于遮擋或背景混淆干擾的行人目標(biāo)的漏檢率偏高。為了提高遮擋或背景混淆干擾的行人目標(biāo)檢測精度,本文從訓(xùn)練樣本構(gòu)造、分類器設(shè)計角度對R-FCN網(wǎng)絡(luò)進(jìn)行了改進(jìn)。
在利用R-FCN網(wǎng)絡(luò)進(jìn)行行人檢測時,通常都是將行人作為一個整體的待識別目標(biāo)。當(dāng)行人被部分遮擋時,R-FCN網(wǎng)絡(luò)往往難以充分地學(xué)習(xí)到遮擋行人的特征。本文把可形變模型的思想[15]引入卷積神經(jīng)網(wǎng)絡(luò)中,利用R-FCN網(wǎng)絡(luò)分別對人體的上下半身進(jìn)行檢測,以改善對遮擋行人的特征學(xué)習(xí)能力,減少對行人整體檢測的困難。本文將訓(xùn)練樣本中的行人按照上下半身進(jìn)行劃分,并作為檢測目標(biāo)進(jìn)行識別。具體操作如下:(1)若行人未被遮擋(完整行人),則按照1∶1的比例切分行人為上下半身,并賦予相應(yīng)的標(biāo)簽;(2)若行人被遮擋,就根據(jù)可見的行人部位賦予相應(yīng)的標(biāo)簽。
圖3、圖4分別為遮擋引起的誤報示例圖和上下半身訓(xùn)練樣本實(shí)例圖,圖3的紅框是漏報的目標(biāo)。
圖3 R-FCN小目標(biāo)遮擋漏報示例圖
圖4 上下半身監(jiān)督信號制作示例圖
當(dāng)存在背景混淆干擾時,由于背景和前景中的目標(biāo)行人較為相似,R-FCN網(wǎng)絡(luò)往往難以實(shí)現(xiàn)有效識別(如圖5所示)。產(chǎn)生這一問題的原因在于:卷積神經(jīng)網(wǎng)絡(luò)在訓(xùn)練集上批量讀入圖片集對網(wǎng)絡(luò)參數(shù)做出更新的時候?qū)@類樣本的關(guān)注較少,沒有對這部分樣本形成類內(nèi)很鮮明的判別準(zhǔn)則。為了解決這一問題,本文將存在背景混淆干擾條件下的目標(biāo)行人賦予新的類別標(biāo)簽,以加強(qiáng)行人樣本差異性的學(xué)習(xí)。實(shí)施此步驟之后,明顯地提升了這一類目標(biāo)的檢出率。
圖5 前景和背景相似的樣本示例圖
此時R-FCN價值函數(shù)表達(dá)式如下所示:
式(2)中的L(s ,tx,y,w,h)是R-FCN的價值函數(shù),s是Softmax輸出的為每一類(包括背景)的概率集合,Lcls(sC*)是分類的交叉熵價值函數(shù),判斷為類別C的概率。tx,y,w,h是目標(biāo)框的頂點(diǎn)坐標(biāo)以及長和寬,以下都是的形式,λ1、λ2是超參數(shù),是對行人目標(biāo)框位置信息的回歸,具體定義如式(3)、式(4)所示,L1指 L1范數(shù)。tperson是目標(biāo)框的位置信息是行人真實(shí)的位置信息,是對前景和背景相似的行人目標(biāo)框位置信息的回歸,r是此類行人的目標(biāo)框位置信息,是此類行人真實(shí)目標(biāo)框信息。
上述改進(jìn)策略在加強(qiáng)了對復(fù)雜樣本學(xué)習(xí)的同時,也帶來了誤報率增高的問題。為了進(jìn)一步改善網(wǎng)絡(luò)的性能,本文引入二次分類思想,利用ResNet-50網(wǎng)絡(luò)對R-FCN檢測輸出的結(jié)果進(jìn)行二次分類。二次分類網(wǎng)絡(luò)(ResNet50)的輸入為R-FCN的目標(biāo)檢測框的圖片信息,輸出為相應(yīng)的類別信息。在訓(xùn)練二次分類器時,為了增大負(fù)樣本(R-FCN目標(biāo)檢測網(wǎng)絡(luò)的誤報樣本)的數(shù)量,本文采用了復(fù)制擴(kuò)充訓(xùn)練集的方法,加強(qiáng)二次分類網(wǎng)絡(luò)(ResNet50)對原始R-FCN網(wǎng)絡(luò)中誤報樣本特征的學(xué)習(xí),從而降低誤報率。
訓(xùn)練樣本是1 280×720大小的圖片集,具體為2016年12月7日在監(jiān)控視頻下的行人小目標(biāo)樣本,樣本數(shù)為9 025,時間段為10:00到11:30,以及14:30到15:00這兩個時間段。實(shí)驗(yàn)機(jī)器CPU型號為I7-5930k,內(nèi)存為32 GB,顯卡為TITANX 12GD。本文所采用的R-FCN網(wǎng)絡(luò)和ResNet50二次分類網(wǎng)絡(luò)都是基于深度學(xué)習(xí)框架caffe(https://github.com/BVLC/caffe)。兩種網(wǎng)絡(luò)參數(shù)更新方法均為隨機(jī)梯度下降法,學(xué)習(xí)率均為0.001。R-FCN訓(xùn)練模型的最大迭代次數(shù)為40 000次,ResNet50二次分類網(wǎng)絡(luò)的最大迭代次數(shù)為1 000次。R-FCN測試一張圖片約為0.1 s,改進(jìn)后的R-FCN測試一張圖片約為0.2 s。在把行人樣本(包括上下半身和背景混淆干擾的行人樣本)放入R-FCN中訓(xùn)練之前,對行人樣本進(jìn)行了1.2倍的擴(kuò)邊操作,其目的是為了學(xué)習(xí)到帶有更多不同背景的正樣本特征,增加樣本的復(fù)雜程度,加強(qiáng)模型從復(fù)雜的背景中分辨出行人的能力。測試集為2016年12月7日時間段為12:00—13:00采集的910張監(jiān)控視頻下的圖片(大小為1 280×720)集,其中有3 298個正樣本。實(shí)驗(yàn)結(jié)果如表1所示。
表1 R-FCN行人檢測結(jié)果
表1記錄了本文三種對R-FCN小目標(biāo)行人檢測方法改進(jìn)后的結(jié)果,從表1中可以看出,深度卷積神經(jīng)網(wǎng)絡(luò)可以對類內(nèi)的差別進(jìn)行學(xué)習(xí)。R-FCN(1)、R-FCN(2)是對行人標(biāo)簽樣本的改進(jìn)結(jié)果,較傳統(tǒng)R-FCN的14.22%漏報率,R-FCN(1)漏報率下降為7.97%,R-FCN(2)漏報率下降為9.61%,綜合兩種改動的R-FCN(1)(2)漏報率下降為5.52%。與此同時,相比于原始的RFCN網(wǎng)絡(luò)的7.22%的誤報率,R-FCN(1)、R-FCN(2)和R-FCN(1)(2)的誤報率分別增加到 8.43%、7.67%和11.70%。這一結(jié)果表明當(dāng)利用改進(jìn)的樣本構(gòu)造策略后,R-FCN網(wǎng)絡(luò)可以提高對于遮擋和背景混淆干擾條件下的目標(biāo)行人樣本學(xué)習(xí)能力,從而改善漏報率。但同時,由于背景的復(fù)雜性,也會帶來學(xué)習(xí)模型的誤報率的提高。當(dāng)采用二次分類后,誤報率均有顯著的下降。RFCN(1)從最初的8.43%下降為4.97%,R-FCN(2)則從7.67%下降為3.82%,R-FCN(1)(2)從11.70%下降為2.49%。
圖6、7為部分檢測結(jié)果,左邊為R-FCN(1)(2)(3),右邊為R-FCN。從圖6中可以看出,傳統(tǒng)的R-FCN對遮擋有一定的檢測能力,改進(jìn)后的R-FCN(1)(2)(3)對遮擋的檢測效果要優(yōu)于傳統(tǒng)R-FCN,被白色汽車遮擋的行人可以被R-FCN(1)(2)(3)檢測到,傳統(tǒng)的R-FCN則會漏報。從圖7中可以看出,傳統(tǒng)的R-FCN對背景混淆干擾這一類行人檢測效果不理想,而且對于站位較近的行人粗略地只用一個框標(biāo)出,綠色的框?yàn)槁﹫?。圖7左圖為R-FCN(1)(2)(3)的行人檢測效果,背景混淆干擾的行人,以及站位比較接近的行人都被檢測到并區(qū)分開來,檢測效果明顯優(yōu)于傳統(tǒng)R-FCN。其中,在R-FCN(1)(2)(3)的結(jié)果中紅色框?yàn)樯习肷?,藍(lán)色框?yàn)橄掳肷?,紫色框?yàn)榛煜尘案蓴_的行人,綠色框?yàn)槁﹫?;在R-FCN的結(jié)果中紅色框?yàn)樾腥耍G色框?yàn)槁﹫蟆?/p>
深度學(xué)習(xí)已成為機(jī)器學(xué)習(xí)領(lǐng)域新的研究熱點(diǎn),并在圖像分類、語音識別等領(lǐng)域取得了巨大的成功。本文在基于區(qū)域的全卷積神經(jīng)網(wǎng)絡(luò)上做了改進(jìn),避免了復(fù)雜的人工特征提取的過程,完成了復(fù)雜場景下的行人檢測。針對基于區(qū)域的全卷積神經(jīng)網(wǎng)絡(luò)的行人檢測漏報誤報問題,提出了改進(jìn)方法,提高了復(fù)雜場景下的行人檢測在遮擋和背景混淆干擾兩類樣本上的檢出率,并用二次分類的方法在一定程度上抑制了行人的誤報。最后,實(shí)驗(yàn)證明,改進(jìn)的R-FCN對行人檢測具有較好的表現(xiàn),漏報率降為5.52%,誤報率為2.49%,速度約為0.2 s一張圖片,驗(yàn)證了此方法的可行性和實(shí)時性。