劉 乾,王洪元*,曹 亮,孫博言,肖 宇,張 繼
(1.常州大學(xué)計(jì)算機(jī)與人工智能學(xué)院、阿里云大數(shù)據(jù)學(xué)院,江蘇常州 213164;2.常州工程職業(yè)技術(shù)學(xué)院設(shè)計(jì)藝術(shù)學(xué)院,江蘇常州 213164)
(?通信作者電子郵箱hywang@cczu.edu.cn)
行人重識(shí)別(Person Re-Identification,Re-ID)是一個(gè)經(jīng)典的計(jì)算機(jī)視覺(jué)問(wèn)題,其目標(biāo)是將不同攝像機(jī)拍攝人物的照片圖像關(guān)聯(lián)起來(lái)。它是一個(gè)重要的研究課題,在跨攝像機(jī)目標(biāo)跟蹤、目標(biāo)再捕獲等方面有著廣泛的應(yīng)用[1]。在過(guò)去幾年里,已經(jīng)提出了幾個(gè)對(duì)社區(qū)有重要貢獻(xiàn)的數(shù)據(jù)集,例如Viper[2]、CUHK03[3]、Market1501[4]、DukeMTMC-reID[5]等。
目前大部分公開(kāi)數(shù)據(jù)集都是基于這樣的假設(shè),即每個(gè)人出現(xiàn)在一個(gè)攝像機(jī)下集中在短時(shí)間情況(例如,不到30 min)。在這種假設(shè)下,行人的衣服不太可能發(fā)生改變。然而,現(xiàn)實(shí)中攝像頭捕獲的行人照片圖像,極大可能是一個(gè)人在相隔很長(zhǎng)一段時(shí)間后再次出現(xiàn)。這種情況下,行人更換衣服或者攜帶不同物品的幾率將會(huì)變大。因此,換衣行人重識(shí)別是行人重識(shí)別在大規(guī)模視頻安防監(jiān)控中常見(jiàn)的、更具有挑戰(zhàn)性的案例。
在目前公開(kāi)的行人重識(shí)別數(shù)據(jù)集研究中,人們主要研究穿著相同衣服的人在短時(shí)間內(nèi)的重新識(shí)別,面臨的主要挑戰(zhàn)是分辨率低、光照條件、季節(jié)、背景和遮擋[6-7]。目前為止,這一領(lǐng)域的研究已經(jīng)趨于成熟,基于特征提取的方法已經(jīng)可以在Market1501 數(shù)據(jù)集上的Rank-1 準(zhǔn)確率達(dá)到95.7%[8],超過(guò)了人眼的識(shí)別能力?,F(xiàn)有的行人重識(shí)別模型的設(shè)計(jì)大多數(shù)基于深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Network,DNN),這些網(wǎng)絡(luò)提取不會(huì)變化的信息作為特征表示,一般來(lái)說(shuō)這些特征表示由衣服外觀主導(dǎo),因此,目前的行人重識(shí)別模型并不適用研究換衣行人重識(shí)別問(wèn)題。Huang 等[9]提出的基于膠囊神經(jīng)網(wǎng)絡(luò)的換衣行人重識(shí)別網(wǎng)絡(luò)ReIDCaps 使用矢量膠囊代替標(biāo)量神經(jīng)元,其長(zhǎng)度代表行人的身份信息,方向表示行人的衣著信息。雖然該模型在換衣行人重識(shí)別問(wèn)題上取得了一些較好的指標(biāo),但是該模型的泛化性和魯棒性仍需要提高。
本文在ReIDCaps[9]的基礎(chǔ)上進(jìn)行改進(jìn),將網(wǎng)絡(luò)的損失函數(shù)由普通的交叉熵?fù)p失改進(jìn)為標(biāo)簽平滑正則化交叉熵[10]與Circle Loss[11]的聯(lián)合損失。聯(lián)合損失在單一交叉熵?fù)p失的基礎(chǔ)上可以提高模型訓(xùn)練時(shí)的泛化能力和魯棒性,從而提升模型的性能指標(biāo)。改進(jìn)后的模型在Celeb-reID[9]、Celeb-reIDlight[9]和NKUP[12]數(shù)據(jù)集上的大量實(shí)驗(yàn)驗(yàn)證了本文方法的有效性。
隨著近幾年行人重識(shí)別領(lǐng)域研究的發(fā)展,已經(jīng)有多個(gè)行人重識(shí)別數(shù)據(jù)集中在衣服的變化上,這些數(shù)據(jù)集分為兩類:基于視頻的和基于圖片的?,F(xiàn)有的基于視頻的換衣行人重識(shí)別數(shù)據(jù)集有DPI-T[13]、IAS-Lab[14]、BIWI[15]和PAVIS[16],這些數(shù)據(jù)集目標(biāo)是在RGB-D 視頻中識(shí)別出一個(gè)行人。由于大多數(shù)安裝在公共區(qū)域的監(jiān)視設(shè)備不能捕捉深度信息,這些數(shù)據(jù)集是專門為特定的室內(nèi)監(jiān)視場(chǎng)景而設(shè)計(jì)和收集的?,F(xiàn)有的基于圖像的換衣行人重識(shí)別數(shù)據(jù)集有Celeb-reID[9]、PRCC[17],COCAS[18]、LTCC[19]和NKUP[12],這些數(shù)據(jù)集的目標(biāo)是在RGB圖像中識(shí)別出一個(gè)行人,這些圖像是為一般公共區(qū)域監(jiān)控場(chǎng)景而設(shè)計(jì)和收集的。盡管應(yīng)用場(chǎng)景不同,但這些基于視頻和基于圖像的數(shù)據(jù)集都有利于促進(jìn)換衣行人重識(shí)別研究的進(jìn)一步發(fā)展。
深度學(xué)習(xí)在解決行人重識(shí)別任務(wù)上取得了很大的成功,但目前基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)的行人重識(shí)別方法主要針對(duì)的是非換衣的行人重識(shí)別問(wèn)題。之前由于缺乏大規(guī)模的換衣行人數(shù)據(jù)集,關(guān)于換衣行人重識(shí)別的研究較少,但隨著越來(lái)越多的換衣行人數(shù)據(jù)集的公開(kāi),相關(guān)研究也豐富起來(lái)。目前的研究主要是從體型、輪廓等提取與衣著無(wú)關(guān)的特征。文獻(xiàn)[17]中基于人體圖像的輪廓草圖來(lái)研究換衣行人重識(shí)別問(wèn)題,在深度神經(jīng)網(wǎng)絡(luò)中引入基于學(xué)習(xí)空間極坐標(biāo)變換(Spatial Polar Transformation,SPT)層來(lái)變換輪廓草圖圖像,以在極坐標(biāo)空間中提取可靠且有判別性的卷積神經(jīng)網(wǎng)絡(luò)特征。文獻(xiàn)[18]中提出了一種將生物特征和服裝特征結(jié)合起來(lái)進(jìn)行身份識(shí)別的生物特征服裝網(wǎng)絡(luò)(Biometric-Clothes Network,BC-Net)。文獻(xiàn)[19]中引入了形狀嵌入模塊和衣物形狀提取模塊,目的在于消除目前不可靠的服裝外觀特征,并將重點(diǎn)放在身體形狀信息上,因?yàn)樵趽Q衣情況下,身體形狀等軟生物特征會(huì)更可靠。然而,目前的換衣行人重識(shí)別研究主要是從人體姿態(tài)或輪廓中用已有的預(yù)測(cè)模型提取身體特征信息,這些特征提取會(huì)因?yàn)槟P皖A(yù)測(cè)的誤差而導(dǎo)致提取的特征所包含的正確形態(tài)信息非常有限,泛化能力弱,魯棒性不強(qiáng);此外,這些額外的姿態(tài)或輪廓估計(jì)增加了這些方法的計(jì)算成本。
2017 年,采用動(dòng)態(tài)路由機(jī)制的膠囊網(wǎng)絡(luò)被提出用于解決手寫(xiě)數(shù)字識(shí)別問(wèn)題[20]。目前膠囊網(wǎng)絡(luò)已經(jīng)被成功地用于許多計(jì)算機(jī)視覺(jué)任務(wù)中,如圖像分割[21]、數(shù)據(jù)生成[22]、圖像分類[20]等。用一組矢量神經(jīng)元表示膠囊,其長(zhǎng)度表示實(shí)體的存在性,方向表示實(shí)體的其他屬性。文獻(xiàn)[20]中提出的DigitCaps 模型證實(shí)對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行小仿射變換可以適度提高其魯棒性。2018 年,文獻(xiàn)[23]中引入了另一個(gè)基于膠囊的網(wǎng)絡(luò),該網(wǎng)絡(luò)使用期望最大化算法執(zhí)行動(dòng)態(tài)路由機(jī)制[23]。與前人的工作不同,膠囊網(wǎng)絡(luò)由姿態(tài)矩陣表示,網(wǎng)絡(luò)中的膠囊層專門用于定義視點(diǎn)更改對(duì)象的旋轉(zhuǎn)和平移。Huang 等[9]提出的Celeb-ReID數(shù)據(jù)集主要受到行人衣著變化的影響,與姿態(tài)矩陣膠囊相比,文獻(xiàn)[20]中提出的基于矢量的膠囊更適合換衣行人重識(shí)別的情況,因?yàn)樗軌蚋兄總€(gè)實(shí)體的屬性線索。ReIDCaps[9]模型主要是由DigitCaps[20]推動(dòng)的。除了DigitCaps,ReIDCaps 還集成了經(jīng)過(guò)ImageNet 訓(xùn)練的CNN 來(lái)提取底層的視覺(jué)信息,因?yàn)樵贗mageNet 上預(yù)先訓(xùn)練過(guò)的CNN 在許多重識(shí)別任務(wù)中的表現(xiàn)都很出色。這是第一個(gè)將膠囊與經(jīng)過(guò)ImageNet 訓(xùn)練的CNN 在復(fù)雜數(shù)據(jù)集上進(jìn)行集成的工作,特別是關(guān)于行人重識(shí)別的數(shù)據(jù)。
ReIDCaps[9]不用提取額外的姿態(tài)或輪廓信息,計(jì)算成本相較低。相較于一般的行人重識(shí)別模型,矢量膠囊擁有更多的信息,其長(zhǎng)度表示行人身份信息,其方向表示行人衣著信息;但該模型依然存在泛化能力差、魯棒性不強(qiáng)的問(wèn)題。本文在ReIDCaps 模型的基礎(chǔ)上增加了標(biāo)簽平滑正則化交叉熵?fù)p失和Circle Loss 的聯(lián)合損失,通過(guò)減少真實(shí)樣本標(biāo)簽的類別在計(jì)算損失函數(shù)時(shí)的權(quán)重和將類間和類內(nèi)的相似性嵌入到相似對(duì)中進(jìn)行優(yōu)化的方法,抑制過(guò)擬合,收斂目標(biāo)明確,從而提高模型的泛化性和魯棒性。
本文方法整體框架如圖1,分為三個(gè)主要模塊:1)視覺(jué)特征提取模塊,采用ImageNet 預(yù)訓(xùn)練的CNN 模型提取每幅圖像的底層視覺(jué)特征,然后將這些特征送入膠囊網(wǎng)絡(luò)以感知行人身份信息和衣著信息;2)行人身份信息和著裝感知模塊,采用膠囊層來(lái)感知圖像的行人身份信息和著裝信息,行人身份信息通過(guò)每個(gè)矢量膠囊的長(zhǎng)度來(lái)感知,行人的著裝信息通過(guò)每個(gè)矢量膠囊的方向來(lái)感知;3)輔助模塊,用于進(jìn)一步提高從ReIDCaps 模塊中學(xué)習(xí)到的特征的區(qū)分度,提高模型的魯棒性。
圖1 本文方法的整體框架Fig.1 Overall framework of the proposed method
其中:γ用于平衡膠囊層和輔助模塊的貢獻(xiàn)權(quán)重。文獻(xiàn)[20]中提出γ=0.5時(shí)效果最佳,所以本文實(shí)驗(yàn)也取γ=0.5。
ReIDCaps 中使用矢量膠囊來(lái)了解服裝變化的特性。在訓(xùn)練中,膠囊的長(zhǎng)度CL反映行人的身份信息存在的可能性,膠囊的方向CO代表同一個(gè)行人身份的不同類型的衣服。為了實(shí)現(xiàn)這一點(diǎn),本文方法在之后采用了兩個(gè)不同的膠囊層,分別是基礎(chǔ)膠囊層(Primary Capsules,P-Caps)和分類膠囊層(Classification Capsules,C-Caps)[20]。這兩層都在文獻(xiàn)[20]中提出,用于手寫(xiě)數(shù)字識(shí)別。但在ReIDCaps 網(wǎng)絡(luò)設(shè)計(jì)中,更改了兩層上的參數(shù)設(shè)置,以適應(yīng)ReID 任務(wù)和經(jīng)過(guò)ImageNet訓(xùn)練的CNN 骨干網(wǎng)絡(luò)。具體地說(shuō),給定O(Ixn),8 個(gè)32 通道卷積運(yùn)算(卷積核大小2×2,步長(zhǎng)為2)用于構(gòu)造P-Caps。使用重構(gòu)操作來(lái)級(jí)聯(lián)P-Caps中的每個(gè)塊(總共8個(gè)塊)的對(duì)應(yīng)信道。之后,在P-Caps層中得到288(3×3×32)個(gè)8維矢量膠囊。最后使用非線性擠壓函數(shù)來(lái)確保每個(gè)矢量膠囊的長(zhǎng)度歸一化:
C-Caps 層之后是P-Caps 層。在C-Caps 層中有N個(gè)行人身份膠囊,N表示訓(xùn)練集中行人身份數(shù)量。C-Caps 中每個(gè)行人身份膠囊是P-Caps層中所有矢量膠囊的組合。給定P-Caps中的8 維矢量v8Dk,本文方法將其維度映射到24 維。然后,C-Caps層中的行人身份膠囊可以通過(guò)以下公式計(jì)算:
其中:n∈[1,N];代表耦合系數(shù),該耦合系數(shù)由P-Caps 和CCaps 層之間的動(dòng)態(tài)路由過(guò)程確定。這里24 維的使用擠壓函數(shù)歸一化(參考式(2))。動(dòng)態(tài)路由是建立P-Caps 層和C-Caps 層之間關(guān)系的關(guān)鍵技術(shù),本文采用的動(dòng)態(tài)路由與文獻(xiàn)[20]中的描述相似。
輸入一個(gè)給定圖像,使用邊際損失(Margin Loss)作為該模塊的損失函數(shù):
其中:yn表示輸入圖像的行人身份是否存在,存在的話yn=1,否則yn=0。使用λ=0.5 來(lái)平衡兩部分之間的權(quán)重,用m+和m-來(lái)控制的長(zhǎng)度。由于剛剛的假設(shè),如果行人身份存在的話,那么C24Dn的長(zhǎng)度應(yīng)該是長(zhǎng)的,否則應(yīng)該是短的,所以設(shè)。
輔助模塊主要包含F(xiàn)SR和SEA模塊。在將經(jīng)過(guò)骨干網(wǎng)絡(luò)的輸出采用全局平均池化,以獲得輸入圖像Ixn的CNN 表示:
其中:H和W分別代表的高度和寬度;在全局平均池化層之后,將FSR和SEA的輸入分別表示為。
FSR 目的是提高基于CNN 輸出的泛化能力。Dropout 層已經(jīng)證明了其在網(wǎng)絡(luò)訓(xùn)練中可以通過(guò)隨機(jī)將部分神經(jīng)元置為零來(lái)防止CNN 過(guò)擬合[25],使用Dropout 可以使成為稀疏表示,在反向傳播時(shí)轉(zhuǎn)移到,潛在地提高了整個(gè)網(wǎng)絡(luò)的魯棒性。
原ReIDCaps 里使用交叉熵?fù)p失在FSR 和SEA 分支對(duì)訓(xùn)練集中行人身份進(jìn)行分類,本文中使用交叉熵?fù)p失,采用標(biāo)簽平滑正則化交叉熵?fù)p失[10]與Circle Loss[11]的聯(lián)合損失作為最終的損失函數(shù)。
多分類任務(wù)中,神經(jīng)網(wǎng)絡(luò)會(huì)輸出一個(gè)當(dāng)前數(shù)據(jù)對(duì)應(yīng)于各個(gè)類別的置信度分?jǐn)?shù),將這些分?jǐn)?shù)通過(guò)Softmax 進(jìn)行歸一化處理,最終會(huì)得到當(dāng)前數(shù)據(jù)屬于每個(gè)類別的概率,然后會(huì)計(jì)算交叉熵?fù)p失函數(shù)。隨后訓(xùn)練神經(jīng)網(wǎng)絡(luò),最小化預(yù)測(cè)概率和標(biāo)簽真實(shí)概率之間的交叉熵,從而得到最優(yōu)的預(yù)測(cè)分布。神經(jīng)網(wǎng)絡(luò)會(huì)促使自身往正確標(biāo)簽和錯(cuò)誤標(biāo)簽差值最大的方向?qū)W習(xí),在訓(xùn)練數(shù)據(jù)較少,不足以表征所有樣本特征的情況下,會(huì)導(dǎo)致網(wǎng)絡(luò)過(guò)擬合。標(biāo)簽平滑正則化的交叉熵可以解決上述問(wèn)題,這是一種正則化策略,主要是通過(guò)soft one-hot來(lái)加入噪聲,減少了真實(shí)樣本標(biāo)簽的類別在計(jì)算損失函數(shù)時(shí)的權(quán)重,最終起到抑制過(guò)擬合的效果。
其中:I為行人身份數(shù);K為圖片數(shù)量;N為行人類別數(shù);pi,j為預(yù)測(cè)概率,qi,j為真實(shí)概率;ε為平滑因子。
Circle Loss[11]對(duì)于深度特征學(xué)習(xí)的優(yōu)化過(guò)程提出了兩點(diǎn)見(jiàn)解。首先,大部分損失函數(shù),包括三元組損失和分類損失,都是通過(guò)將類間和類內(nèi)的相似性嵌入到相似對(duì)中進(jìn)行優(yōu)化;其次,在監(jiān)督下的相似對(duì)中,每一個(gè)相似性分?jǐn)?shù)根據(jù)其到最優(yōu)效果的距離而賦予不同的懲罰強(qiáng)度。由此得到了Circle Loss,使得每一個(gè)相似度分?jǐn)?shù)可以以不同的梯度學(xué)習(xí)。Circle Loss優(yōu)化靈活性高,收斂目標(biāo)明確,有利于深度特征學(xué)習(xí),而且它將兩種基本的學(xué)習(xí)方法(即基于類別標(biāo)簽和基于樣本對(duì)的學(xué)習(xí))統(tǒng)一到一個(gè)公式中。文獻(xiàn)[11]的實(shí)驗(yàn)結(jié)果也表明Circle Loss在行人重識(shí)別任務(wù)中有比較好的表現(xiàn)。
其中:sp為類內(nèi)相似性,sn為類間相似性;K為類內(nèi)相似性分?jǐn)?shù)個(gè)數(shù),L為類間相似性分?jǐn)?shù)個(gè)數(shù);γ是尺度參數(shù);m是優(yōu)化的嚴(yán)格程度。
改進(jìn)后的FSR 和SEA 模塊的損失使用交叉熵?fù)p失、標(biāo)簽平滑正則化損失和Circle Loss 三個(gè)損失的聯(lián)合損失作為最終的損失。
相較于單一的交叉熵?fù)p失函數(shù),標(biāo)簽平滑正則化交叉熵?fù)p失可以防止模型過(guò)擬合;而Circle Loss 將度量損失與分類損失進(jìn)行了統(tǒng)一化,相較于單一的交叉熵?fù)p失,這兩種損失聯(lián)合對(duì)于模型的訓(xùn)練能夠更加魯棒,從而提升整個(gè)模型的性能指標(biāo)。
本文在Celeb-reID、Celeb-reID-light 和NKUP 三個(gè)不同的換衣行人重識(shí)別數(shù)據(jù)集進(jìn)行了大量實(shí)驗(yàn),以驗(yàn)證本文方法的有效性。
Celeb-reID 數(shù)據(jù)集分為三個(gè)子集,包括訓(xùn)練集、圖庫(kù)集和查詢集。該數(shù)據(jù)集中同一個(gè)行人的衣著發(fā)生了很大的變化,但其中也存在一個(gè)行人可能會(huì)穿著同一件衣服兩次的情況。具體地說(shuō),總體上每個(gè)行人70%以上的圖片都展示了不同的衣著。該數(shù)據(jù)集中有1 052 個(gè)行人身份,共計(jì)34 186 張圖片;訓(xùn)練使用632 個(gè)行人身份,圖片20 208 張;測(cè)試使用420 個(gè)行人身份,圖片13 978 張。在測(cè)試集中,2 972 張圖片被用作查詢集,11 006張被用作圖庫(kù)集。此外,一般的數(shù)據(jù)集中只包含前視圖和側(cè)視圖,而該數(shù)據(jù)集中包含一些后視圖。
Celeb-reID-light 數(shù)據(jù)集是Celeb-reID 數(shù)據(jù)集的輕量級(jí)版本。與Celeb-reID 不同的是,在Celeb-reID-light中的行人不會(huì)兩次穿同一件衣服[27]。該數(shù)據(jù)集中有590 個(gè)行人身份,訓(xùn)練使用490 個(gè)行人身份,圖片9 021 張;測(cè)試使用100 個(gè)行人身份,圖片1 821張。在測(cè)試集中,887張圖片被用作查詢集,934張圖片被用作圖庫(kù)集。雖然Celeb-reID-light 的尺度比CelebreID 的小,但當(dāng)一個(gè)人穿著完全不同的衣服時(shí),它可以用來(lái)證明Re-ID方法的魯棒性。
NKUP 是從現(xiàn)實(shí)生活中提取的可公開(kāi)的換衣行人重識(shí)別數(shù)據(jù)集,有很長(zhǎng)的時(shí)間間隔和多個(gè)鏡頭。NKUP 數(shù)據(jù)集包含107 個(gè)行人,總共9 738 張行人圖片,其中總共79 個(gè)穿著不同衣服的行人,其余穿著單一衣服的行人用作測(cè)試對(duì)象。
本文使用Rank-k和平均精度均值(mean Average Precision,mAP)評(píng)估方法的性能,Rank-k表示在排名前k個(gè)列表中正確匹配的概率,反映的是檢索精度;mAP 反映的是召回率。
本文采用經(jīng)過(guò)ImageNet 預(yù)訓(xùn)練的DenseNet121[24]作為特征提取的骨干網(wǎng)絡(luò),輸出的特征向量為1 024維。將特征向量分別輸入視覺(jué)特征提取模塊和輔助模塊。因?yàn)閷?shí)驗(yàn)訓(xùn)練與測(cè)試的數(shù)據(jù)集為換衣行人重識(shí)別數(shù)據(jù)集,所以使用與訓(xùn)練一般行人重識(shí)別網(wǎng)絡(luò)不同的策略,因?yàn)榭紤]換衣行人重識(shí)別,模型需要產(chǎn)生更多可學(xué)習(xí)的參數(shù),以適應(yīng)有關(guān)服裝變化的附加信息。該網(wǎng)絡(luò)訓(xùn)練過(guò)程中,每個(gè)批次包含20 張圖像。設(shè)置經(jīng)ImageNet 訓(xùn)練的DenseNet121 中的初始學(xué)習(xí)率為1E-4,并且在DenseNet 輸出之后的新的網(wǎng)絡(luò)中的初始學(xué)習(xí)率設(shè)置為1E-3。所輸入的圖像的大小都調(diào)整為224×224,并且在訓(xùn)練前隨機(jī)翻轉(zhuǎn)和隨機(jī)擦除(概率設(shè)為0.5)。使用Adam 隨機(jī)優(yōu)化[28],參數(shù)β1=0.9,β2=0.999。80個(gè)訓(xùn)練周期后學(xué)習(xí)率下降到原來(lái)的1/10,100 個(gè)周期后停止訓(xùn)練。Celeb-reID、CelebreID-light 和NKUP 的訓(xùn)練行人身份數(shù)N=632,490,102,標(biāo)簽平滑正則化交叉熵?fù)p失的參數(shù)ε=0.1,Circle Loss 的參數(shù)設(shè)置為γ=128,m=0.25。
整個(gè)實(shí)驗(yàn)基于Ubuntu 16.04、Cuda10 和Cudnn7.6 的環(huán)境和Python 3.8、Pytorch 1.7.0 和torchvision 0.8.1 深度學(xué)習(xí)框架實(shí)現(xiàn),實(shí)驗(yàn)的硬件配置包括:4 塊GPU:GTX 2080Ti(顯存:11 GB)。
本文在三個(gè)換衣行人重識(shí)別的數(shù)據(jù)集上進(jìn)行了ReIDCaps基線(Baseline)方法(本文比對(duì)的實(shí)驗(yàn)數(shù)據(jù)基于以上的實(shí)驗(yàn)環(huán)境復(fù)現(xiàn)原文代碼所得)、僅帶有標(biāo)簽平滑正則化交叉熵?fù)p失(Label Smooth Regularization)的ReIDCaps 方法、僅帶有Circle Loss 的ReIDCaps 方法和標(biāo)簽平滑正則化交叉熵和Circle Loss聯(lián)合損失的ReIDCaps方法的實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1所示。在Celeb-reID、Celeb-reID-light和NKUP 三個(gè)數(shù)據(jù)集上,在基線方法上加入標(biāo)簽平滑正則化損失之后,mAP 分別提高了0.7、0.2、1 個(gè)百分點(diǎn);Rank-1 提高了2、-0.3、1 個(gè)百分點(diǎn),因?yàn)樵摀p失可以防止模型過(guò)擬合。在基線方法上進(jìn)加入Circle Loss 損失之后,mAP 分別提高了0.8、0.7、1.5 個(gè)百分點(diǎn);Rank-1 提高了1、0.2、-0.9 個(gè)百分點(diǎn),因?yàn)樵摀p失將類內(nèi)距離與類間距離統(tǒng)一化,提高了模型的泛化性。絕大多數(shù)實(shí)驗(yàn)結(jié)果表明這兩種方法單獨(dú)對(duì)模型的性能都有所提升。采用標(biāo)簽平滑正則化交叉熵?fù)p失和Circle Loss 的聯(lián)合損失之后,mAP 分別提高了1.1、0.9、2.2 個(gè)百分點(diǎn);Rank-1 分別提高了0.5、0.9、1.8 個(gè)百分點(diǎn)。絕大多數(shù)性能指標(biāo)較單獨(dú)加入一個(gè)損失函數(shù)相比都有所提升,且達(dá)到了最優(yōu)值。由此可見(jiàn)兩種損失的組合可以共同提高整個(gè)模型的魯棒性,提升換衣行人重識(shí)別的匹配精度。
表1 僅標(biāo)簽平滑正則化、僅Circle Loss和標(biāo)簽平滑正則化和Circle Loss聯(lián)合損失在三個(gè)數(shù)據(jù)集上的性能比較 單位:%Tab.1 Performance comparison of only smooth regularization loss,only Circle Loss and joint loss of label smooth regularization loss and Circle Loss on three datasets unit:%
除了以上對(duì)比實(shí)驗(yàn),本文方法也和一些先進(jìn)的非換衣行人重識(shí)別方法做了比較。在Celeb-reID、Celeb-reID-light 和NKUP 三個(gè)換衣行人重識(shí)別數(shù)據(jù)集上進(jìn)行了比較,選取了四種不同的粗粒度行人重識(shí)別方法包括IDE+(DenseNet-121)、ResNet-Mid[29]、Two-Stream[30]、Multi-Level Factorisation Net(MLFN)[31]和一種細(xì)粒度行人重識(shí)別方法PCB(Part-based Convolutional Baseline)[32],以及本文改進(jìn)前的換衣行人重識(shí)別網(wǎng)絡(luò)ReIDCaps[9]。粗粒度方法使用整個(gè)圖像作為輸入,而細(xì)粒度方法同時(shí)考慮全身和身體局部的特征。這些方法都在非換衣行人重識(shí)別場(chǎng)景下取得很好的表現(xiàn),如表2 所示。在Celeb-reID 換衣行人重識(shí)別數(shù)據(jù)集上,本文方法Rank-1 達(dá)到10.8%,mAP 達(dá)到51.6%;在Celeb-reID-light 小型換衣行人重識(shí)別數(shù)據(jù)集上Rank-1 達(dá)到11.1%,mAP 達(dá)到21.5%。在這兩個(gè)數(shù)據(jù)集上和對(duì)比的方法相比均取得了最優(yōu)的性能指標(biāo)。在NKUP 數(shù)據(jù)集上,本文方法的Rank-1 達(dá)到了7.5%,mAP 達(dá)到8.3%,mAP 為最優(yōu)指標(biāo),Rank-1指標(biāo)略低于PCB,優(yōu)于其他方法。由此可見(jiàn),本文提出的基于聯(lián)合損失的膠囊換衣行人重識(shí)別網(wǎng)絡(luò)在綜合性能上優(yōu)于對(duì)比的絕大部分先進(jìn)非換衣行人重識(shí)別方法,在三個(gè)換衣行人重識(shí)別數(shù)據(jù)集上驗(yàn)證結(jié)果幾乎都一致,增加標(biāo)簽平滑正則化交叉熵?fù)p失和Circle Loss 聯(lián)合損失后,提高了模型的泛化能力和魯棒性,在三個(gè)換衣行人重識(shí)別數(shù)據(jù)集的實(shí)驗(yàn)結(jié)果也驗(yàn)證了該方法的有效性。
表2 本文方法與現(xiàn)有方法比較 單位:%Tab.2 Comparison of the proposed method with the existing methods unit:%
本文提出了一個(gè)基于標(biāo)簽平滑正則化交叉熵?fù)p失和Circle Loss 聯(lián)合損失的膠囊換衣行人重識(shí)別網(wǎng)絡(luò)。首先使用ImageNet 預(yù)訓(xùn)練DenseNet121 骨干網(wǎng)絡(luò),提取底層視覺(jué)特征,然后使用膠囊網(wǎng)絡(luò)作為行人身份和衣著感知模塊。為了提高整個(gè)模型的魯棒性,還加入了輔助模塊,并且對(duì)于輔助模塊的損失函數(shù)進(jìn)行改進(jìn),使用標(biāo)簽平滑正則化交叉熵?fù)p失與Circle Loss 聯(lián)合損失。在三個(gè)換衣行人重識(shí)別數(shù)據(jù)集CelebreID、Celeb-reID-light 和NKUP 上的實(shí)驗(yàn)表明,本文方法具有一定的優(yōu)越性。本文方法雖然提高了一些性能指標(biāo),但和其他方法一樣,對(duì)于換衣行人重識(shí)別整體性能不高,可見(jiàn)換衣行人重識(shí)別確實(shí)是一個(gè)非常困難的任務(wù),如何能夠更好地提高換衣行人重識(shí)別的模型性能,使其可以達(dá)到與非換衣行人重識(shí)別數(shù)據(jù)集上相當(dāng)?shù)男阅埽沁M(jìn)一步需要研究的目標(biāo)。