天天看點

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

小叽導讀:本篇論文收錄于ACM MM 2017,論文中我們為城市大腦提供監控交通異常的方法。受動作識别等領域的最新研究成果啟發,設計了一種時空自編碼進行視訊異常檢測,同時提出一種權重遞減的預測誤差計算方法。經真實的交通場景評測,該算法在重要名額上已經超過了此前的最好方法。

主要作者:趙一儒、鄧兵、申晨、劉垚、盧宏濤、華先勝

摘要

真實世界視訊場景中的異常事件檢測是一個高難度的問題,因為“異常”本身很複雜而且場景中還存在雜亂的背景、物體和運動。大多數已有的方法都是在局部空間區域中使用人工設計的特征來識别異常。

在本論文中,我們提出了一種稱為時空自編碼器(Spatio-Temporal AutoEncoder,簡稱 ST AutoEncoder 或 STAE)的全新模型,使用深度神經網絡來自動學習視訊表征以及通過執行三維卷積來從空間次元和時間次元提取特征。

在經典的自編碼器中所使用的重建損失之外,我們為未來幀的生成引入了一種權重遞減型預測損失,這能夠增強視訊中的運動特征學習。因為大多數異常檢測資料集都局限于外觀異常或不自然的運動異常,是以我們收集了一個新的高難度資料集,該資料集是由真實世界的交通監控視訊構成的。我們在公開資料集和我們的交通資料集上進行了多項實驗,結果表明我們提出的方法的表現顯著優于之前最佳的方法。

1 引言

自動檢測視訊流中的異常事件是智能視訊監控系統面臨的一大基本難題,并且已經在過去幾年中受到了學術界和工業界的高度關注。

不同于動作識别和事件檢測等監督式視訊分析問題,視訊異常檢測主要面臨着兩大難題:一是正例樣本和負例樣本之間的資料不平衡(即作為正例樣本的異常事件的數量遠遠少于正常事件);二是正例樣本内部存在很大的差異性(異常事件可能包含很多不同的情況,但一般而言可用的訓練資料卻很有限)。

由于正例樣本的稀疏性,經典的監督式事件檢測和識别算法無法應用于這個任務。這個問題的通常解決方式是使用無監督方法訓練一個表征正常視訊序列中的模型,然後将異常值(模型的外點)看作是異常事件。

鑒于訓練資料通常隻包含普通視訊,是以學習正常活動的特征表征是一個無監督學習問題。之前的一部分異常檢測研究側重于模組化局部 2D 圖像圖塊或 3D 視訊立方體的時空事件模式,這個過程中會用到從低層面外觀和運動中提取的人工設計的特征,比如方向梯度直方圖(HOG)、光流直方圖(HOF)、3D 時空梯度等。但是,由于人工設計的特征的表征能力有限,這一類之前的方法并不适合用來分析複雜的視訊監控場景。

深度學習方法已經展現出了在特征學習方面的優勢,而且研究已經證明其可以非常有效地解決鑒别式視覺任務。基于自編碼器網絡的無監督深度學習方法也已被提出用作解決視訊異常檢測問題的又一類方法。但是,這些方法隻依賴于全連接配接的自編碼器或 2D 卷積自編碼器,而沒有利用來自時間次元的特征,是以無法擷取異常事件的時間線索,而這對于識别視訊事件異常而言是至關重要的。

受 3D 卷積網絡在視訊分析中的優越表現的啟發,我們提出了用于視訊異常檢測的時空(ST)自編碼器:通過在編碼器中應用 3D 卷積和在解碼器中應用 3D 反卷積,能夠增強模型從時間次元中提取運動模式的能力。

除了經典的自編碼器所使用的重建損失,我們還引入了一種權重遞減型預測損失來預測未來幀,這可以引導模型擷取運動目标的軌迹以及增強編碼器以更好地提取時間特征。經過在正常視訊資料上的訓練之後,該自編碼器應該能夠以較低誤差重建出正常視訊片段,而在重建非正常視訊片段時則會出現高誤差。然後模型再根據這個誤差計算視訊序列中每一幀的規律性分數(regularity score),然後再将其用于确定異常事件,如圖 1 所示。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

圖 1:來自 CUHK Avenue 資料集的一段視訊序列的規律性分數。紅色區域表示基本真值異常幀。規律性分數會在異常事件發生時下降。

大多數真實世界情形中的異常事件都非常複雜,而大多數目前的異常檢測資料集都隻包含外觀異常或人為制造的運動異常。為了評估我們提出的方法的實用性,我們收集了一個新的高難度資料集,其由真實世界交通監控視訊構成。實驗表明我們的模型可以應用于這一複雜應用。

本論文的主要貢獻總結如下:

我們提出了一種全新的時空自編碼器深度網絡,可以通過執行 3D 卷積同時根據空間次元和時間次元來模組化正常視訊資料。據我們所知,這是首個基于 3D 卷積的視訊異常檢測模型。

我們在模型訓練中引入了一個權重遞減型預測損失,這能提升檢測異常事件的表現。

我們收集了一個新的由真實世界交通監控視訊構成的異常檢測資料集,并且表明我們的方法的表現在公共基準和我們的 Traffic 資料集上都優于之前最佳的方法。

2 我們的方法

為了具體描述,我們首先簡要介紹一下 3D 卷積,然後再詳細讨論我們提出的模型。

2.1 3D 卷積

典型的 2D 卷積網絡是在 2D 特征圖上應用卷積來提取空間次元的特征。2D 卷積網絡在圖像識别方面表現優越,但它們卻無法擷取用于視訊分析問題的連續幀中所編碼的時間資訊。Ji 等人[1] 提出執行 3D 卷積來同時計算來自時間次元和空間次元的特征,具體做法是将一個 3D 核卷積到通過連接配接時間次元中的多個連續幀而形成的立方體上。

2.2 3D 卷積自編碼器

輸入資料。在大多數用于圖像識别的典型 CNN 中,輸入資料都是具有 3 個通道(比如 R、G、B 顔色通道)的單張圖像。而在異常檢測網絡中,輸入資料是一段包含多幀的視訊片段。Hasan等人 [2] 通過使用滑動視窗(滑動視窗的長度為 T)的時間立方體來建構輸入。但其中的時間特征很少得到保留。為了解決這個問題,我們以超立方體的形式建構輸入——通過在第 4 維(通常被稱為時間維)上堆疊 T 幀,然後再在其上執行 3D 卷積。

資料增強。通過在從視訊序列中采樣的片段上應用多種變換(随機裁剪、亮度變化和高斯模糊),我們可以生成更多輸入超立方體。在我們的方法中,我們使用恒定步幅來采樣幀,這樣目标的運動速度保持不變。

網絡架構。圖 3 給出了我們提出的時空自編碼器網絡示意圖。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

圖 3:網絡的架構。在編碼器之後有兩個分支的解碼器,分别用于重建過去的幀和預測未來的幀。

2.3 權重遞減型預測損失

之前已有研究證明預測網絡有助于學習視訊表征,受這些研究的啟發,我們在解碼器部分設計了一個預測分支來預測輸入視訊片段之後的未來 T 幀。具體來說,重建分支和預測分支具有相同的隐藏特征層,但執行的是不同的任務,分别是:重建過去的序列和預測未來的序列。其中預測任務可以引導模型擷取運動目标的軌迹以及讓編碼器更好地提取時間特征。

在大多數視訊異常檢測場景中,視點是固定的,各種目标進進出出。新目标的出現難以預測,進而會影響預測網絡在訓練階段的收斂性。我們應用了預測損失來增強模型的能力,以提取已有目标的運動特征和預測它們在未來近期的運動,而不會預測相對遙遠的未來的新目标的出現。新目标出現的機率會随時間推移逐漸增大,是以我們在預測得到的視訊片段的每一幀上施加了一個遞減的權重。

2.4 規律性分數

由正常事件組成的視訊序列有更高的規律性分數,因為它們接近于特征空間中的正常訓練資料。相反,異常序列的規律性分數更低,是以可以被用于定位異常事件。

3 實驗

3.1 資料集

我們在三個資料集上評估了我們提出的時空自編碼器,其中包含 UCSD Pedestrian 和 CUHK Avenue 這兩個已有的資料集,另外還有新收集的 Traffic 資料集。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

表 1:異常檢測資料集比較。Nor 表示正常幀,Abn 表示異常幀。

3.2 異常的可視化

當我們訓練完模型之後,規律性分數可以根據重建誤差計算得出。由正常事件組成的視訊序列有更低的誤差,而異常序列有更高的誤差。重建誤差是根據每一幀中的每個像素計算得出的,這讓我們可以将誤差分解到每一幀以及定位圖檔中的異常區域。

圖 4 給出了 5 組來自不同資料集的示例。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

圖 4:異常的可視化。左列:來自不規則視訊片段的幀。中列:我們的模型的重建輸出。右列:重建誤差圖。橙色矩形突出強調了誤差圖中的異常區域。在前三個場景中都隻有單個目标存在異常,後兩個場景則與多個目标有關。

3.3 異常事件檢測

基于重建誤差可以計算得到規律性分數,而規律性分數又可被進一步用于檢測異常事件。如圖 5 所示,視訊片段的規律性分數會在異常發生時下降。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

圖 5:來自三個資料集的四段測試視訊片段的規律性分數曲線。紅色區域表示基本真值異常幀。結果表明規律性分數會在異常發生時下降。每個場景都給出了幾幀采樣,用以展示正常/非正常事件。

表 2 給出了我們的方法與幾種目前最佳方法在 UCSD Pedestrian 和 CUHK Avenue 資料集上的表現比較。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

表 2:在 UCSD Pedestrian 和 CUHK Avenue 資料集上的比較

結果還表明我們的時空自編碼器模型可用于不同類型的輸入資料。

我們還在新收集的 Traffic 資料集上進行了同樣的評估。我們将 ConvAE[2] 設為目前最佳方法,因為它有一定的揭示時間特征的能力。表 3 給出了 5 種場景的結果,另外也報告了平均結果。所有被測模型的輸入都是灰階幀。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

表 3:在 Traffic 資料集上的比較

3.4 預測未來幀

如前所述,我們在時空自編碼器網絡中設計了一個預測分支,以通過跟蹤視訊序列中運動目标的軌迹來增強視訊表征學習的能力。

圖 6 給出了兩個示例。我們的 STAE 模型可以重建輸入的規則視訊片段,也能預測未來幀。運動中的車輛(用綠框标出)的軌迹在未來幀中被很好地預測了出來。我們還給出了有新車輛(用紅框标出)進入該場景的示例,這表明我們的模型無法預測新出現的目标。

如何檢測視訊異常事件?阿裡工程師提出全新檢測模型

圖 6:在 Traffic 資料集上的兩組幀預測示例。每一組的上一行都是基本真值視訊序列,下一行則是我們的網絡重建和預測的輸出。左側部分是從 T 個輸入幀中采樣的,右側部分是從未來片段中采樣的。運動汽車用綠框标出,新進入場景的汽車用紅框标出。

4 結論

未來的研究方向包括研究其它網絡架構,融合多模态輸入資料(比如 RGB 幀和光流),在執行個體層面而非像素層面評估規律性分數,以及将我們的架構應用于更複雜的場景。

原文釋出時間為:2018-08-01

本文作者:研讀論文的

本文來自雲栖社群合作夥伴“

阿裡巴巴機器智能

”,了解相關資訊可以關注“

”。

繼續閱讀