趙黎明,張 榮,張超越
(寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211)
步態(tài)識別是利用步態(tài)信息對人的身份進行識別[1]。與指紋識別、虹膜識別、人臉識別等技術(shù)相比,步態(tài)識別具有獲取容易、距離遠、非接觸、不易偽裝、無創(chuàng)等優(yōu)點。它是生物特征識別、計算機視覺和信息安全等領(lǐng)域的研究熱點。
步態(tài)識別的研究方法主要分為兩類,一類是基于非模型的方法,另一類是基于模型的方法。基于非模型的方法主要有兩種,第一種是將步態(tài)輪廓序列合成或壓縮成圖像[2,3]。如步態(tài)能量圖像(GEI)[2]是基于步態(tài)周期中步態(tài)輪廓的平均圖像信息建立的步態(tài)特征,這種方法相對來說簡單,但很容易丟失時間和細粒度的空間信息。第二種直接從原始步態(tài)輪廓序列中提取特征[4],但容易受到視角、行人服裝變化等外部因素的影響。基于模型的方法通常將人體模型與輸入圖像相匹配,然后提取運動信息作為特征。目前大部分的基于模型的方法利用三維模型來模擬行人的運動[5,6]?;谌S模型的方法能在一定程度上抵抗視角、攜帶、服裝變化等外部因素的影響。但由于三維建模計算復(fù)雜,一般只適用于完全可控的多攝像機協(xié)作環(huán)境,而在現(xiàn)實環(huán)境當(dāng)中大多只有普通RGB攝像機的場景,限制了這些方法在實際中的應(yīng)用。
為了解決上述問題,本文利用三維姿態(tài)估計技術(shù),建立了行人3D姿態(tài)“輕”模型。即不需要額外的深度相機設(shè)備配合,通過普通RGB攝像機就能獲取所需的三維模型,且三維模型相對簡單,計算復(fù)雜度降低,這增加了實際應(yīng)用的可能性。本文將基于3D模型與非模型的方法融合,在CASIA-B數(shù)據(jù)集上的結(jié)果表明,融合了3D空間的行人運動特征提高了步態(tài)特征的魯棒性,進一步提高了步態(tài)識別率。
提取行人3D運動信息的網(wǎng)絡(luò)主要由卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)和長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)網(wǎng)絡(luò)組成,用三元組損失Triplet loss訓(xùn)練網(wǎng)絡(luò)。提取3D運動信息網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 提取3D時空運動信息網(wǎng)絡(luò)結(jié)構(gòu)
本文采用了文獻[7]提出的3D姿態(tài)估計網(wǎng)絡(luò),該網(wǎng)絡(luò)使用卷積姿態(tài)機(convolutional pose machines,CPM)[8]獲得二維熱圖,并基于此估計人的三維姿態(tài)。它以368×368圖像為輸入,輸出尺寸為n×3×17的三維人體姿態(tài)估計,其中n為圖像中的人數(shù),3為每個關(guān)節(jié)點的三維坐標(biāo)x,y,z,17為關(guān)節(jié)點的個數(shù)。
然后基于樹結(jié)構(gòu)的遍歷方法[9]對每個時間幀的三維姿態(tài)進行建模,以保持關(guān)節(jié)的空間相鄰關(guān)系。需要注意的是,3D姿態(tài)估計生成17個關(guān)節(jié)點。根據(jù)樹的遍歷規(guī)則,本文刪除了下頜點并將頭部連接到頸部,遍歷規(guī)則如如圖2所示,其中8是脊椎,是遍歷的起點。對關(guān)節(jié)點的遍歷規(guī)則,依次為8—9—10—9—11—12—13—12—11—9—14—15—16—15—14—9—8—1—2—3—4—3—2—1—5—6—7—6—5—1—8。
圖2 生成的關(guān)節(jié)點
因為人體的運動往往需要相鄰關(guān)節(jié)點的協(xié)同運動,因此相鄰關(guān)節(jié)點之間有著密切的運動聯(lián)系,根據(jù)這個遍歷規(guī)則,關(guān)節(jié)點的坐標(biāo)依次形成一個循環(huán),相鄰關(guān)節(jié)點在序列中處于相近的位置,可以方便提取相鄰關(guān)節(jié)點的空間運動信息。
這里使用CNN和LSTM來提取行人運動的時空特征。為了提取這些相鄰關(guān)節(jié)點之間的關(guān)系,利用神經(jīng)網(wǎng)絡(luò)對處理后的3D骨架序列進行一維卷積。其中卷積核的大小可以靈活設(shè)置。本文借鑒了文獻[10]的網(wǎng)絡(luò)結(jié)構(gòu),只使用文獻[11]中的編碼部分。同時,對網(wǎng)絡(luò)做了一些改變。網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。在經(jīng)過遍歷規(guī)則后,3D骨架序列的輸入大小為T×31×3,其中T為序列的幀數(shù),31為遍歷依次經(jīng)過的關(guān)節(jié)點個數(shù),3代表關(guān)節(jié)點的三維坐標(biāo)x,y,z。
圖3 CNN-LSTM 網(wǎng)絡(luò)結(jié)構(gòu)
首先通過兩層一維卷積模塊提取運動序列的空間結(jié)構(gòu)特征,然后使用LSTM提取特征的時間關(guān)系,通過卷積網(wǎng)絡(luò)和LSTM來共同提取更深層次的時空序列特征。
具體來說,空間特征提取包括兩個卷積模塊,每個卷積模塊包括卷積、池化和通道正則化操作。此外,受文獻[12]的啟發(fā),考慮了注意力機制對網(wǎng)絡(luò)性能的改善,從而在卷積層后添加壓縮激勵(squeeze-and-excitation networks,SE)模塊[12]有選擇地增強卷積特征。在圖3中,給出了模塊的詳細結(jié)構(gòu)。
為了得到步態(tài)的時間特征,使用LSTM網(wǎng)絡(luò)對步態(tài)的空間特征進行進一步的處理。最后一幀LSTM網(wǎng)絡(luò)輸出作為最終的時空序列特征。
考慮到大多數(shù)步態(tài)識別數(shù)據(jù)集缺乏真實的三維標(biāo)簽,如果將3D時空特征直接用于步態(tài)識別并給出識別結(jié)果,結(jié)果缺乏可信度。因此,本文沒有直接使用3D時空特征進行識別,而是利用神經(jīng)網(wǎng)絡(luò)融合訓(xùn)練3D時空特征網(wǎng)絡(luò)(CNN-LSTM)結(jié)構(gòu)與基于輪廓圖的網(wǎng)絡(luò)結(jié)構(gòu),最終只使用2D輪廓圖進行識別。這里需要注意的是,此時的2D輪廓特征是通過兩個特征互補訓(xùn)練獲得的新的2D輪廓特征。如果使用這種融合了新的2D輪廓特征的最終識別率有所提高,則證明了所提出的3D時空特征的有效性。
因此,本文沒有對現(xiàn)有提取的二維輪廓網(wǎng)絡(luò)結(jié)構(gòu)進行更改,而是比較融合3D時空特征訓(xùn)練的網(wǎng)絡(luò)提取得到的新2D輪廓特征識別率有所提高,從而證明3D時空特征確實起到了積極的作用,能夠進一步增強步態(tài)特征的魯棒性。
訓(xùn)練時采用CNN-LSTM網(wǎng)絡(luò)結(jié)構(gòu)和現(xiàn)有的網(wǎng)絡(luò)結(jié)構(gòu)提取步態(tài)輪廓進行聯(lián)合訓(xùn)練,融合2D輪廓特征f2D和3D時空序列特征f3D得到融合特征f。公式為
f=concat(f3D,f2D)
其中,concat是在高度維度上拼接兩個特征。最后采用三元組損失Triplet loss訓(xùn)練網(wǎng)絡(luò)。如圖4所示。
圖4 整體網(wǎng)絡(luò)結(jié)構(gòu)
在測試時,如圖4中黑色實線框所示,不需要額外的3D骨架信息,只使用從網(wǎng)絡(luò)中提取的2D輪廓特征,這也大大減少了實際應(yīng)用時的復(fù)雜性和計算量。
CASIA-B數(shù)據(jù)集[13]是目前常用的步態(tài)數(shù)據(jù)集。它包含124名受試者(編號001-124),3種步行條件和11個視角(0°,18°,…,180°)。行走條件包括正常(NM)(每個受試者6個序列)、背包行走(BG)(每個受試者2個序列)和穿著外套或夾克(CL)(每個受試者2個序列)。本文使用目前文獻中常用的3種實驗設(shè)置,即小樣本訓(xùn)練(ST)、中等樣本訓(xùn)練(MT)、大樣本訓(xùn)練(LT)。在ST中,前24個行人被用于訓(xùn)練,其余用于測試。在MT中,前62個行人用于訓(xùn)練。在LT中,前74個行人用于訓(xùn)練。在所有三個設(shè)置的測試集中,前4個NM條件序列(NM#1~4)被放置在圖庫(gallery)中,最后兩個NM條件序列(NM#5~6)以及BG#1~2條件和CL#1~2條件序列被用作查詢(probe)。
神經(jīng)網(wǎng)絡(luò)在訓(xùn)練過程中有兩個輸入,即2D輪廓序列和3D骨架序列。對于2D輪廓序列特征的提取,本文選擇了文獻[6]中的網(wǎng)絡(luò)結(jié)構(gòu)。對于3D時空特征的提取,輸入是從原始視頻圖像中提取的與2D輪廓相對應(yīng)的骨架順序序列。本文所有的實驗基于Pytorch框架。實驗環(huán)境是Ubuntu18.04,NVIDIA GeForce 2080Ti。采用隨機優(yōu)化方法Adam對網(wǎng)絡(luò)進行訓(xùn)練。訓(xùn)練的初始學(xué)習(xí)率設(shè)定為0.0001。3D骨架序列的T為30。對于ST,MT和LT,分別訓(xùn)練了50 k次迭代、100 k次迭代和110 k次迭代。
表1給出了不同訓(xùn)練設(shè)置下的Rank—1識別率。對于不同條件的probe,給定probe的角度,表中給出了所有允許的gallery視角(不包括相同視角)的Rank—1平均識別率,最后一列給出了probe所有角度的平均識別率??梢钥吹?融合3D骨架序列訓(xùn)練網(wǎng)絡(luò)得到的2D輪廓特征進一步提高了步態(tài)識別率。特別地,在MT的訓(xùn)練設(shè)置下,在probe為BG#1~2和CL#1~2條件,融合了3D時空特征下平均識別率較之前分別提高了2.7 %和3.7 %,在其他訓(xùn)練設(shè)置下的識別率也均有提高,這也證明了3D時空特征的有效性。
表1 CASIA-B在三種不同實驗設(shè)置下的Rank—1識別率(不包括相同視角)
本文認為原因如下,3D骨架序列中包含了三維空間上的運動信息,這與2D輪廓圖的特征不同,是從三維空間上描述的步態(tài)運動,其次,空間上的步態(tài)變化與輪廓圖體現(xiàn)的步態(tài)變化本質(zhì)上都是在描述行人的運動規(guī)律,因此3D時空運動信息與二維輪廓信息融合進一步豐富了步態(tài)特征,在一定程度上增加了原有步態(tài)特征的魯棒性,從而提高了步態(tài)識別率。此外在融合訓(xùn)練時,融入3D時空特征提高了網(wǎng)絡(luò)的學(xué)習(xí)能力,在測試時不需要去獲取行人的3D模型,這也大大減低了實際應(yīng)用的復(fù)雜度和計算量。
為了挖掘步態(tài)的空間運動信息,本文引入了3D姿態(tài)模型提取時空信息,降低了3D模型獲取的復(fù)雜度,提高了3D模型在實際環(huán)境中應(yīng)用的可能性。本文利用卷積神經(jīng)網(wǎng)絡(luò)融合行人3D時空特征與輪廓圖特征一起訓(xùn)練,進一步增強了步態(tài)特征的鑒別力。在CASIA-B的數(shù)據(jù)集上的結(jié)果表明,融合了3D時空運動信息增強了步態(tài)特征的魯棒性,進一步提升了步態(tài)識別的識別率。