1. 서론
최근 보안관제에 대한 수요가 증가함에 따라 감시 카메라는 대부분의 도로망과 공공시설에 설치되어 영상 분석을 위한 데이터 인프라로 활용되고 있다[1]. 감시카메라 영상 분석을 통한 보안관제의 주요 도전과제는 감시카메라로부터 수집된 영상 속에서 발생한 사고, 폭력, 절도, 응급상황과 같은 비정상적인 상황들을 탐지하는 것이며, 이러한 작업은 다수의 감시 카메라들로부터 수집된 영상 스트림을 지속적으로 분석해야하기 때문에 많은 인적 자원을 요구한다. 따라서, 노동 집약적인 감시카메라 모니터링을 자동화하기 위한 많은 연구들이 수행되었다. 연구 초기에는 적응적 배경 모델링, 영상의 모션벡터 추출과 같은 다양한 영상처리 기법들을 기반으로 감시카메라 영상으로부터 비정상적인 상황을 탐지하기 위한 hand-crafted 특징들을 추출하여 비정상적인 상황의 패턴을 인식하는 방법들[2,3]이 제안되었으며, 최근에는 심층학습의 비약적인 성장으로 급격하게 발전한 컴퓨터 비전 기술들을 활용하여 영상에 포함된 비정상적인 상황들을 자동으로 탐지하는 방법들[4- 9]이 제안되었다.
컴퓨터 비전 기술들을 활용한 영상 내의 비정상적인 상황들을 자동으로 탐지하는 기존의 방법들은 광류[10], histogram-of-gradients(HOG)[11]와 같은 영상 속에서 나타나는 사물 또는 사람들의 모션정보 가 축약된 시공간적 특징을 추출하여 비정상적인 상황들을 탐지하거나[4-7], 영상 속 사람의 스켈레톤을 추정하고 사람의 자세 또는 행동을 인식함으로써 사람의 행동에 의해 발생한 비정상적인 상황들을 탐지한다[8,9]. 모션정보 기반의 비정상적인 상황 탐지 방법들[4-7]은 교통사고, 폭행, 싸움, 배회, 기절, 절도, 강도와 같은 비정상적인 상황들을 사전에 정의하고, 감시카메라 영상으로부터 정상적인 상황들과 차별화된 모션정보를 추출하여 이진 분류 네트워크를 학습함으로써 비정상적인 상황들을 탐지한다. 하지만 감시카메라 영상에서 모션정보를 추출하는 과정에서 상황을 구성하는 환경, 사물의 정보, 사람의 수, 행동, 사람 간의 거리와 같은 시각적 정보가 손실되며, 모션정보로부터 시공간적 특징을 다시 추출함으로써 영상 프레임 시퀀스에 따라 상대적으로 작은 변화량을 가진 모션정보가 큰 변화량을 가진 모션정보에 가려져 유실된다. 이러한 정보 손실은 비정상적인 상황 탐지의 오탐율 증가 원인이 된다. 반면, 스켈레톤 기반의 영상 내 비정상적인 상황 탐지 방법들[8,9]은 전처리 과정으로 감시카메라 영상 내의 사람들에 대한 스켈레톤을 추정한다. 감시카메라 영상의 각 프레임별 스켈레톤을 추정한 후 시간 축에 따른 스켈레톤 관절들의 위치 변화와 관절들 간의 관계성을 학습하여 사람의 자세 또는 행동을 인식하고, 그에 따른 비정상적인 상황들을 탐지한다. 이러한 비정상적인 상황 탐지 방법들은 모션정보 기반의 비정상적인 상황 탐지 방법들과 달리 사람의 행동에 초점을 둠으로써 사람이 행하는 작은 모션정보까지 보존할 수 있지만, 유사한 자세와 행동에 대한 분류모호성과 감시카메라 영상 속 스켈레톤 정보 이외의 제한된 정보로 인해 비정상적인 상황들에 대한 탐지 정확도가 저하되는 문제를 보였다. 또한, 폭행, 싸움, 절도, 강도, 배회, 기절과 같은 사람이 주체가 되는 비정상적인 상황들만 탐지할 수 있으며, 교통사고, 폭발 등과 같은 비정상적인 상황들은 탐지할 수 없다는 한계를 가진다.
본 논문에서는 감시카메라 영상 속 사람들의 스켈레톤 정보를 활용하여 각 사람의 행동 특징 및 주변 사람들 간의 관계 특징을 식별하고 객체 탐지를 통해 식별된 사람과 사물 간의 관계 특징을 결합하여 유사한 자세와 행동에 대한 분류의 모호성을 완화하고 정보손실을 경감하는 향상된 스켈레톤 기반 비정상적인 상황 탐지 네트워크인 AT-Net을 제안한다.이 를 위해, 유사한 행동에 대한 차별화된 특징을 추출하기 위한 투-스트림(two-stream) LSTM 신경망 기반 행동 인식 모델과 추출된 특징들을 결합하기 위한 희소 코딩 기법 기반의 새로운 텐서 구조를 제안한다. AT-Net의 영상 내의 비정상적인 상황 탐지 성능과 유효성을 평가하기 위해 실제 감시카메라 영상들로 구성된 UCF-Crime 데이터집합[5]과 NTU CCTV-Fights 데이터집합[12], 그리고 AIhub의 이상행동 CCTV영상 AI 데이터집합[13]을 대상으로 실험을 수행하였다. 세 종류의 데이터집합은 장소, 상황, 영상의 길이, 영상의 화질과 같은 영상의 특징이 각기 다르기 떄문에 비정상적인 상황 탐지 성능에 대한 다각적인 평가가 가능하다. 실험 결과로는 제안한 방법의 탐지 정확도가 약 89%로 기존의 영상 내의 비정상적인 상황 탐지 방법들보다 향상된 성능을 보이는 것을 확인하였다.
본 논문의 구성은 다음과 같다. 2장에서는 기존 스켈레톤 기반 행동 인식 기술들[14-16]과 감시카메라 영상에 대한 비정상적인 상황 탐지 방법들[4-9]에 대해 설명한다.3장에서는 객체 탐지 기술인 Yolov3[17]와 자세 추정 기술인 OpenPose[18], p-LSTMs[19]을 활용한 데이터 전처리 과정과 추출된 데이터 구조에 대해 설명한다. 4장에서는 제안하는 투-스트림 LSTM 신경망 기반 확장된 행동 인식 모델과 희소 코딩 기법 기반의 새로운 텐서 구조를 활용한 감시카메라 영상의 비정상적인 상황 탐지 모델, 그리고 웹 애플리케이션 형태로 개발된 감사카메라 영상 보안관제 시스템에 대해 설명한다. 5장에서는 세 종류의 감시카메라 영상 데이터집합에 대한 제안 방법의 성능을 평가하며, 마지막으로 6장에서는 논문을 요약하고 결론을 맺는다.
2. 관련연구
2.1 스켈레톤 기반 행동 인식 기술
본 장에서는 영상 내 사람의 스켈레톤 정보를 활용하여 행동을 인식하는 선행 기술들[14-16]에 대해 설명한다. 사람 스켈레톤 정보는 영상 속에 나타난 사람의 자세를 프레임별로 나타내어 시퀀스가 진행됨에 따른 자세의 변화를 통해 행동을 인식할 수 있다. 하지만 영상 속 사람의 크기, 카메라의 위치와 같은 요인들에 따라 스켈레톤의 크기, 방향, 시작점들이 다양화되고, 유사한 자세로 구성된 행동들의 존재와 동일한 행동이더라도 시간과 위치에 대해 동적인 특성으로 인해 스켈레톤을 구성하는 관절의 위치 변화만으로 정확하게 행동을 인식하기 어렵다. 이러한 문제를 해결하기 위해 Lee et al.[14]은 스켈레톤을 일반화하여 동일한 크기, 방향, 시작점을 가지도록 하고, 시간축에 따른 움직임의 차이에 해당하는 속도(velocity)를 추출한 모션정보를 다양한 시간 간격으로 학습하여 행동을 인식한 결과들을 앙상블한 Ensemble TS-LSTM을 제안했다. 이러한 접근방식은 기존 LSTM 신경망이 가지는 시퀀스 길이에 대한 의존성을 완화하고, 스켈레톤 일반화를 통해 동일한 행동에서 추출된 모션정보의 다양성을 줄여 행동인식 정확도를 향상하였다. 반면, Yan et al.[15]과 Li et al.[16]이 제안한 ST-GCN과 AS-GCN은 스켈레톤을 하나의 그래프 구조로 간주하여 그래프 합성곱 신경망(Graph Convolutional Neural Network, GCN)을 학습함으로써 행동을 인식하는 접근방식을 채택하였다. 스켈레톤을 구성하는 각 관절은 그래프의 정점(vertex)에 해당하고, 인접한 관절을 연결하는 뼈는 간선(edge)에 해당하는 그래프 구조를 정의하였다. 특히, ST-GCN에서는 시간 축에 따라 동일한 관절들을 연결하여 그래프 구조가 시간적 정보를 포함하도록 하였다. 이러한 그래프 구조를 사용하여 그래프 합성곱 신경망을 학습함으로써 각 행동별 스켈레톤 관절들 간의 관계성을 식별하고, 이를 통해 행동을 인식한다. 하지만 간선으로 연결된 인접한 관절들 간의 관계성만을 식별할 수 있다는 한계점으로 인해 인식 가능한 행동의 수가 제한된다는 문제점을 가진다. 이러한 문제를 해결하기 위해 AS-GCN은 간선으로 연결된 스켈레톤 관절들 간의 관계성만 식별하는 것이 아닌 모든 관절들 간의 관계성 또한 식별하도록 두 계층의 신경망을 구성함으로써 ST-GCN보다 크게 향상된 행동 인식 정확도를 달성하였다.
2.2 감시카메라 영상 내의 비정상적인 상황 탐지 기술
본 장에서는 감시카메라 영상 자동관제를 위해 기존에 선행 연구된 영상 내의 비정상적인 상황 탐지 방법들에 대해 설명한다. 기존의 비정상적인 상황 탐지 방법들은 영상으로부터 추출된 모션정보를 활용하는 접근방식[4-7]과 영상 내 사람들의 스켈레톤 정보를 활용하는 접근방식[8,9]으로 분류할 수 있다. Sultani et al.[5]은 입력된 영상에서 시간 축에 따른 픽셀의 변화량을 기반으로 모션정보와 모양정보를 추출하는 C3D[20]를 이용하여 두 가지 특징을 추출하고, 완전 연결 네트워크(Fully connectedn etwork) 기반의 이진 분류 모델을 학습함으로써 감시카메라 영상을 정상적인 상황과 비정상적인 상황으로 분류하여 탐지하였다.Zhu et al.[6]은 모션정보에 집중된 심층학습 네트워크를 구성하기 위해 C3D대신 PWC- Fusion[10]를 이용하여 감시카메라 영상의 광류로부터 모션정보를 추출하고, 비정상적인 상황을 분류하는 모델의 학습과정에서 주의 집중 기법(Attention mechanism)을 적용함으로써 정상적인 상황들과 차별화된 특징들을 중심으로 학습하여 비정상적인 상황들의 탐지 정확도를 향상시켰다. 하지만 이러한 기술들은 프레임의 전체 픽셀에 대한 모션정보를 추출하기 때문에 추출된 모션정보가 반드시 비정상적인 상황을 유발한 주체의 모션정보라고 보장할 수 없다. 이러한 문제를 해결하기 위해 Gim et al.[4,7]은 모션 정보를 추출하기 전 영상 속에 사람이 위치한 관심영역(Region of Interest, ROI)에 해당하는 모션정보만을 추출하거나 피라미드 구조의 네트워크를 통해 정보 손실이 최소화된 모션정보를 추출하여 비정상적인 상황들을 탐지하는 방법들을 제안하였다. 하지만 관심영역 외의 정보를 고려하지 않아 외부요인과의 관계를 고려할 수 없다는 한계점과 피라미드 구조에 의해 오탐율을 증가시키는 노이즈까지 복원되는 문제점이 있다. 반면, Morais et al.[8]은 오토인코더를 사용하여 사람 스켈레톤의 궤적에 대한 시공간 패턴을 나타내는 특징을 추출하여 패턴의 규칙성에 부합하지 않는 스켈레톤의 궤적을 비정상적인 상황으로 탐지하는 방법을 제안하였다.Taha et al.[9]은 사람 스켈레톤으로부터 단위 행동들을 인식한 후 은닉 마르코프 모형(Hidden Markov Model, HMM)을 통해 최종적인 사람의 활동을 결정하여 비정상적인 상황들을 탐지한다. 하지만 이러한 스켈레톤 정보를 활용하는 접근방식은 스켈레톤 이외의 정보를 활용하지 않기 때문에 실제로 비정상적인 상황이 발생하더라도 시간 축에 따른 스켈레톤의 변화가 정상인 경우와 유사하거나 그 반대의 경우에 비정상적인 상황 탐지의 오탐율이 증가하는 문제가 있다. 본 논문에서는 스켈레톤 정보 이외의 감시카메라 영상 속의 사물, 환경과 같은 상황 정보들을 동시에 활용하여 스켈레톤 정보가 가지는 정보의 제한성과 모호성을 완화시킴으로써 비정상적인 상황들의 탐지 정확도를 향상 시킨다.
3. 데이터 전처리
본 논문에서 제안하는 영상 내의 비정상적인 상황 탐지 모델은 감시카메라 영상 자체를 입력으로 사용하지 않고 영상으로부터 추정된 사람의 이차원, 삼차원 스켈레톤 관절의 위치 좌표와 탐지된 사물의 종류와 위치 좌표를 사용한다. 이러한 정보들을 감시카메라 영상으로부터 추출하기 위해서 잘 알려진 객체 탐지 모델인 Yolov3[17]를 활용하고, 이차원 스켈레톤 관절의 위치 좌표를 추정하기 위해 저화질, 가려짐 등 다양한 방해요인에 대해 견고한 정확도를 보이는 OpenPose[18]활용한다. 추가적으로, 추정된 이차원 스켈레톤 관절의 위치 좌표를 기반으로 삼차원 스켈레톤 관절의 위치 좌표를 추정하는 p-LSTMs[19]을 사용한다.Fig.1은 제안방법의 데이터 전처리 과정에 대한 전체 흐름도를 나타낸다. 우선 입력된 영상이 320x320의 동일한 해상도를 가지도록 조정한 다음, Yolov3 모델과 OpenPose 모델에 입력한다. Yolov3모델에 의해 탐지된 각 객체 o는 객체 종류 클래스인 o.class, 영상 내 객체의 바운딩 박스(Boun-dingbox) 좌측 상단 좌표인 o.x와 o.y, 그리고 객체의 바운딩 박스 너비와 높이에 해당하는 o.w와 o.h로 구성된 데이터 구조 [o.class, o.x, o.y, o.w, o.h]로 추출된다.OpenPose모델에 의해 추정된 영상 내 사람 p의 이차원 스켈레톤 정보는 Fig. 2와 같이 총 15개의 관절들로 구성된 관절집합 p.2d에 해당하며, 각 관절 j은 입력된 영상 내 이차원 위치 좌표 jx, jy와 해당 관절의 가시성을 나타내는 플래그 jvis로 구성된 세 개의 값을 가진다. 다음으로, 추출된 이차원 스켈레톤 관절들의 좌료를 p-LSTMs모델의 입력으로 하 여 각 이차원 관절 좌표에 대한 깊이를 추정함으로써 해당 스켈레톤의 삼차원 관절 좌표 jx, jy, jz를 추출한다. 마지막으로, Fig. 2의 1번 관절을 원점으로 하여 추정된 스켈레톤의 모든 삼차원 관절 좌표가 0∼1 사이의 값을 가지도록 일반화한다. 결과적으로 전처리 과정에 의해 입력된 영상의 각 프레임은 Fig. 3과 같은 Key-Value 데이터 구조로 변환된다.
Fig. 1. The entire flowchart of preprocessing step for surveillance video.
Fig. 2. A list of skeleton joints.
Fig. 3. An example of object and skeleton data extracted from surveillance video.
4. 제안방법
4.1 투-스트림 LSTM 신경망 기반 확장된 행동 인식 모델
본 장에서는 감시카메라 영상 내의 비정상적인 상황 탐지에 앞서 3장에서 설명한 전처리 과정을 통해 각 프레임별로 추출된 객체와 사람의 스켈레톤 정보를 이용하여 각 사람의 행동을 인식한다. 2.1장에서 언급한 기존의 스켈레톤 기반 행동 인식 방법들은 시간 축에 따른 스켈레톤 관절의 위치좌표 변화 또는 관절간의 관계성을 나타내는 특징들을 학습함으로써 사람의 행동을 인식하였다. 하지만 유사한 자세로 구성된 상이한 행동들은 유사한 스켈레톤 관절의 위치좌표 변화와 관절간의 관계성을 가지기 때문에 이러한 행동들을 구분할 수 있는 차별화된 특징을 추출하기 어렵다. 예를 들어, Fig. 4에서 제시된 주먹을 휘두르는 행동, 칼로 찌르는 행동, 물건을 집는 행동은 RGB 영상에서는 차이가 명확하지만 세 행동의 자세가 유사하기 때문에 추정된 스켈레톤 또한 유사하게 나타난다. 따라서, 기존 스켈레톤 기반 행동 인식 방법들은 Fig. 4에서 제시된 행동들을 정확하게 분류할 수 없는 모호성을 가진다. 본 논문에서는 스켈레톤 관절들 간의 내부적인 관계와 객체 및 인접 사람들과의 외부적인 관계를 통해 행동 인식의 모호성을 완화하고 인식 정확도를 개선하는 확장된 행동 인식 모델인 2S-LSTM을 제안한다. Fig. 5는 2S-LSTM의 전체 구조도이다. 먼저, 행동 인식 모호성을 해소하기 위해 스켈레톤 정보 이외의 감시카메라 영상 속 객체 정보와 인접 사람의 수를 추가적으로 활용하여 RGB 영상에서 식별할 수 있는 객체 소유자와 사람들 간의 상호작용 여부를 식별하고, 이를 통해 유사한 자세를 가진 행동일지라도 객체를 소유한 상태에서의 행동인지, 인접한 사람과의 상호작용을 위한 행동인지 구분할 수 있는 외부적인 관계를 인식한다. 이때, 객체 소유자를 식별하는 방법은 시간 축에 따른 객체의 이동방향과 사람의 양손의 이동방향이 가장 유사한 사람을 객체 소유자로 채택한다. 이동방향에 대한 유사도를 계산하기 위해 먼저 수식 (1)에 따라 매 프레임 별 객체의 중심벡터 oc를 계산한다.
\(o_{c}=\left(\frac{2 o \cdot x+o \cdot w}{2}, \frac{2 o \cdot y+o \cdot h}{2}\right)\) (1)
Fig. 4. An example of ambiguous skeleton data for different actions.
Fig. 5. Two-stream LSTM network architecture for human action recognition.
다음으로, 수식 (2)에 따라 시간 축에 따라 객체 중심의 방향벡터 \(\vec{o}_{c}\)와 Fig. 2에서 제시된 바와 같이 사람 스켈레톤 pi의 양 손목에 해당하는 6번, 9번 관절 방향벡터 \(\overrightarrow{j_{i}^{6}}, \overrightarrow{j_{i}^{9}}\) 간의 코사인 유사도를 각각 계산한다.
\(\cos \left(\overrightarrow{o_{c}}, \overrightarrow{j_{i}}\right)=\frac{\overrightarrow{o_{c}} \cdot \overrightarrow{j_{i}}}{\left\|\overrightarrow{o_{c}}\right\|\left\|\overrightarrow{j_{i}}\right\|}\) (2)
마지막으로, 수식 (3)에 따라 최종 이동방향 유사도를 계산한다. 이때, 코사인 유사도는 사람과 객체 간의 위치에 따른 유사도를 반영하지 못하기 때문에 객체의 중심벡터 oc와 양 손목 관절 벡터인 \(\overrightarrow{j_{i}^{6}}, \overrightarrow{j_{i}^{9}}\) 간의 유클리드 거리(Euclidean distance)인 dist(oc,\(j_{i}^{6}\))와 dist(oc,\(j_{i}^{9}\))를 각각 계산하여 최종 이동방향 유사도를 계산함으로써 최종 이동방향 유사도가 위치와 방향 유사도를 모두 반영할 수 있도록 한다.
\(\operatorname{sim}\left(o, p_{i}\right)=\max \left(\frac{\cos \left(\overrightarrow{o_{c}}, \overrightarrow{j_{i}^{6}}\right) \operatorname{dist}\left(o_{c}, j_{i}^{6}\right)+1}{\operatorname{dist}\left(o_{c}, j_{i}^{6}\right)}, \frac{\cos \left(\overrightarrow{o_{c}}, \overrightarrow{j_{i}^{9}}\right) \operatorname{dist}\left(o_{c}, j_{i}^{9}\right)+1}{\operatorname{dist}\left(o_{c}, j_{i}^{9}\right)}\right)\) (3)
모든 사람 스켈레톤 pi∈P에 대해 유사도를 계산하여 가장 유사한 스켈레톤을 찾아 해당 객체의 소유자로 채택한다. 인접 사람의 수는 모든 스켈레톤에 대해 바운딩 박스를 계산하여 한 스켈레톤의 바운딩 박스에 대해 중첩된 바운딩 박스를 가지는 스켈레톤의 수로 계산한다. 이후, P-LSTM으로부터 관절 위치 데이터를 기반으로 관절들 간의 일대일 관계인 P-행동특징을 추출하고, A-LSTM으로부터 Fig. 6에 정의된 총 18개의 관절 각도 데이터를 기반으로 각도를 이루는 관절들로 구성된 그룹들 간의 관계인 A-행동특징을 추출하여 일반화된 행동특징을 얻는다. 마지막으로, P-LSTM과 A-LSTM을 연결(concatenation)하여 다계층 퍼셉트론 기반의 행동 분류 네트워크를 통해 행동을 인식한다. 이때, 행동 분류 네트워크는 Table 1에 나타난 행동들로 분류하며, 다수의 행동들을 분류해야 하므로 소프트맥스(softmax) 함수와 범주형 크로스 엔트로피(categor- icalcrossentropy)손실 함수를 활용하여 행동 분류 네트워크를 최적화한다.
Fig. 6. A list of skeleton angles.
4.2 영상 내의 비정상적인 상황 탐지 모델
본 논문에서는 감시카메라 영상 내 사람들의 행동에 초점을 두고 폭행, 싸움, 절도, 배회, 기절에 해당하는 비정상적인 상황들을 탐지하는 방법을 제안한다. 감시카메라 영상 속에서 추출된 객체 정보와 사람 스켈레톤 정보를 통해 4.1장에서 각 사람의 행동을 인식하고 객체 소유자를 식별하였다. 추가적으로 식별된 사람들의 행동 정보와 객체 소유자를 바탕으로 단순한 조건 기반 추론과정을 거쳐 감시카메라 영상 속의 가해자와 피해자를 예측할 수 있다. 예를 들어, 영상 속 한 사람이 위험한 객체를 휘두르고 있고, 또 다른 사람이 휘두르는 행동에 반응하여 방어 자세를 취하는 행동을 보인다면 위험한 객체를 휘두르는 사람은 가해자, 방어 자세를 취하는 사람은 피해자라고 추론할 수 있다. 본 논문에서는 Table 1에 따라 분류된 사람들의 행동을 바탕으로 폭행, 강도 등 두 명 이상의 사람들이 상호작용하는 상황에 대해 가해자와 피해자를 다음 조건에 따라 식별한다: (1) 영상 내 두 사람 이상의 바운딩 박스가 중첩되어 있다;(2) 주먹을 휘두르거나 발로 차는 등 폭력 행위에 대한 방어 행위를 하는 상호작용이 존재한다. 이러한 조건을 만족하는 경우 폭력 행위를 하는 사람을 가해자, 방어 행위를 하는 사람을 피해자로 결정한다. 만약 절도, 기절 등과 같이 상호작용 없이 한 사람의 행동에 의해 발생하는 상황에 대해서는 행동만으로 용의자 또는 환자를 결정한다. 상기 방법들에 의해 객체 정보와 스켈레톤 정보로부터 추가적으로 식별된 행동, 객체 소유자, 가해자, 피해자와 같은 정보들을 모두 결합하기 위해 희소 코딩 기법을 활용하여 네 개의 이차원 텐서 구조인 행동지도, 피해관계지도, 거리지도, 객체지도에 식별된 정보들을 매핑한다. 각 이차원 텐서는 입력된 영상의 해상도에 대해 일정한 크기의 정사각형 셀로 분할한 동일한 크기이며, 모든 값이 0으로 초기화된 이차원 행렬의 형태이다. 행동지도는 감시카메라 영상에서 나타난 스켈레톤들의 관절 위치에 해당하는 셀 영역에 각 스켈레톤의 행동 클래스 값을 매핑함으로써 각 행동이 영상 속에서 발생한 위치를 나타낸다. 피해관계지도는 앞서 식별한 가해자와 피해자, 또는 용의자, 환자에 해당하는 스켈레톤들에 대해 해당 스켈레톤 관절 위치에 가해자는 1, 피해자는 2, 용의자 또는 환자는 3으로 매핑한 텐서로 스켈레톤 간의 관계와 상황이 발생한 위치를 나타낸다. 거리지도는 스켈레톤 간의 근사화된 거리 관계를 매핑한 텐서로 자신과의 거리를 1로 하여 가장 가까운 스켈레톤과 떨어진 셀들의 수를 근사화된 거리로 하여 스켈레톤 관절 위치에 매핑한다. 객체지도는 객체 소유자와 객체의 종류를 텐서에 매핑한 것으로 객체 소유자는 1, 객체의 종류는 객체의 바운딩 박스 영역에 객체 클래스의 음수값을 매핑하여 영상 속 객체의 위치와 소유자의 위치를 나타낸다. 마지막으로 Fig. 7에 나타난 바와 같이 입력된 영상으로부터 생성된 이차원 텐서 지도들은 각각 하나의 영상 채널로 간주되어 하나의 삼차원 텐서 지도로 결합된 후 비정상적인 상황 탐지 네트워크인 Anomaly tensor network(AT-Net)으로 입력된다. 제안된 AT-Net은 가장 먼저 11x11 합성곱 계층과 4x4 맥스 풀링 계층통해 대부분의 값이 0으로 희소한 삼차원 텐서를 다운 샘플링한다. 이 과정에서 삼차원 텐서를 구성하는 각 지도에 매핑된 행동, 거리, 사물, 관계에 대한 정보들이 희소한 텐서에 채워짐으로써 강조된다. 이후 7×7 합성곱 계층과 5×5 합성곱 계층을 통해 입력 텐서에 매핑된 정보들의 공간적 특징을 추출한다. 이때, 각 합성곱 계층의 활성화 함수는 ReLU가 사용된다. 합성곱 계층들을 통해 추출된 공간적 특징을 비정상적인 상황 탐지를 위한 추론 계층인 완전 연결 계층에 전달하기 위해 플래튼 함수를 적용한다. 추론 계층은 4개의 완전 연결 계층으로 구성되며, 추론 과정에서 입력 텐서에 매핑된 정보들 간의 관계를 학습한다. 마지막 완전 연결 계층은 시그모이드(sigmoid)함수를 통해 입력된 영상을 정상적인 상황과 비정상적인 상황으로 이진 분류한다. 제안하는 영상 내의 비정상적인 상황 탐지 모델은 이진 크로스 엔트로피(binary cross entropy)손실함수를 통해 최적화된다. Fig. 8는 AT-Net을 기반으로 개발된 감시카메라 영상 자동관제 시스템의 UI를 보여준다. 추가적으로 AT-Net의 마지막 완전 연결 계층의 시그모이드 함수를 통해 사용자가 입력한 감시카메라 영상에 대한 0과 1 사이의 비정상적인 상황 스코어를 얻을 수 있으며, 해당 스코어에 대해 사용자가 역치값 τ을 직접 설정하여 계산된 스코어 값이 역치값 τ이상일 경우 비정상적인 상황이 발생한 것으로 간주하여 탐지 민감도가 유연한 시스템을 구축할 수 있다.
Table 1. The performance for proposed algorithm and conventional algorithms.
Fig. 7. An architecture of the AT-Net.
Fig. 8. User interface of the developed automatic video surveillance system.
5. 실험결과 및 고찰
5.1 실험설정
본 논문에서는 실험에 사용된 모든 제안방법과 관련기술을 Python 프로그래밍 언어로 개발하였으며, 딥러닝 프레임워크는 Keras 2.2.4를 사용하였다. 딥러닝 학습을 위한 시스템 환경은 2개의 NVIDIARTX TITAN 그래픽 처리 장치와 128GB RAM으로 구성하였고, Windows 10 운영체제에서 실험을 수행하였다. 제안하는 방법의 성능을 평가하기 위해 사용된 데이터집합은 UCF-Crime 데이터집합[5], NTU CCTV-Fights 데이터집합[12], 그리고 AIhub의 이상행동 CCTV 영상 AI 데이터집합[13], YouTube와 LiveLeak과 같은 영상 공유 플랫폼에서 수집한 감시카메라 영상들을 활용하였으며, 스켈레톤 정보가 필요하기 때문에 교통사고, 폭발 등 사람의 행동이 비정상적인 상황의 주체가 아닌 비정상 클래스들은 제외하여 폭행, 싸움, 절도, 실신, 기절과 같은 비정상적인 상황들을 포함하는 감시카메라 영상들만 실험데이터로 활용하였다. Table2는 세 종류의 데이터집합 의 비정상적인 상황별 영상의 수를 보여주며, Fig. 10은 각 비정상적인 상황 클래스에 대한 영상 프레임 샘플을 보여준다. 제안하는 AT-Net의 성능을 평가하기 위해 기존의 영상 내의 비정상적인 상황 탐지 방법들인 Sultani et al.[5], Gim et al.[4]과 비정상적인 상황 탐지 성능을 비교한다. 두 제안방법에 대한 명칭이 없어 본 논문에서는 편의상 C3D Abnormal과 MA-Net으로 임의로 명칭한다. 또한, 제안하는 투-스트림 LSTM 행동 인식 네트워크(2S-LSTM)를 비롯해 기존의 스켈레톤 기반의 행동 인식 방법들인 Ensemble TS-LSTM[14]과 AS-GCN[16]을 AT- Net에 적용하여 행동 인식 성능을 비교함으로써 2S-LSTM을 평가하고, AT-Net이 다양한 스켈레톤 기반 행동 인식 방법들을 활용하여 비정상적인 상황을 탐지할 수 있음을 보인다. 실험결과를 평가하기 위한 척도는 분류 정확도를 평가할 때 주로 사용하는 F1-Score를 사용한다. 추가적으로, AT-Net은 시그모이드 함수를 통해 입력된 감시카메라 영상에 대한 0과 1 사이의 비정상적인 상황 스코어를 계산한 후 정상적인 상황과 비정상적인 상황을 분류하기 위해 역치값 τ를 사용하기 때문에, τ가 0.5, 0.6, 0.7, 0.8인 경우에 대해 각각 실험을 진행한다.AT-Net의 경우 Adam 최적화기를 사용하였으며, 학습률(learning rate)는 0.0001, 배치 사이즈(batchsize)는 64, 에폭(epoch)은 2000으로 설정하였으며, 텐서의 크기는 가로, 세로 동일하게 96개의 셀로 구성하였다. 비교평가를 위해 구현한 C3D Abnormal과 MA-Net은 해당 저자가 추천한 파라미터 세팅을 그대로 사용하였다.
Table 2. The number of surveillance videos per dataset for abnormal events.
Fig. 9. The sample frames of the experimental dataset for each abnormal situation.
Fig. 10. Results of the abnormal detection for theft and shoplifting events.
5.2 실험결과
Table 3은 기존의 영상 내의 비정상적인 상황 탐지 방법들인 C3D Abnormal[5], MA-Net[4]과 다양한 스켈레톤 기반 행동 인식 모델들과 결합된 AT-Net의 성능을 평가한 결과를 보여준다. AT-Net은 적용한 행동 인식 네트워크에 관계없이 C3D Abnormal 보다 약 40% 이상 향상된 비정상적인 상황 탐지 성능을 보였으며, MA-Net보다 약 25% 이상 성능이 향상되었다. C3D Abnormal의 경우 세 분류의 비정상적인 상황 클래스에 대해 Theft&Shoplifting 상황에서 가장 낮은 성능을 보였는데 이는 다른 두 분류의 비정상적인 상황들에 비해 영상에서 모션이 잘 드러나지 않을 정도로 동작이 빠르고 큰 동작이 없기 때문에 C3D에 의해 추출된 모션 정보와 모양 정보가 손실되거나 비정상적인 상황을 분류할 수 있을 정도의 차별화된 특징이 입력 영상으로부터 추출되지 않았음을 의미한다. 마찬가지로 MA-Net 또한 Theft&Shoplifting 상황에 대해 가장 낮은 성능을 보였다. 이는 피라미드 구조의 네트워크를 통해 손실된 모션 정보를 복원하고 강한 모션을 더욱 강조하지만 그만큼 다른 노이즈 모션 정보들 또한 복원되고 강조되기 때문에 비정상적인 상황 탐지 성능이 오히려 저하되었다. 반면, AT-Net은 스켈레톤을 통해 추출된 사람의 행동을 강조하여 비정상적인 상황을 탐지하기 때문에 Theft&Shoplifting 상황과 같이 빠르고 크지 않은 동작에 대해서도 큰 정보손실 없이 차별화된 특징을 추출함으로써 약 80% 정도의 비교적 정확한 탐지 성능을 보였다. 하지만, Fig. 10에서 나타난 바와 같이 영상으로부터 식별된 행동이 비정상적인 상황을 탐지하기 모호할 때, 사물정보가 없거나 해당 정보가 비정상적인 탐지에 큰 영향을 주지 못할 경우 여전히 Theft&Shoplifting 상황을 탐지하지 못해 세 분류의 비정상적인 상황들 중에서 가장 낮은 탐지 정확도를 보였다.Table 4는 AT-Net의 비정상적인 상황 탐지 성능에 대한 역치값 τ의 영향력을 평가하기 위해 수행된 실험의 결과를 나타낸다. 2S-LSTM을 적용한 AT-Net의 성능이 가장 우수하였으며, 역치값 τ가 증가할수록 비정상적인 상황을 탐지하기 위한 기준이 엄격해지기 때문에 탐지 성능이 저하되는 것을 확인하였다. 반면, AS-GCN을 적용할 경우 역치값 τ가 0.5에서 0.6으로 변경될 때 성능이 오히려 향상되었지만, 그 이후 역치값 τ가 증가할수록 성능이 저하되었다. 이는 비정상적인 상황을 탐지하는 기준이 너무 관대할 경우 오히려 정상적인 상황을 비정상적인 상황으로 잘못 탐지하는 오탐(falsealarm)이 증가하는 문제가 발생한다는 것을 의미한다.
Table 3. Experimental results for the entire dataset.
Table 4. Performance evaluation results of the proposed network according to the threshold.
6. 결론
본 논문에서는 감시카메라 영상 자동관제를 지원하기 위해 영상 내 사람들의 스켈레톤 정보를 활용한 새로운 비정상적인 상황 탐지 모델인 AT-Net을 제안하였다. 영상 내의 상황에 적합하게 스켈레톤 정보를 활용하기 위해 객체 탐지를 통해 사물 정보를 추출하고, 사람의 행동 정보를 추출하기 위해 2S-LSTM이라는 스켈레톤 기반 행동 인식 네트워크 또한 제안하였다. 감시카메라 영상으로부터 추출된 유의미한 정보들을 희소 코딩 기법 기반의 새로운 텐서 구조에 맵핑함으로써 영상 내의 비정상적인 상황을 탐지할 수 있도록 하였다. 세 종류의 벤치마킹 데이터집합에 대한 비정상적인 상황 탐지 성능평가 결과 약 89%의 F1-score를 보였으며, 기존 비정상적인 상황 탐지 방법들보다 최소 25% 이상 향상된 결과를 보였다. 향후에는 사람의 행동, 사물 등과 같이 사전 정의된 정보만을 활용하지 않고 End-to-End 구조를 가지는 비정상적인 상황 탐지 모델로 변환하여 학습과정에서 감시카메라 영상으로부터 자동으로 유의미한 정보를 추출하고 학습하도록 함으로써 견고한 비정상적인 상황 탐지 정확도를 확보할 수 있을 것으로 기대한다.
참고문헌
- J.T. Zhou, J. Du, H. Zhu, X. Peng, Y. Liu, and R.S.M. Goh, "Anomalynet: An Anomaly Detection Network for Video Surveillance," IEEE Transactions on Information Forensics and Security, Vol. 14, No. 10, pp. 2538-2550, 2019.
- J. Kang and S. Kwak, "Loitering Detection Solution for CCTV Security System," Journal of Korea Multimedia Society, Vol. 17, No. 1, pp. 15-25, 2014. https://doi.org/10.9717/kmms.2014.17.1.015
- M. Jeon and K.J. Cheoi, "Anomaly Detection using Combination of Motion Features," Journal of Korea Multimedia Society, Vol. 21, No. 3, pp. 348-357, 2018. https://doi.org/10.9717/KMMS.2018.21.3.348
- U.J. Gim, J.H. Kim, K.H. Yoo, and A. Nasridinov, "Motion-Attentive Network for Detecting Abnormal Situations in Surveillance Video," Proceeding of ACM SIGGRAPH 2020 Posters, pp. 1-2, 2020.
- W. Sultani, C. Chen, and M. Shah, "Real-World Anomaly Detection in Surveillance Videos," Proceeding of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 6479-6488, 2018.
- Y. Zhu and S. Newsam, "Motion-aware Feature for Improved Video Anomaly Detection," arXiv preprint arXiv:1907.10211, 2019.
- U.J. Gim, J.J. Lee, J.H. Kim, Y.H. Park, and A. Nasridinov, "An Automatic Shoplifting Detection from Surveillance Videos (Student Abstract)," Proceeding of the AAAI Conference on Artificial Intelligence, pp. 13795- 13796, 2020.
- R. Morais, V. Le, T. Tran, B. Saha, M. Mansour, and S. Venkatesh, "Learning Regularity in Skeleton Trajectories for Anomaly Detection in Videos," Proceeding of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 11996-12004, 2019.
- A. Taha, H.H. Zayed, M.E. Khalifa, and E.S.M. El-Horbaty, "Human Activity Recognition for Surveillance Applications," Proceeding of the International Conference on Information Technology, pp. 577-586, 2015.
- Z. Ren, O. Gallo, D. Sun, M.H. Yang, E. Sudderth, and J. Kautz, "A Fusion Approach for Multi-frame Optical Flow Estimation," Proceeding of IEEE Winter Conference on Applications of Computer Vision (WACV), pp. 2077-2086, 2019.
- N. Dalal and B. Triggs, "Histograms of Oriented Gradients for Human Detection," Proceeding of IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 886-893, 2005.
- M. Perez, A.C. Kot, and A. Rocha, "Detection of Real-world Fights in Surveillance Videos," Proceeding of the IEEE International Conference on Acoustics, Speech and Signal P rocessing (ICASSP), pp. 2662-2666, 2019.
- Abnormal Event CCTV Video AI Training Dataset (2019). https://aihub.or.kr/aidata/139 (accessed December 9, 2020).
- I. Lee, D. Kim, S. Kang, and S. Lee, "Ensembl Deep Learning for Skeleton-based Action Recognition using Temporal Sliding LSTM Networks," Proceeding of the IEEE International Conference on Computer Vision, pp. 1012-1020, 2017.
- S. Yan, Y. Xiong, and D. Lin, "Spatial Temporal Graph Convolutional Network for Skeleton-based Action Recognition," Proceeding of the AAAI Conference on Artificial Intelligence (AAAI), pp. 8585-8593, 2018.
- M. Li, S. Chen, X. Chen, Y. Zhang, Y. Wang, and Q. Tian, "Actional-structural Graph Convolutional Networks for Skeleton-based Action Recognition," Proceeding of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 3595-3603, 2019.
- J. Redmon and A. Farhadi, "Yolov3: An Incremental Improvement," arXiv preprint arXiv:1804.02767, pp. 1-6, 2018.
- Z. Cao, G. Hidalgo, T. Simon, S.E. Wei, and Y. Sheikh, "OpenPose: Realtime Multi-person 2D Pose Estimation using Part Affinity Fields," IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 43, No. 1, pp. 172-186, 2019.
- K. Lee, I. Lee, and S. Lee, "Propagating LSTM: 3D Pose Estimation based on Joint Interdependency," Proceeding of the European Conference on Computer Vision (ECCV), pp. 119-135, 2018.
- D. Tran, L. Bourdev, R. Fergus, L. Torresani, and M. Paluri, "Learning Spatiotemporal Features with 3D Convolutional Networks," Proceeding of the IEEE International Conference on Computer Vision (ICCV), pp. 4489-4497, 2015