動画像異常検知サーベイまとめPart2（GAN等）

#概要

皆様，いかがお過ごしでしょうか．


さて，今回は2016〜2018ぐらいのわりかし古いものも含めてざっくばらんに動画像異常検知に関連する論文をサーベイしましたので，簡単に紹介したいと思います．
Part1は[こちら](https://qiita.com/satolab/items/026e4bb9a6fc35737599)からご覧いただけます．

サーベイのフォーマットは落合陽一先生のものを踏襲しております．当記事で取り上げていないものは，[こちら](https://github.com/satolab12/paper-summaries)でまとめていますので，興味がおありの場合はぜひご覧ください．


ご指摘・疑問などございましたらコメントなどよろしくお願いいたします．

# 【ICCV2017】A Revisit of Sparse Coding Based Anomaly Detection in Stacked RNN Framework
## 概要
[URL] https://ieeexplore.ieee.org/document/8237307
[Authors] Weixin Luo ,Wen Liu ,Shenghua Gao
[Conference] ICCV2017


## 手法

### 1. どんなもの？
sRNNを用いた動画像異常検知手法の提案．また，新たな動画像異常検知のベンチマークのために，Shanghai-techデータセットを提案．スパースコーディングベースな異常検知手法を採用しつつも，時間的な関係性をsRNNの活用により可能とした．
![キャプチャ29](https://user-images.githubusercontent.com/56526560/89016473-c0e1ef00-d353-11ea-90b5-878f8018513d.PNG)

### 2. 先行研究と比べてどこがすごい？
従来のスパースコーディングベースな異常検知手法では，疎な辞書を学習して表現するが，時間的にコヒーレントなモデル化はできなかった．これを近年注目されている深層学習と組み合わせることで，stackedなRNNの活用により解決した．

### 3. 技術や手法のキモはどこ
基本的にはスパースなオートエンコーダを学習する．これは損失関数に正則化項を加えることで実現できる．
損失は基本的に再構成誤差．積層RNNに対し，隣接フレーム間の類似性を考慮するのがポイント．

### 4. どうやって有効だと検証した？
Avenue,UCSDped2,Subway,提案データセットで検証．
2017年において各データセットに対するframe-levelのAUROC評価でSoTA.

### 5. 議論はある？
個人的にはpix2pixを用いた手法のようにmotionとappearance特徴に分けてモデル化するよりも
本手法のようにNaiveに動画像をモデル化して異常検知する取り組みをベースに研究を進めた方がヒューリスティックな設計に頼らずend2endな学習という意味では優秀と感じる．
当該研究は新たなデータセットの提唱という意味でも大きな貢献をしたものと考えられる．

しかしこのようなアプローチ（Naiveなモデル化）は最近(2018~2020)減っている．動画像異常検知においては局所的なpixel-levelでの異常検知性能で評価する動きがあるからだと考える．

# Adversarial Visual Irregularity Detection
## 概要
[URL] https://arxiv.org/abs/1805.09521
[Authors] Mohammad Sabokrou, Masoud Pourreza, Mohsen Fayyaz, Rahim Entezari, Mahmood Fathy, Jürgen Gall, Ehsan Adeli
[Conference] 


## 手法

### 1. どんなもの？

![キャプチャ30](https://user-images.githubusercontent.com/56526560/88866731-83dc0680-d246-11ea-890f-4e703276793b.PNG)
動画像異常検知の手法．全体構造はAutoencoder+Discriminatorという感じのGANの構造である．pixel-level検知（encoder-decoderベース）と，DiscriminatorをFCNとすることでpatch-level検知を行い，これらを組み合わせて異常のlocalization性能を向上させることを目論んだ手法．

### 2. 先行研究と比べてどこがすごい？
本手法の独自性はpixel-level検知とpatch-level検知をGANの構造の中でうまく融合している点であり，これにより高いレベルで異常の局所化が可能となる．
従来では局所化に際して，Optical-flowなどを活用した，Motion特徴を抽出するなどしていたが，本手法では必要ない．

### 3. 技術や手法のキモはどこ
入力はvideoに対する前処理を行っている．詳細は論文を参照されたい．部分時系列画像を前処理により獲得し，3チャンネル画像にする．
encoder-decoder側はU-netを用い，Discriminatorの出力はFCN構造なのでセグメント画像となる．
そのため，Dicriminatorの出力に対するスペクトルノルムの二乗で損失をとる．

### 4. どうやって有効だと検証した？
UCSDped1,2とUMNで検証．前者はframe-levelとpixel-levelの異常検知で評価．後者はAUROCで評価．

### 5. 議論はある？
u-netを異常検知に取り入れる構造にすこし疑問．実際に実装を回してみたものの，特徴が復号時に伝播してしまい，うまく異常検知できなかった．
しかし，構造としては非常に合理的（pixelとpatchの組み合わせ）であり，異常の局所的な検出のための先駆的な取り組みといえる．

# 【CVPR2019】Learning Regularity in Skeleton Trajectories for Anomaly Detection in Video
# 概要
[URL] https://ieeexplore.ieee.org/document/8953884
[Authors] Romero Morais, Vuong Le, Truyen Tran, Budhaditya Saha, Moussa Mansour, Svetha Venkatesh
[Conference] CVPR2019

## 手法


### 1. どんなもの？
動画像異常検知の手法．監視映像中の人間の行動に関連した異常事象を検出するために，2次元の人間の骨格軌跡を活用することを提案．大域的な骨格特徴と局所的なそれに分けてMessage-Passing Encoder-Decoder Recurrent Neural Network (MPED-RNN)と呼ばれる新しいモデルで共同モデル化．
![キャプチャ35](https://user-images.githubusercontent.com/56526560/89726281-be6a4e00-da53-11ea-8c83-d9cc1e416c8d.PNG)


### 2. 先行研究と比べてどこがすごい？
既存手法の多くは視覚的特徴とイベントの本当の意味との間の意味的ギャップによる解釈可能性の欠如である．（動画像をそのままモデル化する手法など）本手法は異常発生時の意味的解釈性の向上のため，骨格情報に着目している．骨格情報を利用している手法は希少．

### 3. 技術や手法のキモはどこ
因数分解モデルを用いて、骨格運動を「グローバル」と「ローカル」に分解する．グローバル成分は、人間のバウンディングボックスの形状、大きさ、剛体運動に関する情報，局所的なそれは骨格の内部変形をモデル化．
MPED-RNNへと２つの骨格特徴が入力される．MPED-RNNは図に示すように出力部分が予測・再構成をそれぞれ行う２つのデコーダをもっている．各セグメントにはGRUが用いられる．（正直論文の言い回しが難しく，よくわからない）

### 4. どうやって有効だと検証した？
Shang-hai-Techデータセットに対するframe-levelのAUROCにおいてSoTA．

### 5. 議論はある？
骨格を取得できる状況であればそれを用いるがよいと個人的には思う．こうした人物の骨格情報を異常検知に取り入れた事例は少なく（私は聞いたことがない），先駆的．しかし骨格が推定できるか微妙なデータセット(UCSD等)においては厳しい手法．
しかし，ただAUROCのSoTAをもとめるのではなく，異常の意味的解釈性に対して疑問を投げたという点では，実運用における課題についてかんがえさせられる．


# STAN: Spatio-Temporal Adversarial Networks for Abnormal Event Detection
# 概要
[URL] https://arxiv.org/abs/1804.08381
[Authors] Sangmin Lee, Hak Gu Kim, Yong Man Ro
[Conference] ICASSP2018

## 手法


### 1. どんなもの？
![image](https://user-images.githubusercontent.com/56526560/89896656-c9221000-dc18-11ea-970f-c4f2d231be41.png)
動画像異常検知の手法．GANとSpatio temporal networkを融合したSTAN: SPATIO-TEMPORAL ADVERSARIAL NETWORKS
を提案．encoder-decoderベースの手法でUCSD,Avenueに対してSoTA．

### 2. 先行研究と比べてどこがすごい？
従来のSTNは再構成ベースの損失を最小化するもので，敵対的な学習の要素がなかった．今回提案するSTANではDiscriminatorの追加によりdecoder側との動画像再構成タスクに対する敵対的損失が加わり，より高い品質での再構成が可能となった．

### 3. 技術や手法のキモはどこ
encoder,decoder側にはConv-LSTMを中間層に配置し時系列のモデル化を3層でおこなう．また，discrimiantor側は3D-Convを用いている．(MoCoGANなども似たモデル構成である)

### 4. どうやって有効だと検証した？
UCSDped1,2とAvenueに対するframe-levelのAUROC評価でSoTA.

### 5. 議論はある？
個人的には動画再構成ベースの基本的アプローチでよい成果を上げている，ある意味シンプルな手法で参考になる．
Avenueに対するAUROC評価はかなり高い．


# 【CVPR2016】Learning Temporal Regularity in Video Sequences
## 概要
[URL] https://ieeexplore.ieee.org/document/7780455
[Authors] Mahmudul Hasan ,Jonghyun Choi ,Jan Neumann ,Amit K. Roy-Chowdhury ,Larry S. Davis
[Conference] CVPR2016

## 手法

### 1. どんなもの？
CVPR2016採択論文．動画像異常検知の手法．オートエンコーダベースの手法で，画像特徴量（HOG+HOF）の再構成モデル，画像そのものの再構成モデルの２つからなる．学習されたオートエンコーダーは規則的な動きを低い誤差で再構成するが，不規則な動きでは再構成誤差が大きくなる．

![image](https://user-images.githubusercontent.com/56526560/90348663-eff5a180-e071-11ea-95b8-4174b890b929.png)

### 2. 先行研究と比べてどこがすごい？．
従来よく異常検知で用いられる，スパース符号化とbag-of-words は単語の時空構造を保持しないため，単語数の事前情報が必要となる．また，学習とテストのための疎な符号化に伴う最適化は，特に動画のような大容量データの場合，計算量が多くなる．このため本手法ではCNNを用いた手法を提案．計算量負荷を軽減．

### 3. 技術や手法のキモはどこ
まずハンドクラフト特徴量（HOG,HOF）の再構成モデルを用いる．．次に，ニューラルネットワークベースのautoencoderを用いて，通常の運動シグネチャを学習する．本手法ではビデオを入力として用い，完全畳み込みニューラルネットワークをベースとしたエンドツーエンド学習モデルを用いて局所的な運動特徴とautoencoderの両方を学習する．


### 4. どうやって有効だと検証した？
UCSDped1,2,Avenue,Subwayでのframe-levelでの異常度推移グラフで評価．従来手法との有効性を確認．

### 5. 議論はある？
個人的には，HOGとかの低レベル特徴ネットワークいるのかないう疑問もある．低レベル特徴はオートエンコーダの方で抽出している気がするからである．



# まとめ
Part2として，前回紹介しきれなかったものを紹介いたしました．
今後もこのサーベイは続ける次第です．
最後までご覧いただきありがとうございました．