(MGNet) Online object tracking via motion-guided convolutional neural network

2018
tracking

#1

MGNet 리뷰 (2018, JVCIR)

#paper_review #tracking #vision

출처 : Journal of Visual Communication and Image Representation (2018)
저자 : Weihao Gana,⁎, Ming-Sui Leeb, Chi-hao Wua, C.-C. (Jay) Kuoa

요약

  • MGNet은 “Motion-Guided Convolutional Neural Networks”의 준말로 기존 MDNet (Multi-domain …)을 발전시킨 Single Object Tracking 모델이다.
    (MDNet) Learning Multi-Domain Convolutional Neural Networks for Visual Tracking
  • 기존 TBD (Tracking-by-Detection) 방식은 트래킹 타겟이 인전한 프레임 사이에서 움직임에 대한 강한 상관관계를 가지고 있다는 점을 고려하지 않았다. (Temporal dependency)
  • 본 논문에서는 MDNet에서 변형하여 적용하고, 개선된 성능을 보여준다. (OTB100-auc:0.7 수준)
  1. Motion guided candidate selection
  2. temporal optical flow with input image

주목할만한 내용

1. Motion-based Candidate Selection (MCS)

기존 MDNet에서 object candidates을 선정하는 방법은 이전 프레임에서의 결과에 높은 의존성을 갖는다. 즉, 예측되었던 bounding box의 위치를 중심으로 주위의 임의의 box를 sampling하여 현재 object의 위치를 파악하기 때문이다.
반대로 생각하면, 이전 프레임에서 detection 실패가 일어났을 때, 그 다음 프레임에서 고려하는 candidates들이 object를 포함할 확률은 급격하게 낮아지며, 이러한 detection의 실패는 tracking의 실패로 직결될 수 있다.

구체적으로 수식을 통해 살펴보면 아래와 같다.
t시간에서 target의 horizontal location 상태(state)를 x_t, measurement를 z_t라고 한다면, Markov Assumption에 의해 아래와 같이 표현할 수 있다.

즉, target의 상태는 이전 프레임의 상태에만 의존하고, 과거 상태와 상관없이 현재 프레임에서의 bounding box와 그 시간의 measurement 사이의 의존성을 갖는다.
따라서, 과거 measurement가 기록되었을 때, 다음 bounding box의 확률은 위의 마지막 (3) 처럼 표현된다.

본 연구에서는 state-transition 을 고려하여, 과거 measurement에 대한 현재 bounding box의 유추를 아래와 같이 표현한다. 간단히 설명하면, 과거 프레임에서 현재 프레임으로 타겟의 움직임의 변화율(속도)가 없다고 가정하거나, 일정한 속도를 갖는다고 가정하거나, 가속도를 갖는다고 가정하면 x_t의 평균을 아래와 같이 표현할 수 있다.


위의 각각의 가정을 고려한 후, 예측했을 때 에러는 위의 표와 같으며, 기존 MDNet 방식과 같은 ZV와 CA는 유사한 에러를 갖고 (error ZV < error CA) , CV 가정의 경우 가장 낮은 에러를 보여준다. 즉, state 변화가 일정한 속도를 가지고 이동한다는 가정을 했을 때, 다음 프레임 예측의 정확도가 높아진다. 하지만, 하나의 모션 가정이 물체의 다양한 움직임을 모두 설명할 수 없기에, sampling 할 때에는 각각의 가정을 2:1:1 비율로 사용하여 random bounding box를 추출하였다.

위에서 계산한 평균 위치를 중심으로 random sampling하기 위해서는, bounding box의 variance 정보 역시 알고 있어야한다. 본 논문에서 random sampling의 Variance는 이전 프레임의 샘플링 결과들의 계산된 “confidence score”의 분포를 활용한다.
이 때 주의할 점은 현재 bounding box와 물리적인 위치가 먼 box일 수록 background와 상관이 높을 수 있으며, background가 포함되어 있는 정도에 따라 score의 범위가 다양하다. 쉽게 생각하면, 현재 box에서 거리가 먼 box는 방향이나 위치 등에 따라 우리가 목표로하는 object를 포함할 수도 있고, 안할 수도 있다. score의 분포를 대략적으로 보면 아래와 같다. 따라서 아래 그림과 같이 B구역의 노이즈는 1차 처리하고, 정리된 분포의 분산을 사용하였다.

2. RGB-plus-motion 5-channel input (RGB-M)

기존 MDNet의 입력데이터는 픽셀 단위로 RGB 값을 갖는 3-channel input이었다. 본 연구에서는 “motion optical flow”를 이용하기 위해서 이전 프레임과 현재 프레임 사이의 optical flow를 horizontally & vertically 계산하여 기존 이미지와 함께 입력되었다. 즉 입력이미지의 채널수가 3 => 5 로 변화하였다. 전반적인 모델 architecture는 아래와 같으며, 음영된 부분이 입력 이미지에 optical flow가 추가된 것을 의미한다.

입력 이미지의 차원이 증가하였기 때문에, hidden layer에서 분별력 높은 숨은 특징을 찾는데 더 많은 변수가 필요하다고 가정하고, conv1의 채널 수 역시 증가하였다. 실험적으로 채널을 결정하였으며, 기존 96개 채널에서 112개로 채널 수를 늘렸다.

성능

주요 벤치마크 성능은 기존 MDNet에 비해 개선되었으며, 특히 Articulate motion, fast motion, Distractor (이미지 내 유사한 타겟) 등에서 주요 성능 개선을 보여주었다. 반면 Occlusion, Out-of-plane rotation with complex content에 대해서는 MDNet보다 악화된 성능을 보여주었다. (하지만 전체 성능은 더 높아졌다.)

  1. OTB50 : (pre20, IOU_AUC) = (0.868, 0.727)
  2. OTB100 : (pre20, IOU_AUC) = (0.848, 0.704)

정리

MDNet에서 완전히 새로운 변화는 없지만,

MDNet이 현재 프레임과 타겟 위치에서 random sampling을 통해 다음 프레임에서의 타겟 위치를 찾고, 이를 반복하며 tracking을 진행한다는 점.

그리고 과거 프레임으로부터 현재 프레임의 모션 정보를 이용하면, 현재 프레임에서 일어날 수 있는 다양한 변화들에 robust하게 대응할 수 있다는 점을 잘 활용하였다.

특히, 단순히 optical flow를 입력 이미지에 concatenate 시킨 것 만으로도 성능이 올라가는 것은 비디오에 존재하는 시간적인 정보(temporal information) 활용이 필수적이라는 것을 암시한다.


(Curtis Kim) #2

Optical Flow 추가한 거랑, Motion에 대한 마코브모델을 가정한 Box Estimation 은 별개인거죠?

Motion에 대한 Markov 모델로부터 샘플링하는 Box Estimation을 제외했을 때의 각각 성능이 궁금하긴 하네요.

어떻게 보면, 단순히 피쳐 추가로 인한(옵티컬플로피쳐) 성능 향상이라고 볼 수도 있겠어서…


#3

네 두가지 보정은 아예 별개입니다.
아쉽게도 ablation study 성능은 분석하지 않았네요 ㅠㅠ
저도 optical flow 추가해서 성능 향상된 것이 주요하다고 보는데요.
다른 측면으로 optical flow를 이용해서 복잡한 구조를 쌓지 않고 MDNet 입력 이미지에 단순히 2-channel 추가하는 것 만으로도 유의미한 성능 향상을 줄 수 있다데 의미가 있네요.