韓 珂,賈 冕,王乾隆
(華北水利水電大學(xué) 信息工程學(xué)院,河南 鄭州450046)
我國(guó)“十三五”規(guī)劃以來(lái),大力建設(shè)天網(wǎng)工程、雪亮工程和平安城市重大工程,目前已擁有世界上最先進(jìn)的視頻監(jiān)控網(wǎng)絡(luò)。數(shù)量眾多的攝像頭產(chǎn)生了海量的視頻數(shù)據(jù),然而這些視頻數(shù)據(jù)并沒(méi)有得到充分有效的利用。傳統(tǒng)的視頻監(jiān)控系統(tǒng)只能將拍攝的圖像或視頻存儲(chǔ)起來(lái),若要提取這些視頻圖像,則需要采用人工值守或人工瀏覽的方式,完成分析與處理過(guò)程。隨著深度學(xué)習(xí)方法的廣泛應(yīng)用,能夠自動(dòng)分析與處理視頻的軟硬件系統(tǒng)不斷涌現(xiàn),而行人作為大多數(shù)視頻監(jiān)控的主要對(duì)象,對(duì)其視頻進(jìn)行有效的分析和處理,自然就成了研究的熱點(diǎn)。
目前較成熟的人臉識(shí)別技術(shù)已廣泛應(yīng)用于人的身份認(rèn)證,但在實(shí)際場(chǎng)景中,行人的遮擋、攝像頭分辨率的高低、光線的明暗等限制性因素的影響,往往會(huì)導(dǎo)致所拍攝正面人臉的圖像不清晰、不完整問(wèn)題,這給行人識(shí)別造成了不小的麻煩。行人重識(shí)別(Person Re-identification,ReID)技術(shù)能對(duì)人臉識(shí)別做重要補(bǔ)充,根據(jù)行人的身形體態(tài)、著裝特點(diǎn)等信息進(jìn)行匹配識(shí)別后,把目標(biāo)人員在不同監(jiān)控視頻中出現(xiàn)的視頻信息關(guān)聯(lián)起來(lái),進(jìn)行視頻結(jié)構(gòu)化分析后形成清晰的蹤跡[1],以實(shí)現(xiàn)跨場(chǎng)景、跨攝像頭的行人目標(biāo)追蹤。本文擬設(shè)計(jì)一種基于行人重識(shí)別的目標(biāo)跨鏡追蹤系統(tǒng),使系統(tǒng)具有行人目標(biāo)圖像匹配和行人目標(biāo)跨鏡追蹤兩大核心功能,以便有效地對(duì)目標(biāo)人員進(jìn)行多場(chǎng)景下多攝像頭的持續(xù)追蹤。
ReID是一種判斷圖像或者視頻中是否出現(xiàn)某個(gè)行人的技術(shù),通常被看作圖像檢索的子問(wèn)題[2]。該技術(shù)可以根據(jù)行人的穿著和身形姿態(tài),判斷不同區(qū)域的不同攝像頭所拍攝圖像中的行人是否為同一個(gè)人。行人重識(shí)別的流程主要包括特征提取和相似度度量(圖1)。早期的ReID系統(tǒng)需要手工設(shè)計(jì)提取特征,且其提取特征的能力有限,難于學(xué)習(xí);新的ReID系統(tǒng)能通過(guò)卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)進(jìn)行特征提取,通過(guò)相似程度的計(jì)算來(lái)訓(xùn)練特征提取網(wǎng)絡(luò),并能在推理階段精確計(jì)算兩張圖像的相似程度。
圖1 行人重識(shí)別的流程
從圖1可以看到,一個(gè)完整的行人重識(shí)別流程包括:首先從監(jiān)控?cái)z像頭處獲取原始視頻幀;然后對(duì)這些視頻幀進(jìn)行行人檢測(cè),截取行人圖像后構(gòu)成圖片集;再利用ReID技術(shù)進(jìn)行特征提取和相似度度量;最后輸出已排序的識(shí)別結(jié)果。
實(shí)際應(yīng)用場(chǎng)景下拍攝監(jiān)控視頻的質(zhì)量會(huì)受到很多因素的影響,例如視角變化、行人姿態(tài)、遮擋現(xiàn)象、穿著配飾、光照強(qiáng)度、背景變化、攝像機(jī)參數(shù)等,給行人重識(shí)別的順利進(jìn)行帶來(lái)了不小的挑戰(zhàn)[3]。基于深度學(xué)習(xí)的行人重識(shí)別過(guò)程離不開(kāi)大量的圖像數(shù)據(jù)[4],而數(shù)據(jù)集質(zhì)量的好壞會(huì)直接影響最終訓(xùn)練的效果。此前,學(xué)術(shù)界已公開(kāi)許多高品質(zhì)的圖像數(shù)據(jù)集。表1所示為常見(jiàn)的5種ReID圖像數(shù)據(jù)集的情況。
表1 常見(jiàn)的5種ReID圖像數(shù)據(jù)集的情況
Market-1501圖像數(shù)據(jù)集是由清華大學(xué)采集并于2015年發(fā)布的一個(gè)大規(guī)模ReID圖像數(shù)據(jù)集[5]。該數(shù)據(jù)集的室外攝像頭包括1個(gè)低清的和5個(gè)高清的;行人檢測(cè)框是通過(guò)可變形部件模型(Deformable Parts Model,DPM)目標(biāo)檢測(cè)算法生成的;訓(xùn)練集由751個(gè)行人的12 936張圖像構(gòu)成,測(cè)試集由750個(gè)行人的19 732張圖像構(gòu)成,且測(cè)試集中包含作為干擾項(xiàng)的2 793張行人圖像。該數(shù)據(jù)集采集的圖像大部分是光照條件較好的,但有些圖像只檢測(cè)到了行人的局部,比較符合真實(shí)場(chǎng)景。它是該領(lǐng)域最常用的數(shù)據(jù)集之一。
ReID算法模型的常用評(píng)價(jià)指標(biāo)有Rank-k、CMC和mAP。
指標(biāo)Rank-k表示匹配列表中排序前k張行人圖像中能正確匹配的圖像比例。而Rank-1為首位命中率(或Rank-1 Accuracy),是指按照相似度排序后生成的匹配列表中,排在第一張的行人圖像占正確匹配圖像的比例。指標(biāo)Rank-k的計(jì)算式為:
(1)
式中:n表示待查詢圖像的總量;Si表示匹配列表中排序前i張圖像是否能匹配成功,如果能則Si為1,如果不能則Si為0。k的值一般取5和10。相比存在波動(dòng)的Rank-1來(lái)說(shuō),用Rank-5和Rank-10對(duì)算法模型的評(píng)價(jià)會(huì)更加全面。
指標(biāo)CMC是累積匹配特征曲線(Cumulative Matching Curve),可以理解為Rank-k的一種可視化方式。該指標(biāo)綜合考慮了Rank-1至Rank-k的所有值,并可以直觀地反映算法模型的性能。評(píng)價(jià)時(shí),首先計(jì)算Rank-1至Rank-10;然后以k為橫坐標(biāo),以Rank-k為縱坐標(biāo)作曲線即可。
一般來(lái)說(shuō),為更加全面地衡量算法模型的質(zhì)量,往往需要同時(shí)考慮準(zhǔn)確率和召回率,然而指標(biāo)CMC注重準(zhǔn)確率而忽略了召回率。針對(duì)這個(gè)問(wèn)題,Zheng等提出了指標(biāo)mAP[6]。mAP是所有查詢樣本平均精度的平均值,能夠兼顧準(zhǔn)確率和召回率,較全面地評(píng)價(jià)ReID算法模型的性能。
綜合考慮系統(tǒng)的性能需求、實(shí)用程度和訓(xùn)練難度后,本文對(duì)基于全局特征的行人重識(shí)別網(wǎng)絡(luò)模型結(jié)構(gòu)進(jìn)行適當(dāng)調(diào)整,并采用特定的訓(xùn)練技巧在Market-1501圖像數(shù)據(jù)集上進(jìn)行了訓(xùn)練和測(cè)試。
一般來(lái)說(shuō),骨干網(wǎng)絡(luò)模型在執(zhí)行計(jì)算機(jī)視覺(jué)任務(wù)中的主要作用是對(duì)圖像進(jìn)行特征提取,網(wǎng)絡(luò)結(jié)構(gòu)的性能直接取決于骨干網(wǎng)絡(luò)的質(zhì)量。AlexNet和ResNet50都是圖像處理時(shí)常用的網(wǎng)絡(luò)模型,但已有的實(shí)驗(yàn)結(jié)果表明,ResNet50網(wǎng)絡(luò)模型的特征提取能力要明顯強(qiáng)于AlexNet網(wǎng)絡(luò)模型[7]。對(duì)于Market-1501圖像數(shù)據(jù)集來(lái)說(shuō),這兩種網(wǎng)絡(luò)模型的性能對(duì)比如表2所示。通過(guò)對(duì)比網(wǎng)絡(luò)模型的性能,可在后續(xù)執(zhí)行行人重識(shí)別任務(wù)中進(jìn)行訓(xùn)練時(shí),選擇性能更優(yōu)的ResNet50作為骨干網(wǎng)絡(luò)模型。
表2 兩種網(wǎng)絡(luò)模型的性能對(duì)比 %
首先,針對(duì)P個(gè)行人各抽取K張圖像,組成一個(gè)批處理腳本,并將其輸入網(wǎng)絡(luò)模型;其次,這些圖像的尺寸會(huì)自動(dòng)調(diào)整為256×128(像素),且約有50%的圖像會(huì)發(fā)生水平翻轉(zhuǎn);然后,在得到經(jīng)過(guò)骨干網(wǎng)絡(luò)ResNet50的圖像全局特征后,將全連接層的輸出維度改為訓(xùn)練數(shù)據(jù)集中的行人專屬號(hào)碼(Identity Document,ID);最后,根據(jù)之前所得全局特征分別計(jì)算三聯(lián)體損失(Triplet Loss)[8]和專屬號(hào)碼損失(ID loss),并完成網(wǎng)絡(luò)模型的訓(xùn)練。在訓(xùn)練過(guò)程中,計(jì)算Triplet Loss,旨在讓網(wǎng)絡(luò)模型對(duì)圖像的相似程度進(jìn)行學(xué)習(xí),使同一行人的差距更小,不同行人的差距更大;計(jì)算ID Loss,旨在讓網(wǎng)絡(luò)模型將行人重識(shí)別看作圖像分類任務(wù),能結(jié)合Triplet Loss進(jìn)行聯(lián)合訓(xùn)練,并讓骨干網(wǎng)絡(luò)模型學(xué)習(xí)具有較強(qiáng)代表性和魯棒性的行人特征。
為提高行人重識(shí)別網(wǎng)絡(luò)模型的性能,更好地提取圖像特征, He等提出了一種稱作BNNeck的新結(jié)構(gòu)[9]。在BNNeck結(jié)構(gòu)中,一個(gè)批量歸一化層被放在了全連接層之前,并消除了全連接層中的偏置項(xiàng)。這使得池化后的特征能先用于計(jì)算Triplet Loss,再通過(guò)批量歸一化層,用于計(jì)算ID Loss,以便更好地進(jìn)行特征提取,獲得具有更高區(qū)分度的特征。在基本的訓(xùn)練流程中加入BNNeck結(jié)構(gòu),使用隨機(jī)擦除、標(biāo)簽平滑等一些訓(xùn)練中常用的技巧[10],即可形成圖2所示的網(wǎng)絡(luò)模型訓(xùn)練流程。
圖2 網(wǎng)絡(luò)模型的訓(xùn)練流程
在網(wǎng)絡(luò)模型訓(xùn)練流程中,中心損失(Center Loss)指標(biāo)[11]用來(lái)彌補(bǔ)Triplet Loss指標(biāo)忽略的正負(fù)樣本對(duì)特征距離絕對(duì)值的影響。把Triplet Loss、Center Loss和ID Loss 3項(xiàng)指標(biāo)結(jié)合起來(lái)考慮,可得總的損失L,即
L=LID+LTriplet+βLCenter
(2)
式中:LID表示ID Loss ;LTriplet表示Triplet Loss;LCenter表示Center Loss;β為控制Center loss的權(quán)重。
本文選取行人重識(shí)別領(lǐng)域最常用的Market-1501圖像數(shù)據(jù)集,在基于ResNet50調(diào)整后的網(wǎng)絡(luò)模型上進(jìn)行大量的訓(xùn)練和測(cè)試,所得指標(biāo)Rank-1和Rank-10分別達(dá)92.9%和98.7%,mAP則達(dá)到了82.9%,基本上滿足了工程需求。
基于行人重識(shí)別的目標(biāo)跨鏡追蹤系統(tǒng)內(nèi)嵌了常用的行人重識(shí)別算法,可采用Python語(yǔ)言設(shè)計(jì)其功能模塊,以便有效地對(duì)目標(biāo)人員進(jìn)行多場(chǎng)景下多攝像頭的跨鏡持續(xù)追蹤。該系統(tǒng)的實(shí)現(xiàn)流程為:操作人員通過(guò)圖形化用戶界面與系統(tǒng)進(jìn)行交互,首先在一個(gè)主要的監(jiān)控視頻中手動(dòng)裁取要追蹤的行人圖像;然后選取其他多個(gè)攝像視角的監(jiān)控視頻,借助行人檢測(cè)和行人重識(shí)別技術(shù)在視頻中識(shí)別目標(biāo)人員,并對(duì)其進(jìn)行標(biāo)注。
基于行人重識(shí)別的目標(biāo)跨鏡追蹤系統(tǒng)應(yīng)具有本地視頻圖像導(dǎo)入、行人圖像裁取、行人檢測(cè)、目標(biāo)圖像匹配、目標(biāo)跨鏡追蹤、系統(tǒng)使用記錄等功能模塊(圖3)。其中,目標(biāo)圖像匹配、目標(biāo)跨鏡追蹤為核心功能模塊。經(jīng)過(guò)充分調(diào)研,這些功能模塊基本可以滿足系統(tǒng)在實(shí)際場(chǎng)景下對(duì)目標(biāo)人員的追蹤需求。
圖3 目標(biāo)跨鏡追蹤系統(tǒng)的功能模塊
目標(biāo)圖像匹配模塊工作時(shí),能通過(guò)相似度匹配,從系統(tǒng)數(shù)據(jù)集中找出與指定行人似為同一人的圖像,并對(duì)匹配結(jié)果進(jìn)行展示。該模塊的工作流程如圖4所示。
圖4 目標(biāo)圖像匹配模塊的工作流程
具體來(lái)說(shuō),通過(guò)目標(biāo)圖像匹配模塊,首先選取一張待匹配的行人圖像(該圖像可以是之前在監(jiān)控視頻中裁取的),將其和系統(tǒng)數(shù)據(jù)集中的圖像一起輸入網(wǎng)絡(luò)模型,進(jìn)行特征提取;然后計(jì)算圖像之間的特征向量差距;最后在系統(tǒng)用戶界面中展示匹配度最高的12張行人圖像和相關(guān)信息。目標(biāo)圖像匹配界面如圖5所示。其中實(shí)線邊框表示匹配的是同一個(gè)行人,虛線邊框表示匹配的不是同一個(gè)行人。
圖5 目標(biāo)圖像匹配界面
通過(guò)目標(biāo)跨鏡追蹤模塊,系統(tǒng)能夠?qū)Ρ戎付ㄐ腥藞D像與監(jiān)控視頻中行人圖像的相似度,識(shí)別目標(biāo)人員并對(duì)其進(jìn)行持續(xù)追蹤。目標(biāo)跨鏡追蹤模塊的工作流程如圖6所示。
圖6 目標(biāo)跨鏡追蹤模塊的工作流程
目標(biāo)跨鏡追蹤模塊工作時(shí),首先選定待追蹤行人圖像和監(jiān)控視頻,并對(duì)從監(jiān)控視頻中抽取的圖像幀進(jìn)行檢測(cè),將檢測(cè)到的行人組成視頻中行人圖像集,取代之前行人圖像匹配模塊中使用的系統(tǒng)數(shù)據(jù)集;然后采用行人重識(shí)別算法,對(duì)視頻中行人圖像集進(jìn)行特征提取和相似度對(duì)比,對(duì)監(jiān)控視頻中相似度最高的行人涂加彩色或標(biāo)記其他特定形式的矩形框,并在用戶界面(圖7)中展示;最后將處理好的視頻保存到輸出文件夾中。
圖7 目標(biāo)跨鏡追蹤系統(tǒng)的用戶界面
行人重識(shí)別技術(shù)廣泛用于智慧安防、智能尋人等領(lǐng)域。本文在行人重識(shí)別算法的基礎(chǔ)上,使用Python語(yǔ)言設(shè)計(jì)并實(shí)現(xiàn)了一種基于行人重識(shí)別的目標(biāo)跨鏡追蹤系統(tǒng),用于跨攝像頭跨場(chǎng)景追蹤行人目標(biāo)。該系統(tǒng)選用算法模型的性能較好,總體上能滿足用戶的工程需求,但從完善系統(tǒng)功能和進(jìn)一步提高用戶使用體驗(yàn)感考慮,仍可進(jìn)行以下優(yōu)化:①為避免所用算法模型在實(shí)際場(chǎng)景中運(yùn)算開(kāi)銷增大而影響系統(tǒng)的實(shí)時(shí)性,應(yīng)在保證高準(zhǔn)確率的前提下,盡可能使網(wǎng)絡(luò)模型輕量化;②鑒于該系統(tǒng)對(duì)行人目標(biāo)跨攝像頭跨場(chǎng)景的追蹤仍需要人為參與才能分析行人目標(biāo)的移動(dòng)軌跡,并未完全實(shí)現(xiàn)自動(dòng)化,后續(xù)可通過(guò)視頻結(jié)構(gòu)化管理,在識(shí)別的基礎(chǔ)上自動(dòng)分析行人目標(biāo)的移動(dòng)軌跡,并進(jìn)行可視化展示。