魏英姿,曹振林
(沈陽理工大學,遼寧 沈陽 110158)
我國經濟的快速發展也伴隨著貧富差距加大、社會犯罪率上升和犯罪局部危害較大等問題。當下視頻監控系統已遍布于不同場所,但并未成為犯罪防范、預警的直接手段,監控終端的智能化技術亟待提高。因此,本文主要研究安防視頻中行人的異常徘徊行為,以形成快速、有效預警提示信息的機制,降低偵查機關的主動偵查成本,盡早發現預謀犯罪行為。
目前,對于徘徊行為的定義缺少一般的量化描述,大多是針對某個具體場景的定性分析。Nayak 等人[1]提出了一個基于深度學習的多攝像機徘徊檢測系統,用以分析行人運動軌跡,當時間和位移閾值滿足一定條件時,系統會認為出現了徘徊現象。朱夢哲等人[2]對不同場景下的徘徊行為分別給出了不同的定義,利用檢測到行人的三維模型來判斷行人是否徘徊。劉超等人[3]記錄了行人軌跡位于x、y軸分量產生的極值數量,若超出規定數量則判定為徘徊,但該方法只適用于特定場景下,在多人場景下效果不佳。Sandifort 等人[4]提出了應用于多個監控攝像機的徘徊檢測熵模型,在一段時間內采集多個攝像頭中行人的外觀特征,在熱力圖上繪制行人的特征位置,用該特征位置來代替多個跟蹤軌跡。Huang等人[5]提出基于行人活動區域分類的徘徊檢測方法,該方法提取滯留時間閾值內的軌跡坐標,用矩形、橢圓和扇形等形狀將行人軌跡包圍起來,如果行人一直局限在包圍區域,將被判定為徘徊行為。
決策樹是一種模仿人類思維方式的決策方法,可形成明晰的樹形結構、決策規則。決策樹分類具備良好的可解釋性,易于處理多峰分布之類的分類問題,利用分級形式,把復雜分類問題轉化為若干個簡單分類問題來解決[6]?;诖?,本文通過視頻進行行人目標檢測、跟蹤,并進行軌跡數據采集、數據預處理和屬性集構建等,選擇屬性子集構建決策樹,進行異常徘徊行為判別。
安防意義下的行人異常徘徊檢測,目的在于觀測預謀犯罪對象實施的踩點行為,具體體現在外在行為運動軌跡上,例如圍繞某個位置的軌跡折返行為,或者是駐足觀察行為。駐足觀察行為在軌跡和速度上表現得異常明顯,較易被發現。本文對更具隱蔽性的異常徘徊行為作量化描述和判別,其動態、靜態行為數據通常具有以下特點:
(1)行人運動軌跡在垂直和水平方向上發生多次方向改變,在所形成連續軌跡的x、y軸分量產生極值的個數(sum)較多。
(2)行人逗留于安防場景中的時間(time)較長。
(3)行人當前位置與進入場景時的初始位置之間的距離變化,由大變小或者由小變大多次反復,量化表現為路程(distance)與位移(displacement)的比值(l)波動式上升。
(4)現實中,行人在等候時小幅度地走動以及人群在進行身體鍛煉時依然會滿足以上三個條件,考慮到潛在的預謀犯罪通常伴隨多角度觀察這一特點,因此(1)中提到的極值點在畫面中所構成區域面積(area)應大于正?;顒拥姆秶ˋREA)才可視為徘徊。
預謀犯罪往往存在彷徨、猶豫不決、焦灼不安和多角度觀察的表現,異常徘徊的活動區域一般不會局限于小的區域。行人在等候時小范圍地走動,或是在廣場上鍛煉的人們也隨著時間的增長漫游軌跡增多等小幅度范圍內產生的軌跡都不會被判定為異常徘徊。
YOLOv5 不僅能實現目標分類,還能獲得準確的目標定位信息,因此利用YOLOv5 獲取視頻行人的數據進行行為分析和判別。采用YOLOv5s 網絡結構建立權重文件,整個YOLOv5 網絡結構分為四個部分,分別是輸入端、Backbone部分、Neck 網絡和Prediction 端口。
輸入端由Mosaic 數據增強、自適應錨框計算和自適應圖片縮放三大模塊組成。YOLOv5 在不同數據集上定制不同長度和寬度的錨框進行適配,再使用適配圖片縮放實現數據增強。Backbone 主要可以劃分為Focus 架構和CSP 模塊。Focus 架構在YOLOv5 中最新出現,其關鍵在于切片操作,可在下采樣時減少信息損失。CSP 模塊用于特征提取和特征融合。Neck 網絡使用FPN+PAN 的結構,FPN 將高層特征信息進行上采樣傳遞和融合,得到用于預測的特征圖;PAN 特征金字塔從底層到高層傳達強定位特征,實現不同的主干層對不同檢測層的參數聚合。Prediction 端口以GIOU_Loss 函數為回歸損失函數,通過計算不同狀態的GIOU 值解決邊界框不完全重合的問題,同時使用加權DIOU_nms 實現非極大值抑制,抑制冗余框。
經過YOLOv5 檢測出的行人目標,再通過DeepSORT算法跟蹤獲取其運動軌跡。延續多目標在線跟蹤算法SORT(Simple Online and Realtime Tracking)的核心,DeepSORT仍然采用經典的卡爾曼濾波生成類目標跟蹤算法[7],并通過匈牙利算法在目標跟蹤過程中匹配預測框和跟蹤框。由于目標運動、被遮擋等原因導致跟蹤匹配信息確定性較低時,馬氏距離是一種合適的關聯因子,通過測量檢測結果距離平均跟蹤結果的標準差,排除可能性低的關聯[8]。當目標處于被遮擋狀態或者鏡頭畫面抖動時,如果只使用馬氏距離關聯會導致目標身份誤切換。DeepSORT[9]在跟蹤過程中結合運動信息和外觀信息。對于運動信息,使用馬氏距離度量預測結果之間的匹配度,計算外觀信息特征的余弦相似度,在目標再次出現時恢復目標身份id,使DeepSORT 執行穩定跟蹤。
行人軌跡是指在視頻場景中從起始位置到結束位置所經過的路線。單個行人的軌跡為隨時間變化的人體質心位置序列Tid={(x0,y0),(x1,y1),...,(xtime,ytime)},x、y分別為橫、縱坐標。場景中的不同行人標號為id,視頻場景中多人的軌跡集合為T={T1,T2,...,Tid}。
如果沒有阻擋物,行人的行走軌跡通常是近似直線地前往目的地。實際上,人類雙足行走形成的質心軌跡不太可能完全是直線,而且視頻幀數據自身就具有離散性,因此,通過YOLO 和DeepSORT 跟蹤行人的質心位置獲取的軌跡,往往存在大量的鋸齒形狀分布的離散點。如圖1(a)、圖1(b)所示分別為MOT16 和UT-Interaction 數據集的視頻中行人跟蹤軌跡結果,這些數據在x軸或y軸分量方向有折返軌跡、存在大量極值,直接進行軌跡分析會造成計算資源浪費,甚至造成誤檢,因此,采用S-G 濾波器對行人軌跡點進行平滑處理。

圖1 視頻中行人跟蹤的質心軌跡
S-G(Savitzky-Golay)濾波器作為低通濾波器之一,濾波系數計算十分便捷,在數據平滑去噪中得到了廣泛的應用[10]。通過設定大小為2m+1 的平滑窗口,在時域內利用局部最小二乘法構造一個n階多項式對數據進行平滑。設有一組以u=0為中心的2m+1個數據,構造n階多項式(2m+1≥n)擬合,公式如下:
由式(1)可知,當u=0 時,p0=b0。S-G 濾波器以加權平均的方式計算窗口中心點數據p(0)。其最小二乘擬合殘差為:
對輸入數據進行加權平均,再取偏導,有:
其中t=0,1,…,n,有:
設A=aut(2m+1)(n+1),aut=ut,其中-m≤u≤m,0≤t≤n,設矩陣B=ATA,有:
設有矩陣:
其中,H矩陣的首行行向量為所求的卷積系數,且僅與n和m有關。
采用S-G 濾波器分別對行人軌跡點的橫、縱坐標做濾波處理,軌跡平滑的具體步驟如下:
步驟1:設定S-G 濾波器的參數?;瑒哟翱诖笮≡O為25,窗口內多項式擬合最高的次數設置為6,即m=12,n=6。
步驟2:計算系數矩陣H。由公式(7),系數矩陣H=(ATA)-1AT,H的首行行向量為卷積系數。
步驟3:邊緣數據處理。由于該方法刪除了數據首尾各m個數據,所以在數據的兩端以端點值各向外補充m個數據值。
步驟4:修正數據。利用上述卷積系數對滑動窗口內的數據值做加權平均,計算出窗口中心位置處修正值p0后,保存修正后的數據。
步驟5:移動窗口。將滑動窗口向后移一個數據位置,執行第4 步,直到滑動窗口移動到全部數據尾部。
圖1中行人軌跡經過S-G 濾波器平滑后的軌跡如圖2所示。圖2(a)中id-29 號行人和圖2(b)中id-4 的行人均出現遮擋后暫時丟失坐標信息,由于DeepSORT 加入了行人重識別技術,跟蹤過程中出現的短暫遮擋會識別為同一行人,其對應id 的軌跡坐標同時恢復,期間對應的軌跡會遺失掉,S-G 濾波器會填補上這些軌跡缺失值,得到平滑后軌跡,再做分析和判別。圖3為圖1(a)、圖1(b)部分行人運動軌跡平滑前后軌跡路線對比結果。

圖2 經過S-G 濾波器平滑后的行人軌跡

圖3 經S-G 濾波器平滑前后軌跡路線對比
分別用x、y表示行人位置坐標,差分(dx,dy)表示其即時運動速度,用二次差分(|d2x|,|d2y|)描述速度波動,具體計算為dx=xt-xt-1,|d2x|=xt-2xt-1+xt-2。表1為某一時刻S-G 濾波器對行人軌跡平滑前后的坐標、速度、速度波動等對比情況。

表1 軌跡平滑前后屬性值對比
選取UT-Interaction 及中科院自動化研究所收錄的CASIA 數據集中存在徘徊特征的視頻片段,對有異常徘徊行為的行人軌跡特征進行統計,構建決策樹的行人特征屬性集合attribute_set{l,time,sum,area,v,q}。其中,l為路程與位移之比,路程為行人從起始坐標點到當前坐標點所有軌跡點之和,位移為起始坐標點到當前坐標點的距離;time 為滯留時間,從行人進入視頻且被檢測到開始記錄其滯留時間;sum 為行人軌跡在x、y軸分量產生的極值點數量;area 為極值點在畫面中所構成區域的面積,由至少4 個極值點確定,若不足4 個則為0;v為行人速度;q為行人的速度波動。
構建閾值集合變量threshold_set{L,TIME,SUM,AREA,V,ACC}。其中,L為路程與位移之比最大容許閾值;TIME 為滯留時間容許閾值;SUM 為極值點數量容許閾值;AREA 為正?;顒臃秶娣e容許閾值,AREA=g×h2,h為視頻中行人身高,參照YOLOv5 行人檢測預選框高度統計值得到,以變量h作為長度測度標準量,g為比例系數;V為行人速度容許閾值;ACC 為行人的速度波動容許閾值。
將數據集的60%作為訓練集,剩下的40%作為測試集,獲取訓練集視頻中的行人軌跡,提取以上特征并進行手工標記,標簽即狀態分為normal 和loitering 兩類。表2為部分訓練樣本屬性值及其分類。

表2 部分訓練樣本屬性值及其分類
ID3 是決策樹中的常用算法,核心是選擇合適的特征屬性構建決策樹。在構建決策樹時,根節點選擇方法是比較所有節點的所有候選特征的信息增益,從中選取信息增益最大的特征作為根節點,節點特征取不同值就可以構成一系列子節點,再對子節點重復進行上述操作以構建其他節點,當不存在可選的特征或者所有特征信息增益量低于某一標準,決策樹構建完成。
設訓練集為D,其信息熵為E(D),Q為樣本類別;j為類別總數。第j類樣本中Qj類樣本出現的概率為|Qj|/|D|,其信息熵公式如下:
設特征U有n個不同的取值,將D分成子集D1,D2,...,Dn。計算條件熵E(D|U)公式如下:
其中,Di表示特征U的值為i的樣本數量,E(Di)的計算公式為:
式中,Dij表示特征U的值為i的樣本在Q類別的樣本數量,信息增益Gain(D|U)如下:
利用訓練集,通過式(8)~(11),得到所有屬性的信息增益,信息增益最大的屬性路程與位移之比l被選作決策樹的根節點。行人速度v和速度波動q兩種屬性的信息增益值對檢測結果的影響可忽略不計,因此,決策樹的節點屬性子集中沒有v和q,至此決策樹構建完成。如圖4所示為異常徘徊判別的決策樹結構。

圖4 異常徘徊判別的決策樹結構
決策樹檢測異常徘徊行為的多級分類主要過程如下:
(1)當安防視頻中出現行人時開始統計,對進入畫面中的每個行人賦予不同id 號,記錄行走軌跡。
(2)當某行人的行走路程與位移之比小于閾值L,即l (3)計算極值數量,若出現極值數量小于閾值SUM,即sum (4)若當前極值點所構成區域面積小于閾值AREA,即area 通過CASIA AR 和UT-Interaction 數據集,采用多種評價指標測試決策樹模型性能。 準確率(accuracy)是指整體樣本預測的準確度,可直接用來衡量一個模型的優劣,它的數值越高,表示該模型越好,計算公式為: 其中:TP 表示徘徊行為被正確檢測的數量;TN 表示正常行為被正確檢測的數量;FP 表示正常行為被檢測為徘徊行為的數量;FN 表示未將徘徊行為正確檢測的數量。 精確率(precision)是指在所有的被檢測為徘徊的樣本里現實也為徘徊的概率,計算公式為: 召回率(recall)為當實際結果為徘徊的一個樣本時被檢測到也為徘徊的概率,計算公式為: F1 分數(F1-score):當希望精確率與召回率都較高,卻又無法同時達到,則需找到兩者間的一個平衡點,這個平衡點就定義為F1 分數??紤]到精確率和召回率,為了使二者結果達到最優,計算公式為: 實驗中對測試集的徘徊檢測分類結果進行了統計,與文獻[3]進行對比,結果見表3所列。 表3 徘徊檢測分類結果對比 在配置為CPU Corei5-1135G7、2.4 GHz、內存16 GB 的計算機上,采用pytorch 框架下python3.8 代碼實現。實驗對CASIA AR 和UT-Interaction 數據集部分視頻進行了測試,本文決策樹方法判別結果如圖5所示。 圖5 CASIA AR 和UT-Interaction數據集部分視頻決策樹判別結果 視頻數據往往可以作為犯罪后偵查的資料,但尚未成為指導警務的預警情報?!叭f物互聯”的時代下,決策樹算法以其準確性高、速度快、能處理高維數據的特點,可輔助安防網絡終端的智能交互與服務,做出快速響應。本文量化描述安防意義下的行人異常徘徊行為,通過目標檢測加跟蹤技術獲取行人軌跡數據,采用Savitzky-Golay 濾波器,擬合、平滑行人跟蹤過程中的軌跡斷裂和漂移數據。提取軌跡特征屬性構建決策樹模型,有效地避免了徘徊誤檢,可檢測出視頻監控內多人場景下的異常徘徊行為。通過對異常徘徊預謀犯罪行為的判別,期望有效制止犯罪危害結果的發生,減少偵查機關對犯罪的追訴成本。5 實驗結果


6 結 語