Transforming Model Prediction for Tracking
Christoph Mayer, Martin Danelljan, Goutam Bhat, Matthieu Paul, Danda Pani Paudel, Fisher Yu, Luc Van Gool
Transforming Model Prediction for Tracking
Optimization based tracking methods have been widely successful by integrating a target model prediction module, providing effective global reasoning by minimizing an objective function. While this inductive bias integrates valuable domain knowledge, it li
arxiv.org
Abstract
- Optimization 기반 추적 방법은 광범위하게 성공을 거두었다.
- target model prediction module을 통합함으로써,
- objective function(loss function이라고 이해)을 최소화하여 효과적인 global reasoning을 제공함으로써,
- 이러한 inductive bias는 valuable domain knowledge를 통합하지만, 추적 네트워크의 표현성을 제한한다.
➡ 따라서 본 연구에서는 트랜스포머 기반 model prediction module을 사용하는 tracker architecture를 제안한다.- 트랜스포머는 little inductive bias를 가지고 global relations을 포착하여, 더 강력한 target models의 예측을 학습할 수 있다.
- 정확한 bounding box regression에 적용되는 두번째 가중치 세트를 추정하기 위해 model predictor를 추가로 확장한다.
- resulting tracker는 모든 가중치를 예측하기 위해 training and test 프레임 정보에 의존한다.
- 제안된 추적기를 end-to-end로 훈련시키고, 여러 추적 데이터 세트에 대한 포괄적인 실험을 수행하여 성능을 검증한다.
- 본 논문의 추적기는 challenging LaSOT[20] 데이터 세트에서 68.5%의 AUC를 달성하여 세가지 벤치마크에서 새로운 최첨단 기술을 달성한다.
Introduction
VOT와 DCF
- 일반적인 visual object tracking
- 컴퓨터 비전의 근본적인 문제 중 하나이다.
- 이 작업은 initial target location만 주어진 비디오 시퀀스의 모든 프레임에서 target object의 상태를 추정하는 것을 포함한다.
- object tracking의 핵심 문제 중 하나는
scarce annotation이 주어진 target object를 강력하게 detect하는 것을 학습하는 것이다.- 기존 방법 중에서 Discriminative Correlation Filters (DCF) [1, 5, 13, 14, 24, 29, 46, 54]는 많은 성공을 거두었다.
- 이러한 접근 방식은 discriminative objective function을 최소화하여 각 프레임에서 target을 localize 하기 위한 target model을 학습한다.
- 종종 convolutional kernel로 설정되는 target model은 tracked object의 간결하고 일반화 가능한 표현을 제공하여 DCF의 인기를 끌고 있다.
DCF의 단점 및 Transformer
- DCF의 objective function은
이전 프레임에 대한 foreground and background 지식을 모두 통합하여,
모델을 학습할 때 효과적인 global reasoning을 제공한다.- 그러나 predicted target model에 심각한 inductive bias를 부과하기도 한다.
- target model은 이전 프레임에 비해 objective를 최소화함으로써 얻어지기 때문에 model predictor의 유연성은 제한적이다.
- 예를 들어, predicted target model에서 learned priors는 통합될 수 없다.
- 반면, 트랜스포머는 self and cross attention의 사용 덕분에, 여러 프레임에 걸쳐 강력한 global reasoning을 제공하는 것으로 나타났다.
- 결과적으로 트랜스포머는 generic object tracking [7, 59, 63, 67]에 적용되어 상당한 성공을 거두었다.
본 논문의 아이디어
- 본 연구에서는
: DCF와 트랜스포머 기반 추적기 사이의 격차를 해소하는 것을 목표로 하는 새로운 추적 프레임워크를 제안한다. - 본 논문의 접근 방식
: DCF에서와 같이 target을 localize하기 위해 compact target model을 사용한다. - 그러나 이 모델의 가중치는 트랜스포머 기반 model predictor를 사용하여 얻을 수 있으므로
DCF에 비해 더 강력한 target model을 학습할 수 있다.- 이는 target state의 새로운 인코딩을 도입하여 트랜스포머가 이 정보를 효과적으로 활용할 수 있도록 함으로써 달성된다.
- In order to condition its predictions on the current target, bounding box regressor network에 대한 가중치를 생성하도록 model predictor를 추가로 확장한다.
- 제안된 ToMP 접근 방식은 최첨단 DCF 기반 방법에 비해 추적 성능이 크게 향상되는 동시에 최근 트랜스포머 기반 추적기를 능가한다. (그림1 참고)
💡Contributions
요약하면 본 논문의 주요 기여는 다음과 같다.
- 기존의 optimization based model predictors를 대체하기 위해
➡ novel transformer-based model prediction module을 제안한다. - model predictor를 확장하여
➡ bounding box regression에 적용되는 second set of weights를 추정한다. - transformer-based model predictor가 이 정보를 활용할 수 있도록
➡ target location and target extent를 통합하는 두 가지 새로운 인코딩을 개발한다. - robust and accuracte target detection을 달성하기 위해
➡ target localization and bounding box regression를 분리하기 위해 테스트 시 parallel two stage tracking 절차를 제안한다. - tracking pipeline의 each building block의 기여도를 평가하고, 7개의 추적 벤치마크에서 평가하기 위해 포괄적인 ablation 실험 세트를 수행한다.
- 제안된 추적기 ToMP는 68.5%의 AUC를 달성하는 LaSOT를 포함한 3개의 최첨단 상태를 달성한다.
- 또한 ToMP가 LaSOT의 모든 속성에 대해 다른 트랜스포머 기반 추적기보다 성능이 우수함을 보여준다.
Related Work
Discriminative Model Prediction
- DCF-based 접근법
: objective를 최소화함으로써 target과 background를 구별하기 위한 target model을 학습한다. - 여러가지 종류들
- 오랫동안 Fourier-transform based solvers는 DCF based trackers [5, 15, 29, 46]에 지배적이었다.
- [13]은 target model로 two layer Perceptron을 사용하고, 최적화 문제를 해결하기 위해 Conjugate Gradient를 사용한다.
- 최근, 추적 문제를 meta learning problem [1, 58, 72]에 던져 end-to-end training을 가능하게 하는 여러 가지 방법이 도입되었다.
➡ 이러한 방법들은 고정된 횟수의 반복에 대한 iterative optimization algorithm을 풀고,
이를 tracking pipeline에 통합하여 end-to-end training을 허용하는 아이디어를 기반으로 한다.
- [1]은 discriminative feature space를 학습하고, initial frame에서 target state를 기반으로 target model의 가중치를 예측하고, 최적화 알고리즘으로 가중치를 refine한다.
Transformer for Tracking
1️⃣ Transformer
- 최근에는 트랜스포머를 사용하는 여러 추적기가 도입되었다. [7, 59, 63, 67]
- 트랜스포머는 일반적으로 target object를 localize & bounding box를 regression 위해 discriminative features를 예측하는 데 사용된다.
- 인코더
: training features 처리 - 디코더
: cross-attention layers를 사용하여 training and test features를 융합,
discriminative features [7, 59, 67]를 계산
- 인코더
2️⃣ 트랜스포머를 이용한 여러가지 추적기
- DTT[67]
- 이러한 features를 target의 location and bounding box를 예측하는 두 개의 네트워크에 공급한다.
- TransT [7]
- multiple self and cross attention modules로 구성된 feature fusion network를 사용한다.
- fused output features는 target classifier and bounding box regressor로 공급된다.
- TrDiMP [59]
- DiMP [1] model predictor를 채택하여 트랜스포머 인코더의 output features이 training samples로 주어졌을 때, model weights를 생성한다.
- 그 후, target model은 트랜스포머 디코더에 의해 생성된 output features에 예측된 weights를 적용하여 target score map을 계산한다.
- TrDiMP는 bounding box regression을 위해 probabilistic IoUNet [16]을 채택한다.
- TrDiMP는 본 논문의 추적기와 유사하게, target state information을 인코딩하지만,
트랜스포머 앞에 있는 두 개의 인코딩 모듈을 사용하는 대신, 디코더에서 두 개의 서로 다른 cross attention 모듈을 통해 통합한다.
- STARK [63]
- 앞서 언급한 트랜스포머 기반 추적기와 달리, STARK [63]은 DETR[6]으로부터 트랜스포머 아키텍쳐를 채택
- 트랜스포머 디코더에서 training and test features를 융합하는 대신, 전체 트랜스포머에 의해 함께 stacked and processed.
- 그런 다음 single object query를 통해 디코더 output이 생성되며, 이것은 트랜스포머 인코더 features과 fused된다.
- 그런 다음 이러한 features는 target의 bounding box를 직접 예측하기 위해 추가로 처리된다.
- ToMP
- 본 논문의 추적기는 DETR [6]의 동일한 트랜스포머 아키텍쳐를 사용하지만 model optimizer를 대체한다.
- 결과적으로 트랜스포머 기반 model predictor는 두 개의 별도 모델들의 weights를 추정한다. : target classifier and the bounding box regressor.
Method
✔ 본 연구에서는 ToMP라는 tracking을 위한 transformer-based target model prediction network를 제안한다.
✨ 먼저 기존의 optimization based model predictors를 재검토하고, 3.1에서 그 한계에 대해 논의한다.
✨ 3.2에서 트랜스포머 기반 모델 예측 접근 방식에 대해 설명
✨ 이러한 접근 방식을 3.3에서 joint target classification and bounding box regression을 수행하도록 확장한다.
✨ 마지막으로 offline training procedure and online tracking pipeline을 각각 3.4 and 3.5에서 자세히 설명한다.
Background
Tracker with optimization based model prediction
- visual object tracking을 위한 인기있는 패러다임 중 하나는 discriminative model prediction based tracking이다.
- 그림 2a에서 시각화된 이러한 접근법은 test frame에서 target object를 localize 하기 위해 target model을 사용한다.
- [1, 13, 33, 46, 54, 58, 72]에서 다양한 target model이 사용되지만,
discriminative tracker는 target model weights를 생성하기 위해 common base formulation을 공유한다.- 여기에는 target model이 training samples S_train에 대해 원하는 target states y_i를 생성하도록 optimization problem을 해결하는 것을 포함한다.
- x_i는 프레임 i의 deep feature map을 나타내며,
- m은 training frames의 총 개수를 나타낸다.
- optimization problem은 (1)로 유도된다.
- objective는 target model output h(~w;x)와 ground truth label y 사이의 오차를 계산하는 잔차 함수 f로 구성된다.
- w는 target model의 최적 가중치를 나타내는 반면,
- g(~w)는 스칼라 lambda에 의해 가중치가 부여된 regularization term을 나타낸다.
- training set S_train에는 주석이 달린 첫 번째 프레임과,
추적기의 예측이 pseudo-labels로 사용되는 previous tracked frames이 포함되어 있다.
The disadvantages of this method
- (1)의 objective를 명시적으로 최소화하여 target model을 학습하면,
이전에 본 background와 target을 구별할 수 있는 강력한 target model을 제공한다. - 그러나 이러한 전략은 주목할 만한 한계를 겪는다.
- optimization based methods는 이전에 추적된 프레임에서 사용할 수 있는 제한된 정보만 사용하여 target model을 계산한다.
- 즉, learned priors를 target model prediction에 통합하여 future failures를 최소화할 수 없다.
- 마찬가지로, 이러한 방법은 일반적으로 추적 성능을 향상시키기 위해 모델 가중치를 계산할 때, current test frame을 transductive manner로 활용할 가능성이 부족하다.
- optimizer based methods는 또한 multiple optimizer hyper-parameters를 설정해야 하며, training samples에 fit/underfit할 수 있다.
- optimization based trackers의 또 다른 한계는 discriminative features를 생성하는 절차이다.
- 일반적으로 target model에 제공되는 features는 simply the extracted test features일 뿐이다.
- (training frames에 포함된 target state information을 사용하여 features를 강화하는 대신)
- 이러한 향상된 features를 추출하면 test frames에서 target and background regions 사이의 신뢰할 수 있는 차별화를 허용할 수 있다.
- optimization based methods는 이전에 추적된 프레임에서 사용할 수 있는 제한된 정보만 사용하여 target model을 계산한다.
✨ transductive learning : unlabeled training data도 그들이 가진 특성(ex. 데이터 간 연결 관계, 거리)을 활용해 새로운 prediction을 하는 것이다. 따라서 사전에 명시적인 function parameter를 학습하지 않는다. (semi-supervised learning과 유사)
✨ inductive learning : supervised learning으로, 어떤 function parameter (ex. classifier)를 주어진 labled training data로 학습하는 것
Transformer-based Target Model Prediction
Model Optimizer ➡ Model Predictor
💡 앞서 언급한 optimization based target localization 접근법의 한계를 극복하기 위해,
➡ model optimizer를 트랜스포머 기반 (그림 2b)의 novel target model predictor로 대체할 것을 제안한다.
- (1)에 나타난 것처럼 objective를 명시적으로 최소화하는 대신,
본 논문의 접근 방식은 end-to-end training을 통해 데이터로부터 target model을 직접 예측하는 방법을 학습한다.- 이를 통해 model predictor는 target을 보이는 background와 구별할 수 있는 features 뿐만 아니라, target의 characteristic features에 초점을 맞출 수 있도록 predicted model에서 target specific priors를 통합할 수 있다.
- 또한 본 논문의 model predictor는 이전의 training features 외에도, current test frame features를 활용하여 target model을 transductive manner로 예측한다.
- 결과적으로 model predictor는 current frame information을 활용하여 보다 적합한 target model을 예측할 수 있다.
- 마지막으로 pre-trained feature extractor에 의해 정의된 fixed feature space에 target model을 적용하는 대신, 본 논문의 접근 방식은 target information을 활용하여 모든 프레임에 대해 보다 차별적인 feature space를 동적으로 구성할 수 있다.
Components of the proposed tracker
- Transformer-based model prediction을 이용한 제안된 트래커의 개요는 그림 2b와 같다.
- optimization based trackers와 유사하게 test and training branch로 구성된다.
- 먼저 training frames에서 target state information을 인코딩하고, 이를 deep images features [노랑]과 융합한다.
- 마찬가지로 test frame [주황]로 표시하기 위해 test frame에 인코딩을 추가한다.
- 그런 다음, training and test branches로부터 features은 프레임에 걸쳐 globally reasoning 함으로써, enhanced features을 생성하는 Transformer Encoder [살구]에서 공동으로 처리된다.
- 다음으로, Transformer Decoder [진주황]은 트랜스포머 인코더의 output을 사용하여 target model weights [초록]을 예측한다.
- 다음으로 tracking pipeline의 주요 구성 요소에 대해 설명한다.
Target Location Encoding
: model predictor가 target model을 예측할 때 training frames로부터 target state information을 통합할 수 있는 target location encoding을 제안한다.
- 특히 foreground를 나타내는 embedding e_fg∈ R^(1xC)를 사용한다.
- target location을 중심으로 하는 Gaussian y_i∈ R^(HxWx1)와 함께, target encoding function (2)를 정의한다.
- 여기서 "."는 broadcasting을 사용한 point-wise multiplication을 나타낸다.
- H_im = s.H and W_im = s.W는 image patch의 spatial deminsion에 해당하고,
- s는 deep features x ∈ R ^(H x W x C)를 추출하는 데 사용되는 backbone network의 stride에 해당한다.
- 다음으로, target encoding and deep image features x를 다음 (3)과 같이 결합한다.
- 마찬가지로 test frame에 해당하는 features를 식별하기 위해 test encoding을 (4)로 추가한다.
- 여기서 µ(·)는 x_test의 각 패치에 대해 token e_test를 반복한다.
Transformer Encoder
- training and test frame의 foreground and background 정보를 사용하여 target model을 예측하는 것을 목표로 한다.
- 이를 달성하기 위해 Transformer Encoder [6, 56] module을 사용하여 먼저 training frames and test frame을 공동으로 처리한다.
- 트랜스포머 인코더는 본 논문의 접근 방식에서 두가지 목적을 수행한다.
- 먼저, 후술하는 바와 같이, 이것은 target model을 예측하기 위해 트랜스포머 디코더 모듈이 사용하는 features를 계산한다.
- 둘째로, STARK [63]에서 영감을 받아 본 논문의 Transformer Encoder는 target을 localizing할 때, target model에 대한 input 역할을 하는 enhanced test frame features도 출력한다.
- Multiple encoded training features v_i ∈ R^(HxWxC), an encoded test featrue v_test ∈ R^(HxWxC)가 주어지면
➡ features를 R^((H.W)xC)로 재구성하여 training features v_i and test feature v_test를 1차원을 따라 m과 연결한다.
➡ 이러한 concatenated features는 트랜스포머 인코더 (5)에서 공동으로 처리된다.
- 트랜스포머 인코더는 multi-headed self-attention modules [56]으로 구성되는데, 이것은 full frame과 심지어 multiple training and test frames에 걸쳐 globally하게 추론할 수 있다.
- 또한, encoded target state는 foreground and background regions을 식별하고, 트랜스포머가 두 영역을 구별할 수 있게 한다.
Transformer Decoder
- 트랜스포머 인코더 (z_i and z_test)의 출력은
target model weights (6)을 예측하기 위해 트랜스포머 디코더 [6, 56]의 입력으로 사용된다. - Inputs z_i and z_test는 전체 training and test samples에 대해 공동으로 추론하여 얻어지므로,
discriminative target model을 예측할 수 있다. - 트랜스포머 디코더의 input query로써 target state encoding에 사용되는 동일한 learned foreground embedding e_fg를 사용하여, 디코더가 target model weights를 예측하도록 한다.
Target Model
- target classification scores (7)를 얻기 위해 DCF target model을 사용한다.
- 여기서 convolution filter w ∈ R^(1xC)의 weights는 트랜스포머 디코더에 의해 예측된다.
- target model은 트랜스포머 인코더의 output test features z_test에 적용된다.
➡ 이러한 features는 training and test frames의 joint processing 후에 얻어지므로, target model이 안정적으로 target을 localize 할 수 있도록 지원한다.
Joint Localization and Box Regression
Overall Configuration
- 이전 섹션에서는 target model을 예측하기 위한 트랜스포머 기반 아키텍쳐를 제시했다.
- target model이 각 프레임에서 object center을 localize 할 수 있지만,
tracker는 target의 accurate bounding box도 추정해야 한다.- DCF 기반 추적기는 일반적으로 이 작업을 위해 dedicated bounding box regression network [13]을 사용한다.
- 유사한 전략을 따르는 것은 가능하지만, target localization and bounding box regression은 서로에게 이익이 될 수 있는 관련 작업이기 때문에 두 모델을 공동으로 예측하기로 결정했다.
- 이를 달성하기 위해 다음과 같이 모델을 확장한다.
- target state encoding을 생성할 때, target center location만 사용하는 대신,
model predictor에 더 풍부한 input을 제공하기 위해 target size information을 인코딩한다. - target model weights 외에 bounding box regression network에 대한 weights를 추정하기 위해 model predictor를 확장한다.
- target state encoding을 생성할 때, target center location만 사용하는 대신,
- 결과적인 추적 아키텍쳐는 그림3에서 시각화되고, 다음에서 이러한 각각의 변화에 대해 자세히 설명한다.
🎀 e_fg : learned foreground embedding(encoding)
🎀 e_bg : learned foreground embedding(encoding) (없는게 좋음)
🎀 e_test : test encoding
🎀 z_test : output test features
✨Target Extent Encoding
: Extracted deep image features x_i와 target location encoding ψ(y_i , e_fg) 외에도
target의 bounding box에 대한 정보를 통합하기 위해 또다른 인코딩을 추가한다.
- training frame i에서 target object를 포함하는 bounding box b_i = {b^x_i, b^y_i, b^w_i, b^h_i}를 인코딩하기 위해, ltrb 표현 [22, 55, 62, 67]을 채택한다.
- 먼저, (k^x, k^y) = ([s/2] + s.j^x, [s/2] + s.j^y)를 사용하여 각 위치 (j^x, j^y)를 feature map x_i에서 image domain으로 다시 map 한다.
- 그런 다음 다음과 같이 bounding box b_i의 네 변에 대한 each remapped location의 정규화된 거리를 계산한다.
- 여기서 W_im = s.W and H_im = s.H
- 이러한 네변은 d∈ R^(H x W x 4)인 dense bounding box representation d = (l, t, r, b)를 생성하는 데 사용된다.
- 이 표현에서, Multi-Layer Perceptron(MLP) φ를 사용하여 bounding box를 인코딩하여,
그에 따라 얻어진 인코딩을 (9)와 같이, (3)에 추가하기 전에 dimensions을 4에서 C로 증가시킨다.- 여기서 v_i는 트랜스포머 인코더에 대한 입력으로 사용되는 resulting feature map이다. (그림3 참고)
✨Model Prediction
- target model에 대한 weights 뿐만 아니라 bounding box regression을 예측하기 위해 아키텍쳐를 확장한다.
- 구체적으로, bounding box regression w_bbreg 및 target classification w_cls에 대한 weights를 얻기 위해
트랜스포머 디코더의 output w를 linear layer를 통과시킨다. - weights w_cls
: 이전과 마찬가지로 target model h(w_cls ; z_test) 내에서 직접 사용된다. - weights w_bbreg
: 다음에 설명된 바와 같이 bounding box regression를 위한 target information로,
트랜스포머 인코더의 output test features z_test를 조건화하는 데 사용된다.
- 구체적으로, bounding box regression w_bbreg 및 target classification w_cls에 대한 weights를 얻기 위해
Bounding Box Regression
- 인코더의 output features z_test target을 인식하기 위해, [63]을 따른다. (과정 그림3 참고)
- 먼저 predicted weights w_bbreg를 사용하여 attention map w_bbreg * z_test를 계산한다.
- 그런 다음 attention weights를 CNN에 공급하기 전에 test features z_test와 point-wise multiplied.
- CNN의 마지막 레이어는 exponential activation function을 사용하여 (8)에 설명된 것과 동일한 ltrb 표현으로 정규화된 bounding box prediction을 생성한다.
- 최종 bounding box estimation을 얻기 위해,
- 먼저 target model에 의해 예측된 target score map y^test에
argmax(.) function을 적용하여 center location를 추출한다. - 다음으로, target object의 center location에서 dense bounding box prediction d^test를 query하여
bounding box를 얻는다.
- 먼저 target model에 의해 예측된 target score map y^test에
- 하나의 네트워크를 사용하여 두가지를 모두 예측하는 [63]과는 대조적으로 target localization and bounding box regression을 위해 두 개의 dedicated networks를 사용한다.
- 이를 통해 3.5에서 설명한 대로 tracking 동안 target localization과 bounding box regression을 분리할 수 있다.
Offline Training
1) Protocol for training ToMP
- 최근의 end-to-end trained discriminative trackers [1, 16]와 유사하게,
본 논문에서는 비디오 시퀀스에서 multiple training and test frames를 샘플링하여 훈련 결과를 형성한다.- 특히, 본 논문에서는 2개의 training frames과 1개의 test frame을 사용한다.
- 최근의 트랜스포머 기반 추적기 [7, 63, 67]와 대조적으로 DCF 기반 추적기 [1, 13, 16]과 유사하며,
본 논문에서는 훈련 및 테스트 프레임에 대해 동일한 spatial resolution을 유지한다. - 각 이미지 I_i를 해당 bounding box b_i와 쌍을 이룬다.
- ✌ Training frames의 target state를 사용하여 target information을 인코딩하고, ✌ test frame의 bounding box를 사용하여 예측된 bounding boxes와, test frame에서 target의 derived center location를 기반으로 두 개의 손실을 계산하여 훈련을 감독한다.
2) loss function
- Background and foreground regions에 대해 서로 다른 손실로 구성된 DiMP [1]로부터 target classification loss를 사용한다.
- 또한 ltrb bounding box representation [55]를 사용하여 Union loss [52]에 대한 generalized Intersection을 사용하여 bounding box regression을 감독한다.
- 여기서 λ_cls, λ_giou는 각 손실의 기여에 가중치를 부여하는 스칼라
- FCOS [55] 및 관련 추적기 [22]와 대조적으로,
본 논문에서는 동일한 목적을 수행하는 classification loss 외에 중복되기 때문에 추가적인 centerness loss를 생략
3) Training Details
- LaSOT [20], GOT10k [31], TrackingNet [50], MS-COCO [43] datasets의 training splits에 대해 추적기를 훈련시킨다.
- 2개의 Nvidia Titan RTX GPUs
- 40k개의 sub-sequences를 샘플링
- Epochs : 300
- learning rate가 0.0001인 ADAMW [45]를 사용 (이는150 and 250 epochs 이후에 0.2의 factor에 의해 decay)
- Weight decay는 0.0001
- λ_cls = 100, λ_giou = 1
- 비디오 시퀀스 내에서 200 frame window로부터 two training frames and a test frame을 무작위로 샘플링하여 training sub-sequence를 구성한다.
➡ 그런 다음, target bounding box에 상대적으로 이미지를 무작위로 변환하고 스케일링 한 후, 이미지 패치들을 추출한다. - data augmentation : random image flipping, color jittering
- target scores의 spatial resolution을 18x18로 설정
- search area scale factor을 5.0으로 설정
Online Tracking
- tracking 동안, 주석이 달린 첫번째 프레임과 이전체 추적된 프레임을 training set S_train으로 사용한다.
- 항상 초기 프레임과 이것의 주석을 유지하지만, 이전에 추적된 프레임 하나를 포함하고 이것을 임계값보다 높은 target classifier confidence를 달성하는 가장 최근의 프레임으로 대체한다.
- 따라서 training set S_train에는 최대 두 개의 프레임이 포함된다.
- S_train에 이전 추적 결과를 통합하면 target localization이 상당히 개선된다는 것을 관찰했다.
- 그러나 predicted bounding box estimations을 포함하면, 부정확한 예측으로 인해 bounding box regression 성능이 저하된다. (4.1 참고)
- 따라서 model predictor을 두번 실행한다.
- 첫째) classifier weights를 얻기 위해 S_train에서 intermediate(중간) 예측을 포함한다.
- 둘째) 주석이 달린 초기 프레임만 사용하여 bounding box를 예측한다.
- 효율성을 위해 두 단계를 하나의 forward pass로 병렬로 수행할 수 있다.
- 특히, two training and one test frame에 해당하는 feature map을 sequence로 재구성하고 복제한다.
- 그런 다음 두 가지를 batch dimension에 쌓아 model predictor와 공동으로 처리한다.
- bounding box regression을 예측할 때, ground truth annotation이 있는 초기 프레임과 테스트 프레임 사이에만 attention 하도록하여, attention을 계산할 때 특정 keys를 무시할 수 있는 소위 key_padding_mask를 사용한다.
Experiments
✨ 참고
✔ 7개의 벤치마크에서 제안된 추적 아키텍쳐 ToMP를 평가한다.
✔ 본 논문의 접근 방식은 PyTorch 1.7을 기반으로 하며 PyTracking [12] 프레임워크내에서 개발되었다.
✔ Pytracking은 GNU GPL 3.0 license로 이용할 수 있다.
✔ A single Nvidia RTX 2080Ti GPU에서 ToMP-101과 ToMP-50은 각각 19.6fps, 24.8fps를 달성
✔ 백본으로는 ResNet101 [28]과 ResNet50 [28]을 사용한다.
Ablation Study
- 제안된 추적기에 대한 포괄적인 분석을 수행한다.
- 먼저, 서로 다른 제안된 target state encoding의 기여도를 분석한 다음
- 서로 다른 inference 설정의 영향을 조사한다.
- 마지막으로, SuperDiMP의 target classifier 또는 bounding box regressor를 본 논문의 것으로 교체할 때 달성된 성능을 보고한다.
- 이 파트의 모든 절제 실험은 ResNet-50을 백본으로 사용한다.
Target State Encoding
1️⃣ ①~⑤
- 다양한 target state encoding의 효과를 분석하기 위해 네트워크의 다양한 변형을 훈련하고 여러 데이터 세트에서 평가한다.
- 표1에서 first ~ five rows는 서로 다른 target location encodings을 갖는 버전에 해당한다. (다른 모든 설정은 동일하게 유지)
- foreground and test embedding 외에도 다음과 같이 학습된 background embedding(in stead of setting e_bg=0)을 분석에 포함한다.
: ψ(y_i , e_fg, e_bg) = y_i · e_fg + (1 − y_i) · e_bg
➡ 그러나 표1은 (4번째 vs 5번째 행) 이러한 learned background embedding을 추가하면 추적 성능이 저하된다는 것을 보여준다. - foreground embedding e_fg=0 (1번째 행)을 설정하고, target extent encoding φ(·)에만 의존하면 여전히 높은 추적 성능을 달성하지만 foreground embedding을 포함하는 다른 모든 버전에 비해 분명히 부족하다는 것을 관찰한다.
➡ 즉, foreground embedding이 중요하다.
- foreground encoding e_fg와 test encoding만 사용하면 최상의 성능 (4번째 행)을 얻을 수 있다고 결론짓는다.
2️⃣ ⑥vs⑦
- 위에서 target location encoding에 대한 최적의 설정을 선택하고(4번째 행)
➡ target extent encoding φ(·)(보라)을 제거하거나 (7번째 행)
➡ foreground embedding e_fg에서 트랜스포머 디코더 쿼리를 분리한다. (6번째 행)- 별도의 쿼리 (6번째 행)을 사용하면 전체 성능이 저하된다.
- 마찬가지로, 제안된 인코딩을 통해 target extent information을 통합하는 것이 중요하다는 것을 알아차렸다.
- 그렇지 않으면 성능이 크게 떨어진다. (7번째 행)
Model Predictor
- 본 논문의 model predictor는 두 가지 다른 모델 가중치를 추정하기 때문에, 두가지 다른 트랜스포머 쿼리 (?)를 사용하는 것이 당연해 보인다.
- 하나는 target model weights를 생성하는 것이고
- 다른 하나는 bounding box regressor weights를 얻는 것이다.
- 그러나 여기에는 foreground embedding e_fg에서 qeury를 분리하는 것이 포함되며
표2의 실험은 이 경우에 대해 상당한 성능 저하를 보여준다.
Inference Settings
- Online tracking 동안, initial frame and annotation을 training frames으로 사용한다.
+ 추가적으로, classifier confidence가 특정 임계값 이상인 경우, 가장 최근 프레임과 이것의 target prediction을 포함한다.- 표3은 이전 추적 결과를 포함하는 것이 초기 프레임만을 사용하는 것보다 더 높은 추적 성능으로 이어진다는 것을 보여준다.
- two stage model prediction 접근법을 비활성화하고, target model과 bounding box regressor의 가중치를 한번에 예측하면 추적 성능이 크게 감소한다.
- 그 이유는 훈련을 위해 인코딩되어 사용되는 부정확한 predicted box에 대한 bounding box predictor의 민감도이다.
Transforming Model Prediction Stey-by-Step
- Model predictor는 target model and bounding box regressor에 대한 model weights를 추정할 수 있다.
➡ 이 파트에서는 optimization based tracker step-by-step을 변환하여 각 변환 단계의 영향을 평가할 것이다.
- 표4는 SuperDiMP (1번째 행)의 model optimizer를 (target model (2번째 행)만 예측하기 위해) 제안된 model predictor로 대체하는 것이 4개의 데이터 세트 중 3개에서 SuperDiMP를 능가한다는 것을 보여준다.
- target localization and bounding box regression (3번째 행)에 대한 모델 가중치를 공동으로 예측하는 추적기 ToMP는 네개의 데이터 세트 모두에서 최고의 성능을 달성한다.
Comparison to the State of the Art
- 7개의 추적 벤치마크에서 추적기 ToMP를 비교한다.
- 모든 데이터 세트에 동일한 설정과 파라미터가 사용된다.
- 가능한 경우, raw predictions을 사용하여 모든 추적기의 메트릭을 다시 계산하고, 그렇지 않으면 각 논문에 제공된 결과를 보고한다.
LaSOT [20]
✨ large-scale LaSOT dataset (280 test sequences with 2500 frames on average)에서 ToMP를 비교한다.
✔ 그림 5a의 success는 임계값 T의 함수로써 overlap precision OP_T를 보여준다.
✔ trackers는 legend에 표시된 area-under-the-curve(AUC) score로 순위가 매겨진다.
✔ 표5는 각 트래커에 대한 Precision 및 Normalized precision를 포함한 더 많은 결과를 보여준다.
✔ 서로 다른 백본을 가진 두버전의 ToMP는 AUC에서 최신 추적기 STARK [63], TransT [7], TrDiMP [59], DTT [67]을 능가하고, 새로운 최첨단 결과를 달성한다.
➡ ResNet50을 사용하는 ToMP도 ResNet101을 사용하는 STARK101보다 성능이 우수하다. (67.6 vs 67.1).
➡ 그림4는 LaSOT[20]에 주석이 달린 다양한 속성에 대한 최근 트랜스포머 기반 추적기와 비교하여 ToMP의 성공적인 AUC 이득을 보여준다.
➡ ToMP가 각 속성에서 TransT [7] 및 TrDiMP [59]를 1% point 이상 능가한다는 것을 강조하고 싶다.
➡ 마찬가지로, ToMP는 모든 속성에 대해 STARK-ST101보다 높은 성능을 달성한다. (Background Clutter에 대해 STARK보다 가장 높은 이득을 달성하는데, 이것은 target 뿐만 아니라 background information를 활용할 수 있는 시야가 큰 training frames 대신, small templates을 사용하는 것의 단점을 보여준다.)
LaSOTExtSub [19]
✨ 이 데이터세트는 LaSOT의 확장이다.
✔ 각각 10개의 비디오에서 15개의 새로운 클래스로 할당된 테스트 시퀀스만 포함된다.
✔ sequences에는 평균적으로 2500개의 frames가 포함되어 있으며, distractors가 있는 작고 빠르게 움직이는 물체의 도전적인 추적 시나리오를 보여준다.
✔ 그림 5b는 대부분의 추적기의 결과가 [19]로부터 얻어지는 success plot을 보여준다.
(예를 들어, DaSiamRPN [74], SiamRPN++ [39], ATOM [13], DiMP [1], LTMU [11])
➡ ToMP는 frames 간에 명시적인 distractor matching을 사용하는 KeepTrack [48]을 제외한 모든 추적기의 성능을 초과한다.
➡ 특히 model optimizer를 사용하는 .SuperDiMP [12]를 2.2% 능가한다.
TrackingNet [50]
✨ 공개적으로 사용 가능한 ground-truth 없이 511개의 test sequences를 포함하는 large-scale TrankingNet dataset에서 ToMP를 평가한다.
✔ 온라인 평가 서버는 raw tracking results를 제출함으로써 표6에 표시된 tracking metrics을 얻는 데 사용된다.
➡ 두 버전의 ToMP는 모두 현재의 최첨단 기술에 가까운 경쟁력 있는 결과를 달성한다.
➡ 특히 ToMP101은 STARK [63]에 이어 AUC 측면에서 두번째로 우수한 성능을 달성하여 TransT [7], TrDiMP [59]와 같은 다른 트랜스포머 기반 추적기를 능가한다.
UAV123 [49]
✨ UAV 데이터 세트는 small objects, target occlusion, distractors가 포함된 123개의 test videos로 구성된다.
➡ 표7은 success AUC 측면에서 달성된 결과를 보여준다.
➡ ToMP는 KeepTrack [48]에 의해 달성된 최신 기술과 비교하여 경쟁적인 결과를 달성한다.
OTB-100 [61]
✨ 100개의 short sequences를 포함하는 OTB-100 데이터 세트에 대한 결과를 보고한다.
✔ Multiple trackers는 70% AUC 이상의 결과를 달성한다. (그 중 두가지 버전의 ToMP가 있다. )
➡ 표7을 참고하면, ToMP는 SuperDiMP [12]와 동일한 성능을 달성하지만, TransT [7] 보다 약간 높고, TrDiMP [59]보다는 약간 낮은 결과를 달성한다.
NFS [23]
✨ 100개의 test videos가 포함된 NFS 데이터 세트 (30FPS 버전)에서 경쟁한다.
✔ 이것은 fast motions, distractors가 있는 challenging sequences를 포함한다.
➡ 두가지 ToMP 버전 모두 현재 최상의 방법인 KeepTrack [48]의 성능을 0.5%, 0.3% 초과한다. (표7 참고)
VOT2020 [35]
✨ Visual Object Tracking short-term challenge의 2020 edition에서 평가한다.
✔ 2020 챌린지 [35]에서 상위 방법과 더 최근의 방법을 비교한다.
✔ 데이터 세트에는 segmentation masks로 주석을 단 60개의 비디오가 포함되어 있다.
✔ ToMP는 bounding box를 생성하기 때문에 bounding box를 생성하는 추적기와만 비교한다.
✔ 추적기는 multi-start protocol에 따라 평가되며, 각각 IoU overlap and failure rate을 사용하여 정의된 tracking accuracy and robustness를 기반으로 하는 EAO 메트릭에 따라 순위가 매겨진다.
➡ 표8의 결과는 ToMP-101이 이전 방법에 비해 가장 높은 robustness and competitive accuracy로 최고의 전체 성능을 달성한다는 것을 보여준다.
Limitations
- 트랜스포머 인코더들은 self-attention layers로 구성된다. 그런데 이 레이어들은 multiple training and test frame features 사이에 유사성 메트릭을 계산하여, 훈련과 추론 런타임에 영향을 미치는 큰 메모리 공간으로 이끈다.
- 따라서 향후 연구에서는 메모리 부담을 줄이는 것을 목표로 [32, 34, 53]과 같은 대안을 평가하여 이러한 한계를 해결해야 한다.
- ToMP의 또 다른 제한 요소는 까다로운 tracking sequences에서 발생한다.
- 특히 KeepTrack [48]에서와 같이 명시적인 distractor 처리가 부족하기 때문에, target이 occluded되는 동안 나타나진 distractors는 ToMP의 전형적인 failure scenario이다.
Conclusion
"Transformer-based model predictor를 사용하는 새로운 추적 아키텍쳐를 제안"
1️⃣ Model predictor는 compact DCF target model의 가중치를 추정하여 test frame에서 target을 localize한다.
2️⃣ 또한 predictor는 precise bounding box regression에 사용되는 두번째 가중치 집합을 생성한다.
➡ 이를 달성하기 위해 training features에서 target location과 its bounding box를 인코딩하는 두 개의 새로운 모듈을 개발한다. (보라, 파랑)
➡ 몇가지 까다로운 데이터 세트에 대해 ToMP에 대한 포괄적인 실험 검증 및 분석을 수행하고, 세가지에 대해 새로운 최첨단 기술을 달성한다.
'Research' 카테고리의 다른 글
[Object Tracking] DCF-based Tracker (0) | 2023.01.26 |
---|---|
[Object Tracking] Transformer-based Tracker (0) | 2023.01.26 |
Inductive Bias란 ? (0) | 2023.01.26 |
[논문리뷰] OSTrack (0) | 2023.01.12 |
[논문리뷰] HiFT (0) | 2023.01.07 |