李海豐,姜子政,范龍飛,陳新偉
(1.中國民航大學計算機科學與技術(shù)學院,天津 300300;2.閩江學院福建省信息處理與智能控制重點實驗室,福州 350121)
隨著中國經(jīng)濟的高速發(fā)展和人口的不斷增加,公共場所的安防問題日益突出,對機場、車站等公共場所中群體行為的監(jiān)測非常重要,突發(fā)群體異常行為會給人民生命和財產(chǎn)帶來極大的損失,因此群體突發(fā)異常事件檢測有著非常重要的應用價值。
近年來,隨著計算機視覺領(lǐng)域的不斷發(fā)展,國內(nèi)外學者已經(jīng)在群體異常行為檢測方面取得了一定成果。如Mehran 等[1]采用社會力模型構(gòu)建局部時空立方體對群體異常行為進行檢測;Xiong 等[2]采用能量模型對群體異常行為進行檢測;Raghavendra 等[3]通過粒子群優(yōu)化算法來檢測群體異常行為,該方法可對擴散、定向移動等典型群體異常行為進行檢測;Chan 等[4]使用隱馬爾可夫模型(HMM,hidden Markov model)可以避免定義大量的正常行為,提高了檢測效率;Chen 等[5]提出利用人群加速度特征在異常情況下產(chǎn)生突變的特點來檢測人群的異常行為。這些算法主要提取群體的全局特征分析空間上的特征變化,缺乏人群在時間角度上行為變化的信息關(guān)聯(lián),將人群空間特征與時間特征的變化信息融合是群體異常事件檢測的一個重要思路。Wang 等[6]提出基于時空體特征的群體異常檢測算法,該算法能夠分析群體在空間和時間上行為狀態(tài)的變化情況,但由于時空體特征維度較高,對運動平緩的群體異常行為檢測效果并不明顯。目前方法中并沒有對事件源位置進行定位的處理。一旦突發(fā)群體異常事件,掌握突發(fā)事件的事件源位置信息對事故現(xiàn)場的資源分配、人員調(diào)度、應急策略的制定與實施都有著極高的參考價值,因此對事件源實時定位是群體突發(fā)異常事件檢測問題的重要部分。Sabokrou等[7]將視頻數(shù)據(jù)處理成若干互不重疊的立方塊,可對場景中出現(xiàn)行為異常的物體進行定位,但該方法僅能對單個異常行為的行人定位,并不能對事件源的位置進行定位;Duan 等[8]采用混合動態(tài)紋理模型綜合了時域與空域的影響,達到了較高的檢測率,但該方法并不能精確地判斷出事件源的具體方位,亦不能實時跟蹤事件源位置的持續(xù)變化。
為解決上述問題,提出一種群體突發(fā)異常事件檢測與事件源定位算法,分為群體異常行為檢測和事件源實時定位兩個階段。
所提算法可對事件源進行較為準確的定位,同時提高了對異常事件的檢測效率,對機場、車站等公共場所的安全監(jiān)控具有較為現(xiàn)實的意義。
第1 階段從空間、時間兩個角度進行聯(lián)合檢測,首先從空間角度提取前景圖像的光流幅值直方圖,進一步提取平均動能分布直方圖特征來反映群體的運動狀態(tài),并采用支持向量機(SVM,support vector machine)模型進行檢測;其次,從時間角度,由于“異常事件總是發(fā)生在某一連續(xù)的時間段內(nèi)”,即當前場景中的人群行為只依賴于時間上臨近的人群行為與人群的歷史行為無關(guān)這一特點,采用隱馬爾可夫模型進行檢測。第2 階段首先根據(jù)群體異常事件檢測結(jié)果,判斷當前場景中是否發(fā)生異常行為;如果發(fā)生異常行為,則在RANSAC 框架下定位場景中事件源的位置,最后實時輸出當前場景中事件源的個數(shù)以及每個事件源的位置信息。算法流程如圖1所示。
圖1 算法流程圖Fig.1 Algorithm flow
此階段分別從空間與時間兩個角度進行檢測??臻g角度,根據(jù)對異常行為的定義,群體異常行為往往伴隨著人群運動幅度的激變,因此采用平均動能分布直方圖客觀地描述人群運動特征;時間角度,由于異常行為的發(fā)生不是在某一幀或幾幀,而是在某一個連續(xù)的時間段內(nèi),在時間軸上與前、后人群的行為緊密相關(guān),因此用隱馬爾可夫模型對視頻中的人群行為進行檢測可減小由于噪聲導致某幀誤判所帶來的誤差。該階段算法整體分為離線訓練和在線檢測兩步。
離線訓練具體步驟如下:
1)預處理,采用基于混合高斯背景模型的背景差分法得到前景圖像;
2)特征提取,對步驟1)中得到的前景圖像提取光流幅值直方圖特征。采用平均動能分布直方圖來描述場景中人群的運動特征,首先根據(jù)方向分類,將360°平均分成12 個區(qū)間,即每30°為1 個方向子區(qū)間,然后統(tǒng)計落在每個方向子區(qū)間內(nèi)的前景圖像光流點個數(shù),得到光流幅值直方圖。為了更加準確地描述場景中人群的運動特征,對光流幅值直方圖特征的每個子區(qū)間計算平均動能,得到每個區(qū)間上平均動能的分布直方圖,反映不同方向上人群的運動狀態(tài),即其中:前景圖像光流幅值表示該點的即時速度,hj、θj分別為前景圖像光流矢量的幅值和方向;θr為第r 個方向子區(qū)間;nr為方向子區(qū)間r 中前景圖像光流點的個數(shù)。
3)支持向量機模型訓練,從空間角度采用SVM 模型訓練步驟2)中提取的訓練樣本平均動能分布直方圖特征,得到用于檢測人群運動特征的SVM 模型。
4)隱馬爾可夫模型訓練,從時間角度,由于公共場所中群體異常事件的發(fā)生是一個隨機事件,發(fā)生形式多變、突然、迅速、不確定性很大,僅與時間上臨近的人群狀態(tài)有關(guān),即當前時刻的人群行為僅與相鄰時刻的人群行為相關(guān)??紤]以上特點,選取隱馬爾可夫模型檢測異常事件的發(fā)生具有實際意義。隱馬爾可夫模型是一種統(tǒng)計模型,用來描述一個含有隱含未知參數(shù)的馬爾可夫過程,因此訓練HMM 模型即優(yōu)化模型參數(shù)λ={A,B,Π},其中A 為狀態(tài)轉(zhuǎn)移矩陣,B 為混淆矩陣,Π 為初始狀態(tài)矩陣。首先定義觀測序列Oi,通過每幀視頻圖像人群的運動特征來表示觀測序列中每個元素的值,即
其中:觀測序列Oi中的元素ol由步驟3)中SVM 模型分類結(jié)果計算得到,即
其中:f(x)為訓練的SVM 模型目標函數(shù),根據(jù)經(jīng)驗設(shè)初始模型參數(shù)為λ0={A0,B0,Π0},使用Baum-Welch算法計算得到隱馬爾可夫模型的一個最大似然估計
在線檢測步驟如下:
1)預處理 對輸入圖像進行預處理,采用基于混合高斯背景模型的背景差分法得到前景圖像;
2)特征提取 提取輸入圖像的光流幅值直方圖及平均動能分布直方圖特征;
3)異常行為檢測 將步驟2)中提取的平均動能分布直方圖特征采用支持向量機分類器分類,根據(jù)分類結(jié)果由式(2)~(4)得到輸入圖像的觀測序列Oi,最后采用隱馬爾可夫模型對人群行為檢測,即由前向算法計算觀測序列Oi與隱馬爾可夫模型λ 似然函數(shù)的值P(Oi|),若P(Oi|)大于閾值Tt則判斷為異常。
此階段為算法的核心步驟。事件源即異常事件發(fā)生的中心位置,如火災事件的火源位置、打架斗毆事件的人員打斗位置、聚集事件的人群中心位置等,根據(jù)異常事件源的運動狀態(tài)可分為兩類情況:靜態(tài)事件源在其發(fā)生位置保持不動;動態(tài)事件源隨著異常事件的持續(xù)發(fā)展而移動或者擴散。異常事件現(xiàn)場人群的運動狀態(tài)總是和事件源位置息息相關(guān),即人群總是向著事件源的當前位置逃散或聚集,因此,通過計算異常事件中人群運動方向延長線的交點位置,可判斷事件源的近似位置。目前算法中對異常事件檢測有一定進展,但大部分算法只限于“判斷”,并沒有后續(xù)處理,而現(xiàn)實場景中對危險事件事態(tài)的持續(xù)關(guān)注,以及對事件源位置的準確定位,能夠給相關(guān)人員提供更具有價值的信息。在實際應用中,由于場景環(huán)境復雜多變,對異常事件中每個人運動方向的延長線計算會產(chǎn)生噪聲數(shù)據(jù),從而對事件源定位結(jié)果產(chǎn)生干擾,經(jīng)典的參數(shù)估計算法很難排除異常數(shù)據(jù)對模型的影響,因此,異常事件源定位算法基于RANSAC(randon sample consensus)框架實現(xiàn),RANSAC 算法被廣泛應用于提純數(shù)據(jù),其特點可從包含大量局外點(不符合模型的異常數(shù)據(jù))的數(shù)據(jù)集中通過迭代的方式,估計出數(shù)據(jù)的數(shù)學模型參數(shù),從而得到有效的數(shù)據(jù),利用RANSAC 算法剔除人群運動方向的噪聲點后,再擬合模型,減少了局外點對事件源定位的干擾,提高了事件源定位的準確性,具體步驟如下。
1)將檢測結(jié)果為異常行為的圖像等分成m×n 個子塊,并計算出每個子塊中像素點光流的向量和Qi。
2)從步驟1)中得到的向量和Qi的集合中隨機選擇兩個向量Qa和Qb,計算其對應所在直線的交點q,如果兩條直線平行,則重新隨機選取兩個向量并計算交點。向量Qa、Qb所在的直線方程為
其中:ka、kb為對應直線斜率;ba,bb為對應直線截距。
3)計算交點q 到其余向量Qi所在直線的歐式距離di,如果歐式距離di小于某一距離閾值Td,則將該交點視為內(nèi)點,否則視為外點,最后選擇獲得內(nèi)點數(shù)目最多的交點q 作為真實值。其中選取前景圖像區(qū)域的中心點到各向量Qi距離的均值作為距離閾值Td。
4)利用步驟3)得到的內(nèi)點集重新優(yōu)化估計交點q,得到優(yōu)化估計交點q′,滿足優(yōu)化估計交點q′到所有內(nèi)點所在直線的距離Φ 最小,即
其中:Z 為最后獲得的內(nèi)點總個數(shù);kj、bj分別為內(nèi)點j所在直線的斜率、截距。
5)由步驟4)得到的優(yōu)化估計交點q′即為突發(fā)事件的事件源位置,為檢測場景中是否存在多個事件源,繼續(xù)將其余外點重復步驟1)~步驟3)再次計算,如果獲得的最多內(nèi)點集數(shù)目大于某一內(nèi)點集數(shù)目閾值,則認為存在多個事件源,重復步驟4),由此計算出多個事件源位置。
分別從群體異常行為檢測與事件源定位兩個階段進行實驗。數(shù)據(jù)取自明尼蘇達大學標準公共數(shù)據(jù)集UMN[9],包含室內(nèi)、室外兩種環(huán)境,以及在草坪、大廳、廣場3 種不同場景下的群體正常行為和奔跑逃散行為。
群體異常行為檢測階段分2 個部分:①離線訓練檢測模型。取平均動能分布直方圖特征為12 維,人群正常行為與異常行為平均動能分布直方圖特征對比如圖2所示。為方便與文獻[10]進行對比,HMM 模型的觀測序列長度取10,即每連續(xù)10 幀圖像作為1 個觀測序列,并選取每種場景中圖像序列的10%作為正、負訓練樣本,其余作為測試樣本;②在線實時檢測。
圖2 人群正常行為與異常行為平均動能分布直方圖對比Fig.2 Comparison of average kinetic energy distribution histograms between normal behavior and abnormal behavior
采用ROC(receiver operating characteristics)曲線對結(jié)果進行描述,并用計算AUC(area under ROC curve)作為群體突發(fā)異常行為的評價指標。對輸入的視頻進行實時檢測,將其AUC 值與光流法[1]、社會力法[1]與SIFT 點檢測法[10]進行比較,如表1所示。為了清晰直觀地反映對突發(fā)異常行為的識別效果,繪制出UMN數(shù)據(jù)集上該算法與光流法、社會力法檢測結(jié)果的ROC曲線對比圖,如圖3所示。
表1 不同算法AUC 實驗結(jié)果對比Tab.1 Comparison of AUC experimental results with different algorithms
圖3 異常行為檢測結(jié)果的ROC 曲線對比Fig.3 ROC comparison of abnormal behaviors
圖3中:真正類TP定義為正確識別的異常事件,假正類FP 為被誤檢測為異常事件的正常事件,真負類TN 為正確識別的正常事件,假負類FN 為被誤檢測為正常事件的異常事件。
真正率TPR,即識別率為
假正率FPR,即誤檢率為
由圖3可知,每個場景中發(fā)生異常行為的人群在各個方向分布的平均動能明顯大于人群正常行為的平均動能值,且每個方向都體現(xiàn)出比較高的動能,與實際突發(fā)異常事件中人群恐慌、四處加速、群體能量增大的特征相符合。文獻[10]通過對相鄰幀的前景圖像提取SIFT 點特征獲取人群的運動信息,并用HMM 模型進行異常行為檢測,由表1可以看出,該算法的AUC 值高于光流法、社會力法和SIFT 點檢測法,對群體突發(fā)異常事件有較好的識別結(jié)果。
異常事件源定位階段,則針對上一階段實驗的檢測結(jié)果,實現(xiàn)對突發(fā)異常事件的源定位。事件源,即異常事件發(fā)生的中心位置,如火災事件的火源位置,打架斗毆事件的人員打斗位置,聚集事件的人群中心位置等。根據(jù)運動狀態(tài)可將異常事件源分為兩類:靜態(tài)事件源在其發(fā)生位置保持不動;動態(tài)事件源隨異常事件的持續(xù)發(fā)展而移動或者擴散。及時掌握現(xiàn)場突發(fā)異常事件中事件源位置和個數(shù),對減少財產(chǎn)損失和人員傷亡,以及突發(fā)異常事件的事后應急資源調(diào)度和人員分配都有著重要的參考價值。因此,事件源定位是現(xiàn)實安防系統(tǒng)中必不可少的關(guān)鍵環(huán)節(jié)。UMN 數(shù)據(jù)集僅模擬人群突發(fā)異常事件產(chǎn)生的異常逃散行為,并沒有對引起異常行為的事件源位置進行標記,由于缺少真實值,故對本階段實驗結(jié)果進行人工分析。
從主觀上判斷,人群總是遠離產(chǎn)生危害的位置進行逃散,因此,可近似認為人群逃離的中心點即為異常事件中心的真實值。事件源定位算法在RANSAC 框架下的實現(xiàn)過程如圖4所示,采用光流法描述人群的運動狀態(tài),光流方向即人群的運動方向。圖4中實線箭頭表示通過RANSAC 算法計算后,符合事件源定位算法中數(shù)學模型的人群運動方向(內(nèi)點),虛線箭頭表示人群運動方向的噪聲點(局外點),通過RANSAC 算法計算后,從內(nèi)點集中排除,從圖中可以看出,事件源位置距離人群運動方向延長線的距離最小。
圖4 事件源定位算法在RANSAC 框架下的實現(xiàn)過程Fig.4 Event source localization algorithm based on RANSAC framework
在UMN 數(shù)據(jù)集上的定位結(jié)果如圖5所示,其中,符號▲代表當前場景中事件源的位置,當人群從正常行為突然向四處逃散的同時,快速對場景中事件源位置進行定位,并實時更新。由圖5可以看出,在人群突發(fā)異常行為場景中,人群快速逃離現(xiàn)場,遠離圖中定位的異常事件源,可認為該點即為事件源的最優(yōu)近似估計位置,故算法的定位結(jié)果是合理的。
圖5 事件源定位算法在UMN 數(shù)據(jù)集上的定位結(jié)果Fig.5 Event source location algorithm results on UMN datasets
首先對群體突發(fā)異常事件進行檢測,該階段從空間、時間角度進行聯(lián)合檢測,空間角度選取反映人群運動特點的平均動能分布直方圖特征并采取SVM 分類器進行分類。時間角度基于空間角度的檢測結(jié)果結(jié)合隱馬爾可夫模型對場景中的人群行為進行檢測,通過對比實驗分析,所得算法對群體突發(fā)異常事件檢測的準確度高于目前主流算法。其次,基于群體突發(fā)異常事件的檢測結(jié)果,進一步對場景中事件源的位置進行實時定位,該階段在RANSAC 框架下實現(xiàn)對事件源位置的快速定位,能夠?qū)崟r檢測出突發(fā)異常事件的場景中事件源的個數(shù)與每個事件源的實時位置信息,彌補了目前算法中“只檢測、不定位”的不足。
由于主觀意識不同,觀察者對人群異常行為與正常行為以及事件源位置的評判標準并不相同,目前也沒有統(tǒng)一的評判標準,該算法能夠準確地描繪出不同行為狀態(tài)人群的運動特征,并能夠直觀檢測出場景中事件源的位置,對發(fā)生危險事件的后續(xù)處理提供了及時、可靠的信息,可為實際應用提供參考。