趙佳鑫, 張雅麗, 施新凱, 李御瑾
(中國人民公安大學(xué) 信息網(wǎng)絡(luò)安全學(xué)院, 北京 100038)
視頻偵查技術(shù)具有可以突破時(shí)空限制、證據(jù)固定等優(yōu)勢(shì),逐步成為公安辦案的新手段。 在視頻偵查工作中,目標(biāo)識(shí)別與追蹤工作一直是案件偵破的重要環(huán)節(jié),其效率與準(zhǔn)確性至關(guān)重要。 犯罪分子因其反偵查意識(shí)越來越強(qiáng),在作案過程中往往是全副偽裝,使得很多技術(shù)手段受限。 現(xiàn)有的人臉識(shí)別技術(shù)主要應(yīng)用在人像卡口或裝有高清監(jiān)控設(shè)備的場(chǎng)景下,犯罪嫌疑人在實(shí)施犯罪的過程中會(huì)故意利用攝像頭盲區(qū)、偽裝人臉圖像信息等致使身份無法識(shí)別。 而步態(tài)識(shí)別可以利用現(xiàn)有攝像頭進(jìn)行遠(yuǎn)距離識(shí)別,嫌疑人難以隱藏與偽裝,在視頻偵查中具有明顯的優(yōu)勢(shì),成為近年來身份識(shí)別領(lǐng)域研究的熱門。
步態(tài)識(shí)別是一種分析行人走路的姿態(tài),利用算法將其從步態(tài)數(shù)據(jù)庫中識(shí)別出來的方法,已經(jīng)在行人無更換外衣、無攜帶、攝像方向無改變的情況下,具有較高的識(shí)別正確率,然而面對(duì)復(fù)雜的真實(shí)場(chǎng)景,該技術(shù)仍有許多不容易解決的問題,如:行走路面不平和攝像頭角度變化會(huì)產(chǎn)生視角問題,有無穿外套和是否攜帶包裹產(chǎn)生遮擋問題,這些因素導(dǎo)致其在復(fù)雜的實(shí)際行走過程中識(shí)別正確率仍然較低。
本文主要研究基于深度學(xué)習(xí)的步態(tài)識(shí)別技術(shù),在GaitSet 模型中利用Triplet 和Softmax 聯(lián)合損失函數(shù)來提升行人在穿大衣和攜帶包裹這兩種情況下的步態(tài)識(shí)別正確率。
識(shí)別步態(tài)有兩種主要方法, 第一種方法將步態(tài)視為圖像,典型的代表是提取步態(tài)能量圖。 步態(tài)能量圖是步態(tài)識(shí)別任務(wù)中最常用的特征圖,其主要工作是把一組剪影圖對(duì)齊壓縮成一張圖片,利用步態(tài)模板對(duì)行人進(jìn)行分類,通過計(jì)算在長(zhǎng)時(shí)間范圍內(nèi)的平均步態(tài)剪影,可以減少在預(yù)處理階段中由于處理不完全而殘留的噪點(diǎn)。 步態(tài)能量圖是當(dāng)前最常用的步態(tài)識(shí)別方法之一,能夠?qū)崿F(xiàn)計(jì)算量與識(shí)別準(zhǔn)確率相對(duì)均衡,一直以來都被當(dāng)作步態(tài)識(shí)別的代名詞。但這種方法沒有考慮到步態(tài)中的時(shí)序信息和空域信息,其步態(tài)識(shí)別正確率并不高。
第二種方法將步態(tài)視為視頻序列來處理,直接從最初的剪影序列中提取步態(tài)特征,常使用LSTM方法、3D-CNN 方法或者雙流法(two stream)。 視頻信號(hào)和語音信號(hào)都含有時(shí)序信息,而LSTM 模型通常用于處理這些帶有時(shí)間順序的信息,首先利用卷積神經(jīng)網(wǎng)絡(luò)提取每幀視頻的步態(tài)特征,然后利用LSTM 對(duì)時(shí)序關(guān)系建模;3D-CNN 模型可以處理視頻比圖像多出的時(shí)間維度,常被用于視頻分類工作,然而由于其計(jì)算任務(wù)重以及計(jì)算周期較長(zhǎng),往往難以在實(shí)際中得到真正的應(yīng)用。
雙流法是包含RGB 圖像和光流兩個(gè)通道的視頻行為識(shí)別方法。 其中,光流通道被用來建模時(shí)序信息, RGB 圖像通道被用來建??沼蛐畔ⅲ摲椒▽蓚€(gè)通道進(jìn)行信息融合,并聯(lián)合訓(xùn)練,可以很好的建模步態(tài)序列中的時(shí)序和空域信息,但其往往會(huì)受限于一些外部因素。
為了兼顧運(yùn)算量與識(shí)別正確率,Chao 等人提出了一套新的解決方案:把步態(tài)特征看作一組由視頻幀組成的圖像序列。 行走是一種周期性的運(yùn)動(dòng),所以步態(tài)可以選用其中一個(gè)周期進(jìn)行表示。 在一個(gè)周期的步態(tài)序列中,可以觀察到不同位置的剪影,都具有可以區(qū)別于其他剪影的外形,如圖1 所示。
圖1 一個(gè)周期的步態(tài)剪影Fig.1 A cycle of gait silhouette
僅需通過觀察步態(tài)剪影的大致形狀,便能一一分辨,即使面對(duì)已經(jīng)被全部打亂順序的步態(tài)剪影圖,也能再次組成其原本正確的順序。 因此,假定步態(tài)剪影的外形本身就包含著順序,進(jìn)而剪影圖的先后信息將不再是必要的輸入,能夠直接把步態(tài)視為一組圖像來提取時(shí)序信息。 Chao 等人在此理論基礎(chǔ)上,提出了一種GaitSet 深度學(xué)習(xí)網(wǎng)絡(luò)模型,添加聯(lián)合損失函數(shù)后網(wǎng)絡(luò)框架如圖2 所示。
圖2 添加聯(lián)合損失函數(shù)GaitSet 框架圖Fig.2 GaitSet frame diagram for adding joint loss function
本文采用GaitSet 模型結(jié)構(gòu)。 GaitSet 模型十分靈活,輸入僅會(huì)對(duì)輪廓圖的大小加以限制,即輸入的序列可以包含有不同角度、具有隨意組合的行走狀態(tài)、數(shù)量不受限的、可間斷的剪影。 該模型不計(jì)算一對(duì)步態(tài)序列間的相似度,而是直接學(xué)習(xí)步態(tài)的表示。因此,只需要對(duì)每個(gè)樣本的表示計(jì)算一次,就能夠通過測(cè)量不同樣本的表示之間的歐式距離來進(jìn)行分類識(shí)別。 GaitSet 極 大 地 提 高 了 在 CASIA - B 和OUMVLP 兩大公開數(shù)據(jù)集的識(shí)別性能,顯示了其在不同視角和多行走條件下的強(qiáng)大魯棒性以及對(duì)大型數(shù)據(jù)集的高泛化能力。
聯(lián)合損失函數(shù)將多種損失函數(shù)結(jié)合,起到聯(lián)合優(yōu)化的效果。 本文采用Softmax loss 和Triplet loss兩個(gè)損失函數(shù)聯(lián)合訓(xùn)練的方法,增大步態(tài)示例類間距離,縮小步態(tài)示例類內(nèi)距離,使得模型在多個(gè)損失函數(shù)的優(yōu)化下,提高表征能力。
Triplet 損失函數(shù)通常用于訓(xùn)練差異性較小的示例,其具體公式(1):
其中,L表示損失;表示錨(anchor)示例;表示正(positive)示例;表示負(fù)(Negative)示例;表示一組Batch 中的所有示例個(gè)數(shù)。
Softmax 損失函數(shù)最常用于處理圖像多分類任務(wù),其具體公式(2):
最終的聯(lián)合損失函數(shù)公式(3):
其中,和分別代表Triplet 和Softmax 兩個(gè)損失函數(shù)的權(quán)重;當(dāng)0 且≠0 時(shí)為Softmax 損失函數(shù);當(dāng)0 且≠0 時(shí)為Triplet 損失函數(shù);當(dāng)≠0 且≠0 時(shí)為聯(lián)合損失函數(shù)。
CASIA-B 是2005 年由中國科學(xué)院自動(dòng)化研究所提出的免費(fèi)公開人體步態(tài)數(shù)據(jù)集,該數(shù)據(jù)集是一個(gè)具有大規(guī)模、多角度、多行走條件等優(yōu)勢(shì)的通用數(shù)據(jù)集,在步態(tài)識(shí)別領(lǐng)域具有很高的地位。 數(shù)據(jù)集中的步態(tài)信息共包含124 個(gè)不同身份的行人(ID 編號(hào)為1 ~124),每個(gè)行人分別從11 個(gè)視角(0° ~180°)對(duì)普通行走(NM)、穿大衣(CL)和攜帶包裹(BG)這3 種行走條件進(jìn)行錄制, NM 行走條件錄制6 次、CL 和BG 兩種行走條件各錄制2 次,視頻中某個(gè)ID 的行人在普通行走條件下,不同視角的步態(tài)圖像例子如圖3 所示。
圖3 NM 類型步態(tài)圖像示例Fig.3 Example of NM type gait image
每個(gè)數(shù)據(jù)集具有13 640 個(gè)步態(tài)視頻,同時(shí)擁有1 364 個(gè)背景視頻,總計(jì)15 004 個(gè),視頻幀的長(zhǎng)度也在幾個(gè)到幾百個(gè)不等,共占用16 GB 的內(nèi)存。 而在實(shí)驗(yàn)時(shí),在對(duì)數(shù)據(jù)集的信息進(jìn)行整理分析的過程中,發(fā)現(xiàn)026 和027 兩個(gè)行人ID 的步態(tài)視頻因?yàn)閿?shù)據(jù)本身存在瑕疵而無法正常使用,同時(shí)剪影圖中行人輪廓在109 號(hào)視頻中也基本沒有出現(xiàn),所以能用到的視頻總共有14 614 個(gè),步態(tài)視頻約占91%,其余各類視頻占9%。 數(shù)據(jù)經(jīng)過預(yù)處理之后,產(chǎn)生人體步態(tài)圖像約1 116 300 張,占用內(nèi)存3.2 GB 左右。預(yù)處理后,行人ID 為010,在攜帶包裹條件下,01 次錄制,視角為90°的剪影圖像如圖4 所示;預(yù)處理后,行人ID 為010,在穿大衣條件下,01 次錄制,視角為90°的剪影圖像如圖5 所示。
圖4 CASIA-B 數(shù)據(jù)集預(yù)處理后攜帶包裹剪影圖像Fig.4 BG silhouette image after preprocessing of CASIA-B data set
圖5 CASIA-B 數(shù)據(jù)集預(yù)處理后穿大衣剪影圖像Fig.5 CL silhouette image after preprocessing of CASIA-B data set
在GaitSet 網(wǎng)絡(luò)模型的基礎(chǔ)上,將CASIA-B 數(shù)據(jù)集采用大樣本訓(xùn)練的劃分形式。 按照慣例,所劃分的訓(xùn)練集部分要完全的輸入到GaitSet 網(wǎng)絡(luò)進(jìn)行訓(xùn)練。 但在驗(yàn)證的過程中,由于所有行人中的部分步態(tài)圖像需要作為對(duì)照組,所以另一部分未被作為對(duì)照而是用作識(shí)別的步態(tài)圖像被稱為探針。 因?yàn)橐釴M、BG、CL 三者之間的量,防止其中某一行走條件的信息過多或者過少,所以實(shí)驗(yàn)過程中,將所有行人ID 中的nm-05、06、cl-01、bg-01、cl-02、bg-02剪影圖像用作識(shí)別,剩余的nm-01、02、03、04 剪影圖像組成步態(tài)圖庫。
本次實(shí)驗(yàn)使用8 個(gè)NVIDIA Tesla K80 12 G 顯卡,全連接隱層數(shù)量為256,學(xué)習(xí)率為0.000 1,視頻提取幀數(shù)為30,批尺寸為8×16,三元組損失Margin為0.2,訓(xùn)練輪數(shù)80 000。
在訓(xùn)練過程中,把100 輪分為一組,共訓(xùn)練800組,每組的平均損失函數(shù)如圖6 所示。 可以觀察到,與單獨(dú)使用Triplet 損失函數(shù)單調(diào)遞增趨勢(shì)不同的是,聯(lián)合損失函數(shù)整體呈現(xiàn)單調(diào)遞減趨勢(shì)。 由于訓(xùn)練的所有Batch 數(shù)據(jù)都是由隨機(jī)目標(biāo)ID 的隨機(jī)類型、隨機(jī)角度和隨機(jī)幀序列等組成,所以每個(gè)相鄰Step 之間都有一定程度的震蕩,因此損失值最終能收斂到margin 值附近即合理。
圖6 損失函數(shù)曲線Fig.6 Loss function curve
在聯(lián)合損失函數(shù)權(quán)重的設(shè)置中,公式(3)中和的不同取值,會(huì)影響模型的最終識(shí)別效果,為了達(dá)到在穿大衣和攜帶包裹兩種情況下較高的識(shí)別正確率,需選取最佳的值和值,本文對(duì)和分別采用1:0、0.9:0.1、0.8:0.2、0.7:0.3、0.6:0.4、0.5:0.5、0.4:0.6、0.3:0.7、0.2:0.8、0.1:0.9、0:1,共11 組不同的權(quán)重分配方法進(jìn)行實(shí)驗(yàn),對(duì)比結(jié)果如圖7 所示。
圖7 兩類損失函數(shù)在不同權(quán)重下的測(cè)試結(jié)果對(duì)比Fig.7 Comparison of the test results of the two types of loss functions under different weights
當(dāng)0 且1 時(shí),表示單獨(dú)使用Softmax 損失函數(shù)訓(xùn)練GaitSet,精確度曲線如圖8 所示。
圖8 僅使用Softmax loss 訓(xùn)練GaitSet 的精確度曲線Fig.8 Only use the Softmax loss to train the accuracy curve of GaitSet
可以看出,雖然在單獨(dú)使用Softmax 損失函數(shù)訓(xùn)練GaitSet 網(wǎng)絡(luò)時(shí),最終分類精確度很高,但是在圖7 的測(cè)試結(jié)果中,采用0、1 權(quán)重訓(xùn)練得到的模型,在3 種行走狀態(tài)下的識(shí)別正確率都很低,可見Triplet 損失函數(shù)是必不可少的;而在Triplet 損失函數(shù)和Softmax 損失函數(shù)聯(lián)合訓(xùn)練的測(cè)試結(jié)果中,穿大衣和攜帶包裹兩種行走條件在所有權(quán)重下識(shí)別正確率均有不同幅度的提升,其中0.1:0.9 權(quán)重的識(shí)別正確率提升最大;而在0.2:0.8、0.3:0.7、0.4:0.6、0.5:0.5、0.6:0.4、0.7:0.3、0.8:0.2、0.9:0.1 這幾種權(quán)重的測(cè)試結(jié)果中,普通行走條件下的識(shí)別正確率相較于GaitSet 原網(wǎng)絡(luò)均有小幅下降,唯有0.1:0.9權(quán)重的識(shí)別正確率有小幅上升,所以選定01、09,最終損失函數(shù)如公式(4)所示。
在LT 的訓(xùn)練集劃分形式下,將本文的實(shí)驗(yàn)結(jié)果根據(jù)行走條件同GaitSet 和CNN-LB 進(jìn)行對(duì)比,記錄在11 個(gè)不同視角下的識(shí)別正確率,并分別計(jì)算每種行走條件下的所有視角識(shí)別正確率的平均值,結(jié)果如表1 所示。
表1 中3 種算法在正常行走條件下的識(shí)別情況差別不大,識(shí)別正確率都高于91%,尤其是GaitSet算法和本文的方法均已高達(dá)95%;在攜帶包裹的行走條件下,可以推測(cè)三種算法都因行人身體被部分遮擋導(dǎo)致識(shí)別正確率受到影響,但相對(duì)來說,受到影響最小的是本文利用聯(lián)合損失函數(shù)訓(xùn)練GaitSet 網(wǎng)絡(luò)的方法,步態(tài)識(shí)別正確率突破90%;三種算法對(duì)于行人因穿大衣而導(dǎo)致身體被大面積遮擋的情況,識(shí)別效果都不理想,而本文的方法達(dá)到了75.1%的識(shí)別正確率,具有相對(duì)更好的識(shí)別結(jié)果。
表1 多視角下的步態(tài)識(shí)別實(shí)驗(yàn)結(jié)果對(duì)比Tab.1 Comparison of experimental results of gait recognition under multiple viewing angles
在多視角的監(jiān)控視頻下,對(duì)攜帶包裹和穿外套的步態(tài)識(shí)別效果普遍不佳。 針對(duì)上述不足,本文提出了一種Triplet 損失與Softmax 損失聯(lián)合監(jiān)督的步態(tài)識(shí)別方法,增強(qiáng)模型的泛化能力,在幾乎不增加模型運(yùn)算量的同時(shí),提高了攜帶包裹和穿大衣這兩種行走狀態(tài)下的識(shí)別正確率。 由于實(shí)際場(chǎng)景的復(fù)雜性,步態(tài)識(shí)別技術(shù)目前還難以直接應(yīng)用于視頻偵查實(shí)戰(zhàn)。 但是,當(dāng)犯罪嫌疑人進(jìn)行面部遮擋、偽裝以及光照條件較差時(shí),人臉識(shí)別技術(shù)將會(huì)受限,步態(tài)識(shí)別技術(shù)可以作為人臉識(shí)別的重要補(bǔ)充間接應(yīng)用于公安實(shí)踐中。