趙鑫澤,代雪晶
(中國刑事警察學院公安信息技術與情報學院,沈陽 110000)
隨著科學技術水平的日益更新,生物識別技術正影響著各行各業的發展。步態特征可以作為一種非接觸式遠距離的信息采集生物特征[1],它不受空間距離的限制,通??梢杂貌綉B特征對個體的行走姿態進行判斷與識別。步態包括步頻、步幅、行走速度、擺臂角度等多方面信息,且不易被模仿。步態識別技術可以應用于公安領域上,在無法及時有效獲取人臉和指紋的情況下,通過遠距離監控視頻中的步態信息進行偵查判斷,進而提高公安機關的辦案效率[2],為加快各類案件的偵破奠定了基礎。
目前,很多大型網絡雖然性能十分優秀,但增加了網絡復雜度,容易出現內存過大以及處理速度緩慢等問題,在模型大小和算法速度上可能達不到移動設備的要求。輕量級網絡模型旨在維持模型精度的同時,盡可能地降低模型的參數量和計算量。例如,GoogleNet 增加了網絡的寬度,引入了Inception 結構,有效降低了算法的復雜度[3];ResNet 減小了網絡計算量,通過增加Bottleneck 結構,從而增加網絡的深度,提升模型的精度;ShuffleNet 將分組卷積和深度可分離卷積結合起來,實現了輕量級模型的高效化[4];SqueezeNet減少了模型的參數量和計算量,還提高了算法的精度。2017年谷歌公司提出了作為輕量級網絡中開山之作的Mobilenet,其核心便是深度可分離卷積塊(depthwise separable convolution,DSC)。本文將從視頻中獲取人行走的步態特征,將提取到的有效信息應用到MobileNet 網絡模型中進行步態識別。實驗結果表明,深度可分離卷積在降低網絡參數量和計算量的同時,識別精度也達到了較高的效果。
預處理操作包括使用背景減除法去除行人步行時的周圍環境,在通過形態學、二值化處理后,遍歷步態圖像的像素點,記錄最高、最低、最左和最右的像素值為1的點,生成運動目標的框架并裁剪出輪廓。最后將圖像序列進行歸一化操作,生成128 × 128像素的人體輪廓圖像。
選用步態能量圖(GEI)作為步態分類特征。步態能量圖是步態圖像序列在一段時間內能量的集合,能夠反映出行人在步行過程中的主要輪廓信息。步態能量圖中一點的像素值代表著該點的能量大小,像素值越大,該點在行人步行過程中出現的次數越頻繁,能量也就越大。與普通的二值化步態輪廓圖像相比,步態能量圖可以節省一定的儲存空間和計算空間,也可以消除噪聲。
人體的步長和身高的比值是和時間呈周期性變化,據此可以劃分出每個人的步態周期[5]。通常將行人的一只腳腳尖剛離地到另外一只腳腳尖離地作為一個步態周期。在完成預處理操作后,將圖像序列進行歸一求和,得到每個人在一個步態周期的步態能量圖,如圖1所示。

圖1 步態能量圖的計算示意
步態能量圖的計算公式如式(1)所示:
其中:g(x,y,i)表示在一個周期步態序列中,第i個步態輪廓在(x,y)處的像素坐標,N是步態圖像的總數目。
深度可分離卷積[6]以級聯的方式將其拆分為深度卷積和逐點卷積的疊加。在第一步深度卷積操作中,把卷積核拆分為單通道模式,對輸入圖像的每一個通道逐步進行卷積運算。在第二步逐點卷積操作中,執行1 × 1 卷積,圖像的每個通道都會與卷積核進行卷積操作,直至和所有卷積核都運算完成。在完成上述兩個卷積步驟后,得到最終的卷積計算結果。深度卷積和逐點卷積的具體步驟如圖2和圖3所示。

圖2 深度卷積示意

圖3 逐點卷積示意
在網絡參數方面,深度可分離卷積的參數量和計算量遠遠小于傳統的標準卷積。假設輸入張量的深度為Cin,輸出張量的深度為Cout,深度卷積的卷積核尺寸為h·ω·Cin,逐點卷積的卷積核尺寸為1·1·Cin·Cout,經過DW·DH次乘加運算,得到深度可分離卷積的參數量為h·ω·Cin+Cin·Cout,計算量為h·ω·Cin·DW·DH+Cin·Cout·DW·DH。標準卷積和深度可分離卷積的參數量對比見表1。

表1 卷積算法的參數量對比
通過表1可知,與大型網絡相比,相同條件下使用深度可分離卷積可以顯著減少網絡模型的參數量,在移動端或嵌入式設備上有著一定的優勢。因此,選擇深度可分離卷積模型來設計網絡具有可行性。
MobilenetV1 是一個基于深度可分離卷積的輕量級網絡模型。其核心在于放棄了傳統的3 × 3卷積方式,使用深度可分離卷積代替傳統卷積,并使得參數量和計算量極大減少。MobilenetV1擁有兩個超參數,即寬度系數α和分辨率系數β,分別用于限定特征圖的通道數和分辨率大小。使用ReLU6激活函數來代替原始的ReLU 激活函數,將ReLU 的最大輸出限制在6 以下,可以限制激活值的分布范圍。
Resnet50網絡[7]也是卷積網絡中的一種,由49 個卷積層和1 個全連接層組成,屬于較大的網絡模型。在輸入相同數據集的情況下,MobilenetV1 模型的參數量比Resnet50 模型的參數量大大減少,不同模型的參數量如圖4所示。

圖4 模型參數量
圖像經過預處理后,將其轉換為224 × 224的單通道步態能量圖,并輸送到網絡進行訓練。對于MobilenetV1 模型中的參數,選擇寬度系數α為0.25,最大學習率為0.01,學習率下降方式為cos,損失函數為交叉熵損失函數,訓練過程中采用隨機梯度下降(SGD)算法進行網絡優化,進行300次迭代。整個網絡結構如圖5所示。

圖5 網絡結構
實驗使用Python3.8 作為開發語言,學習框架為TensorFlow2.0。實驗數據采用中科院步態數據庫CASIA 中的Dataset B 數據集。其中包含124個行人的11種視角信息,以及三種(nm:正常行走;bg:背包行走;cl:穿大衣行走)不同的行走姿態。通過上述方法提取步態能量圖,一共可以得到124×11×10=13640 張步態能量圖,每個角度下的步態能量圖如圖6所示。

圖6 每個角度的步態能量圖
對實驗數據進行亂序操作,如表2所示,分出三種實驗類別。將實驗數據集輸送到網絡模型中進行學習并分類。同時為了驗證模型的有效性,用相同的數據集在Resnet50 網絡模型上進行實驗對比。

表2 實驗設計
引入Top-1 準確率以及Recall(召回率)兩個性能指標來評估實驗結果的準確性。Top-1 準確率表示在測試集分類結果中概率最大的準確率。Recall表示被正確識別出來的圖像占測試集的比例,計算公式為
其中:TP代表預測為正,實際為正;FN代表預測為負,實際為正。分別統計兩種模型在不同測試集和驗證集上的性能指標,得到三種實驗結果如表3所示。

表3 實驗結果
實驗結果表明,在MobileneV1 網絡模型中,平均Top-1 準確率為90.7%,平均召回率為89.99%。其中,實驗一(nm)的識別準確率最高,明顯優于實驗二(bg)和實驗三(cl)的準確率。對于實驗二(bg),由于行人在步行過程中背包對姿態的影響較大,造成每個視角下不能很好地反映步態特征。識別準確率在一定意義上和步態特征有關,而行人的運動特征主要體現在步態能量圖上,如果行人在步行中受到衣物、包裹等影響,也會導致行人的輪廓發生改變,進而影響步態能量圖,使得識別準確率較低。
在對比組Resnet50 網絡模型中,實驗一(nm)的Top-1 準確率和召回率與MobilenetV1 網絡模型的實驗結果接近。實驗二(bg)中,Resnet50 模型的實驗指標優于MobileneV1 模型。由于在處理復雜的數據時,Resnet50 的網絡結構較深,模型的精度會因此提高。實驗三(cl)中,MobilenetV1 模型的Top-1 準確率和召回率均比Resnet50模型略高,結果相差不大。
通過上述比較實驗結果可知,兩種模型在處理不同數據集時各有優勢,但MobilenetV1 網絡模型能夠減少參數量,同時也能滿足精度要求,適合在移動端進行部署。
針對深層卷積神經網絡模型參數量大、不便于部署在移動端的問題,本文將輕量級卷積網絡應用在步態識別中進行分類。采用步態能量圖作為分類特征,有效地表現了步態的速度、形態等特征,節省資源空間,減少計算量。使用MobilenetV1 網絡對樣本數據進行特征提取,進一步壓縮模型的參數量和計算量,減少模型對顯卡、內存等資源的占用。實驗結果表明,本文方法在保證識別準確率的前提下,能夠降低復雜程度,壓縮模型大小,有效提升移動端步態識別的性能。下一步可以嘗試擴大數據集,融合更多類型的步態進行分類識別,對具有穿戴復雜衣物、攜有包裹的步態以及跨狀態的步態進行更深入的研究,達到更高的準確率和識別率,從而應用于公安實踐當中。