石艷嬌,張 晴,崔 柳,易玉根
(1.上海應用技術大學 計算機科學與信息工程學院,上海 201418;2. 江西師范大學 軟件學院,江西 南昌 330022)
隨著社會各界對治安問題的廣泛關注,視頻中的異常事件檢測成為當下的研究熱點。如何對視頻中的內容進行描述是異常檢測算法中的關鍵問題。傳統的基于目標的特征提取方法中,跟蹤算法的不穩定將嚴重影響異常檢測算法的準確性。因此近年來,像素級的底層特征提取算法受到學者們的廣泛關注。這類特征無需目標跟蹤與分割,可從像素級底層特征出發對場景內容進行刻畫,避免了跟蹤算法帶來的不穩定性。運動是視頻中的重要屬性,基于光流的統計特征是異常檢測中較為常用的用于描述運動信息的特征,如Cong等[4]提出的多尺度光流直方圖(multi-scale histogram of optical flow,MHOF)特征。該特征不僅包含運動信息,還包含了空間上下文信息,取得了較好的檢測效果,并在后來的研究中得到廣泛引用。但該特征只考慮了一階運動特征即運動的大小和方向,并未對運動的變化進行描述。
本文主要研究異常事件檢測中的視頻內容描述。觀察到運動的變化(包括幅值和方向)是異常的關鍵性標識元素,提出一種融合了一階和二階運動特征的復合運動特征描述方法,以對場景內容進行更全面的描述。同時提取視頻中的感興趣區域,實現冗余信息的篩除。此外,將傳統多分類線性判別分析(liner discriminant analysis,LDA)算法加以改進,以解決異常事件檢測這一一分類問題。
視頻內容描述就是提取能夠表征視頻內容屬性的特征,以便于后續進行更精準的分類。視頻內容表示是否合理、全面,將直接影響后續分類的精度。Yu等[1]利用稠密光流和相互作用力來表示視頻內容。Wang等[2]使用光流方向直方圖(histogram of optical flow orientation,HOFO)來編碼視頻中的運動信息。Wang等[3]則提出了采用協方差矩陣對光流產生的運動信息進行編碼。Cong等[4]提出了一種多尺度光流直方圖(multi-scale histogram of optical flow,MHOF)特征,該特征在光流提取的基礎上,對運動方向和運動能量進行了多尺度量化,從而實現了對視頻中運動和空間信息的刻畫。該方法一經提出就在后續的異常事件算法中被廣泛應用[5-7]。Tracklets是另一廣泛使用的運動特征提取方法[8,9],該方法利用相鄰若干幀提取目標的運動軌跡。由于該方法利用短時跟蹤,避免了傳統跟蹤方法中檢測軌跡偏離真實目標所帶來的嚴重影響。周培培等[10]利用局部梯度方向直方圖和局部光流方向直方圖分別提取運動和外觀特征,Yu等[11]則將多尺度光流直方圖和多尺度梯度直方圖結合作為最終的特征表示。Zhang等[12]在運動信息外,基于支持向量數據描述(support vector data description,SVDD)方法獲取目標的球狀邊界,以實現目標的外觀描述。Wang等[13]采用空-時紋理方法對運動和外觀信息進行統一描述。但上述方法均未考慮到運動變化這一標識異常的重要信息。此外,這些方法對所有視頻內容進行同等對待,并未考慮無關信息的處理所帶來的資源浪費和對檢測精度的干擾。
近年來,深度學習由于其優越的性能受到各領域研究學者的廣泛關注。在異常事件檢測領域,也涌現出了大量基于深度特征的方法[14-17]。Zhou等[15]提出一種空-時卷積神經網絡,并基于空-時感興趣體(spatial-temporal volumes of interest,SVOI)來獲取空域和時域維度的信息。Bao等[16]提出在光流塊基礎上利用PCANet來獲取深度表示。基于深度學習的方法檢測效果一般都比較理想,但通常需要較高的硬件需求。并且由于異常事件樣本通常較難獲取,基于深度學習的方法只能利用少量異常樣本或對異常樣本進行增強進行模型訓練,這就導致模型對訓練數據敏感,泛化能力較差。
針對上述方法中存在的不足,本文提出了融合一階和二階運動特征的復合運動特征描述方法,對場景內容進行更全面地描述。同時提取視頻中的感興趣區域,實現冗余信息的篩除。此外,根據異常樣本較難獲取這一事實,將異常檢測考慮為一分類問題,避免了異常檢測在二分類模型下負樣本量不足以及樣本不均衡問題。
視頻數據具有很強的冗余性,這些冗余信息不僅降低視頻數據的處理效率,而且會對檢測精度造成影響。因此本文首先提取視頻中的感興趣區域。視頻中的異常通常由運動引起,因此本文考慮將從未出現運動的區域即背景區域去除。將訓練視頻中各幀的光流幅值求平均值,并進行簡單的形態學操作處理,即可得到如圖1所示的感興趣區域。其中圖1(a)為UCSD Ped1數據集中的示例圖像,圖1(b)中的白色區域即為本文確定的感興趣區域。

圖1 UCSD Ped1場景的感興趣區域
本文采用MHOF特征作為一階特征的描述。觀察到目標運動的突然改變可能引起異常,如突然加速或突然改變運動方向,本文提出二階運動特征來對運動的變化進行描述。同時提出融合一階和二階運動特征的復合特征描述方法,以對運動及運動的變化進行全面的描述。
在提取一階特征時,首先計算光流場,然后將光流場劃分為大小為n×n的圖像單元。利用式(1)提取一階運動特征
(1)
其中,r(·)為取整函數,rFM和θFM表示一階運動大小和方向,hFM(x,y)表示(x,y)處的一階多尺度直方圖特征。參照文獻[4]設置參數d=8及T=1。
在提取二階特征時,首先利用光流場實現短時跟蹤。不同于以往的目標跟蹤算法,所述跟蹤僅利用連續三幀的光流場,實現像素級的短時跟蹤,過程如圖2所示。
二階運動特征提取過程可總結為如下:
(1)利用視頻序列中的第t-1、t和t+1幀計算光流場Vt-1、Vt。
(2)設(xt-1,yt-1) 為第t-1幀中像素P所在的位置,該像素在第t幀中的位置(xt,yt)可通過式(2)獲得

圖2 二階運動特征提取
(xt,yt)=(xt-1,yt-1)+Vt-1(xt-1,yt-1)
(2)
基于運動向量場Vt,可獲得像素P在第t幀中的運動向量Vt(xt,yt)。
(3)在獲得像素P在第t-1和t幀的運動向量Vt-1(xt-1,yt-1)和Vt(xt,yt)后,即可利用式(3)計算其二階運動向量
SMV(xt,yt)=Vt(xt,yt)-Vt-1(xt-1,yt-1)
(3)
其中,SMV(xt,yt)表示第t幀中(x,y)處的二階運動向量。
(4)在獲取了二階運動向量場后,將其劃分為大小為n×n的圖像單元,然后按照式(4)進行直方圖統計,獲得二階運動描述
(4)
其中,rSM和θSM表示二階運動大小和方向,hSM表示二階多尺度直方圖特征。d和T的設置與一階特征提取相同。
最后將一階特征和二階特征按照式(5)進行融合,得到最終的復合運動特征
hFSM=w×hFM⊕(1-w)×hSM
(5)
其中,⊕為直方圖拼接操作,w用于平衡一階和二階運動特征。
為了實現異常區域的定位,采用如圖3所示的空時基進行特征表示。即對于當前待處理的圖像單元,將其本身及空時鄰域的復合運動特征進行拼接來表示該圖像單元。

圖3 用于異常區域定位的空時基
基于異常事件檢測的特點,本文將異常事件檢測考慮為一分類問題,即利用已知的正常事件樣本訓練正常模型,而不符合該模型的樣本即判定為異常事件。本文采用一分類LDA算法實現異常事件檢測。在眾多的分類方法中,選擇LDA算法進行分類主要考慮以下因素:首先,本文的主要創新在于提出一種復合運動特征的視頻內容描述方法,一種簡單且經典的分類算法將更能夠突出本文提出特征描述方法的性能;其次,LDA為線性方法,計算簡單,相比于其它一分類方法如一類支持向量機(one class support vector machine,OC-SVM)、基于核的空Foley-Sammon變換(kernel null Foley-Sammon Transform,KNFST)等,時間效率優勢明顯。
線性判別分析可定義為以下優化問題
(6)
其中,Sb是類間散度矩陣,Sw是類內散度矩陣。最大化式(6)即可求得最優投影方向。最常用的求解方法是通過式(7)進行廣義特征值分解
Sbw=λSww
(7)

以上分析可以看出,經典LDA算法并不適用于一分類任務,因為當類別數C=1時,得到零個投影方向。因此,本文對經典LDA算法進行了調整。設訓練樣本即正常事件樣本集合X(X1,…,XN)為第一類樣本,并假設一個全零的樣本為第二類樣本,然后進行二分類的LDA,得到最優投影方向和X的投影x(x1,…,xN)。對于測試樣本t,其在最優投影方向上的投影t*與x中最近的樣本xi的距離即為該測試樣本的異常得分。一分類LDA的計算過程如圖4所示。

圖4 一分類LDA算法
由于式(7)中的Sw通常為半正定,為了使之正定,可將另一正定的對角矩陣與之相加得到的S′w來代替Sw,即
S′w=Sw+αI
(8)
其中,α為任意正實數,I為單位矩陣。本文中α設為5。
為了驗證本文提出算法的有效性,在UCSD數據集[18]上對本文提出方法進行驗證。該數據集共包含Ped1和Ped2兩個子集,每個子集中包含訓練視頻序列和測試視頻序列,拍攝場景為校園中的步行道。訓練視頻序列中均為正常事件,每個測試視頻序列中包含一個或多個異常事件,并提供了幀級和像素級Groundtruth。表1給出了UCSD數據集的相關信息。圖5給出了該數據集中的部分異常事件的示例,其中圖(a)和圖(b)中的騎行自行車為異常事件。

表1 UCSD數據集的詳細信息

圖5 UCSD數據集中的異常事件示例
首先對算法中的參數選擇進行分析。本文提出算法中待確定的參數為圖像單元大小n和融合權重w。按照一定的步長進行遍歷搜索,最終確定參數n和w的最優取值:對于Ped1子集,n=10,w=0.5;對于Ped2子集,n=16,w=0.6。在后續實驗中,均采用該參數配置進行實驗。
在UCSD Ped1和UCSD Ped2數據集上的部分檢測結果如圖6和圖7所示,白色半透明模板所覆蓋區域為檢測到的異常區域。從圖中可以看出,本文提出方法能夠檢測出滑板、自行車等異常事件。

圖6 UCSD Ped1數據集上的部分檢測結果

圖7 UCSD Ped2數據集上的部分檢測結果
為了進一步說明本文提出方法的有效性,將在UCSD數據集上的檢測結果與一些經典或前沿的方法進行對比,對比方法分別為SF-MPPCA[18]、MDT[18]、MHOF[4]、DSparse[7]、sHOT[8]、BSFM[19]、Sabokrou[20]和Biswas[21]。表2和表3分別列出了各方法在Ped1和Ped2子集上的檢測結果。其中所對比方法的結果數據均來自于相應的參考文獻。表中加粗字體表示在該指標下的最優檢測結果,“-”表示相應文獻中并未提供該指標下的結果值。

表2 各方法在UCSD Ped1子集上的檢測結果

表3 各方法在UCSD Ped2子集上的檢測結果
綜合以上對比結果可以看出,本文提出的異常檢測算法具有較為優越的檢測性能。
為了考察分類算法的時間效率,將LDA與其它兩種一分類算法OC-SVM和KNSFT進行對比。實驗所使用計算機硬件配置為Inter i5-7500 CPU、16 G內存。首先提取所有視頻序列的特征并保存在磁盤文件中,并分別對分類過程所需時間進行測試,結果見表4。其中表4的第二列“總分類時間”表示不計特征提取過程而只對分類階段進行計時的結果。可以看出,在總體分類時間上LDA算法優勢并不明顯,這是由于算法未做優化處理,并且受計算機硬件限制,算法中存在大量的讀寫文件操作。為了進一步驗證LDA算法的時間效率,本文僅對分類算法進行計時,而不計入讀寫文件的時間,并最終計算出每一幀的平均時間,結果如表4的第三列“凈分類時間”所示。可以看出,LDA算法的凈分類時間為0.73 ms,遠遠低于KNFST的2.41 ms和OC-SVM的43.48 ms。相信隨著硬件的升級以及算法的優化,線性分類方法LDA的時間優勢將在本文提出方法中體現的更加明顯。

表4 各分類方法的時間代價比較
本文提出一種基于復合運動特征和一分類線性判別分析的異常事件檢測方法。考慮到運動變化通常是異常事件的重要標志,提出一種融合了一階和二階運動特征的復合運動特征,以對視頻內容進行更全面的描述。考慮到視頻中冗余信息對計算效率和檢測精度的影響,提出只對視頻中的感興趣區域進行異常判斷。同時,考慮到異常事件的特點,提出使用一分類LDA算法對異常事件進行檢測。在UCSD數據集上的實驗結果表明了本文提出算法的有效性。但該算法也存在一定局限性,例如其未考慮外觀特性,因此對于某些由外觀引起的異常不能有效檢測。未來工作中將考慮融入外觀特征,以進一步提高算法的適用范圍和檢測性能。