Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Archives
Today
Total
관리 메뉴

cb

[논문 리뷰] PFMF 본문

ai - paper

[논문 리뷰] PFMF

10011001101 2024. 10. 18. 09:36

Liu, Zuhao, et al. "Generating anomalies for video anomaly detection with prompt-based feature mapping." Proceedings of the IEEE/CVF conference on computer vision and pattern recognition. 2023.

https://openaccess.thecvf.com/content/CVPR2023/papers/Liu_Generating_Anomalies_for_Video_Anomaly_Detection_With_Prompt-Based_Feature_Mapping_CVPR_2023_paper.pdf

 

0. Abstract


감시 영상에서의 이상 탐지는 훈련 과정에서 normal video만 사용 가능한 까다로운 태스크이다. 그렇기 때문에 최근 연구들은 virtual anomaly detection dataset을 만들어 real-world detection에 적용하기도 한다. 그러나 이는 실세계에 적용되기에는 anomaly gap이 존재하였고, 일반화 능력을 잃는다는 문제를 낳았다. 또, 어떤 장면에서는 abnormal하지만 어떤 장면에서는 normal한 scene-specific anomalies를 포함하고 있어 판단하기 abnormal을 판단하기 힘들다는 문제가 있다. 따라서 본 논문에서는 anomaly gap과 scene gap을 해결하는 prompt-based feature mapping framework, PFMF를 제안한다. 이는 본 적 없는 anomalies를 생성하기 위한 mapping network와 scene gap을 좁히기 위한 mapping adaptation이 포함되어 있다. 본 모델은 3개의 벤치마크 데이터셋에서 SOTA 성능을 달성하였고, 추가적인 ablation study를 통해 그의 성능을 입증할 수 있었다.

 

1. Introduction


비디오 이상 탐지(VAD)는 감시 영상에서 이상(abnormal)한 시나리오를 구별하기 위해 사용된다. 그러나, 이상 시나리오의 발생 확률이 작기 때문에 실세계의 감시 영상에서 관측되기에는 어려움이 있다. 이러한 문제는 abnormal한 이벤트가 제한이 없기 때문에 더 발생하게 된다. (어떠한 상황에서는 abnormal이라고 판단되는 시나리오가 다른 상황에서는 normal하다고 판단될 수도 있기 때문.)

 

대부분의 VAD는 normal한 이벤트의 분포를 학습하는 접근법을 사용해서, 이 분포를 벗어나는 이벤트를 abnormal하다고 판단한다. 그 예시로, 현재 frame을 reconstruct하거나 다음에 올 frame을 예측하는 방법이 있다. 하지만 normal과 abnormal의 에러를 계산하기 힘든 경우가 있어 몇 연구에서는 pseudo anomalies를 만들어내서 그를 anomal한 데이터로 사용하기도 한다.

그러나 기존의 방법들은 pseudo 이벤트와 현실 세계 이벤트 간의 차이로 인해 정확한 학습이 불가능하다는 문제가 발생했다.

 

(중략… Intro가 필요 이상으로 긴 느낌….;;)

 

기존 연구들은 anomalies가 만들어낸 가상의 데이터셋에만 치우쳐져 현실 세계와 차이가 발생하는 (1) anomaly gap의 문제가 발생했다. 또, abnormal 이벤트는 상황에 따라 다르게 분류될 수 있는 scene-specific anomalies가 발생하는 (2)scene gap이 존재했다.

따라서 본 연구에서는 이 두 가지의 문제를 해결하기 위해 prompt-based feature map, PFMF를 제안한다. 이는 promp-guided mapping network를 사용하여 이상치를 만들어내고, anomaly gap을 해결한다. 이 프롬프트는 VAE에서 학습된 분포를 샘플링하여 사용한다. scene gap을 해결하기 위해서는 mapping adaption branch에서 이상 현상을 장면별로 분류하기 위한 이상 현상 분류기와 scene-specific한 속성의 불일치를 줄이는 도메인 분류기를 사용한다.

 

결론적으로, 본 논문에서 제안하는 기여점은 다음과 같다.

(1) virtual VAD 데이터셋를 사용하여 현실 세계의 이상 시나리오를 탐지하는 네트워크, PFMF(prompt-based feature mapping framework)를 제안한다.

(2) mapping adaption branch를 사용하여 scene-specific problem을 해결하였다.

(3) ShanghaiTech, Avenue, and UCF-Crime이라는 세 가지 벤치마크에서 SOTA 성능을 달성할 수 있었다.

 

2. Related Work


2.1 Video Anomaly Detection

이전 연구들은 normal 이벤트의 분포를 학습하여 그 분포를 벗어나는 것들을 이상치라고 탐지함. 이는 생성형 모델, 희소 코딩, deep auto-encoder을 사용하는 reconstruction-based 방법과 다음 올 장면을 예측하는 Prediction-based 방법으로 분류됨. anomaly의 발생은 reconstruction 에러와 prediction 에러를 낳게 되는데, 현재 모델들이 너무 일반화가 잘 된 탓에 anomaly를 분류하기 힘들다는 문제가 발생함. 그래서 최근에는 훈련 과정에서 pseudo anomalies를 생성하여 anomaly를 탐지하는 접근을 사용하였으나, 현실 세계와 가상의 이상 상황의 차이 때문에 문제를 낳았다고 함.

 

2.2 Datasets under Virtual Environment

실세계의 데이터셋을 모으는 데에는 엄청난 비용이 발생하고 프라이버시 문제도 안고 있기 때문에, 가상의 데이터셋을 만들어서 사용하는 연구가 많아지고 있다고 함. 현실에서는 anomaly가 자주 발생하지 않기 때문에 넘어짐, 싸움, 도둑질과 같은 virtual VAD 데이터셋을 만드는 추세라고…

 

2.3 Feature Mapping

본 연구에서는 domain adaptation에서 사용되는 feature mapping을 사용함. 실세계와 가상의 데이터 도메인 차이가 크기 때문에 PFMF에서는 한 도메인 데이터를 다른 도메인 데이터 분포로 옮기는 대신 feature를 옮겼다고 함….

 

2.4 Prompting Methods

최근 prompt-based learning이 nlp와 cv에서 핫해지면서 pre-trained model을 downstream task로 적용하는 경우가 많아짐. vision-language 모델에서도 사용되어서 해당 연구에서는 이를 이용하였다고.

 

3. Method


3.1 Overview

본 모델의 전체적인 프레임워크는 아래의 사진과 같다. 여기서 real-world dataset(ShanghaiTech, Avenue, UFC-Crime)은 현실 도메인이라고 하고, Ubnormal dataset은 가상 도메인이라고 한다. 해당 모델은 총 세 개의 입력을 받는다. 현실 도메인의 normal 인스턴스인 S^r_{nor}, 가상 도메인의 normal 인스턴스인 S^v_{nor}, 그리고 가상 도메인의 abnormal 인스턴스인 S^v_{abn}이다.

 

여기서는 먼저 feature extractor를 사용하여 세 가지 인풋의 피쳐를 추출한다. 그런 다음, anomaly gap을 해결하기 위해 피쳐 매핑 네트워크를 사용하여 anomaly prompt에 의해 normal 피쳐들과 abnormal 피쳐들을 매핑시킨다. 그러면 현실 도메인에서 anomalies를 생성할 수 있게 된다. 최종적으로 mapping feature branch에서 scene-specific한 이상들을 만들어내는 과정을 통해 scene gap 문제를 줄일 수 있다.

 

3.2 Training Data Organization

 

virtual VAD 데이터셋은 풍부한 인스턴스 레벨의 anomaly annotations를 담고 있다. (abnormal한지, normal한지, 각 사람의 개요는 어떤지 등) 이렇지만 real-world VAD 데이터셋은 annotation을 포함하지 않은 날것의 비디오만을 갖고 있고, abnormal 행동을 포함하고 있지 않다. 따라서, 사진의 왼쪽 파트에서 보이는 것처럼 입력 데이터를 구분하는 과정을 필수적으로 둔다. virtual 데이터들은 annotation에 있는 각 사람의 개요에 기반하여 비디오를 크롭한 것이다. 현실 도메인의 데이터셋에는 bounding box annotation이 부재하기 때문에 YOLOv3을 활용하여 각 사람에 대한 bounding box를 추출해 주었다고 한다.

 

3.3 Prompt-based Feature Mapping

 

인스턴스 레벨의 인풋을 받았으면, 그를 피쳐 레벨로 추출해 주어야 한다. 그러면 feature mapping network는 asymetric 매핑을 통해 normal과 abnormal 피쳐를 매핑해 준다. 매핑 과정은 anomaly prompt에 따라서 무제한 유형의 abnormaly를 생성해낸다. anomaly prompt 과정은 위 그림에 나타나 있고, 모든 피쳐는 mapping adaptation branch로 들어가 scene gap을 줄일 수 있게 된다.

 

3.3.1 Feature Mapping Network

피쳐 매핑 네트워크는 normal feature와 abnormal feature를 같은 도메인에 위치시키기 위함이다. feature extractor의 출력은 X로, 이는 채널 수, temporal 길이, height, width의 차원을 가진다.

여기서 p_v는 가상 도메인의 피쳐를 위한 anomaly prompt를 의미한다. encoder에 가상 도메인의 normal 피쳐, anomaly prompt가 입력되면 이 인코더는 high-level의 정보를 추출해 내고, 디코더로 넘어가 인코딩된 피쳐를 upsampling한다.

 

본 연구에서는 anomaly의 종류에 제한을 두지 않았으므로 divergent mapping process를 거치도록 네트워크를 설계하였다. (One normal feature can be mapped to many types of abnormal features)

 

매핑 네트워크를 학습하기 위해서는, X^v_map과 X^v_abn의 MAE를 최소화하는 아래의 식을 사용하였다. 이 과정에서는 normal feature가 abnormal feature로 변형될 수 있다.

가상이 아닌 실제 도메인에서는 abnormal 샘플들이 존재하지 않으므로, 네트워크는 abnormal 피쳐 분포에 대한 지식을 갖고 있지 않다. 따라서 현실 도메인에서 abnormal 피쳐를 갖기 위해서는, 가상 도메인에서 학습된 매핑 네트워크를 사용하여 abnormal 피쳐를 만들어 주어야 한다.

 

3.3.2 Anomaly Prompt

divergent feature mapping을 위해서 본 연구에서는 매핑 네트워크의 추가 입력으로 anomaly prompt를 사용한다. 이를 진행하면서 각기 다른 anomaly prompt를 사용한다면 생성된 anomalies는 제한적인 형태에서 벗어날 수 있게 되고, 3.3의 그림에서 볼 수 있듯이 anomaly 벡터는 scene 벡터와 anomaly벡터를 이어 붙인 것으로 구성된다.

 

Anomaly vector

(a) 가상 도메인의 anomaly vector는 global average pooling을 통해 abnormal 피쳐를 squeezing한 것이다. 이는 a_v로 표현된다. 그런 다음, a_v는 VAE f로 입력되어 reconstruction 벡터인 a_v*로 변환된다. 여기서 사용된 VAE는 아래의 식을 통해 훈련된다.

현실 도메인에서는 latent variable인 z를 샘플링하여 anomaly 벡터 a_r을 얻어낸다. VAE가 abnormal 피쳐들에 의해 학습되었기 때문에 이는 abnormal의 분포를 흉내낼 수 있게 된다. latent variable은 가우시안 분포를 따르게 되고, 우리는 더 다양한 형태의 anomaly 벡터들을 얻을 수 있게 된다.

 

Scene vector

여기서 우리는 만들어낸 anomaly 피쳐들을 scene-independent하게 만들어 주어야 하기 때문에, scene vector s_r을 만들어 냄으로써 추가적인 scene information을 추가한다. 3절의 (b) 그림에서 볼 수 있듯이, scene 이미지를 ResNet-18에 넣어 scene information을 추출한다.

 

Anomaly prompt

anomaly 벡터와 scene 벡터를 모두 얻었으면, anomaly prompt는 이 두 벡터를 concat함으로써 생성된다. 3.1의 사진처럼, 우리는 anomaly prompt를 매핑 네트워크에 추가적으로 넣어줌으로써 divergent한 피쳐 매핑을 가능케 할 수 있다.

 

3.3.3 Mapping Adaptation Branch

또, scene gap을 줄이기 위해 mapping adaptation branch가 사용되는데, 위의 사진에서 볼 수 있듯이 이는 두 개의 Domain Classifier(scene specific attributes를 위함)와 한 개의 anomaly Classifier(scene-specific anomalies를 위함)로 구성된다.

 

Anomaly classifier

이는 normal과 abnormal 피쳐를 구분하기 위해 사용된다. 각 씬에 대해 normal하지 않은 장면들은 모두 abnormal이라 구별된다. 이 분류기의 정확도를 최대화하면 동일한 장면에서 매핑된 abnormal 특징과 normal 특징을 최대한 다르게 할 수 있기 때문에, 같은 행동이더라도 다른 이벤트에 대해 normal/abnormal함을 구별할 수 있게 된다.

 

Domain Classifier

추가로, scene-specific attributes는 가상 데이터를 현실로 적용할 때 까다로운 특성을 가진다. 이전 연구에서는 CycleGAN이 적용되어 background와 같은 몇 개의 scene-specific attributes를 어느 정도 줄일 수 있었다. 그러나, 여전히 scene-specific attribute가 완벽히 해결되지는 못 했다는 문제가 있었다. 따라서 이들은 가상과 현실 도메인의 피쳐 공간을 aligning하는 방법을 떠올렸는데, 이는 두 도메인의 common attributes를 추출하여 inconsistency를 줄일 수 있었다고 한다.

 

여기서는 두 개의 domain classifier와 gradient reversal layer(GRL)을 사용하여 feature extractor를 훈련시켰다고 한다. domain classifier는 입력 피쳐의 도메인을 구분해내는 데에 집중하고, feature extractor는 두 도메인을 구분하기 못하게 학습됨으로써 domain gap을 줄일 수 있었다고 한다. GRL은 아래의 forward propagation을 진행하는데, R()이 GRL, X가 입력 피쳐를 의미한다.

'ai - paper' 카테고리의 다른 글

[논문리뷰] TEVAD  (6) 2024.10.02
[논문리뷰] I-JEPA  (1) 2024.10.01
[논문리뷰] One-2-3-45  (1) 2024.09.28
[논문리뷰] Pix2Pix  (0) 2024.09.28
[논문 리뷰] VoxelNet  (0) 2024.08.08