사람 재인식 기법 분석
관련링크
본문
CCTV 사용이 보편화되면서 방범 목적으로 서비스 시설이나 공공시설에 설치되는 CCTV의 수가 급격하게 증가하고 있다. 그에 따라 CCTV를 감시하는 노동력이 부족해지는 문제가 발생하여 이를 대체하기 위해 카메라 영상을 통하여 한번 인식한 사람을 다른 시간이나 장소에서 촬영된 영상에서 다시 인식하는 사람 재인식 기술이 주목받고 있다. 또한, 이러한 사람 재인식 기술은 보안 분야뿐만 아니라 영화나 드라마와 같은 영상 컨텐츠에 적용되어 불법 복제물을 찾는 일에 사용될 수도 있다. 기존의 사람 재인식에는 이미지의 유사도를 계산하는 방법이 사용되었지만, 조명이나 카메라 각도가 달라지면 성능이 급격하게 떨어지는 문제가 있었다. 최근에는 딥러닝 기술이 발달하면서 전반적인 영상처리 분야의 성능이 향상되었고, 사람 재인식 분야 역시 딥러닝을 활용하면서 성능이 향상되었다.
본 연구실에서는 세 개의 사람 이미지를 입력으로 사용하여 특징을 추출하고, 추출된 특징 맵사이의 Cross Input Neighborhood differences를 계산하여 이를 학습에 사용한다. 이를 통해 Anchor 이미지를 기준으로 각 이미지(image1, image2)의 차이점과 공통점을 동시에 고려하여 네트워크가 학습되도록 모델을 구축하고, 이미지 유사 여부에 대해 4개의 클래스로 분류하는 것을 목표로 한다.
그림 1 예시 네트워크 구조
● Cross-Input Neighborhood Differences를 활용한 네트워크 학습 연구
- 그림 1을 보면 세 개의 이미지에서 추출된 특징 맵들이 Cross-Input Neighborhood Differences 레이어를 통해 재구성되는 것을 볼 수 있다. 식 (1)은 두 특징 맵 사이의 관계를 계산하는 방법을 나타낸 것이다. f_i는 컨볼루션 레이어를 통해 Anchor 이미지에서 추출된 특징 맵이고 g_i,1과 g_i,2는 비교되는 이미지(Image1/Image2)에서 추출된 특징 맵을 의미한다. 그리고 1(5,5)는 1로 구성된 5x5 행렬을 뜻하고, N[g_i(x,y)]는 g_i 행렬에서 (x,y)가 중심인 5x5 행렬을 의미한다. 그림 2에서는 이해를 돕기 위해 식 (1)을 실제 특징 맵에 적용했을 때의 예시를 보여주고 있다. Cross-Input Neighborhood Differences 레이어를 통해 특징 맵 K_i와 식 (1)을 반전시켜서 만들어진 특징 맵 K'_i 가 만들어지는데, K'_i의 식을 N[g_i(x,y)]-f_i(x,y)1(5,5)와 같이 구성하게 되면 K_i와 절댓값이 같은 특징 맵을 결과로 얻게 된다. 그렇게 되면 두 개의 식을 사용하여 특징 맵을 구성하는 것이 의미가 없어지므로, 식 (2)와 같이 식을 구성하여 특징 맵 K'_i를 구성하였다. 이 모델에서는 세 개의 이미지를 사용하므로 그림 1과 같이 두 쌍의 특징 맵이 만들어진다. 이 특징 맵들은 식 (1)과 식 (2)를 통해 Cross-Input Neighborhood Differences 레이어에서 재구성된다. 이렇게 만들어진 특징 맵은 다시 컨볼루션 레이어를 통과하면서 특징을 추출하게 되고 최종적으로 Fully connected 레이어와 Softmax를 통해 네 개의 클래스로 분류된다.
K_i(x,y) = f_i(x,y)1(5,5) - N[g_i,n(x,y)] 식 (2)
K'_i(x,y) = g_i,n(x,y)1(5,5) - N[f_i(x,y)] 식 (3)
그림 2 f_i(x,y)1(5,5) 예시
그림 3 N[g_i(x,y)] 예시