張 艷,相 旭,唐 俊,王 年,屈 磊
(安徽大學(xué) 電子信息工程學(xué)院, 安徽 合肥 230601)
行人重識(shí)別旨在多攝像頭多場(chǎng)景下尋找同一個(gè)目標(biāo)人物,因其在目標(biāo)追蹤、公共安防、視頻監(jiān)控等領(lǐng)域起到重要的作用,行人重識(shí)別受到了學(xué)者們的普遍關(guān)注。行人重識(shí)別難點(diǎn)主要在于視角變化、遮擋、行人姿態(tài)變化、光照差異和背景雜亂等,目前已經(jīng)提出了大量行人重識(shí)別算法[1-6],推動(dòng)了行人重識(shí)別的快速發(fā)展。傳統(tǒng)的行人重識(shí)別屬于單模態(tài)的檢索任務(wù),是僅在可見光圖像之間進(jìn)行檢索的技術(shù)。但隨著社會(huì)發(fā)展,傳統(tǒng)行人重識(shí)別并不能滿足社會(huì)需求,跨模態(tài)行人重識(shí)別便從行人重識(shí)別衍生出來,它比傳統(tǒng)行人重識(shí)別更具有挑戰(zhàn)性。跨模態(tài)行人重識(shí)別旨在紅外光圖像與可見光圖像之間匹配同一個(gè)目標(biāo)人物的技術(shù),跨模態(tài)行人重識(shí)別作為一個(gè)新興的研究課題, 已成為當(dāng)前的一個(gè)研究熱點(diǎn)。
在夜間,可見光攝像機(jī)無法捕獲足夠的行人外觀信息,行人的信息由紅外攝像機(jī)或深度攝像機(jī)來獲取。由于紅外攝像機(jī)和可見光攝像機(jī)成像機(jī)制不同,兩種模態(tài)之間存在巨大的模態(tài)差異。可見光圖像和紅外光圖像示例如圖1所示,兩類圖像在外觀上有很大的不同,可見光圖像比紅外光圖像包含更多的顏色信息,模態(tài)差異成為跨模態(tài)行人重識(shí)別需要解決的另一個(gè)難題。

圖1 可見光圖像和紅外光圖像示例Fig.1 Examples of visible images and infrared images
可見光模態(tài)和紅外光模態(tài)之間的模態(tài)差異可分為特征差異和外觀差異。為了減小特征差異,文獻(xiàn)[7-9]試圖利用統(tǒng)一的嵌入空間來對(duì)齊跨模態(tài)特征,但忽略了兩個(gè)模態(tài)之間巨大的外觀差異。文獻(xiàn)[7,10]使用生成對(duì)抗網(wǎng)絡(luò)(Generative Adversarial Networks,GAN)來實(shí)現(xiàn)跨模態(tài)的圖像轉(zhuǎn)換,從而減少外觀差異的影響。雖然由GAN生成的虛擬圖像與原始圖像相似,但是并不能保證生成與身份相關(guān)的細(xì)節(jié)信息。文獻(xiàn)[11]采用雙流網(wǎng)絡(luò)分別處理不同模態(tài)的圖像,并將隱藏層卷積特征與網(wǎng)絡(luò)輸出特征進(jìn)行融合以增強(qiáng)特征的鑒別能力。這表明隱藏層卷積特征具有描述結(jié)構(gòu)和空間信息的能力,利用隱藏層卷積特征來縮小兩種模態(tài)間差異是一種有效的解決方案。
針對(duì)模態(tài)間和模態(tài)內(nèi)差異問題,本文提出基于對(duì)稱網(wǎng)絡(luò)的跨模態(tài)行人重識(shí)別算法。針對(duì)模態(tài)間差異,受文獻(xiàn)[12]的啟發(fā),本文算法將基于概率分布的模態(tài)混淆這一思想與對(duì)抗學(xué)習(xí)結(jié)合,為可見光模態(tài)和紅外光模態(tài)分別構(gòu)造分類器,構(gòu)成了對(duì)稱網(wǎng)絡(luò),通過最小化兩個(gè)分類器輸出概率分布的差異來產(chǎn)生模態(tài)不變特征,從而達(dá)到模態(tài)混淆的目的;本文還提出混合三元損失,并在對(duì)稱網(wǎng)絡(luò)的不同深度對(duì)齊特征,以減少模態(tài)內(nèi)差異帶來的影響;針對(duì)可見光模態(tài)和紅外光模態(tài)之間存在的外觀差異,本文利用隱藏層卷積特征增強(qiáng)網(wǎng)絡(luò)學(xué)習(xí)空間結(jié)構(gòu)信息的能力,以減少外觀差異帶來的影響。
從可見光圖像集V中選取一個(gè)樣本Vi,再?gòu)募t外光圖像集T中選取一個(gè)樣本Tj,其中Vi和Tj是同一個(gè)人y在不同模態(tài)下的圖像,y∈Y,Y是行人身份(IDentification, ID)的集合。將Vi和Tj輸入到主干網(wǎng)絡(luò)中提取模態(tài)特定特征,然后將特征嵌入公共空間中,獲得特征X,最后輸入到對(duì)應(yīng)的分類器中,獲得相應(yīng)的概率分布Di、Dj。在檢索過程中,給定一個(gè)待檢索圖像,通過網(wǎng)絡(luò)提取圖像特征X,然后將待檢索行人圖像特征和檢索庫(kù)中的圖像特征逐一進(jìn)行距離相似性度量計(jì)算,根據(jù)距離的大小排序得到前k張與待檢索行人最為相似的圖像。
本文提出了一個(gè)對(duì)稱網(wǎng)絡(luò),網(wǎng)絡(luò)由生成器和鑒別器組成,網(wǎng)絡(luò)結(jié)構(gòu)如圖2所示。生成器由兩列獨(dú)立的ResNet50和兩列獨(dú)立的全連接層構(gòu)成,生成器模塊通過兩列ResNet50提取特定模態(tài)下的特征,全連接層將特定模態(tài)特征嵌入公共空間中,學(xué)習(xí)兩種模態(tài)下的公共特征,以減小模態(tài)間差異的影響;生成器通過學(xué)習(xí)數(shù)據(jù)分布來減小模態(tài)差異,混淆鑒別器。鑒別器由可見光分類器和紅外光分類器組成,通過各分類器得到相應(yīng)的類別概率分布以區(qū)分?jǐn)?shù)據(jù)來自哪一模態(tài)。本文算法通過對(duì)鑒別器與生成器進(jìn)行交替訓(xùn)練,減小可見光模態(tài)和紅外光模態(tài)間的模態(tài)差異。

圖2 本文提出的網(wǎng)絡(luò)結(jié)構(gòu)Fig.2 Network structure proposed in this paper
從V、T中分別選取一個(gè)樣本Vi和Tj,并將它們輸入到對(duì)應(yīng)的ResNet50分支中提取模態(tài)特定特征,然后輸入到對(duì)應(yīng)的分類器中,獲得Vi和Tj的概率分布Di和Dj。如果將Tj的特征輸入到可見光分類器中獲得D′j,則概率分布D′j與Di是不同的,甚至有很大的偏差,因?yàn)榭梢姽夥诸惼鳠o法很好地對(duì)紅外光特征進(jìn)行分類。據(jù)此,本文認(rèn)為特定模態(tài)分類器只能對(duì)特定模態(tài)特征進(jìn)行準(zhǔn)確的分類,在已知Vi和Tj以及y的情況下,分類器能夠通過D′j與Di概率分布的差異來判定數(shù)據(jù)來自哪個(gè)模態(tài)。本文使用KL散度來衡量D′j與Di之間的概率分布差異,定義KL散度損失為:
Lkl=KL(D′j,Di)
(1)
式中,D′j與Di是分類器輸出的概率分布。
本文采用交叉熵?fù)p失作為分類器的身份損失,則兩個(gè)分類器的身份損失為:
(2)
式中,N1和N2是該訓(xùn)練批次下相應(yīng)模態(tài)下的樣本數(shù)量,等號(hào)右邊第一項(xiàng)是可見光分類器身份損失,第二項(xiàng)是紅外光分類器身份損失。
為了解決模態(tài)間差異和模態(tài)內(nèi)差異問題,常見的思路是提取特定模態(tài)下特征,然后通過三元損失來縮小模態(tài)間差異和模態(tài)內(nèi)差異。圖3為模態(tài)間差異和模態(tài)內(nèi)差異示意圖,其中模態(tài)間差異指可見光域圖像和紅外光域圖像因成像原理不同而導(dǎo)致成像后圖像上的差異;模態(tài)內(nèi)差異是指在同一模態(tài)下由于行人的姿態(tài)不同、行人類別不同、遮擋、攝像機(jī)視角變化等造成的差異。圖3中,Va代表樣本1的可見光圖像,Vp代表樣本1姿態(tài)不同的另一可見光圖像,Vn代表樣本2的可見光圖像,Vn與Va包含的ID信息不同;而Ta、Tp代表樣本1的紅外光圖像,Tn代表樣本2的紅外光圖像??梢姽庥驁D像V與紅外光域圖像T之間存在模態(tài)間差異;Va、Vp、Vn之間,以及Ta、Tp、Tn之間存在模態(tài)內(nèi)差異。為解決這些差異,文獻(xiàn)[11,13]將三元損失分為模態(tài)間損失和模態(tài)內(nèi)損失兩部分。

圖3 模態(tài)間差異和模態(tài)內(nèi)差異示意圖Fig.3 Schematic diagram of the inter-modal differences and the intra-modal differences
與之前方法不同,本文將三元損失與對(duì)抗學(xué)習(xí)結(jié)合,提出了一種混合三元損失來減小模態(tài)間的差異。當(dāng)通過對(duì)抗學(xué)習(xí)達(dá)到模態(tài)混淆時(shí),不再需要區(qū)分樣本來自哪個(gè)模態(tài),即在不區(qū)分模態(tài)的情況下選擇正樣本特征和負(fù)樣本特征,以進(jìn)行特征對(duì)齊,減小模態(tài)差異。根據(jù)文獻(xiàn)[14],混合三元損失定義為:
(3)
式中,Xa代表錨點(diǎn)樣本的特征,Xp代表正樣本的特征,Xa代表負(fù)樣本的特征,D代表樣本特征之間的歐式距離,ρ為混合三元損失中預(yù)定義的最小間隔。設(shè)置每個(gè)訓(xùn)練批次大小為P·K,其中選取P個(gè)行人ID身份,并從訓(xùn)練集中隨機(jī)為每個(gè)行人ID選取K張可見光圖像和K張紅外光圖像,在將所有的樣本圖像輸入網(wǎng)絡(luò)后,獲得相應(yīng)特征,本文采用歐氏距離度量的方式來衡量樣本特征之間相似度的大小。首先選取一個(gè)特征作為錨點(diǎn)樣本特征;然后從中選取與錨點(diǎn)樣本特征ID信息相同,但是與錨點(diǎn)樣本特征歐氏距離最遠(yuǎn)的正樣本特征作為最不相似的正樣本特征;最后從中選取與錨點(diǎn)樣本特征ID信息不同,且與錨點(diǎn)樣本特征歐氏距離最近的負(fù)樣本特征作為最相似的負(fù)樣本特征,以此組成混合三元損失來訓(xùn)練網(wǎng)絡(luò)。
根據(jù)文獻(xiàn)[11]的思想,為了使網(wǎng)絡(luò)能夠?qū)W習(xí)到更多的空間結(jié)構(gòu)信息,減小顏色差異的影響,本文采用隱藏層卷積特征即來自ResNet50模塊3的特征作為后面全連接層的輸入。在ResNet50的模塊3和模塊4的輸出層使用混合三元損失來優(yōu)化網(wǎng)絡(luò),則總的混合三元損失定義為:
Ltriall=Ltri1+Ltri2
(4)
式中,Ltri1是表示模塊3的混合三元損失,Ltri2是表示模塊4的混合三元損失。
本文的網(wǎng)絡(luò)屬于端到端的對(duì)稱網(wǎng)絡(luò)結(jié)構(gòu),具體的算法步驟如下所示。
Step1:訓(xùn)練網(wǎng)絡(luò)的生成器和鑒別器,使網(wǎng)絡(luò)能對(duì)樣本正確分類。使用身份損失和混合三元損失訓(xùn)練網(wǎng)絡(luò),使網(wǎng)絡(luò)能夠捕獲模態(tài)可鑒別特征。則該步驟總損失為:
L1=Lid+βLtriall
(5)
Step2:訓(xùn)練鑒別器,固定生成器的參數(shù),通過最大化D′j與Di的概率分布差異,提升網(wǎng)絡(luò)分辨圖片模態(tài)屬性的能力。該步驟總損失為:
L2=Lid-αLkl
(6)
Step3:訓(xùn)練生成器以最小化D′j與Di的概率分布差異。此時(shí)凍結(jié)鑒別器的參數(shù),在訓(xùn)練過程中,該步驟循環(huán)三次以平衡生成器和鑒別器??倱p失為:
L3=αLkl+βLtriall
(7)
在對(duì)樣本正確分類前提下,通過對(duì)生成器和鑒別器的交替訓(xùn)練,使D′j與Di的概率分布差異最小化,達(dá)到模態(tài)混淆的目的。
本節(jié)首先介紹實(shí)驗(yàn)所用的數(shù)據(jù)集和評(píng)價(jià)標(biāo)準(zhǔn),其次介紹實(shí)驗(yàn)環(huán)境及參數(shù)設(shè)置。
2.1.1 跨模態(tài)行人重識(shí)別數(shù)據(jù)集介紹
SYSU-MM01[15]是由4個(gè)可見光攝像機(jī)和2個(gè)紅外光攝像機(jī)收集的大規(guī)??缒B(tài)數(shù)據(jù)集。該數(shù)據(jù)集一共有室內(nèi)和室外兩種場(chǎng)景,訓(xùn)練集包含395個(gè)行人ID數(shù)據(jù),其中包括11 909張紅外光圖像和22 258張可見光圖像。測(cè)試集包含96個(gè)行人ID數(shù)據(jù),本文采用文獻(xiàn)[15]的設(shè)置,將測(cè)試集3 803張紅外圖像作為查詢集,并隨機(jī)選擇可見光圖像作為測(cè)試集。
RegDB[16]共有412個(gè)行人ID數(shù)據(jù),這些數(shù)據(jù)由雙攝像頭系統(tǒng)捕獲。每個(gè)ID包含10張可見光圖像和10張紅外光圖像。采用文獻(xiàn)[8,13]的設(shè)定,將數(shù)據(jù)集隨機(jī)分為兩個(gè)部分,每部分隨機(jī)選擇一半數(shù)據(jù)分別用于訓(xùn)練和測(cè)試。
2.1.2 評(píng)價(jià)標(biāo)準(zhǔn)
本文采用首位命中率(Rank-k,R-k)、平均準(zhǔn)確率均值(mean Average Precision,mAP)和累積匹配特征曲線 (Cumulative Matching Curve,CMC)作為評(píng)價(jià)指標(biāo)。CMC為在檢索庫(kù)圖像集合中與待查詢圖像匹配相似度最高的前k張圖片命中查詢圖像的概率,其常以R-k的形式體現(xiàn)。其中mAP的定義為:
(8)
式中,Q代表查詢集數(shù)量,CMC可認(rèn)為是Rank list的可視化。
(9)
本文實(shí)驗(yàn)環(huán)境如下:操作系統(tǒng)為ubuntu16.04,深度學(xué)習(xí)框架為Pytorch1.1,編程語(yǔ)言為python3.6,GPU為NVIDIA GeForce RTX 2080Ti。本文采用ResNet50作為骨干網(wǎng)絡(luò),并采用在ImageNet上預(yù)訓(xùn)練的參數(shù)初始化網(wǎng)絡(luò)權(quán)重,行人的特征維度設(shè)置為1 024。在數(shù)據(jù)處理階段,將輸入圖像大小調(diào)整為288像素×144像素,然后對(duì)邊緣進(jìn)行10層補(bǔ)零填充,將其隨機(jī)左右翻轉(zhuǎn)并裁剪為288像素×144像素進(jìn)行數(shù)據(jù)增廣,設(shè)置K=4,P=16,N=P·K=2N1=2N2張圖像構(gòu)成一個(gè)批次。本文使用自適應(yīng)梯度優(yōu)化器對(duì)網(wǎng)絡(luò)模型進(jìn)行優(yōu)化,其中指數(shù)衰減率被設(shè)置為b1=0.9,b2=0.999。網(wǎng)絡(luò)在訓(xùn)練時(shí),遍歷整個(gè)數(shù)據(jù)集總次數(shù)為80次,初始學(xué)習(xí)速率設(shè)置為0.000 01,然后在第50次中衰減為原來的0.1倍。對(duì)于本文提出的混合三元損失,預(yù)定義的最小間隔均設(shè)置為ρ=0.5,對(duì)于KL系數(shù)α和混合三元損失系數(shù)β,設(shè)置為α=1和β=1.4。
本節(jié)首先對(duì)比分析本文算法與現(xiàn)有的跨模態(tài)行人重識(shí)別算法,最后,通過全面的消融研究,來分析模中每個(gè)組成部分對(duì)算法性能的影響。
將本文方法與跨模態(tài)行人重識(shí)別算法[7-9,11,13,15,17-18]等實(shí)驗(yàn)結(jié)果進(jìn)行對(duì)比,對(duì)比結(jié)果見表1,表1中加粗?jǐn)?shù)值是最大值。由表1可知,本文算法提取到的特征更具有表征能力,這證明了本文算法的有效性。
對(duì)比跨模態(tài)算法[8-9,15,17],本文算法有很大的提升。本文算法在SYSU-MM01數(shù)據(jù)集的R-1結(jié)果比文獻(xiàn)[13]的跨模態(tài)行人重識(shí)別算法的R-1結(jié)果提升10.98%,比文獻(xiàn)[7]的跨模態(tài)行人重識(shí)別算法的結(jié)果提升8.96%;mAP結(jié)果也比文獻(xiàn)[7]的算法結(jié)果提升10.02%,與文獻(xiàn)[7,13]的兩種對(duì)抗學(xué)習(xí)相關(guān)的方法對(duì)比,證明了本文算法的有效性。本文在這兩個(gè)數(shù)據(jù)集上的結(jié)果比文獻(xiàn)[11]的跨模態(tài)行人重識(shí)別算法有所提升,在RegDB的R-1結(jié)果比文獻(xiàn)[11]的算法提升1.16%,R-20提升1.59%,對(duì)比文獻(xiàn)[11]的算法通過跨層融合的方式來使用隱藏層特征,本文使用隱藏層特征的策略更為有效。本文算法在SYSU-MM01數(shù)據(jù)集上mAP的結(jié)果略低于文獻(xiàn)[11]的算法,但檢索算法在實(shí)際應(yīng)用中更注重于R-k指標(biāo),R-k代表在樣本按照相似度排序后,前k個(gè)樣本的命中概率,更能體現(xiàn)檢索算法的實(shí)用性和檢索準(zhǔn)確度。本文算法在R-1,R-10,R-20的結(jié)果均優(yōu)于其他跨模態(tài)算法,通過R-k的結(jié)果足以說明本文算法的有效性和魯棒性。

表1 在RegDB 數(shù)據(jù)集和SYSU-MM01數(shù)據(jù)集上的比較實(shí)驗(yàn)結(jié)果
首先,研究參數(shù)α和β取值對(duì)模型性能的影響。不同α值在RegDB數(shù)據(jù)集上的結(jié)果如圖4所示。當(dāng)α=1時(shí),網(wǎng)絡(luò)的性能達(dá)到了最優(yōu),R-1結(jié)果為53.74%,mAP結(jié)果為53.67%。不同α值在SYSU-MM01數(shù)據(jù)集上的結(jié)果如圖5所示。當(dāng)α=1時(shí), R-1結(jié)果最高為37.86%,mAP結(jié)果為39.22%,此時(shí)在該數(shù)據(jù)集上的結(jié)果達(dá)到了最優(yōu)。

圖4 不同α值在RegDB數(shù)據(jù)集上的結(jié)果Fig.4 Results of different α values on the RegDB dataset

圖5 不同α值在SYSU-MM01數(shù)據(jù)集上的結(jié)果Fig.5 Results of different α values on the SYSU-MM01 dataset
圖6和圖7給出了在β不同取值下,網(wǎng)絡(luò)在兩個(gè)數(shù)據(jù)集上的性能,當(dāng)β=1.4時(shí),網(wǎng)絡(luò)性能達(dá)到最優(yōu)。當(dāng)β=1.4時(shí),在RegDB數(shù)據(jù)集上, R-1為53.40%,mAP為53.75%;在SYSU-MM01上,R-1為37.86%,mAP為39.22 %。從以上實(shí)驗(yàn)還可以看出,本文提出的模型在α和β較寬泛的取值范圍內(nèi)都能取得較好的結(jié)果,這也反映了模型的魯棒性。

圖6 不同β值在RegDB數(shù)據(jù)集上的結(jié)果Fig.6 Results of different β values on the RegDB dataset

圖7 不同β值在SYSU-MM01數(shù)據(jù)集上的結(jié)果Fig.7 Results of different β values on the SYSU-MM01 dataset
本文方法在SYSU-MM01數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果見表2。基準(zhǔn)網(wǎng)絡(luò)(baseline)由兩個(gè)并行獨(dú)立的ResNet50以及兩列共享的全連接層構(gòu)成,baseline僅采用身份損失。baseline的R-1結(jié)果為12.96%,mAP為17.12%。第二組實(shí)驗(yàn)僅增加混合三元損失模塊(即mtri,模塊4的特征),與baseline結(jié)果相比,增加混合三元損失模塊后, R-1結(jié)果提升了10.07%,mAP結(jié)果提升了9.13%,這證明了混合三元損失的有效性。此外,將第二組實(shí)驗(yàn)與第三組實(shí)驗(yàn)(baseline+AL+mtri(4) ,AL代表基于概率分布的模態(tài)混淆)進(jìn)行對(duì)比,當(dāng)增加基于概率分布的模態(tài)混淆模塊后,R-1的結(jié)果提升了3.87%,mAP也提升了5.86%,這也證明了基于概率分布的模態(tài)混淆模塊的有效性。
baseline+AL+tri(4,3)從不同深度優(yōu)化網(wǎng)絡(luò)(即從模塊4,3優(yōu)化網(wǎng)絡(luò)但不使用隱藏層特征),對(duì)比baseline+AL+mtri(4)的結(jié)果,其R-1結(jié)果提升了6.02%,mAP提升了2.72%;對(duì)比baseline+AL+mtri(3,4)(即從模塊3,4優(yōu)化網(wǎng)絡(luò),使用隱藏層特征)和baseline+AL+mtri(3)實(shí)驗(yàn)結(jié)果,在都采用隱藏層特征前提下,證明了從不同深度使用混合三元損失優(yōu)化網(wǎng)絡(luò),可以使網(wǎng)絡(luò)獲得更好的表征能力。對(duì)比baseline+AL+mtri(3)和baseline+AL+mtri(4)的結(jié)果,當(dāng)網(wǎng)絡(luò)采用隱藏層特征時(shí),baseline+AL+mtri(3)的R-1結(jié)果提升了3.37%,mAP結(jié)果提升了2.06%;對(duì)比baseline+AL+mtri(3,4)和baseline+AL+mtri(4,3)結(jié)果,從不同深度優(yōu)化網(wǎng)絡(luò)的前提下,(3,4)使用隱藏層特征,(4,3)不使用隱藏層特征,證明了隱藏層特征可以使網(wǎng)絡(luò)更好地學(xué)習(xí)空間結(jié)構(gòu)信息。

表2 在SYSU-MM01數(shù)據(jù)集上的消融實(shí)驗(yàn)結(jié)果
本文根據(jù)基于概率分布的模態(tài)混淆思想,提出了基于對(duì)稱網(wǎng)絡(luò)的跨模態(tài)行人重識(shí)別算法。將基于概率分布的模態(tài)混淆、對(duì)抗學(xué)習(xí)以及混合三元損失結(jié)合在一起,解決模態(tài)間差異和模態(tài)內(nèi)差異,提高網(wǎng)絡(luò)對(duì)空間結(jié)構(gòu)的關(guān)注度,降低外觀差異帶來的負(fù)面影響。此外,充分利用了隱藏層特征,提高了特征對(duì)空間結(jié)構(gòu)的表征能力。在RegDB和SYSU-MM01的實(shí)驗(yàn)結(jié)果證明了本文方法的有效性。