周芳宇,陳淑榮
(上海海事大學(xué)信息工程學(xué)院,上海 201306)
現(xiàn)有的行人再識(shí)別方法主要有特征提取和度量學(xué)習(xí)2種。前者多采用行人顏色特征[1]和紋理特征以及融合多種特征[2],識(shí)別速度快,但易受光照等因素影響;而度量學(xué)習(xí)中的XQDA算法[3]和KISSME算法[4]提高了識(shí)別算法的魯棒性,但對復(fù)雜異構(gòu)的行人圖像的特征表征性不強(qiáng)。隨著深度學(xué)習(xí)不斷發(fā)展,三元組卷積神經(jīng)網(wǎng)絡(luò)(Triplet Convolutional Neural Network, Tri-CNN)成為圖像識(shí)別領(lǐng)域的核心算法[5]。Zheng等人[6]提出的多通道卷積神經(jīng)網(wǎng)絡(luò)模型改進(jìn)了三重態(tài)損失函數(shù)以提高再識(shí)別的準(zhǔn)確性,但仍存在行人特征分辨率低的問題;Qi等人[7]通過融合時(shí)間關(guān)聯(lián)模型和空間遞歸模型改進(jìn)的三元組網(wǎng)絡(luò)結(jié)構(gòu)可高效訓(xùn)練大型的行人視頻數(shù)據(jù)集,但網(wǎng)絡(luò)結(jié)構(gòu)和參數(shù)冗雜,訓(xùn)練難度較高;Liu等人[8]對三元組網(wǎng)絡(luò)頂部添加驗(yàn)證損失,提高了檢測精度,但計(jì)算量大導(dǎo)致識(shí)別速度慢;Wang等人[9]通過在孿生網(wǎng)絡(luò)模型基礎(chǔ)上聯(lián)合2個(gè)子網(wǎng)組成三元組提取特征進(jìn)行行人再識(shí)別。
為進(jìn)一步提高行人再識(shí)別的檢測準(zhǔn)確度,本文針對三元組網(wǎng)絡(luò)結(jié)構(gòu)建立了特征增強(qiáng)的Tri-CNN模型,對池化層提取的特征采用主成分分析(Principal Component Analysis, PCA)[10]降維,運(yùn)用典型相關(guān)分析(canonical correlation analysis, CCA)級聯(lián)融合行人特征,以解決行人單一特征的局限性。為準(zhǔn)確識(shí)別被遮擋行人,本文提出的模型引入時(shí)空遞歸模型(Spatial Recurrent Model, SRM)多向檢索行人特征,并且利用長短時(shí)記憶(Long Short Term Memory, LSTM)網(wǎng)絡(luò)有效結(jié)合行人的前后相關(guān)信息來提取特征。最后,結(jié)合分類損失與驗(yàn)證損失優(yōu)化網(wǎng)絡(luò)模型,擴(kuò)大負(fù)例圖像對間的距離并減小正例圖像對之間的距離,以此聚合同類行人樣本,以提高行人再識(shí)別的準(zhǔn)確度。
文獻(xiàn)[11]的Tri-CNN采用conv1、conv2、conv3、conv4和conv5感知特征,使用pool1和pool2降維,且3個(gè)參數(shù)共享的CNN結(jié)構(gòu)同時(shí)提取行人圖像特征。由于行人特征復(fù)雜異構(gòu)和被遮擋行人特征不明顯,池化處理易導(dǎo)致行人信息丟失而影響高層特征分辨率。因此,本文在此基礎(chǔ)上進(jìn)行改進(jìn),采用空間級聯(lián)融合模塊和空間遞歸模型(SRM)[12]進(jìn)行特征增強(qiáng),改進(jìn)部分如圖1虛框所示。
圖1 特征增強(qiáng)三元組卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
行人再識(shí)別過程如圖1所示,首先將輸入的3組圖像A、P、N歸一化尺寸為224×224,其中A為預(yù)選圖片、P為同類圖片和N為不同類圖片,通過分割層分別將其輸入到3個(gè)網(wǎng)絡(luò)通道中提取特征。用步長為2和7×7的conv1卷積層進(jìn)行淺層特征提取,每輸入一組圖像,經(jīng)卷積核為3×3的pool1處理后,特征圖大小減半,產(chǎn)生64維特征圖。通過conv2、conv3、conv4和conv5繼續(xù)卷積,將行人特征整合為2048維高層語義的特征向量,由于高維空間的可用行人特征信息的數(shù)據(jù)稀疏,本文采用PCA對pool1層和pool2層提取的深度特征進(jìn)行了降維,如圖1空間級聯(lián)融合模塊所示,對降維后conv5提取的高層全局特征和conv1提取的低層局部特征進(jìn)行空間級聯(lián)融合,提取完整語義信息的行人特征,具體過程見圖2。由于實(shí)時(shí)檢測中行人遮擋易導(dǎo)致特征難以分辨,本文引入如圖1空間遞歸模型,結(jié)合被遮擋行人的周圍位置信息,從多個(gè)方向提取行人結(jié)構(gòu)特征,解決被遮擋行人的再識(shí)別問題。然后根據(jù)歐氏距離測度算法,計(jì)算出圖像A、圖像P和圖像N的歐氏距離,分別為Da、Dp和Dn,采用有序加權(quán)的距離融合算法[13],利用已測距離來度量正負(fù)樣本對的歐氏距離,并計(jì)算正、負(fù)樣本對的最終特征距離Da,p(正樣本間的歐氏距離)和Da,n(負(fù)樣本間的歐氏距離),以此作為判別準(zhǔn)則,度量公式如式(1)所示:
(1)
其中,f(·)表示圖1中輸入的行人圖像三元組(A,P,N)在空間特征中的非線性映射(f(a),f(p),f(n)),將該度量準(zhǔn)則與三元組網(wǎng)絡(luò)結(jié)合,以此判別是否為同一行人。此外,在全連接層中,本文聯(lián)合Softmax loss和Triplet loss優(yōu)化網(wǎng)絡(luò)模型,以此更好地聚類同一行人的特征。
圖1網(wǎng)絡(luò)結(jié)構(gòu)中,本文的特征增強(qiáng)方法由空間特征級聯(lián)融合模塊和空間遞歸模型組成,具體處理過程如圖2所示。
圖2 空間特征級聯(lián)融合和空間遞歸過程
特征的空間級聯(lián)融合過程中,首先采用PCA主成分分析法對pool1層和pool2層池化處理后的特征降維,得到低維且行人語義信息完整的高層特征向量Y與底層特征向量X,以此實(shí)現(xiàn)壓縮數(shù)據(jù)并最小化信息損失。其次,采用CCA策略[14]分別將行人特征轉(zhuǎn)換為X*和Y*,提高特征融合的判別力,然后采用element-wise加權(quán)融合X*和Y*,得到融合后的特征Z,使底層全局特征有效補(bǔ)充高層特征語義信息,其融合過程如式(2):
(2)
針對有遮擋的行人圖像,由于特征提取受限于卷積層與池化層間的局部連接,神經(jīng)元無法感知行人的全部特征,導(dǎo)致特征提取時(shí)丟失主要信息而影響再識(shí)別的正確匹配。如圖2虛框所示,本文采用空間遞歸模型的6個(gè)長短時(shí)記憶網(wǎng)絡(luò)[15]多向檢測被遮擋行人特征,沿著如圖2的箭頭方向?qū)lement-wise融合后的完整行人特征進(jìn)行掃描,比如,行人左下角被遮擋可沿著右上方向檢測到行人的其他局部特征。最后,將每個(gè)LSTM輸出的特征圖通過含有1×1卷積核的卷積層整合疊加,輸入全連接層進(jìn)行回歸分類與驗(yàn)證,多方位提取被遮擋行人圖像的特征。其中LSTM結(jié)構(gòu)原理如圖3所示。
圖3 LSTM網(wǎng)絡(luò)結(jié)構(gòu)原理
實(shí)驗(yàn)選取訓(xùn)練集中存在遮擋現(xiàn)象的行人幀序列進(jìn)行檢測,輸入行人特征向量xi,輸出特征提取后的行人特征向量yi和上一級行人特征輸入hi-1,即hi=f(xi),h1=f(x1,h0),h2=f(x2,h1),…,hi=f(xi,hi-1)。如圖3虛線所示,每次行人特征識(shí)別時(shí)都會(huì)考慮之前的輸入hi-1,利用先前無遮擋情況下的行人特征來補(bǔ)充當(dāng)前遮擋行人特征,結(jié)合行人特征的前后相關(guān)信息識(shí)別被遮擋行人。
圖3表示了存在行人遮擋的連續(xù)4幀圖像,以x2、x3輸入為例,x2由于遮擋存在識(shí)別誤差,LSTM結(jié)合x1的行人特征信息h1進(jìn)行有效再識(shí)別;且保存x2的特征信息,當(dāng)x3遮擋嚴(yán)重時(shí),可由x2的行人特征信息h2進(jìn)行特征補(bǔ)充,解決了行人遮擋情況下的誤識(shí)別問題。
為提高網(wǎng)絡(luò)收斂速度和算法效率,本文采用二值化和聯(lián)合損失函數(shù)的網(wǎng)絡(luò)訓(xùn)練方法,解決現(xiàn)階段深度神經(jīng)網(wǎng)絡(luò)中參數(shù)冗雜和浮點(diǎn)運(yùn)算導(dǎo)致運(yùn)算速度低的問題。在二值化神經(jīng)網(wǎng)絡(luò)的計(jì)算中,可分為前向預(yù)測和反向傳播2個(gè)過程。
在前向傳播過程中,本文首先采用基于符號函數(shù)sign的確定性(deterministic)的計(jì)算方法對浮點(diǎn)型權(quán)重值和激活函數(shù)值進(jìn)行二值化,其公式如式(3):
(3)
(4)
(5)
在反向傳播過程中,對決定化方式的sign函數(shù)進(jìn)行松弛化處理,其計(jì)算公式如式(6):
gr=gq1|r|1
(6)
其中,q代表符號函數(shù)sign,當(dāng)參數(shù)r的絕對值小于等于1時(shí),r的梯度等于q的梯度,否則r的梯度為0。求得各層參數(shù)對應(yīng)的梯度和浮點(diǎn)型激活函數(shù)值對應(yīng)的殘差,采用隨機(jī)梯度下降方法對神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行調(diào)整。通過Batch Normalization操作,得到實(shí)數(shù)型的隱藏層激活向量。二值化網(wǎng)絡(luò)后,計(jì)算只有浮點(diǎn)數(shù)的加減法,根據(jù)估算可以減少60%的計(jì)算消耗,并且可節(jié)省32倍的內(nèi)存消耗。二值化網(wǎng)絡(luò)的loss曲線如圖4所示,其中橫坐標(biāo)為訓(xùn)練過程中的迭代次數(shù),縱坐標(biāo)為訓(xùn)練損失。二值化操作后,可見,在接近15000次時(shí)loss逐漸收斂到一個(gè)全局最優(yōu)點(diǎn)。
圖4 二值化網(wǎng)絡(luò)的loss曲線
現(xiàn)有的深度學(xué)習(xí)算法常采用交叉熵?fù)p失函數(shù)[16](Softmax loss)作為目標(biāo)函數(shù),Softmax用于多分類過程中,當(dāng)僅使用分類損失函數(shù)訓(xùn)練網(wǎng)絡(luò)模型時(shí),如果網(wǎng)絡(luò)模型提取的特征欠佳,會(huì)導(dǎo)致類內(nèi)距離大于類間距離,影響最終的識(shí)別效果。三元組(Triplet)計(jì)算是由損失檢測樣本A,正匹配P,負(fù)匹配N組成。通過優(yōu)化該損失函數(shù),將檢測樣本與正樣本聚類,遠(yuǎn)離負(fù)樣本,即正樣本間距離盡可能小,負(fù)樣本距離應(yīng)盡可能大,以此實(shí)現(xiàn)樣本間的相似性計(jì)算,學(xué)習(xí)到具有更強(qiáng)判別力和泛化能力的特征。因此,本文聯(lián)合交叉熵?fù)p失函數(shù)和三元組損失函數(shù)[17](Triplet loss)作為行人再識(shí)別的判別準(zhǔn)則,損失函數(shù)如式(7):
(7)
其中,i為樣本編號;yi為第i個(gè)樣本的標(biāo)簽;N為樣本總數(shù);Da,p為正樣本間的歐氏距離;Da,n為負(fù)樣本間的歐氏距離,m為Da,p與Da,n之間的最小間隔。當(dāng)Da,n+Da,p+m的值大于0時(shí),就會(huì)產(chǎn)生損失,否則損失為0。本文將m設(shè)置為0.2,以此拉大正負(fù)樣本對間的距離,進(jìn)一步減小損失。
由圖5可見,在同樣迭代5萬次的情況下,本文采用的二值化和聯(lián)合損失函數(shù)的網(wǎng)絡(luò)訓(xùn)練方法,在接近10000次時(shí),網(wǎng)絡(luò)的收斂速度加快,訓(xùn)練過程中l(wèi)oss更加穩(wěn)定,能夠較好地防止過擬合問題的發(fā)生??梢姡祷吐?lián)合損失函數(shù)共同訓(xùn)練網(wǎng)絡(luò)的方法可在一定程度上減少網(wǎng)絡(luò)冗雜度和訓(xùn)練時(shí)間,有良好的實(shí)時(shí)性。
圖5 本文聯(lián)合方法的loss曲線
實(shí)驗(yàn)選取MARS視頻數(shù)據(jù)集和ETHZ數(shù)據(jù)集對模型的性能進(jìn)行測試,這2個(gè)數(shù)據(jù)集中人體姿態(tài)和光照均有變化,且存在遮擋現(xiàn)象,符合本文行人再識(shí)別實(shí)驗(yàn)的難度要求。
MARS數(shù)據(jù)集有20000個(gè)視頻序列,是行人再識(shí)別研究中最大的公開數(shù)據(jù)集。該數(shù)據(jù)集分為631人509914幅圖像組成的訓(xùn)練集和630人681089幅圖像組成的測試集,由6個(gè)不同的攝像機(jī)采集,平均每人有13.2個(gè)視頻段。
ETHZ數(shù)據(jù)集是從運(yùn)動(dòng)的攝像機(jī)中獲取的,有ETHZ1、ETHZ2和ETHZ3這3個(gè)類別子集。其中,ETHZ1子集是83人組成的4857幅行人圖像;ETHZ2子集是由35人組成的1936幅行人圖像;ETHZ3子集是28人組成的1762幅行人圖像。
實(shí)驗(yàn)在Win10系統(tǒng)下進(jìn)行,計(jì)算機(jī)配置為NVIDIA GTX1080Ti顯卡,使用Pytorch訓(xùn)練,選擇ResNet50網(wǎng)絡(luò)作為訓(xùn)練模型。本文采用Adam優(yōu)化器[18]進(jìn)行超參數(shù)的偏置校正,將一次momentum系數(shù)β1設(shè)置為0.9,二次momentum系數(shù)β2設(shè)置為0.999。網(wǎng)絡(luò)初始學(xué)習(xí)率設(shè)置為0.0003, 300次迭代后降為0.0001,動(dòng)量為0.9,權(quán)重衰減為0.0005,批次大小設(shè)置32,共進(jìn)行800次迭代。使用累積匹配曲線(CMC)[19]排序?qū)π腥嗽僮R(shí)別的實(shí)驗(yàn)結(jié)果進(jìn)行評估,Rank-n表示前n次匹配中正確匹配的概率,其中,第一次準(zhǔn)確度(Rank-1)是最重要的指標(biāo),即第一次檢索序列結(jié)果排序正確的概率。
為選取PCA方法的合理降維參數(shù),本文采用ResNet模型對MARS數(shù)據(jù)集的行人圖片進(jìn)行深度特征提取,通過n_components參數(shù)設(shè)置PCA降維后的特征維度數(shù)目,為得到更具判別性的行人特征,選擇該模型中第45層conv5的輸出作為特征進(jìn)行取值分析實(shí)驗(yàn),結(jié)果如表1所示。
表1 PCA維數(shù)對識(shí)別率的影響
由表1可見,將深度特征直接進(jìn)行分類識(shí)別,識(shí)別率為94.2%;將深度特征先進(jìn)行PCA降維,再分類識(shí)別,則識(shí)別率隨所降維數(shù)的不同而變化,但都高于不降維的結(jié)果。當(dāng)維數(shù)為900時(shí),本文方法識(shí)別結(jié)果最好,為96.3%。
為了進(jìn)一步驗(yàn)證本文特征增強(qiáng)方法對識(shí)別精度的有效性,在MARS數(shù)據(jù)集上,將本文方法與文獻(xiàn)[13]的方法進(jìn)行Rank-n排名匹配率的比較,分別取n為1、5、10、20,結(jié)果如表2所示??梢姡疚姆椒ǖ腞ank-1匹配率提高了4.6個(gè)百分點(diǎn),且本文方法將Rank-20匹配率提高到97.4%。這表明本文方法由于增強(qiáng)了行人高層特征的分辨率而提高了行人再識(shí)別的準(zhǔn)確率。
表2 MARS數(shù)據(jù)集上的匹配率實(shí)驗(yàn)結(jié)果對比 單位:%
為進(jìn)一步驗(yàn)證模型的行人再識(shí)別性能,將本文方法與近年來主流的PLS[20]、SDALF[21]、Unsupervised salience learning[22]和多向顯著性權(quán)值(多顯著性融合)[23]等方法在相同試驗(yàn)環(huán)境進(jìn)行比較,各方法的匹配CMC曲線如圖6所示,橫軸為行人再識(shí)別的前7次匹配,縱軸表示這7次匹配的正確概率。圖6(a)表明在ETHZ1數(shù)據(jù)集上,本文方法在識(shí)別精度上均優(yōu)于其他4種方法;在ETHZ2數(shù)據(jù)集上,本文方法的Rank-1匹配率達(dá)到86.8%,如圖6(b)所示,較最好算法提高了4個(gè)百分點(diǎn);圖6(c)表明在ETHZ3數(shù)據(jù)集上,本文整體識(shí)別效果與多顯著性融合算法相近,但本文算法的Rank-1匹配率與其比較,提高了5個(gè)百分點(diǎn),實(shí)驗(yàn)顯示Rank-20匹配率也提高了2個(gè)百分點(diǎn)。可見,本文方法在ETHZ這3個(gè)子集上均得到良好的再識(shí)別精度。
(a) ETHZ1實(shí)驗(yàn)結(jié)果
(b) ETHZ2實(shí)驗(yàn)結(jié)果
(c) ETHZ3實(shí)驗(yàn)結(jié)果
針對以上MARS和ETHZ這2個(gè)數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果和評估分析,表明本文方法增強(qiáng)了行人的多級特征表示能力,并提高了高層特征分辨率。對于遮擋情況,可有效緩解行人特征提取不充分的問題,提高了行人再識(shí)別的準(zhǔn)確率。
傳統(tǒng)Tri-CNN深層卷積過程中,行人遮擋影響特征提取易導(dǎo)致行人識(shí)別的錯(cuò)誤匹配。本文針對此問題在網(wǎng)絡(luò)結(jié)構(gòu)中進(jìn)行特征增強(qiáng),采用PCA降維,根據(jù)CCA策略級聯(lián)融合行人空間特征,避免了空間維度內(nèi)的可用行人特征數(shù)據(jù)變得稀疏,使行人特征更具表征性。針對遮擋問題,本文引入了SRM充分提取行人的完整語義信息,采用LSTM有效結(jié)合行人特征的前后相關(guān)信息,提高了被遮擋行人的識(shí)別率。此外,本文采用二值化和聯(lián)合損失函數(shù)的網(wǎng)絡(luò)訓(xùn)練方法,解決了現(xiàn)階段深度神經(jīng)網(wǎng)絡(luò)中參數(shù)冗雜導(dǎo)致運(yùn)算速度低的問題。聯(lián)合Softmax損失函數(shù)和Triplet損失函數(shù)優(yōu)化模型,有效增大了行人的類間距離,并減小類內(nèi)距離,更好地實(shí)現(xiàn)了行人再識(shí)別,獲得具有更強(qiáng)的判別力和泛化能力的特征。在MARS數(shù)據(jù)集和ETHZ數(shù)據(jù)集上的實(shí)驗(yàn)表明,本文方法的識(shí)別精度較其他方法有較明顯的提升。