



















摘要:在視頻異常事件檢測的問題上,現有的研究方法未充分考慮場景中的背景信息干擾和目標尺度變化,導致檢測精度普遍較低。針對此類問題,提出了一種融合多尺度時空信息的異常事件檢測方法。首先,應用一種坐標注意力的方法,使模型更多地關注異常事件發生的區域。其次,為了提取到各層次豐富的時空信息,采用空洞卷積網絡構建一種多分支多尺度的特征融合模塊。最后,考慮到正常事件的多樣性,提出一種規則分數,以便在測試階段進一步更新記憶增強模塊中的記憶項,提高對異常事件的檢測精度。在CUHK Avenue和ShanghaiTech數據集的相關實驗中,提出方法的幀級AUC分別達到了88.7%和77.5%,且滿足視頻檢測的實時性要求,驗證了該方法的可行性和有效性。
關鍵詞:視頻異常檢測;無監督學習;空洞卷積;多尺度時空特征融合;記憶增強模塊
中圖分類號: TP391 文獻標識碼: A DOI:10.3969/j.issn.1007-791X.2025.01.008
0 引言
視頻監控中的異常事件檢測是計算機視覺的一個熱門研究領域。使用智能視頻監控系統來自動檢測異常行為對于維護公共安全和社會秩序具有至關重要的意義[1-2]。然而,在大量正常事件下檢測異常事件是一項極具挑戰的任務。一方面,由于正常事件發生的概率遠高于異常事件,收集和標記所有類型的異常事件非常困難。另一方面,在現實生活中,正常和異常事件往往根據人們的不同需求來判別,因此,異常事件的判定具有主觀性和不確定性。
目前,視頻異常檢測通常使用僅包含正常樣本的訓練集訓練基于無監督學習的正態模型,如果測試集中的測試幀偏離正態模型,則將其視為包含異常物體或行為的異常幀[3]。視頻異常檢測根據特征提取方式的不同可大致分為基于傳統機器學習的方法和基于深度學習的方法[4]。前者方法中,Zhu等人[5]在社會力模型中加入加權交互作用力估計,通過判斷各個軌跡之間的相互作用力大小進行異常檢測。Kratz等人[6]通過視頻幀每個局部塊的3D梯度構建高斯模型,然后利用隱馬爾可夫模型(hidden Markov models,HMM)檢測異常行為是否發生。但是由于光照多變、物體遮擋等不利條件會嚴重影響此類方法的特征提取,導致其檢測精度顯著降低,所以目前多采用基于深度學習的方法。
基于深度學習的主流方法包括兩種:重構判別法和預測判別法。重構判別法通過訓練正態模型以重構輸入幀,并依據輸入幀和重構幀之間的重構誤差來檢測異常事件,其中,自編碼器結構(auto-encoders,AEs)是常用的異常檢測模型。目前,深度自編碼器已經發展出許多變體如Conv-AE[7]、ConvLSTM-AE[8]和Conv3D-AE[9]等。由于可以提取更深層次的行為特征,它們在很大程度上優于傳統方法,但是神經網絡強大的表達能力往往導致異常視頻幀的重構誤差較小,使得模型無法準確地區分正常與異常事件。Gong等人[10]使用基于記憶增強模塊的自編碼器重構輸入,有效限制了卷積神經網絡過度的泛化性,但是其耗費了大量的內存空間來記錄原型特征,且提升的效果依然有限。
由于正常事件是可預測的,而異常事件是不可預測的,預測判別法利用未來幀的預測誤差大小來判定是否異常[11]。Liu等人[12]首先提出利用預測的未來幀與地面實況之間的差異來檢測異常事件,并加入光流約束來提取運動特征,以預測誤差作為異常指標。Li等人[13]提出一種基于未來幀預測的跌倒檢測方法,將具有靈活的全局聚合塊的Attention U-Net視為幀預測網絡。Zhou等人[14]使用注意力驅動的損失解決視頻異常檢測中的前景對象與靜態背景對象之間的不平衡問題。
現有的研究方法沒有充分考慮到外界環境和空間距離對目標檢測的影響,使得檢測模型的魯棒性較差。為此,本文在上述研究的基礎上,針對靜態監控視頻中的異常行為檢測任務,提出了一種多尺度特征融合的預測網絡結構。引入殘差坐標注意力模塊(residual coordinate attention module,RCAM)對視頻幀的水平和垂直方向施加注意力權重,以減少背景信息對檢測的干擾。通過多尺度特征融合模塊(multi-scale features fusion module,MSFFM)提高對不同尺寸目標特征的提取能力。此外,為了緩解正常事件種類繁多且無法窮舉的問題,提出了一種新的記憶項更新策略,使記憶項可以學習到測試集中出現的正常事件模式。
1 異常檢測方法
本文在文獻[10]基礎上,在跳躍連接中間加入記憶增強模塊,這樣既能增強模型的學習能力,同時,通過在編解碼器相同分辨率的低維特征層和高維特征層之間加入跳躍連接,能夠融合特征信息以緩解各層信息不平衡的問題,提高最終的檢測精度。止匕外,在編碼器中加入RCAM,并在自編碼器的瓶頸層引入多分支的MSFFM。提出方法的網絡結構如圖1所示。
1.1 自編碼器
1.1.1 殘差坐標注意力模塊
為了減少背景信息對檢測的干擾,引入殘差坐標注意力模塊對視頻幀的水平和垂直方向施加注意力權重。本文參考Hou等人[15]的研究,引入RCAM以增強網絡學習特征的表達能力,在捕捉視頻幀之間長距離依存關系的同時,提高網絡對檢測目標的空間定位能力,并減少計算成本。RCAM采用任意中間特征圖q∈RH×W×C作為輸入,并輸出一個變換后的新特征圖q″∈RH×W×C,如圖2所示,其中,H、W和C分別代表特征圖的高、寬和通道數。
在RCAM中,坐標注意力塊(coordinate attention block,CAB)位于一個卷積塊之后,該卷積塊由3×3卷積層、BN層、Leaky ReLU層和3×3卷積層依次級聯組成,輸出q′∈RH×W×C。
為了捕捉到目標在空間維度上精確的位置信息,CAB將全局池化分解為一對一維特征編碼操作,使用兩個尺寸為(H,1)和(1,W)的池化核分別沿q′的水平和垂直方向對每個通道進行編碼得到zh和zw。與產生單個特征向量的通道注意力方法SE-Net[16]不同的是,CAB可以在沿著一個空間方向捕捉長距離依存關系的同時,沿著另一個空間方向提取目標的位置信息,這有助于網絡更準確地定位感興趣的目標區域。
接下來,將這一對特征圖串聯起來發送到1×1卷積層。為了降低模型的復雜度,充分捕捉通道之間的關系,使用降維比r=32壓縮通道數,如式(1)所示:
f=σ(F1(zh,zw)),""""""""""(1)
其中,(·,·)表示沿空間維度的級聯,F1表示1×1卷積層,σ表示Leaky ReLU激活層。經過BN層和Leaky ReLU層處理后,再將其沿空間維度拆分為兩個獨立的張量fh和fw,并利用F2和F3兩個1×1卷積層恢復張量的通道數。最后,利用Sigmoid層分別對兩個張量進行歸一化加權處理得到gh和gw,分別作為垂直方向和水平方向的注意力權重,
gh=σ(F2(fh)),""""""""""""(2)
gw=σ(F3(fw))。""""""""""""(3)
經過處理后,RCAM輸出的新特征圖q〃為
如上所述,沿水平和垂直方向的注意力同時應用于輸入特征圖,使得兩個注意力圖中的每個元素都反映了目標是否存在于相應的行和列中。這種編碼過程使坐標注意力能夠更準確地定位感興趣對象的空間位置,有利于后續的異常檢測。
1.1.2 多尺度特征融合模塊
本文引入多尺度特征融合模塊以提高對不同尺寸目標特征的提取能力。由于視頻中的目標通常是不同尺寸的,所以提取不同大小感受野的信息有助于提高對異常事件的檢測精度。為了學習到視頻幀中豐富的時空信息,并增強特征的可分辨性和魯棒性,本文使用空洞卷積網絡[17]構建了多尺度特征融合模塊MSFFM,通過調整擴張率rate以獲得不同大小感受野的語義特征。
如圖3所示,將編碼器最后一層輸出的特征圖q輸入MSFFM,其中,第一個分支用于保留原始的特征信息,其余三個分支通過擴張率分別為1、3、5的空洞卷積提取多尺度特征,其卷積核對應的感受野分別為1×1、3×3、5×5。小擴張率的卷積核有利于提取小目標的特征,而大擴張率的卷積核則有利于提取大目標的特征。同時,為了降低模型的復雜度,在空洞卷積的前后添加了1×1卷積層來調整特征圖的通道數。最后,將四個分支的特征圖沿通道維度融合后,獲得一個包含全局和局部信息的特征表示qms。
在模型中加入池化層往往會導致信息損失和精度下降,但不加池化層則會導致感受野變小,無法學習到全局的特征。若只依靠擴大卷積核使模型學習更多的特征,則會導致模型的參數量和運算量增大[18]。MSFFM中的空洞卷積操作可以讓模型的特征圖感受野以指數級增加,并且不會因為缺少池化層而損失信息,使得模塊的輸出結果包含目標更完備的信息。
1.2 記憶增強模塊
為了有效約束自編碼器強大的表示能力,防止高誤報率的發生,本文在文獻[10]提出方法的基礎上,引入記憶增強模塊。該模塊旨在學習與正常樣本最為匹配的原型特征,并將這些特征存儲于特定的記憶項中。記憶增強模塊包含M個的記憶項,用pm(m=1,2,…,M)表示。該模塊在訓練和測試階段會不斷交替地執行讀取和更新記憶項的任務。
在讀取階段,該模塊將上一層提取的特征圖qt∈RH×W×C的K(K=H×W)個特征作為索引,讀取記憶增強模塊中的記憶項,得到一個新的特征圖。
首先,計算每個特征qkt(k=1,2,…,K)與所有記憶項pm之間的余弦相似度,其中,qkt表示t時刻輸入特征圖的第k個特征,pm表示第m個記憶項,由此,生成一個尺寸為M×K的二維余弦相似度矩陣。然后,對該矩陣沿著M維的方向應用softmax函數,得到每個特征在所有記憶項上的匹配概率,即權重wk,mt,
在更新階段,再次利用相同的二維余弦相似度矩陣,沿著K維的方向應用softmax函數,得到原始權重vk,mt,
其中,f(·)表示L2規范化。對M個記憶項重復上述操作,最終實現對所有記憶項的更新。
1.3 總損失函數
為了促使編碼后的特征接近其最近記憶項,從而提高特征與最近記憶項之間的相似度,本文引入熵損失函數,對分配概率wit的熵進行最小化約束,提高各類正常事件模式的代表性,如式(10)所示:
1.4 異常分數
均方誤差(mean square error,MSE)和峰值信噪比(peak signal to noise ratio,PSNR)是兩種常見的評估圖像質量的有效方法。但由于對所有像素位置進行求和或平均操作,可能無法關注到小圖像區域內發生的異常事件,為此,本文利用測試幀中具有最大重構誤差的圖像塊計算異常得分[19]。每個塊的局部得分為
其中,P表示X中的一個圖像塊,i,j表示圖像塊中像素的空間位置,丨P丨表示塊中所包含的像素總數。則該幀的異常得分為
S=arg max{S(P1),S(P2),…,S(Pn)},(13)
其中,P的大小被設定為16×16,n是圖像塊總數。本文將所有測試幀的異常得分歸一化為[0,1]范圍內。
其中,min(S)和max(S)分別表示給定視頻幀中的最小和最大異常分數。根據預設定的閾值γ判別測試幀,當St高于γ時,將測試幀視為存在異常事件的異常幀,反之視為正常幀。
地關注預測誤差較大的區域,其中i,j是像素點的位置。規則分數為
其中,權重函數Wi,j的定義為
2 實驗
2.1 數據集及評價指標
本文選用UCSD Pedestrian2(UCSD Ped2)[21]、CUHK Avenue[22]和ShanghaiTech[12]三個標準數據集進行相關實驗。UCSD Ped2數據集中的內容為行人行走路徑平行于相機場景的視頻片段,包含16個訓練視頻和12個測試視頻,共有4 560幀,視頻幀的分辨率為240x360,其中的異常事件包括騎單車、奔跑、駕駛卡車和踐踏草坪等。CUHK Avenue數據集記錄了香港城市大學的街頭活動,包含16個正常行為的訓練視頻和21個異常事件或行為的測試視頻,共有30 562幀,視頻幀的分辨率為360×640,測試集包含47個異常事件,如踐踏草坪、亂扔垃圾、游蕩等。ShanghaiTech數據集記錄了13個具有不同光照條件和拍攝角度的場景,包含330個訓練視頻和107個測試視頻,共有316 154幀,視頻幀的分辨率為480×856,測試集包含130個異常事件,如追逐、騎單車、打鬧等。
在每個數據集中,訓練集僅包含正常幀,而測試集包含正常幀和異常幀。在測試集中,對每幀標記了一個標簽,用于表示該幀是否存在異常事件,標簽為0代表正常幀,標簽為1代表異常幀。
參照文獻[12],本實驗采用幀級受試者工作特征(receiver operating characteristic,ROC)曲線下的面積(area under curve,AUC)作為量化評價指標,AUC的值越大,則說明檢測效果越好。此外,本文選用的評估模型的時間性能指標為每秒檢測幀數(frames per second,fps)。
2.2 實驗設置
本實驗使用PyTorch深度學習訓練框架,輸入視頻幀的分辨率調整為256×256,并將像素值歸一化為[-1,1],設置記憶增強模塊中的記憶項個數M=20。在訓練階段,網絡使用隨機梯度下降法進行參數優化,初始學習率設置為2×10-5,并使用余弦退火法逐漸降低學習率。參照文獻[20],設置αe=0.2,γ=0.8,εt=0.02。在Avenue和ShanghaiTech數據集上,網絡分別訓練60、10個epoch后損失收斂。
2.3 實驗結果與分析
2.3.1 定性實驗
圖4和圖5分別是所提方法在Avenue和ShanghaiTech部分測試集上的幀級異常分數曲線圖。其中,橫坐標代表幀數,縱坐標代表異常分數,實線顯示了幀級異常分數的變化,虛線代表每幀的真實值標簽。
圖4中第880幀出現行人奔跑、第1 100幀出現行人行走方向錯誤,均為異常事件,異常分數較高,判為異常幀;第970幀未發生異常事件,異常分數較低,判為正常幀。圖5中第1 700幀出現行人追逐打鬧、第2 170幀出現行人奔跑,均為異常事件,異常分數較高,判為異常幀;第2 000幀未發生異常事件,異常分數較低,判為正常幀。可知,異常分數曲線伴隨著異常事件的發生而迅速升高,這表明所提方法能及時有效地檢測到視頻中的異常事件。
2.3.2 定量實驗
為了進一步定量證明所提方法的有效性,將其與近幾年主流的技術方法進行了對比,結果見表1。
如表1所示,所提方法在Avenue 和ShanghaiTech兩個數據集上的幀級檢測平均AUC分別為88.7%和77.5%,均好于現有主流方法。相比于同樣采用了記憶增強模塊的Mem-AE,以及同樣采用預測判別法的Frame-Pred,所提方法的AUC均有顯著提升。
模型的檢測速度是檢驗模型事件性能的主要方式。本文使用分辨率為256×256的視頻幀測試模型的檢測速度,結果見表2。可見,所提方法在檢測精度和時間性能上都有一定的提升。
此外,為了確定連續視頻幀最優的輸入序列長度,本文計算了在Avenue數據集上不同輸入幀序列長度T下的AUC,結果見表3。
如表3所示,當T=4,即連續輸入4張視頻幀時,AUC最高;當Tlt;4時,由于網絡無法有效提取行人的運動信息,導致檢測性能較低;當Tgt;4時,網絡并不能因此學習到更多的時序特征,反而會增加網絡參數,導致檢測性能不升反降。由于T=4時實驗結果最優,所以本文設定T=4。
為了評估所提方法在提取不同尺寸目標特征時的改進效果,本文在Avenue數據集上對比了標準卷積和不同擴張率的空洞卷積的效果差異,結果見表4。
如表4所示,不同擴張率的空洞卷積對于提取不同尺度物體的特征具有不同的影響。當擴張率設置為1、3、5時,AUC最高,此時,較大的擴張率有助于擴大網絡的感受野,從而更好地捕捉廣泛的特征信息,同時較小的擴張率有助于網絡捕獲細節信息,結合不同擴張率的空洞卷積能夠有效處理各種尺度的特征。
2.3.3 消融實驗
為了驗證所提出的各模塊對網絡整體性能的影響,本文在Avenue數據集上對殘差坐標注意力模塊RCAM、多尺度特征融合模塊MSFFM、記憶增強模塊M和規則分數進行了消融實驗,結果見表5。
如表5所示,添加記憶增強模塊對網絡性能的提升最大,該模塊預先計算并存儲前一正常幀在檢測過程中產生的特征,使得模型能夠重新使用這些特征,促使預測幀趨向于正常幀,顯著增加異常幀的異常分數,從而提高異常檢測精度。記憶增強編碼器中的殘差坐標注意力模塊RCAM通過學習圖像的坐標信息,增強模型對圖像的空間特征的捕捉能力;瓶頸層的多尺度特征融合模塊MSFFM在不同的圖像分辨率下提取和融合多個尺度的特征,可以更準確地描述和分析圖像內容,添加RCAM和MSFFM對網絡性能的提升大致相當。規則分數εt僅對記憶項的更新策略進行了優化處理,對性能的提升有限,因此εt的影響最小。此消融實驗不僅證實了各模塊的有效性,而且證明了整體框架的有效性。
為了驗證所提方法中的RCAM能夠減少背景信息對檢測的干擾,分別在UCSD Ped2、Avenue和ShanghaiTech三個數據集上進行實驗。三個數據集所包含的背景信息干擾程度不同,其中,UCSD Ped2數據集的場景單一,拍攝角度恒定,背景信息干擾少;Avenue數據集雖然也只包含一個場景,但其視頻時間較長,背景信息干擾元素相對較多;ShanghaiTech數據集中的視頻數量最多,其中的場景更為豐富,因此具有更為復雜的背景干擾信息。實驗結果見表6。
如表6所示,帶有RACM模塊的網絡表現更為出色。對于背景信息干擾較少的UCSD Ped2數據集,性能提升相對較小,AUC上升了0.9%;而在背景信息干擾較多的Avenue和ShanghaiTech數據集上,RACM模塊的效用更加顯著,AUC分別提升了2.3%和2.8%。這表明RACM模塊在處理背景干擾信息方面表現更佳,提高了異常檢測的準確性。
3 結論
本文提出了一種融合多尺度時空特征信息的視頻異常事件檢測方法,該方法不僅考慮到全局和局部的信息,而且可以融合豐富的時空特征進行預測。首先,通過在編碼器中引入殘差坐標注意力模塊RCAM,緩解了背景信息和噪聲對檢測的不利影響,并在編解碼器的瓶頸處引入基于空洞卷積的多尺度特征融合模塊MSFFM,獲取各尺度的時空特征。其次,提出一種規則分數,實現在測試階段更新記憶項,進一步提高對異常幀的檢測精度。實驗結果表明,與主流方法相比,所提方法的幀級AUC有顯著提升,且滿足視頻檢測的實時性要求。未來工作擬考慮將深度學習與傳統算法結合起來,進一步提高對異常事件的檢測精度。