石艷嬌,張 晴,崔 柳,易玉根
(1.上海應(yīng)用技術(shù)大學(xué) 計(jì)算機(jī)科學(xué)與信息工程學(xué)院,上海 201418;2. 江西師范大學(xué) 軟件學(xué)院,江西 南昌 330022)
隨著社會(huì)各界對(duì)治安問題的廣泛關(guān)注,視頻中的異常事件檢測(cè)成為當(dāng)下的研究熱點(diǎn)。如何對(duì)視頻中的內(nèi)容進(jìn)行描述是異常檢測(cè)算法中的關(guān)鍵問題。傳統(tǒng)的基于目標(biāo)的特征提取方法中,跟蹤算法的不穩(wěn)定將嚴(yán)重影響異常檢測(cè)算法的準(zhǔn)確性。因此近年來,像素級(jí)的底層特征提取算法受到學(xué)者們的廣泛關(guān)注。這類特征無需目標(biāo)跟蹤與分割,可從像素級(jí)底層特征出發(fā)對(duì)場(chǎng)景內(nèi)容進(jìn)行刻畫,避免了跟蹤算法帶來的不穩(wěn)定性。運(yùn)動(dòng)是視頻中的重要屬性,基于光流的統(tǒng)計(jì)特征是異常檢測(cè)中較為常用的用于描述運(yùn)動(dòng)信息的特征,如Cong等[4]提出的多尺度光流直方圖(multi-scale histogram of optical flow,MHOF)特征。該特征不僅包含運(yùn)動(dòng)信息,還包含了空間上下文信息,取得了較好的檢測(cè)效果,并在后來的研究中得到廣泛引用。但該特征只考慮了一階運(yùn)動(dòng)特征即運(yùn)動(dòng)的大小和方向,并未對(duì)運(yùn)動(dòng)的變化進(jìn)行描述。
本文主要研究異常事件檢測(cè)中的視頻內(nèi)容描述。觀察到運(yùn)動(dòng)的變化(包括幅值和方向)是異常的關(guān)鍵性標(biāo)識(shí)元素,提出一種融合了一階和二階運(yùn)動(dòng)特征的復(fù)合運(yùn)動(dòng)特征描述方法,以對(duì)場(chǎng)景內(nèi)容進(jìn)行更全面的描述。同時(shí)提取視頻中的感興趣區(qū)域,實(shí)現(xiàn)冗余信息的篩除。此外,將傳統(tǒng)多分類線性判別分析(liner discriminant analysis,LDA)算法加以改進(jìn),以解決異常事件檢測(cè)這一一分類問題。
視頻內(nèi)容描述就是提取能夠表征視頻內(nèi)容屬性的特征,以便于后續(xù)進(jìn)行更精準(zhǔn)的分類。視頻內(nèi)容表示是否合理、全面,將直接影響后續(xù)分類的精度。Yu等[1]利用稠密光流和相互作用力來表示視頻內(nèi)容。Wang等[2]使用光流方向直方圖(histogram of optical flow orientation,HOFO)來編碼視頻中的運(yùn)動(dòng)信息。Wang等[3]則提出了采用協(xié)方差矩陣對(duì)光流產(chǎn)生的運(yùn)動(dòng)信息進(jìn)行編碼。Cong等[4]提出了一種多尺度光流直方圖(multi-scale histogram of optical flow,MHOF)特征,該特征在光流提取的基礎(chǔ)上,對(duì)運(yùn)動(dòng)方向和運(yùn)動(dòng)能量進(jìn)行了多尺度量化,從而實(shí)現(xiàn)了對(duì)視頻中運(yùn)動(dòng)和空間信息的刻畫。該方法一經(jīng)提出就在后續(xù)的異常事件算法中被廣泛應(yīng)用[5-7]。Tracklets是另一廣泛使用的運(yùn)動(dòng)特征提取方法[8,9],該方法利用相鄰若干幀提取目標(biāo)的運(yùn)動(dòng)軌跡。由于該方法利用短時(shí)跟蹤,避免了傳統(tǒng)跟蹤方法中檢測(cè)軌跡偏離真實(shí)目標(biāo)所帶來的嚴(yán)重影響。周培培等[10]利用局部梯度方向直方圖和局部光流方向直方圖分別提取運(yùn)動(dòng)和外觀特征,Yu等[11]則將多尺度光流直方圖和多尺度梯度直方圖結(jié)合作為最終的特征表示。Zhang等[12]在運(yùn)動(dòng)信息外,基于支持向量數(shù)據(jù)描述(support vector data description,SVDD)方法獲取目標(biāo)的球狀邊界,以實(shí)現(xiàn)目標(biāo)的外觀描述。Wang等[13]采用空-時(shí)紋理方法對(duì)運(yùn)動(dòng)和外觀信息進(jìn)行統(tǒng)一描述。但上述方法均未考慮到運(yùn)動(dòng)變化這一標(biāo)識(shí)異常的重要信息。此外,這些方法對(duì)所有視頻內(nèi)容進(jìn)行同等對(duì)待,并未考慮無關(guān)信息的處理所帶來的資源浪費(fèi)和對(duì)檢測(cè)精度的干擾。
近年來,深度學(xué)習(xí)由于其優(yōu)越的性能受到各領(lǐng)域研究學(xué)者的廣泛關(guān)注。在異常事件檢測(cè)領(lǐng)域,也涌現(xiàn)出了大量基于深度特征的方法[14-17]。Zhou等[15]提出一種空-時(shí)卷積神經(jīng)網(wǎng)絡(luò),并基于空-時(shí)感興趣體(spatial-temporal volumes of interest,SVOI)來獲取空域和時(shí)域維度的信息。Bao等[16]提出在光流塊基礎(chǔ)上利用PCANet來獲取深度表示?;谏疃葘W(xué)習(xí)的方法檢測(cè)效果一般都比較理想,但通常需要較高的硬件需求。并且由于異常事件樣本通常較難獲取,基于深度學(xué)習(xí)的方法只能利用少量異常樣本或?qū)Ξ惓颖具M(jìn)行增強(qiáng)進(jìn)行模型訓(xùn)練,這就導(dǎo)致模型對(duì)訓(xùn)練數(shù)據(jù)敏感,泛化能力較差。
針對(duì)上述方法中存在的不足,本文提出了融合一階和二階運(yùn)動(dòng)特征的復(fù)合運(yùn)動(dòng)特征描述方法,對(duì)場(chǎng)景內(nèi)容進(jìn)行更全面地描述。同時(shí)提取視頻中的感興趣區(qū)域,實(shí)現(xiàn)冗余信息的篩除。此外,根據(jù)異常樣本較難獲取這一事實(shí),將異常檢測(cè)考慮為一分類問題,避免了異常檢測(cè)在二分類模型下負(fù)樣本量不足以及樣本不均衡問題。
視頻數(shù)據(jù)具有很強(qiáng)的冗余性,這些冗余信息不僅降低視頻數(shù)據(jù)的處理效率,而且會(huì)對(duì)檢測(cè)精度造成影響。因此本文首先提取視頻中的感興趣區(qū)域。視頻中的異常通常由運(yùn)動(dòng)引起,因此本文考慮將從未出現(xiàn)運(yùn)動(dòng)的區(qū)域即背景區(qū)域去除。將訓(xùn)練視頻中各幀的光流幅值求平均值,并進(jìn)行簡(jiǎn)單的形態(tài)學(xué)操作處理,即可得到如圖1所示的感興趣區(qū)域。其中圖1(a)為UCSD Ped1數(shù)據(jù)集中的示例圖像,圖1(b)中的白色區(qū)域即為本文確定的感興趣區(qū)域。
圖1 UCSD Ped1場(chǎng)景的感興趣區(qū)域
本文采用MHOF特征作為一階特征的描述。觀察到目標(biāo)運(yùn)動(dòng)的突然改變可能引起異常,如突然加速或突然改變運(yùn)動(dòng)方向,本文提出二階運(yùn)動(dòng)特征來對(duì)運(yùn)動(dòng)的變化進(jìn)行描述。同時(shí)提出融合一階和二階運(yùn)動(dòng)特征的復(fù)合特征描述方法,以對(duì)運(yùn)動(dòng)及運(yùn)動(dòng)的變化進(jìn)行全面的描述。
在提取一階特征時(shí),首先計(jì)算光流場(chǎng),然后將光流場(chǎng)劃分為大小為n×n的圖像單元。利用式(1)提取一階運(yùn)動(dòng)特征
(1)
其中,r(·)為取整函數(shù),rFM和θFM表示一階運(yùn)動(dòng)大小和方向,hFM(x,y)表示(x,y)處的一階多尺度直方圖特征。參照文獻(xiàn)[4]設(shè)置參數(shù)d=8及T=1。
在提取二階特征時(shí),首先利用光流場(chǎng)實(shí)現(xiàn)短時(shí)跟蹤。不同于以往的目標(biāo)跟蹤算法,所述跟蹤僅利用連續(xù)三幀的光流場(chǎng),實(shí)現(xiàn)像素級(jí)的短時(shí)跟蹤,過程如圖2所示。
二階運(yùn)動(dòng)特征提取過程可總結(jié)為如下:
(1)利用視頻序列中的第t-1、t和t+1幀計(jì)算光流場(chǎng)Vt-1、Vt。
(2)設(shè)(xt-1,yt-1) 為第t-1幀中像素P所在的位置,該像素在第t幀中的位置(xt,yt)可通過式(2)獲得
圖2 二階運(yùn)動(dòng)特征提取
(xt,yt)=(xt-1,yt-1)+Vt-1(xt-1,yt-1)
(2)
基于運(yùn)動(dòng)向量場(chǎng)Vt,可獲得像素P在第t幀中的運(yùn)動(dòng)向量Vt(xt,yt)。
(3)在獲得像素P在第t-1和t幀的運(yùn)動(dòng)向量Vt-1(xt-1,yt-1)和Vt(xt,yt)后,即可利用式(3)計(jì)算其二階運(yùn)動(dòng)向量
SMV(xt,yt)=Vt(xt,yt)-Vt-1(xt-1,yt-1)
(3)
其中,SMV(xt,yt)表示第t幀中(x,y)處的二階運(yùn)動(dòng)向量。
(4)在獲取了二階運(yùn)動(dòng)向量場(chǎng)后,將其劃分為大小為n×n的圖像單元,然后按照式(4)進(jìn)行直方圖統(tǒng)計(jì),獲得二階運(yùn)動(dòng)描述
(4)
其中,rSM和θSM表示二階運(yùn)動(dòng)大小和方向,hSM表示二階多尺度直方圖特征。d和T的設(shè)置與一階特征提取相同。
最后將一階特征和二階特征按照式(5)進(jìn)行融合,得到最終的復(fù)合運(yùn)動(dòng)特征
hFSM=w×hFM⊕(1-w)×hSM
(5)
其中,⊕為直方圖拼接操作,w用于平衡一階和二階運(yùn)動(dòng)特征。
為了實(shí)現(xiàn)異常區(qū)域的定位,采用如圖3所示的空時(shí)基進(jìn)行特征表示。即對(duì)于當(dāng)前待處理的圖像單元,將其本身及空時(shí)鄰域的復(fù)合運(yùn)動(dòng)特征進(jìn)行拼接來表示該圖像單元。
圖3 用于異常區(qū)域定位的空時(shí)基
基于異常事件檢測(cè)的特點(diǎn),本文將異常事件檢測(cè)考慮為一分類問題,即利用已知的正常事件樣本訓(xùn)練正常模型,而不符合該模型的樣本即判定為異常事件。本文采用一分類LDA算法實(shí)現(xiàn)異常事件檢測(cè)。在眾多的分類方法中,選擇LDA算法進(jìn)行分類主要考慮以下因素:首先,本文的主要?jiǎng)?chuàng)新在于提出一種復(fù)合運(yùn)動(dòng)特征的視頻內(nèi)容描述方法,一種簡(jiǎn)單且經(jīng)典的分類算法將更能夠突出本文提出特征描述方法的性能;其次,LDA為線性方法,計(jì)算簡(jiǎn)單,相比于其它一分類方法如一類支持向量機(jī)(one class support vector machine,OC-SVM)、基于核的空Foley-Sammon變換(kernel null Foley-Sammon Transform,KNFST)等,時(shí)間效率優(yōu)勢(shì)明顯。
線性判別分析可定義為以下優(yōu)化問題
(6)
其中,Sb是類間散度矩陣,Sw是類內(nèi)散度矩陣。最大化式(6)即可求得最優(yōu)投影方向。最常用的求解方法是通過式(7)進(jìn)行廣義特征值分解
Sbw=λSww
(7)
以上分析可以看出,經(jīng)典LDA算法并不適用于一分類任務(wù),因?yàn)楫?dāng)類別數(shù)C=1時(shí),得到零個(gè)投影方向。因此,本文對(duì)經(jīng)典LDA算法進(jìn)行了調(diào)整。設(shè)訓(xùn)練樣本即正常事件樣本集合X(X1,…,XN)為第一類樣本,并假設(shè)一個(gè)全零的樣本為第二類樣本,然后進(jìn)行二分類的LDA,得到最優(yōu)投影方向和X的投影x(x1,…,xN)。對(duì)于測(cè)試樣本t,其在最優(yōu)投影方向上的投影t*與x中最近的樣本xi的距離即為該測(cè)試樣本的異常得分。一分類LDA的計(jì)算過程如圖4所示。
圖4 一分類LDA算法
由于式(7)中的Sw通常為半正定,為了使之正定,可將另一正定的對(duì)角矩陣與之相加得到的S′w來代替Sw,即
S′w=Sw+αI
(8)
其中,α為任意正實(shí)數(shù),I為單位矩陣。本文中α設(shè)為5。
為了驗(yàn)證本文提出算法的有效性,在UCSD數(shù)據(jù)集[18]上對(duì)本文提出方法進(jìn)行驗(yàn)證。該數(shù)據(jù)集共包含Ped1和Ped2兩個(gè)子集,每個(gè)子集中包含訓(xùn)練視頻序列和測(cè)試視頻序列,拍攝場(chǎng)景為校園中的步行道。訓(xùn)練視頻序列中均為正常事件,每個(gè)測(cè)試視頻序列中包含一個(gè)或多個(gè)異常事件,并提供了幀級(jí)和像素級(jí)Groundtruth。表1給出了UCSD數(shù)據(jù)集的相關(guān)信息。圖5給出了該數(shù)據(jù)集中的部分異常事件的示例,其中圖(a)和圖(b)中的騎行自行車為異常事件。
表1 UCSD數(shù)據(jù)集的詳細(xì)信息
圖5 UCSD數(shù)據(jù)集中的異常事件示例
首先對(duì)算法中的參數(shù)選擇進(jìn)行分析。本文提出算法中待確定的參數(shù)為圖像單元大小n和融合權(quán)重w。按照一定的步長進(jìn)行遍歷搜索,最終確定參數(shù)n和w的最優(yōu)取值:對(duì)于Ped1子集,n=10,w=0.5;對(duì)于Ped2子集,n=16,w=0.6。在后續(xù)實(shí)驗(yàn)中,均采用該參數(shù)配置進(jìn)行實(shí)驗(yàn)。
在UCSD Ped1和UCSD Ped2數(shù)據(jù)集上的部分檢測(cè)結(jié)果如圖6和圖7所示,白色半透明模板所覆蓋區(qū)域?yàn)闄z測(cè)到的異常區(qū)域。從圖中可以看出,本文提出方法能夠檢測(cè)出滑板、自行車等異常事件。
圖6 UCSD Ped1數(shù)據(jù)集上的部分檢測(cè)結(jié)果
圖7 UCSD Ped2數(shù)據(jù)集上的部分檢測(cè)結(jié)果
為了進(jìn)一步說明本文提出方法的有效性,將在UCSD數(shù)據(jù)集上的檢測(cè)結(jié)果與一些經(jīng)典或前沿的方法進(jìn)行對(duì)比,對(duì)比方法分別為SF-MPPCA[18]、MDT[18]、MHOF[4]、DSparse[7]、sHOT[8]、BSFM[19]、Sabokrou[20]和Biswas[21]。表2和表3分別列出了各方法在Ped1和Ped2子集上的檢測(cè)結(jié)果。其中所對(duì)比方法的結(jié)果數(shù)據(jù)均來自于相應(yīng)的參考文獻(xiàn)。表中加粗字體表示在該指標(biāo)下的最優(yōu)檢測(cè)結(jié)果,“-”表示相應(yīng)文獻(xiàn)中并未提供該指標(biāo)下的結(jié)果值。
表2 各方法在UCSD Ped1子集上的檢測(cè)結(jié)果
表3 各方法在UCSD Ped2子集上的檢測(cè)結(jié)果
綜合以上對(duì)比結(jié)果可以看出,本文提出的異常檢測(cè)算法具有較為優(yōu)越的檢測(cè)性能。
為了考察分類算法的時(shí)間效率,將LDA與其它兩種一分類算法OC-SVM和KNSFT進(jìn)行對(duì)比。實(shí)驗(yàn)所使用計(jì)算機(jī)硬件配置為Inter i5-7500 CPU、16 G內(nèi)存。首先提取所有視頻序列的特征并保存在磁盤文件中,并分別對(duì)分類過程所需時(shí)間進(jìn)行測(cè)試,結(jié)果見表4。其中表4的第二列“總分類時(shí)間”表示不計(jì)特征提取過程而只對(duì)分類階段進(jìn)行計(jì)時(shí)的結(jié)果??梢钥闯?,在總體分類時(shí)間上LDA算法優(yōu)勢(shì)并不明顯,這是由于算法未做優(yōu)化處理,并且受計(jì)算機(jī)硬件限制,算法中存在大量的讀寫文件操作。為了進(jìn)一步驗(yàn)證LDA算法的時(shí)間效率,本文僅對(duì)分類算法進(jìn)行計(jì)時(shí),而不計(jì)入讀寫文件的時(shí)間,并最終計(jì)算出每一幀的平均時(shí)間,結(jié)果如表4的第三列“凈分類時(shí)間”所示??梢钥闯觯琇DA算法的凈分類時(shí)間為0.73 ms,遠(yuǎn)遠(yuǎn)低于KNFST的2.41 ms和OC-SVM的43.48 ms。相信隨著硬件的升級(jí)以及算法的優(yōu)化,線性分類方法LDA的時(shí)間優(yōu)勢(shì)將在本文提出方法中體現(xiàn)的更加明顯。
表4 各分類方法的時(shí)間代價(jià)比較
本文提出一種基于復(fù)合運(yùn)動(dòng)特征和一分類線性判別分析的異常事件檢測(cè)方法??紤]到運(yùn)動(dòng)變化通常是異常事件的重要標(biāo)志,提出一種融合了一階和二階運(yùn)動(dòng)特征的復(fù)合運(yùn)動(dòng)特征,以對(duì)視頻內(nèi)容進(jìn)行更全面的描述??紤]到視頻中冗余信息對(duì)計(jì)算效率和檢測(cè)精度的影響,提出只對(duì)視頻中的感興趣區(qū)域進(jìn)行異常判斷。同時(shí),考慮到異常事件的特點(diǎn),提出使用一分類LDA算法對(duì)異常事件進(jìn)行檢測(cè)。在UCSD數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明了本文提出算法的有效性。但該算法也存在一定局限性,例如其未考慮外觀特性,因此對(duì)于某些由外觀引起的異常不能有效檢測(cè)。未來工作中將考慮融入外觀特征,以進(jìn)一步提高算法的適用范圍和檢測(cè)性能。