본문 바로가기

Computer Vision/Single Object Tracking

[논문 읽기/2010] Visual Object Tracking using Adaptive Correlation Filters

Abstract

많이 사용되지 않지만, correlation filters는 회전, 가려짐, 기타 방해 요소 등으로 복잡함을 가진 객체를 최신 기법들보다 20배 이상의 속도로 추적 가능함. 가장 오래되고 간단한 correlation filters는 단순한 템플릿을 사용하며, 일반적으로 추적에 적용했을 때 실패하기 쉬움. ASEF와 UMACE 같은 최신 접근은 성능이 보다 우수하지만, 훈련의 필요성은 추적에 적용하기에는 적합성이 떨어짐. 시각적 추적(visual tracking)을 위해서는 단일 프레임에서 강건한 필터를 학습하고, 타겟 객체의 appearance가 변할 때 동적으로 적응이 되어야 함. 본 연구에서는 MOSSE(Minimum Output Sum of Squared Error) filter라고 불리는 새로운 형태의 correlation filter를 제안하였음.

  • 단일 프레임을 이용하여 초기화 시 안정적인 correlation filter를 생성 가능
  • 조명, 스케일, 자세, 비강성 변형(non-rigid deformation) 등에 강건한 성능을 보유
  • 초당 669 프레임으로 동작
  • 가려짐은 peak-to-sidelobe ratio를 기반으로 검출되기 때문에, 객체가 다시 나타날 때 tracker를 중지 및 재개 가능

1 Introduction

시각적 추적의 필요성 및 유용성

  • 비디오 처리 시 실제로 많은 어플리케이션을 가지고 있음.
  • 타겟이 비디오의 한 프레임 내 위치 했을 때 연속된 프레임에서 해당 객체를 추적하는 것은 많은 유용성을 제공
  • 타겟이 성공적으로 추적되는 모든 프레임들은 타겟의 신원(identity) 및 활동에 관련된 자세한 정보 제공이 가능
  • 검출 보다는 추적이 쉬운편이기 때문에, 추적 알고리즘 적용 시 모든 프레임에서 detector를 동작시키는 것 대비 계산 자원이 적게 드는 이점을 가짐.

시각적 추적은 최근 몇년동안 많은 관심을 받음.

  • 타겟의 appearance 변화에 견디며, 복잡한 움직임에서도 타겟을 추적하기 위한 수많은 강건한 추적 기법들이 제안됨.
  • 최근 개발된 강건한 tracker들의 종류: IVT(Incremental Visual Tracking)[17], FragTrack(Robust Fragments-based Tracking)[1], GBDL(Graph Based Discriminative Learning)[19], MILTrack(Multiple Instance Learning)[2]
  • 이러한 tracker들은 효과적이지만 사용된 기법들이 단순하지 않음.
  • 복잡한 appearance 모델, 최적화 알고리즘 등이 사용됨.
  • 표 1과 같이 초당 25~30 프레임의 속도로 동작

본 연구에서는 보다 단순한 추적 전략에 대해서 연구함.

  • 타겟 appearance는 적응적 correlation filter를 이용하여 모델링되며, 추적은 convolution을 이용하여 수행됨.
  • filter 생성을 위한 naive한 기법(예: 영상으로부터 템플릿을 crop)들은 타겟에 대한 강한 peak를 생성하지만, 배경에 잘못된 응답을 보일 수 있음.
  • 특히, 타겟의 appearance 변화에 강건하지 못하며, 도전적인 추적 환경에서는 실패하게 됨.
  • ASEF(Average of Synthetic Exact Filters), UMACE(Unconstrained Minimum Average Correlation Energy), MOSSE(Minimum Output Sum of Squared Error) 등은 appearance 변화에 보다 강건한 filter를 생성하며, 타겟과 배경을 구분하는 변별력이 보다 우수함.
  • 그림 2에서 볼 수 있듯이, 결과는 훨씬 더 강한 peak를 보여주며, 이는 표류(drift)가 적고 drop된 tracks이 적다는 것으로 해석될 수 있음.

  • 전통적으로, ASEF와 UMACE filter는 오프라인으로 훈련되고 객체 검출이나 타겟 식별에 사용되어짐.
  • 본 연구에서는 객체 추적을 위해, 이러한 기법들을 온라인으로 훈련되고 적응적으로 관리할 수 있도록 변경시킴.
  • 그 결과 빠른 속도 및 correlation 기반 접근의 단순함을 유지하면서도 최신의 추적 성능을 보임.

접근의 단순함에도 불구하고, 변경된 ASEF, UMACE 또는 MOSSE filter 기반의 추적은 회전, 스케일, 조명, 부분적인 가려짐의 변화가 있을 때 잘 동작함(그림 1참고).

PSR(Peak-to-Sidelobe Ratio)

  • correlation peak에 대한 강도를 측정
  • 가려짐 또는 추적 실패를 검출하는데 사용
  • 온라인 갱신(update)을 멈추거나 객체가 유사한 appearance로 다시 등장하면 track를 다시 획득하는데도 사용

제안한 진보된 correlation filters는 이전에 언급한 더욱 더 복잡한 tracker들과 일치하는 성능을 보이면서도, filter 기반 방식으로 20배 이상 빠르며, 초당 669 프레임을 처리할 수 있음(표 1 참고).

2 Background

1980~1990년대의 correlation filters의 다양한 변종 관련 연구들

  • SDF(Synthetic Discriminant Functions)[7, 6], MVSDF(Minimum Variance Synthetic Discriminant Functions)[9], MACE(Minimum Average Correlation Energy)[11], OTF(Optimal Tradeoff Filters)[16], MSESDF(Minimum Squared Error Synthetic Discriminant Functions)[10]
  • 이러한 filters들은 타겟 객체의 appearance를 변화시켜 만들어진 샘플들을 훈련시키고, 강한 제약(hard constraints)을 부과하여 filter가 항상 동일한 높이의 peak를 생성하도록 함.
  • 가장 관련성이 높은 MACE의 경우 날카로운 peak와 높은 PSR를 생성함.

[12]에서는 MACE와 같은 SDF 기반의 filters들은 왜곡 허용 오차에 대한 문제가 발생함.

  • 이를 해결하기 위해 강한 제약을 제거하고 대신에 filter가 높은 평균 correlation 응답을 요구하도록 만듬.
  • MACH(Maximum Average Correlation Height)라고 부르는 새로운 유형의 "제약이 없는(Unconstrained)" correlation filters는 UMACE라 불리는 MACE의 변형을 가져옴.

보다 새로운 유형의 correlation filter인 ASEF[3]은 특정한 목적을 위해 filter를 튜닝하는 기법을 도입함.

  • 이전 기법들이 단일의 peak 값만 지정했던 반면에, ASEF는 각 훈련 이미지에 대한 전체 correlation output을 지정함.
  • 눈 찾기[3], 보행자 검출[4]에 우수한 성능을 보이지만, 두 연구 모두에서 ASEF는 많은 훈련 이미지를 필요로 했으며 시각적 추적에 적용하기엔 너무 느린 속도를 보임.
  • 본 연구에서는 시각적 추적에 적합하도록 ASEF의 정규화된 변종(regularized variant)을 도입하여 데이터에 대한 요구를 줄임.

3 Correlation Filter Based Tracking

filter를 기반으로 하는 tracker들은 이미지 샘플들에 대해 학습된 filter들을 이용하여 객체의 appearance를 모델링함.

  • 타겟은 첫번째 프레임 내 객체의 중심에 위치한 작은 tracking window를 기반으로 선택되어 초기화됨.
  • 이 시점으로부터 추적 및 filter 훈련이 함께 동작하게 됨.
  • 타겟은 다음 프레임 내 search window에 대해 filter를 correlation시킴으로써 추적이 되어짐.
  • correlation 출력의 최대값에 해당하는 위치는 타겟의 새로운 위치를 나타내며, 그 다음에 해당되는 새로운 위치를 기반으로 온라인 갱신이 수행됨.

tracker의 속도를 빠르게 하기 위해, correlation은 Fourier domain FFT(Fast Fourier Transform)[15]에서 계산되어짐. 우선, 입력 이미지 및 filter에 대한 2D Fourier transform이 계산됨.

  • F = F(f) where f : 입력 이미지, F() : 2D Fourier transform
  • H = F(h) where h : filter, F() : 2D Fourier transform
  • Convolution Theorem에서 correlation은 Fourier domain에서 요소별 곱셈(element-wise multiplication)이 됨.
  • ⊙ : 요소별 곱셈, ∗ : 켤레 복소수(complex conjugate)
  • correlation은 아래와 같은 form을 취함.

  • correlation 출력은 inverse FFT를 이용하여 spatial domain으로 다시 변환됨.
  • 여기서 forward 및 inverse FFT를 계산하는데 병목(bottleneck)이 생기며, 그 결과 전체 처리에 소요되는 상한 시간은 O(P log P)가 됨(P는 tracking window 내 픽셀의 수를 의미)

3.1에서는 tracking window에 적용되는 전처리를 다룸. 3.2에서는 적은 개수의 이미지로부터 안정적인 correlation filter를 구축하는 개선된 방법인 MOSSE filters에 대해 다룸. 3.3에서는 보다 안정적인 UMACE 및 ASEF filters를 생성하기 위해 regularization이 어떻게 사용되는지에 대해 다룸. 3.4에서는 filter의 온라인 갱신에 사용되는 단순한 전략에 대해서 다룸.

3.1 Preprocessing

FFT convolution 알고리즘의 문제점

  • 이미지와 filter가 원환체(torus)의 위상 구조(topological structure)에 mapping됨.
  • 즉, 이미지의 왼쪽 가장자리(edge)를 오른쪽 가장자리(edge)에 연결하고 위쪽을 아래쪽과 연결하게 됨.
  • convolution 동안 이미지는 spatial domain에서 해석(translating)되는 대신에, 이미지는 원환체형 공간(toroidal space)을 통해 회전됨.
  • 이미지의 경계(boundary)를 인위적으로 연결하면 correlation 출력에 영향을 주는 인위적 결과(artifact)를 만들게 됨.

이러한 인위적 결과는 [3]에서 기술된 전처리 단계를 통하여 줄일 수 있음.

  • 단계 1: 픽셀 값은 낮은 contrast를 갖는 조명 상황을 개선시키기 위해 log 함수를 적용하여 변환이 됨.
  • 단계 2: 픽셀 값을 평균이 0.0이 되고 norm이 1.0이 되도록 정규화시킴.
  • 단계 3: 이미지에 cosine window가 곱해짐으로써 가장자리 근처의 픽셀 값은 점차 0으로 감소하게 됨.
  • 이를 통해, 타겟의 중심 근처를 더 많이 강조할 수 있는 이점을 취할 수 있음.

3.2 MOSSE Filters

MOSSE는 적은량의 훈련 이미지들을 이용하여, ASEF와 유사한 filter를 생성하는 알고리즘임.

  • 알고리즘의 시작을 위해서 훈련 이미지 f_i와 훈련 출력 g_i의 set를 필요로 함.
  • 일반적으로 g_i는 어떤 모양(shape)이든 취할 수 있음.
  • 이 경우, g_i는 훈련 이미지 f_i에서 타겟을 중심으로 compact(σ=2.0) 2D Gaussian 모양의 peak를 갖도록 ground truth로부터 생성이 됨.
  • 입력과 출력 사이의 단순한 요소별 관계(relationship)를 활용하기 위해, 훈련은 Fourier domain에서 수행되어짐.
  • 3.1과 마찬가지로 대문자 변수 F_i, G_i, filter H는 이들의 소문자 부분에 대응하는 Fourier transform의 결과가 되도록 정의함.

  • 나눗셈은 요소별로 수행되어짐.

훈련 입력과 원하는(desired) 훈련 출력을 mapping하는 filter를 찾기 위해, MOSSE는 convolution의 실제 출력과 convolution의 원하는 출력 사이의 제곱 오차에 대한 합계(sum of squared error)를 최소화하는 filter H를 찾는 것을 목적으로 함. 이러한 최소화 문제는 아래와 같은 form을 취함.

출력에 대한 SSE(Sum of Squared Error)를 최소화하는 아디이어는 새로운 내용이 아님. 사실, 식 (3)의 최적화 문제는 대부분 [10], [12]에서 다룬 최적화 문제와 거의 동일한 내용임.

 

[10], [12]와 MOSSE의 차이점

  • [10], [12]에서 타겟은 항상 훈련 이미지 f_i에 집중되어 있고, 훈련 출력 g_i는 항상 전체 훈련 set에 고정되어 있다고 가정했음.
  • 반면에 모든 훈련 출력 g_i를 customizing하는 것은 ASEF 및 MOSSE의 기본적인 아이디어가 됨.
  • 추적 문제에 있어서, 타겟은 항상 중심에 있지 않으며, 훈련 출력 g_i의 peak는 훈련 이미지 f_i의 타겟을 따르도록 이동하게 됨.
  • 보다 일반적인 경우에 있어서, 훈련 출력 g_i는 어떤 모양이든 취할 수 있음.
  • 예: [4]에서, 훈련 이미지 f_i는 여러 개의 타겟을 포함할 수 있으며, 훈련 출력 g_i는 여러 개의 해당되는 peak들을 가지게 됨.

이러한 최적화 문제를 푸는 것은 특별히 어렵지는 않지만, 최적화되어야 할 함수가 복잡한 변수의 실제 값이 있는 함수이기 때문에 약간의 주의를 필요로 함.

  • 먼저 H(ω와 ν로 indexing된)의 각 요소(element)는 Fourier domain에서 모든 연산이 요소별로 수행되기 때문에 독립적으로 푸는 것이 가능함.
  • 여기에는 H_ων와 H*_ων에 대해 함수를 재작성(rewriting)하는 것이 포함됨.
  • 그 다음에 H*_ων에 대한 편미분(partial)은 0으로 설정하며, H_ων는 독립 변수로 취급을 함[13].

  • H*를 풀면 MOSSE filter에 대한 닫힌 형태 표현(closed form expression)을 발견할 수 있음.

식 5의 terms은 흥미로운 해석이 가능함.

  • 분자는 입력과 원하는 출력 사이의 correlation이며, 분모는 입력의 에너지 스펙트럼임.

식 5로부터, UMACE는 MOSSE의 특별한 경우임을 쉽게 확인 할 수 있음.

  • UMACE : H* = D^-1m* [15]
  • m : 평균을 중심으로 crop된 훈련 이미지들의 FFT를 포함하고 있는 벡터
  • D : 훈련 이미지들의 평균 에너지 스펙트럼을 포함하고 있는 대각 행렬(diagonal matrix)
  • D가 대각 행렬이므로, 역(inverse)에 의한 곱셈은 본질적으로 요소별 나누기(element-wise division)를 수행함.
  • 현재 표기법(notation)으로 다시 쓰면, UMACE는 아래와 같은 form을 취하게 됨.

  • UMACE는 타겟이 F_i의 중심에 있는 것을 필요로 하지만, correlation을 이용하여 재중심화(recentering)가 가능함.
  • 훈련 출력 g_i를 타겟의 중심에서는 peak가 1이고 다른 곳에서는 0이 되는 크로네커 델타(Kronecker delta)로 정의할 경우, 이는 본질적으로 타겟을 다시 중심에 위치시키고 UMACE filter를 계산하게 됨. 위의 방식은 crop 후 이동(translation)을 하는 반면에 전통적인 구현에서는 이동 후 crop을 하게 됨.

MOSSE의 우수성 확인을 위한 실험

  • MOSSE가 ASEF보다 우수한 filter를 생성한다는 것을 확인하기 위해 filter 훈련에 사용되는 이미지의 개수를 변화시키는 실험을 수행함.
  • 첫번째 프레임에 대한 tracking window에 임의의(random) 작은 어파인 변화(affine perturbations)를 적용하여 filter를 초기화시킴.
  • 두번째 프레임에서 PSR은 filter의 품질을 측정하는 척도로 사용되어짐.
  • 그림 3은 MOSSE가 적은 수의 이미지 windows를 학습 했을 때 더 나은 filter를 생성한다는 것을 보여주며, 이러한 이유에 대해서는 다음 섹션에서 설명하고자 함.

3.3 Regularization of ASEF

ASEF는 correlation transformation 시 에러를 최소화시키기 위해 약간은 다른 접근을 적용함.

  • 단지, 하나의 훈련 이미지 F_i 와 하나의 출력 이미지 G_i이 있는 경우에도 에러가 0인 filter가 존재한다는 것이 발견됨.
  • 이러한 filter를 exact filter라고 부르며, 식 7을 풀어서 찾을 수 있음.

  • 하나의 이미지에 대해 훈련된 exact filter는 겅의 항상 해당 이미지에 overfit되며, 새로운 이미지에 적용했을 때 filter는 종종 실패를 할 수 있음.

평균화(Averaging)는 좀 더 일반적인 filter를 생성하는데 사용이 됨.

  • Bootstrap Aggregation[5]로부터 영감을 얻었으며, 이는 weak classifier의 출력을 훨씬 더 strong한 classifier로 만들기 위해서 평균화를 시키는 기법임.
  • 약간의 조작(manipulation)을 통해 ASEF filter의 식을 아래와 같이 변경함.

  • 만약 하나의 이미지가 훈련에 사용되면 MOSSE와 ASEF는 둘다 하나의 exact filter를 생성하게 됨.

훈련 이미지의 frequency가 매우 적은 에너지를 포함하고 있을 경우(또는 식 8의 분모가 0에 가까울 경우)에 식 8의 요소별 나누기는 불안정해지기 때문에, ASEF filter는 적은 개수의 이미지에 대해 훈련되었을 경우 불안정하게 됨.

  • 더 많은 수의 exact filter들에 대한 평균화는 이러한 문제를 보상할 수 있으며, 강건한 ASEF filter를 생성할 수 있음.
  • MOSSE 식의 분모가 전체 이미지에 대한 에너지의 합이 되기 때문에, 적은 수의 exact filter들을 생성하지 않으므로 더욱 더 안정적일 수 있음.

또는, 낮은 에너지의 frequency를 수정하기 위해 regularization을 사용하고 보다 안정적인 ASEF filter를 생성할 수도 있음.

  • 이는 에너지 스펙트럼 상에서 각각의 요소에 대해 작은 값을 추가함으로써 가능함.
  • F_i F*_i F_i F*_i + epsilon 으로 대체될 수 있으며, epsilon은 regularization parameter를 의미함.

regularization은 전형적으로 UMACE filter와 함께 사용되는 OTF 이론의 결과와 유사함.

  • 이러한 결과는 배경 잡음의 에너지 스펙트럼을 훈련 이미지의 에너지 스펙트럼에 추가하면 잡음에 대한 허용 오차(tolerance)가 더 우수한 filter를 생성할 수 있음을 보여줌[16]. 본 연구에서는 white noise를 추가함.

아래 그림은 epsilon 조정에 따른 영향을 나타내고 있으며, 적절한 regularization을 이용(epsilon ≈ 0.1)하면, 모든 filter들이 우수한 peak를 생성하며, 우수한 track을 생성할 수 있을만큼 충분히 안정적이게 됨.

3.4 Filter Initialization and Online Updates

식 8과 5는 초기화 중에 filter가 어떻게 구성되는지에 대해서 나타내고 있음.

  • 훈련 set은 초기 프레임 내 tracking window에 대한 8개의 작은 perturbations(f_i)를 생성하도록 random affine transformations을 이용하여 생성됨.
  • 훈련에 대한 출력(g_i) 또한 target의 중심에 해당하는 peak로 생성 되어짐.

tracking 동안에, 회전, 스케일, 자세(pose) 등의 변화 또는 서로 다른 조명 환경, 비정형 변형(nonrigid deformation)을 통한 움직임 등으로 target의 외관(appearance)이 변할 수 있음.

  • 따라서, object를 따라가라면 filter는 빠르게 적응해야 함.
  • 이를 위해 이동 평균(running average)이 사용되며, 예를 들어, i 번째 프레임에서 학습된 ASEF filter는 다음과 같이 계산이 됨.

  • 그리고 MOSSE filter는 다음과 같음.

  • 여기서 η은 learning rate를 의미하며, 이를 통해 최근 프레임에 더 많은 가중치를 부여하고, 시간이 지남에 따라 이전 프레임의 영향을 exponentially하게 감소시킬 수 있음.
  • 실제로, η=0.125 일 때 filter의 강건함을 유지하면서, 외관 변화에 빠르게 적응할 수 있음을 발견함.

3.5 Failure Detection and PSR

peak의 강도를 간단히 측정하는 PSR(Peak to Sidelobe Ratio)을 이용함.

  • PSR의 계산을 위해서, correlation 출력 g는 최대값을 나타내는 peak와 peak 주변의 11 x 11 크기의 window를 제외한 나머지 pixel들을 나타내는 sidelobe로 분할됨.
  • PSR은 아래와 같이 정의됨.

  • g_max는 peak 값, μ_sl와 σ_sl는 sidelobe에 대한 평균 및 표준 편차를 나타냄.

경험상, 정상적인 추적 조건 하에서 UMACE, ASEF, MOSSE의 PSR은 보통 20.0~60.0 사이에서 가장 강한 peak를 나타냄.

  • 약 0.7 이하로 떨어지게 되면, 객체가 가려지거나 추적에 실패했음을 나타내며, Naive 구현의 경우 3.0~10.0 사이가 되며, track의 품질을 예측하는데는 유용하지 않음.

4 Evaluation

초기에, MOSSE 기반 추적 시스템이 만들어진 후 웹캠의 라이브 비디오 상에서 평가가 됨.

  • 실시간 피드백을 통해서 tracker의 구성에 따른 작은 변화를 쉽게 테스트 할 수 있었고, 다양한 target과 추적 환경에 대한 tracker 성능을 정성적으로 분석할 수 있었음.
  • 이러한 테스트는 tracker 작동에 대한 가치있는 통찰력을 제공하였으며, 본 논문에 제시된 빠르고 강건한 tracker를 만드는데 도움이 됨.

http://www.cs.toronto.edu/∼dross/ivt/ 에서 무료로 다운로드 받을 수 있는 일반적으로 사용되는 7개의 테스트 비디오에 대해 좀 더 통제된 평가가 수행되어짐. 테스트 비디오의 특성은 아래와 같음.

  • 그레이 스케일로서, 조명, 자세, 외관의 challenging한 변화를 포함하고 있음.
  • 카메라가 자체가 모든 비디오에서 움직이며, target의 불규칙한 움직임도 함께 포함되어 있음.
  • 2개의 차량 추적 시나리오(car4, car11), 2개의 장난감 추적 시나리오(fish, sylv), 3개의 얼굴 추적 시나리오(davidin300, dudek, trellis70) 등이 있음.

4.1 Filter Comparison

UMACE, ASEF, MOSSE filters에 대한 추적 품질에 대해서 평가함.

  • 온라인 업데이트를 이용하는 평균 전처리된 tracking window 기반의 Naive filter와 비교를 수행함.
  • 추적에 대한 output은 그림 5와 같이 우수한 추적(녹색), 중심에서 벗어난 추적(노랑), 잃어버린 추적(빨강) 등으로 수동적으로 레이블을 지정함.

정성적으로 Naive filter를 포함하는 모든 filter들은 테스트 set에서 발견되는 전체 범위의 스케일, 회전, 조명 변화 등에서 표류(drift)가 거의 없이 객체를 추적할 수 있었음. 대부분의 표류 및 실패는 target이 커다란 out-of-plane 회전을 겪을 때 발생함.

  • 그림 6은 davidin300 시퀀스에 대한 예를 나타내고 있음.
  • filter는 target의 중심 내 한 점을 추적하는 경향이 있으며, target이 회전함에 따라 해당 점은 target의 경계를 향해 이동하게 되고, tracking window 내 배경이 많이 덮히게 된 상태가 되면 tracker가 끝나게 됨.
  • filter가 이러한 절반(half)의 배경 window에 적응되고, target이 다시 전면 자세로 회전될 때, filter는 때때로 새로운 위치로 이동을 하거나, target을 느슨하게(loose) 하고 배경을 추적하게 됨.

이러한 결과는 advanced한 correlation filters가 Naive한 기법보다 좀 더 오랫동안 target을 추적할 수 있다는 것을 보여줌.

  • 날카로운(sharp) peak는 PSR이 track의 품질을 가리키는 좋은 예측 변수라는 이점을 가지고 있는 반면에, PSR은 Naive filter에 있어서는 특별히 유용하지 않음.
  • advanced filters의 경우, 표류 및 실패는 항상 PSR이 낮을 때 발생함.
  • 그림 7은 MOSSE PSR이 비디오의 가장 challenging한 부분을 찾을 수 있다는 것을 보여줌.

filter 기반 tracker들의 경우 어떤 한 filter 유형(type)이 명확하게 다른 filter 유형을 수행한다고 주장하기는 어려움.

  • 7개의 비디오 시퀀스 중에서 4개에서 correlation filters는 완벽하게 수행되어짐.
  • davidin300에서 모든 filter들은 동일한 out-of-plane 회전이 발생하는 동안 얼굴의 중심에서 눈으로 표류하게 되며, sylv에서도 해당 시퀀스의 동일한 어려운 부분이 발생했을 때 표류하게 됨.
  • 이러한 두개의 시퀀스를 통해, filter가 정확히 동일한 방식으로 실패를 하기 때문에 filter 유형의 선택이 특별히 중요하지 않다는 것을 알 수 있음.

단지 dudek 시퀀스에서는 3개의 filter들간에 주목할만한 차이점이 있었음.

  • MOSSE는 시퀀스를 완벽하게 완료한 반면에, UMACE와 ASEF는 비디오의 challenging한 부분에서 문제가 발생함.
  • section 3에서 제시된 증거는 이러한 task에 대해서 MOSSE가 가장 적합한 filter가 될 수 있다는 것을 나타내지만, 하나의 비디오 시퀀스에서의 단일 실패는 강력한 주장을 뒷바침하기에는 충분하지 않으므로 보다 많은 연구가 필요함.

4.2 Comparison to Other Trackers

IVT [17], MILTrack[2], ROAM(Robust Online Appearance Models)[8], OAB(Online Ada-Boost)[14], FragTrack[1] 등의 다른 알고리즘들과 성능 비교를 수행함.

  • MOSSE가 다른 알고리즘들 보다 track을 좀 더 유지 할 수 있었으며, 우수한 성능을 보임.
  • 그림 8은 비디오에 대한 포맷과 annotation을 나타내고 있음.

[17]에서는, IVT[17]과 ROAM[8]을 그림 5의 4가지 시퀀스에 대한 비교를 수행함.

  • davidin300과 dudek 시퀀스에 대해서는 성공적으로 추적을 완료함.
  • IVT는 sylv에서는 620 프레임 근처에서, trellis70에서는 330 프레임 근처에서 추적에 실패함.
  • 출판된 비디오 시퀀스에서, ROAM tracker는 완벽하게 동작을 했지만, sylv 및 trellis70에 대한 비디오에서는 IVT는 실패 후 바로 중지되었으며, ROAM이 해당 시퀀스를 성공적으로 완료했는지는 불분명함.
  • filter 기반 tracker에는 없는 이러한 2개 tracker의 한가지 특징은 공간 내 위치에 대한 자세한 정보를 제공함으로써, target의 스케일 및 방향에 대한 추정이 가능하다는 것임.

[2]에서는, davidin300와 sylv 시퀀스에 대해 MILTrack[2], OAB[14], FragTrack[1] 등이 비교됨.

  • 모든 tracker들은 OAB와 FragTrack이 davidin300에서 실패하면서 상당한 표류를 보임.
  • 이러한 tracker들의 표류는 filter에서 볼 수 있는 것과는 매우 다른 양상을 가짐.
  • 이러한 비디오에서, tracing windows는 target을 따라 앞뒤로 왔다갔다 함.
  • filter가 표류할 때, target이 자세 변화를 겪는 경우 filter가 중심에서 벗어나는 경향이 있었으며, 새로운 중심점에 고정이 되어지는 현상을 보임.

4.3 Real Time Performance

테스트 환경 및 처리 속도

  • H/W: 2.4Ghz Core 2 Duo MacBook Pro의 단일 프로세서를 이용
  • 언어: Python(PyVision library, OpenCV, SciPy 등을 이용)
  • 원래 Python 구현은 64 x 64 크기의 tracking window를 사용할 때, 대략적으로 평균 약 250개의 track을 업데이트 함.

tracker의 런타임 성능을 보다 잘 벤치마크하기 위해, 코드의 느린 부분은 C를 이용하여 재구현하였음.

더 나은 메모리 관리 및 시간을 많이 소비하는 task들(normalization, FFTs, PSRs)에 대해 보다 효율적인 계산을 하기 위함.

  • 그림 9와 같이, 코드 최적화를 통해 초당 평균 669개의 track을 업데이트하는 프레임 rate를 보임.

계산 복잡도

  • O(P log P) : correlation 연산 및 온라인 업데이트 동안에 사용되는 FFT의 계산 복잡도, P는 filter의 픽셀 개수를 의미
  • O(NP log P) : track 초기화의 계산 복잡도, N은 처음 filter가 초기화 될 때 사용되는 affine perturbations의 수
  • 온라인 업데이트보다는 몇 배 느리지만, 초기화는 초당 66.32의 업데이트를 보이며, 실시간 보다도 여전히 빠름.

5 Conclusions

본 연구에서는 기존에 전통적으로 무거운 classifiers, 복잡한 외관 모델, stochastic search 기법 등을 이용하여 해결했던 시각적 추적 문제가 효율적이고 단순한 MOSSE correlation filters로 대체될 수 있다는 것을 확인함.

  • 결과적으로 구현하기 쉽고, 정확하고, 훨씬 더 빠른 알고리즘을 만들 수 있었음.

본 연구에서 제안한 tracker의 성능을 개선할 수 있는 방안은 아래와 같이 몇가지 요소들이 있음.

  • target의 외관이 비교적 안정적일 경우에는, 초기 프레임을 기반으로 때때로 filter를 재중심화(recentering)함으로써 표류를 완화 시킬 수 있음.
  • tracker는 업데이트 후 tracking window의 logpolar 변환을 filtering함으로써, 스케일 및 회전의 변화를 추정하도록 확장될 수 있음.