劉正道,努爾畢亞·亞地卡爾,,木特力甫·馬木提,阿力木江·艾沙,,庫爾班·吾布力,
(1.新疆大學信息科學與工程學院,新疆 烏魯木齊 830046;2.新疆大學多語種信息技術重點實驗室,新疆 烏魯木齊 830046)
在身份識別領域,人的外在信息和表達出來的特征能夠有效地用來識別人員身份信息.步態識別是通過運動目標在行走過程中,身體的各個部位綜合信息表達特征來進行識別.步態識別具有較高的獨特性,識別的距離極遠,對圖像的分辨率要求較低,還具有非侵入性和不易被覺察等特點.步態識別被認為是遠距離身份認證非常有潛力的方法,因而在很多較遠距離的領域具有廣泛的應用前景,如在身份識別、公共安全、犯罪偵查、醫療診斷,但是在真實的應用中,受到拍攝角度、服裝變化、攜帶物品等諸多的影響因素,因而,將步態識別較為廣泛地應用到真實場景中,還要面臨著很多極其嚴峻的挑戰,需要克服許多困難.
由于步態識別的多狀態、多角度的情況,很多數據增強的方法無法應用到步態輪廓圖預處理中,常見就是裁剪對齊為64×64像素的小圖片,但通過實驗發現較大的圖片尺寸128×128像素包含更多的紋理和輪廓信息,對同一個模型的識別率有較大的提升.結合GaitSet模型,隨著圖片尺寸的變大,加入不同尺度的卷積,增加了不同尺度的感受野輸入和深淺特征融合,深層特征表征能力強,但分辨率低,而淺層則相反,通過結合兩者優勢,達到對識別效果的提升.
步態識別是1999年提出的識別方式.當前主流的方法為機器學習和深度學習方式.針對步態識別領域一些問題,王新年等[1]提出姿態特征結合2維傅里葉變換的步態識別方法,來減少步態中攜帶物品、衣服變化等影響;趙黎明等[2]提出基于深度學習的3D時空特征獲取時空信息,并且與輪廓圖融合能進一步豐富步態特征;Feng等[3]提出了一種PLSTM的方法,利用人體姿態熱圖作為訓練樣本,減少了包括服裝等協變量的影響;劉曉陽等[4]提出基于雙流神經網絡(TS-GAIT)的步態識別方法,通過殘差網絡獲取時空信息動態特征,該特征對角度、衣著和攜帶條件具有一定的魯棒性;Zhang等[5]提出跟視角無關表示方法,稱為步態個性圖(GII),能夠將各個不同角度的視角特征映射到同一個判別的空間當中;Choi等[6]基于骨骼的特征步態表達進行視角不變的步態特征學習,并且能夠根據視頻幀的匹配模式進行一系列的識別;文獻[7]將GEI的樣本作為了GEINet的輸入,再通過視角不變的特征,從而轉換成了訓練集上的多種分類的情況;閆河等[8]基于步態能量圖和VGG卷積神經網絡結合的步態識別方法,該方法對視角具有較好的魯棒性,對進一步應用具有借鑒意義;Castro等[9]通過CNN的方式來提取步態特征中的光流信息,來進行步態識別;Zhang等[10]證明單張步態圖學醫單一步態特征與一對圖學習不同步態特征的兩種方式是互補的,因而采用步態聯合學習網絡,融合互補的優勢,再采用“五胞胎”損失函數,能夠實現類內差最小化和對類間差最大化;Zhang等[11]采用編碼器-解碼器網絡分離特征與外觀信息,并且通過長短期記憶(Long Short Term Memory,LSTM)聚合步態特征,能實現目標的身份的預測,克服變量對性能識別下降的影響;Lishani等[12]提出基于步態能量圖的多尺度特征描述用于步態識別;Chao等[13]直接采用非嚴格時序維度的圖像集,通過深度神經網絡自行優化和學習的關系.在提出的GaitSet網絡上進行實驗驗證效果,對比發現效果明顯提升,且在CASIA-B數據集上的準確率高達95%.在步態識別領域具有里程碑式的意義,將步態序列作為一組非嚴格時序的集合進行處理,具有靈活、快速、有效等優勢,以下為了方便簡稱為原算法或原模型,本文在此基礎上進行了優化研究.
本文的優化是在原模型的基礎上,原模型的框架如圖1所示.其他內容見文獻[13].

圖1 原模型的框架圖
隨機選取CASIA-B步態數據庫中的部分樣本,進行2維空間的投影,部分樣本的分布情況如圖2所示.

(a)迭代20 000次的部分樣本分布;(b)迭代75 000次的部分樣本分布
其中,同一種顏色為相同的標簽,可以發現,樣本的分布情況的一些規律,如多數的樣本分布相對集中,而少部分的樣本相對分散.
原模型只采用了第一個Loss為Triplet Loss作為損失函數,該Loss需要輸入三元組〈a,p,n〉.其中,a為anchor,可以理解為參考的樣本或者錨樣本,而p為positive,與a為同一類別的樣本,n為negative,與a不同種類的樣本.對應的公式為
L=max(d(a,p)-d(a,n)+margin,0).
(1)
其中:d(a,p)為相近樣本的距離,d(a,n)為不同類樣本的距離,margin為邊界的距離,優化的目標就是margin作為一個常量,能迫使模型努力學習,拉近a,p距離,而a,n能夠產生較遠的距離.
第二個Loss為Cross Entropy Loss,交叉熵損失函數主要就是用來判定實際的輸出與期望的輸出的接近的程度.對應公式為
(2)
其中:m的樣本數,n為類別數,p(xij)為指示變量,如果該類別和樣本i的類別相同則為1,否則為0,q(xij)對觀測樣本i屬于類別j的概率.
聯合Loss的公式為
Loss=α×LTriplet+β×LCE.
(3)
其中,Ltriplet代表Triplet Loss,LCE表了Cross Entropy Loss,其中α,β代表了對應的比例因子,本文如無特殊說明,一律設為0.5.并且Triplet Loss中的margin設置為0.2.
各個Loss對應情況如圖3所示.

(a)Triplet Loss;(b)Cross Entropy Loss;(c)聯合Loss
雖然Triplet Loss可以對細節有效的區分,但是三元組損失函數會導致數據分布不均勻,故訓練不太穩定,收斂速度較慢.而使用聯合Loss能夠起到約束作用,同時相對有效收斂,訓練相對穩定.
輪廓圖由數據庫直接提供并且對齊是基于Takemure的方法[13].以下尺寸為64×64像素步態輪廓圖的對齊流程,128×128像素等尺寸的圖片類似.
對齊流程如下:
(1)對于輪廓圖,依據每一行的像素和不為0的原則,找上邊和下邊.
(2)根據上邊和下邊對輪廓圖進行切割.
(3)對切割后的圖進行resize操作,高度為64像素,寬度保持比例.
(4)依據每一列的和最大的為中心線原則,找到中心線.
(5)中心線左右各32像素進行切割,不夠的補0.
(6)得到對齊后的輪廓圖,如64×64像素尺寸的圖片.
通過實驗發現,不同尺寸對識別率影響較大,如圖4所示.

圖4 不同尺寸對應的識別率
在同一個模型下,上述尺寸分別為64,128,192像素的識別率效果有較大的差異,因此進行相關的論證.
以CASIA-B步態數據庫的001-bg-01-054-030舉例,圖片尺寸對比如圖5所示.

(a)64×64像素的輪廓圖;(b)128×128像素的輪廓圖
從兩方面進行論證:
(1)視覺.尺寸為128×128像素在腿部和背包等位置,包含的更多邊緣信息和輪廓的信息,擁有更多的紋理信息等.
(2)比例.通過代碼計算白色占全圖的比例,可以得出size為64×64像素大小的像素點,共計4 096個,其中白色的像素點有799個,占比約為19.51%;而size為128×128像素大小的共計像素點16 384個,其中白色的像素點有3 454個,占比約為21.08%.白色作為輪廓信息包含更多的信息和細節.
不同尺寸同一個模型的時間花費情況,如圖6所示.

圖6 不同尺寸的花費時間
在不同尺寸圖片下同一模型下加載時間、訓練時間、測試時間而得出總時間,可以發現大致的趨勢,在size3為較小圖片的情況下,共計約耗時400 min,而在128×88像素為中等大小的圖片下,共計耗時不到600 min,在size3為較大圖片的情況下,經過測試,共計耗時超過1 000 min.結合圖6,可以得出,size1的尺寸雖然在同一個網絡模型的識別率較好,但是因為共計的耗時時間較長.相比較size2大小的時候,發現識別率依然有提升,但是提升的幅度不是那么明顯.而size2的大小耗時相比較size3的時間長一些,但是識別率提升相對明顯,可以理解為“性價比”非常高.而size3的整體識別率識別較低,但是耗時在這三者中最少.結合時間和識別率的考慮,本文選擇了中等圖片用于模型的輸入.
1.3.1 多尺度感受野輸入
多尺度感受野是將原模型的第一個卷積5×5,用Inception V2模塊進行替換[14],主要是增加不同尺寸的感受野,模塊如圖7所示.

圖7 InveptionV2模塊
感受野是網絡內部的不同位置的神經元對原圖像感受野的范圍,而多尺度感受野是跟Inception V2類似,使用了不相同的卷積核用來卷積,達到不同感受野范圍的目的.因為考慮到Inception V2模塊中的平均池化跟原模型注意力的最大值可能存在沖突,導致了部分的特征損失,并且由于計算量較大,導致訓練時間較長,因此,刪除其中的池化等部分,僅保留多尺度的感受野,達到提升識別率的同時也加快計算.最終,僅留下5×5,3×3,1×1來并聯替換原本的5×5的卷積.
1.3.2 深淺特征融合
一般情況下深層網絡的感受野較大,信息的表征能力強,但特征圖分辨率較低,淺層網絡的感受野較小,分辨率高,但表征能力弱.Inside-Outside Net[15](ION)介紹多尺度能夠提升小目標的檢測精度,最終將不同尺度的特征進行concat拼接操作,如圖8所示.

圖8 ION示意圖
ION通過將不同位置的卷積的特征進行拼接操作,從而進行多尺度表征.
HRNet[16](High-Resoultion Net)在并聯的基礎上,能夠將不同分辨率的特征進行融合.而該網絡結構能夠通過高分辨率特征圖的主網絡并行加入低分辨率特征圖.因為采用多分辨率子網并行連接多尺度融合特征,因而得到豐富的高分辨率表示.因此在空間上更加精確,同時進行重復多尺度融合,如圖9所示.

圖9 并聯不同分辨率的特征圖
特征融合的方法如圖10所示.其中,同分辨率層進行直接的復制操作,需要降低分辨率用3×3卷積,升分辨率用采樣加1×1卷積統一通道.

圖10 特征融合的方法
(1)原模型采用Horizontal Pyramid Pooling(HPP)來處理.尺度s∈ 1,2,…,S,特征圖在高度尺寸被分成多條.在此基礎上,不再分成原模型的(1,2,4,8,16),本文將S的總數直接設置為32像素及以上,主要是因為本文采用了尺寸更大的圖片.
(2)因為采用更大尺寸的圖片,其中通道數變得更大,如由原模型的128通道變為256通道等.
將上述進行組合到一起.深淺特征融合中MGP的上半部分先將圖像高度一分為二,通過3×3的卷積進行特征提取,有利于獲得更加細粒度的特征.將步長設置為2,有利于與下個卷積相加操作.而MGP下面先采用1×1卷積,能夠保留中層特征的同時,與深層特征進行相加,將維度通過1×1卷積,最終將其進行拼接,從而進行深淺特征融合,如圖11所示.

圖11 框架圖所示
本文采用步態識別領域廣泛使用的CASIA-B的步態數據庫[20].此數據庫是大規模公開并且包含多視角的步態數據庫.該數據庫有124人,將同一人的步態又分為3類:(1)正常行走(normal,NM).(2)背包行走(walking with bag,BG).(3)穿外套或夾克衫(wearing coat or jacket,CL).而每個步態的分類又有對應11個視角,如(0°,18°,…,180°).該數據庫在NM狀態下有6段視頻序列(NM#1,…,NM#6),BG狀態下有2段視頻序列(BG#1,BG#2),CL狀態下有2段視頻序列(CL#1,CL#2),因為每種狀態有11個視角,故每個人有110段的視頻序列.CASIA-B的部分狀態輪廓圖樣本如圖12所示.

(a)正常行走狀態;(b)背包狀態;(c)穿大衣狀態
對應的步態能量圖見圖3.

(a)左邊對應;(b)中間對應;(c)右邊對應
2.2.1 評價指標
為了驗證該優化研究的有效性,在CASIA-B步態數據庫進行了實驗評估.將數據庫分為訓練集和測試集兩部分.測試集又可以分為待測樣本庫(Probe)和目標樣本庫(Gallery).其中,Gallery包含NM#1-4.Probe包含NM#5-6、BG#1-2、CL #1-2樣本.訓練集用于網絡模型的調整參數并對其進行優化.對Probe中的序列p,通過生成的網絡模型產生對應的步態特征,即Feature_p.為了遍歷全部序列找到Gallery中對應的ID的樣本g,同樣生成對應的步態特征,即Feature_g.從而將Feature_p和Feature_g通過計算歐式的距離用于判定一次就命中識別正確率,即Rank1識別率,流程如圖14所示.

圖14 Rank1的流程步驟
2.2.2 數據規模劃分
雖然CASIA-B沒有給出官方的數據集的規模劃分,但是很多文獻是按照以下訓練集數據的規模進行劃分.該數據集有124人,通過人數來進行劃分:
設置前24人作為對應的訓練集,剩下的100人作為測試集,稱為小樣本訓練(small-sample training,ST).
設置前62人作為訓練集,剩下的62人作為測試集,稱為中樣本訓練(medium-sample training,MT).
設置前74人作為訓練集,后50人作為測試集,稱為大樣本訓練(large-sample training,LT)
在上述的3種設置的測試集中,NM條件下的前4個序列(NM#1-4)保留在訓練中,而其他的6個序列(NM#5-6、BG#1-2、CL#1-2)則留在測試當中.在CASIA-B中,因為訓練集數據規模的不同,對ST、MT、LT分別迭代的次數也是不一樣的,一般情況下,分別對應為50 000,60 000,80 000次的迭代訓練.
2.3.1 電腦配置
CPU為Intel(R)Core(TM)i9-7980XE CPU,顯卡為NVIDA GeForce RTX 2080Ti 11G×2(有 2個GPU),硬盤為256 GB SSD的主機,使用Python 3.7編程語言,在Windows10操作系統系進行,使用的Pytorch深度學習框架,其中的Pytorch為1.5的版本,使用的CUDA為10.1的版本.
2.3.2 環境配置
所用CASIA-B的步態數據庫,選擇Nadam作為優化器,HPP尺寸為1,數目為32或者以上.學習率為1e-4,小圖片采用(8,16),中等圖片采用(2,8),除了標注數據規模的以外,其他均LT下的實驗結果.表1—3均采用的是中等圖片.
除了本文實驗外,其他結果數據均來自文獻.所有結果在11個視角中取平均值,并且不包括相同的視角.如視角36°正確率是除36°以外的10個視角的平均值.
2.4.1 與原模型進行比較
分別與原模型的ST、MT、LT情況下的識別率對比,見表1—3.

表1 與原模型的ST識別率比較

表2 與原模型的MT識別率比較

表3 與原模型的LT識別率比較
根據表1—3可知,優化后模型的識別率整體均有提升,其中LT的情況下整體的識別提升較為明顯.
2.4.2 與先進算法進行對比
表4—6是在LT數據規模的情況下進行比較[17-19].其中GaitSet-M是使用size為128像素的識別率.

表4 NM狀態下的Rank1準確度對比 %

表5 BG狀態下的Rank1準確度對比 %

表6 CL狀態下的Rank1準確度對比 %
通過上述的實驗,可以發現最好的優化模型的整體識別率非常具有競爭力.識別率提升明顯的原因,歸結如下:
(ⅰ)采用了聯合Loss優化,不僅對相似的樣本具有較好的分辨能力,而且對多分類的情況也具有較好的識別效果,同時在網絡模型學習上也有較好的效果.
(ⅱ)采用更大圖片尺寸,通過視覺與比例論證了較小圖片會造成像素化,而使用較大的圖片里面會包含更多的紋理與輪廓信息,便于之后的模型提取更多的特征信息.
(ⅲ)采用了多尺度的感受野和深淺特征融合,比原模型第一個卷積上用了多尺度的感受野,對不同尺度具有更多的提取效果,同時在(2)的基礎上面,提取了深淺層的特征信息,加入了更多淺層的特征信息,有助于CL狀態與NM狀態的辨別.
2.4.3 對比實驗
優化器的對比實驗見表7.

表7 優化器的對比實驗 %
表7中Nadam是帶有Nesterov動量項的Adam,在ST、LT下的識別率有明顯提升.
本文針對GaitSet模型的一些不足之處進行了優化,使用了聯合Loss、增加感受野的輸入、深淺特征融合,并且使用了CASIA-B較大尺寸的步態輪廓圖,并且論證了包含更多的豐富輪廓信息等.在CASIA-B的LT樣本規模且非相同視角下,NM狀態下的識別率為97.309%,BG狀態下的識別率為94.048%,CL狀態下的識別率為81.736%.與原模型相比較,識別率的效果有較大的提升.但是跟一些頂級的算法,部分的實驗的數據還有不足,在接下來的工作,會更加關注影響識別率下降的一些因素,如果將步態識別和行人重識別和行為識別等方向進行多模態的識別,也是一個非常有應用前景.