[Review]TrackFormer(Multi-Object Tracking with Transformers)
Donghun Kang2025. 1. 18. 16:46
0. Abstract
- 다중 객체 추적(MOT)에서 프레임 간 track initialization, identitiy 유지, spatio-temporal trajectories(시공간 궤적)이 주요 과제. - frame-to-frame set prediction problem을 공식화하고, TrackFormer라는 End-to-End 학습 가능한 MOT 접근 방식을 소개 - TrackFormer는 트랜스포머 기반으로, attention을 사용하여 객체 검출과 추적을 통합적으로 처리. - TrackFormer는 비디오 시퀸스를 통해 Track Prediction set을 발전시키며, attention을 통해 frame간 data association을 할당 - Transformer Decoder는 static object queries에서 새로운 트랙을 초기화하고, 기존 트랙을 시간과 공간 내에서 autoregressive 방식으로 따라가며 본질적으로 새로운 identtity를 보존하는 트랙 쿼리를 활용 - 장점: 그래프 최적화나 외형/모션 모델링 불필요/ 단순한 설계로도 최신 기술 성능 달성.
tracking-by-attention 패러다임을 제안하고 detection과 tracking을 동시에 수행하는 TrackFormer 제안
1. Introduction
- MOT의 목표는 비디오 시퀀스를 따라 이동하는 동안 객체 집합의 궤적을 추적하며, identity를 구분할 수 있도록 유지하는 것 -이미지 수준 객체 검출 기술의 발전 덕분에, 대부분의 접근법은 tracking-by-detection이라는 2단계 패러다임을 따릅니다: <tracking-by-detection> 1. 개별 비디오 frame에서 객체를 검출 2. frame 간 검출 집합을 연관하여 시간에 따른 개별 객체 트랙을 생성
기존 tracking-by-detection 방법
- 기존 tracking-by-detection 방법은 temporally sparse, dense grapth optimization, CNN을 활용하여 Detection간matching score를 예측한다. - 하지만 이 방법은 추가적인 트랙 매칭(graph optimization)이나 모션/외형 모델링에 의존해야 한다는 한계 - Detection간matching score 예측을 위한 CNN을 활용
최근 tracking-by-regression 방법
- tracking-by-regression이라 불리는 전통적인 패러다임의 변형을 제안 - 이 접근법에서 객체 검출기는 단순히 프레임별 객체를 제공하는 것뿐만 아니라, 각 트랙을 객체의 위치 변화에 따라 지속적으로 회귀하는 방식으로 데이터 연관 단계를 대체 - 이 접근법은 프레임별 객체 검출을 제공하는 것뿐만 아니라 데이터 연관 단계를 제거하고 각 트랙을 객체의 위치 변화에 따라 지속적으로 회귀(regression) - 그러나 이 방식은 여전히 추가적인 최적화 또는 외형 모델링에 의존
tracking-by-attention
- 이는 데이터 연관(data association)을 위해 attention을 적용하는 것뿐만 아니라 객체 검출과 추적을 동시에 수행 - TrackFormer는 트랜스포머 인코더-디코더 아키텍처를 활용하여 프레임 수준의 특징을 인코딩하고, 쿼리를 디코딩하여 아이덴티티가 부여된 바운딩 박스를 생성
TrackFormer
- CNN으로부터 프레임 수준의 특징을 인코딩하고, 객체 쿼리를 디코딩하여 아이덴티티가 부여된 바운딩 박스를 생성 - 데이터 연관(data association)은 "track queries"라는 새로운 개념을 통해 수행 - 각 쿼리는 객체를 나타내며, 비디오 시퀀스 전반에 걸쳐 autoregressive 방식으로 공간과 시간 안에서 객체를 추적 - 새로 등장한 객체는 "static object queries" 로 탐지되고, 이후 미래 트랙 쿼리로 변환 - 각 프레임에서, 인코더-디코더는 입력 이미지 특징과 객체 쿼리 간의 attention을 계산하고, identity가 부여된 바운딩 박스를 출력 - 이를 통해 TrackFormer는 추가적인 트랙 매칭, 그래프 최적화, 또는 모션/외형 모델링에 의존하지 않고 tracking-by-attention을 수행하며 Detection과 Data association을 공동으로 달성
<기존 방식과의 차이점> (vs trakcin-by-detection/regression) - 단일 단계(Single step)에서 객체를 탐지하고 동시에 트랙을 연관 - TrackFormer는 객체 검출을 위한 최근 제안된 세트 예측 목표를 다중 객체 추적으로 확장
TrackFormer는 tracking-by-attention 패러다임을 도입하여 object Detection과 Tracking을 Transformer 기반으로 통합하여 수행한다.
2. Related work
각각의 Detection 패러다임에 따라 방법을 분류하고 검토한다.
Trakcing-by-detection
이 접근법은 주어진 탐지 집합을 시간에 따라 연관시켜 궤적을 형성
Graphs
- 그래프는 track association과 장기적인 re-identification을 위해 사용되며, 문제를 최대 유량(maximum flow) 또는 최소 비용(minimum cost) 최적화 문제로 공식화 - 거리 기반(cost-based) 또는 학습된 비용 기반(graph learning)을 사용하며, 모션 정보, 일반적인 문제 해결기(solvers), 트레인 가능한 그래프 신경망 등을 포함 - 그러나 그래프 기반 방법은 비싼 최적화 루틴으로 인해 온라인 추적에 실용적이지 않다.
Appearance
- 외형 기반 접근법은 강력한 이미지 인식 Backbone 을 활용해 유사성을 측정하여 객체를 추적 - Twin Neural Networks, reID 기능, 후보 탐지 선택 및 친화성 추정(affinity estimation)을 활용하지만, 혼잡한 시나리오에서 한계가 있다.
Motion
- Model modeling은 궤적(trajectory) 예측을 위해 사용되며, 상수 속도 가정(constant velocity assumption)이나 social force model을 포함 - 그러나 비선형 3D motion의 2D 투영은 많은 모델에서 여전히 도전 과제로 남아 있다.
Tracking-by-regression
- 프레임 간 탐지를 연관시키는 대신, 이전 객체 위치를 현재 프레임에서 새 위치로 회귀(regress)하여 추적을 수행 - 이전 연구들에서는 지역 풀링(region-pooled)된 객체 특징에서 regression head를 사용 - 그러나 이 접근법은 object identity와 전역적인 트랙 추론(global track reasoning)에 대한 개념이 부족하다는 한계 - 따라서, 추가적인 re-identification과 motion model, 그리고 전통적인, 학습된 graph 방법이 최고 성능을 달성하기 위해 필요
Trakcing-by-segmentation
- Object masks를 예측하는 것뿐만 아니라, 혼잡한 환경이나 모호한 배경 문제를 완화하기 위해 pixel-level information를 활용 - 그러나 주석화된 MOT 분할 데이터의 부족으로 인해, 최신 접근법들은 여전히 바운딩 박스(bounding boxes)에 의존하는 한계
Attention for image recognition
- 이미지 인식을 위한 attention은 입력의 각 요소가 다른 요소와의 상관 관계를 학습하며, 이는 트랜스포머(Transformers)에서 이미지 생성 및 객체 검출에 사용 - 그러나 MOT에서는 attention이 단지 주어진 탐지 집합을 연관시키는 데만 사용 - Detection과 Tracking 문제를 공동으로 해결하는 데에는 사용되지 않았다.
- 반대로, TrackFormer는 전체 추적 목표를 Single set Prediction Problem으로 전환 - attention을 데이터 연관(Association) 단계에만 국한하지 않는다. - TrackFormer는 track initialization, identity and spatio-temporal trajectories에 대해 공동으로 추론을 수행 - 특징 수준의 attention에만 의존하며, 추가적인 graph optimization 이나 Apperance/motion model에 사용하지 않는다.
기존 MOT 방법에는 Tracking-by-detection, Tracking-by-regression, Tracking-by-segmentation 접근법이 있으며, 이들은 탐지 연관, 회귀, 또는 픽셀 수준 정보를 활용하지만 추가적인 최적화나 주석 데이터 부족으로 한계가 있다. 반면, 기존 attention은 MOT에서 탐지 연관에만 사용되었고, 검출과 추적을 통합적으로 해결하지 못했습니다.
3. TrackFormer
TrackFormer는 Encoder-Decoder Transformer architecture에 기반한 End-to-End 학습 가능한 MOT 접근법
3.1. MOT as a set prediction problem
- 비디오 시퀀스에서 K개의 개별 object identity가 주어졌을 때, MOT는 Bounding Box(bt)와 Track identity(k)를 포함하는 정렬된 track을 생성하는 작업으로 설명 ordered traxks
- Track의 하위 집합 (t1, t2, ,,,)는 객체가 장면에 진입하고 떠나는 동안의 시간 구간을 나타낸다. - 이 구간은 객체가 배경이나 다른 객체로 인해 가려지는 모든 프레임을 포함
- MOT를 Set prediction Problem으로 정의하기 위해, 우리는 Encoder-Decoder Transformer 아키텍처를 활용 - 우리의 모델은 online tracking을 수행하며, 각 프레임에서 bounding box와 object identity가 포함된 클래스 예측을 제공 - 이는 다음의 네 단계로 수행: 1. CNN Bakcbone(e.g., ResNet-50)을 사용한 프레임 수준 특징 추출. 2. Transformer Encoder에서 self-attention을 사용하여 프레임 특징 Encoding. 3. Transformer Decoder에서 self-attention 및 인코더-디코더 attention을 사용하여 query Decoding. 4. 다층 퍼셉트론(MLP)을 사용하여 쿼리를 바운딩 박스와 클래스 예측으로 매핑.
- 객체는 Decoder 쿼리(queries)에 암묵적으로 나타나며, 이는 Decoder가 바운딩 박스 좌표와 클래스 예측을 출력하기 위해 사용하는 Embedding - 디코더는 두 가지 유형의 attention 사이에서 교대로 작동 1. Self-attention: 모든 query에 대해 수행되며, 장면의 객체를 공동으로 추론할 수 있도록 지원 2. Encoder-decoder attention: query가 인코딩된 특징의 시각 정보를 전역적으로 액세스할 수 있도록 한다. - 출력 임베딩은 여러 디코딩 레이어를 통해 바운딩 박스와 클래스 정보를 점진적으로 축적 - Transformer의 순열 불변성(permutation invariance)은 프레임 특징과 디코더 쿼리에 대해 각각 추가적인 특징 및 객체 인코딩을 필요로 한다.
3.2. Tracking-by-attention with queries
out embedding의 전체 집합은 두 가지 유형의 query encoding으로 초기화:
정적 객체 쿼리(static object queries): 모델이 비디오의 임의 프레임에서 트랙을 초기화할 수 있도록 지원
Autoregressive 트랙 쿼리(autoregressive track queries): 프레임 간 객체를 추적하는 역할을 담당
Object와 Track query 의 동시 Decoding은 모델이 detection과 tracking을 통합된 방식으로 수행할 수 있도록 하며, 이를 통해 새로운tracking-by-attention 패러다임을 소개
Tracking-by-X의 다양한 접근법은 트랙 생성을 담당하는 주요 구성 요소에 따라 정의됩니다.
Tracking-by-detection: 프레임 간 객체 탐지 간 거리를 계산하거나 모델링하여 추적을 수행
Tracking-by-regression: 객체를 검출한 뒤, 각 바운딩 박스를 현재 프레임의 새로운 위치로 회귀하여 트랙을 생성
기술적으로, 우리의 TrackFormer는 MLP를 통해 객체 임베딩을 매핑하면서 회귀(regression)를 수행
하지만 실제 트랙 연관(track association)은 Transformer 디코더의 attention에서 더 이른 시점에 발생
Track initialization
- 장면에 새롭게 등장한 객체는 고정된 수의 Nobject output eembedding에 의해 탐지되며, 이는 각각 정적이고 학습된 객체 인코딩(object queries)으로 초기화 - 각 객체 query는 Bounding box 크기와 위치 같은 특정 공간 속성을 가진 객체를 예측하도록 학습 - 디코더의 self-attention은 객체 인코딩을 활용하여 중복 탐지를 방지하고 객체의 공간적 및 범주적 관계를 추론 - 객체 쿼리의 수는 프레임당 최대 객체 수를 초과해야 합니다.
Track queries
- 프레임 간 트랙 생성을 위해, 우리는 디코더에 "track queries"개념을 도입 - track queries는 객체의 identity 정보를 유지하며 비디오 시퀀스를 따라 객체를 추적하며, autoregressive 방식으로 위치 변화에 적응 - 새 객체 탐지(new object detection)는 이전 프레임의 output embedding에 해당하는 track quries로 초기화 - Transformer Encoder-Decoder는 프레임 특징과 디코더 쿼리에 대해 attention을 수행하며, 객체의 identity 및 위치를 지속적으로 업데이트 - 두 쿼리 유형(정적 객체 쿼리, 트랙 쿼리)에 대한 joint self-attention은 새로운 객체 탐지와 기존 객체의 재탐지를 동시에 수행할 수 있도록 한다.
track queries에 대한 시각적 설명
- TrackFormer는 MOT를 Set Prediction Problem으로 정의하며 이를 통해 Detection과 Tracking을 통합적으로 수행
- 구조는 CNN을 사용한 이미지 feature 추출, Transformer Encdoer에서 feature encoding, Decoder에서 self- 및 Encoder-Decoder attention을 포함
- Frame t = 0 에서는 Decoder가 N_object 객체 쿼리를 변환하여 새로운 autoregressive track query를 초기화하거나 background calss를 예측
- 이후 Frame에서는 Decoder가 N_object + N_track query 집합을 처리하여 기존 track을 따라가거나 제거(파란색), 새로운 운 트랙을 초기화(보라색)한다.
- 프레임 t=0에서의 초기 탐지는 해당 객체를 따라 t 프레임 이후까지 새로운 트랙 쿼리를 생성 - 이를 위해, N_object 객체 쿼리는 잠재적인 트랙 초기화를 위한 output embedding으로 디코딩 - Classification score가 σ_object 이상이고 배경(background) 클래스를 예측하지 않는 유효한 객체 탐지는
새로운 track query embedding을 초기화 - 모든 객체가 시퀀스의 첫 번째 프레임에서 등장하지 않으므로, 트랙 identity 집합은
전체 집합 K의 부분 집합만 나타낸다. - 임의 프레임 t>0의 디코딩 단계에서, 트랙 쿼리는 서로 다른 identity와 연결된 추가 출력 임베딩을 초기화 - N_object + N_track output embedding의 공동 집합은 각각 학습된 객체 쿼리와 시간적으로 적응된 트랙 쿼리에 의해 초기화 - Transformer 디코더는 전체 output embedding 집합을 한 번에 변환하고, MLP를 통해 바운딩 박스와 클래스 예측을 제공 - 트랙 쿼리 수 N_track은 새로운 객체가 탐지되거나 트랙이 제거됨에 따라 프레임 간에 변화 - 트랙과 해당 쿼리는 다음 조건 중 하나가 충족될 때 제거될 수 있다: 1. Classification score가 σtrack 아래로 떨어질 경우. 2. IoU 임계값 σNMS를 사용하는 Non-Maximum Suppression(NMS)에 의해 제거될 경우. 비교적 높은 σNMS 값은 강하게 중복되는 바운딩 박스만 제거하며, 이는 디코더 self-attention으로 해결되지 않는 중복 문제를 해결하는 데 유용
Track query re-identification
- 트랙 쿼리를 임의의 개수로 디코딩할 수 있는 기능은 attention 기반의 단기 재식별(short-term re-identification) 과정을 가능하게 한다 - 우리는 이전에 제거된 트랙 쿼리를 최대 T-track-reid 프레임 동안 디코딩 상태로 유지 - 이 patience window 동안 트랙 쿼리는 비활성 상태로 간주되며, 분류 점수가 σ_track-reid를 초과하여 재식별(re-identification)이 트리거되기 전까지 궤적에 기여하지 않는다. - 각 트랙 쿼리에 포함된 공간 정보는 큰 객체 이동을 포함한 장기적인 가림(occlusions)에 대해서는 제한이 있지만, 단기적인 트랙 손실에서의 복구를 가능하게 한다. - 이 과정은 전용 재식별 학습 없이도 이루어질 수 있다. - 또한, TrackFormer의 전체적인 접근 방식을 강화하며, 동일한 attention 메커니즘을 활용하여 트랙 초기화, 아이덴티티 보존, 궤적 형성 과정을 단기적인 가림을 통해 유지할 수 있다.
TrackFormer는 static object queries로 새로운 객체를 초기화하고, autoregressive 트랙 쿼리로 프레임 간 추적을 수행. Self-attention과 encoder-decoder attention을 활용해 객체의 위치 및 identity 정보를 지속적으로 update. 단기적인 occlusion이나 트랙 손실은 track query re-identification으로 복구하며, 전용 학습 없이 동일한 attention 메커니즘으로 수행.
3.3 TrackFormer training
- 트랙 쿼리가 객체 쿼리와 상호작용하여 객체를 다음 프레임으로 추적하도록 하기 위해, TrackFormer는 프레임 간 추적 학습(frame-to-frame tracking training)이 필요
- Figure 2에서 설명한 것처럼, 우리는 인접한 두 프레임에서 학습하며, 전체 MOT 목표를 한 번에 최적화.
- 프레임 t에서의 손실은 클래스와 바운딩 박스 예측 측면에서 출력 임베딩 N = N_object + N_track이 실제 객체와 얼마나 잘 일치하는지를 측정
**세트 예측 손실(set prediction loss)**은 다음 두 단계로 계산된다:
t−1프레임에서N_object 객체 쿼리를 사용한 객체 검출(예: Figure 2의t=0참조).
(1)의 객체 추적 및t 프레임에서N개의 쿼리를 사용한 새로운 객체의 검출.
- 트랙 쿼리N_track의 수는t−1프레임에서 성공적으로 검출된 객체 수에 따라 달라진다.
- 학습 중에는 출력 임베딩의 MLP 예측이 각각 실제 객체(Ground Truth objects) y또는 배경 클래스(Background class)에 할당
(각 yi는 Bounding box: bi / Object class: ci / idnetity: ki)
Bipartite matching(이분 매칭)
- 객체 쿼리와 트랙 쿼리의 예측값 y^j 집합에서 실제 객체 yi를 매핑하는 j=π(i)는 track identity 또는 Bounding box similarity와 Object class에 기반한 비용을 통해 결정 - TrackFormer에서 프레임 t의 실제 트랙 identity 하위 집합을 아래와 같이 정의
- 단계 (i)에서의 각 탐지는 K_t−1⊆K 집합에서 해당 트랙 아이덴티티 k에 할당 - 출력 임베딩(output embedding), 즉 트랙 쿼리는 아이덴티티 정보를 다음 프레임으로 내재적으로 전달 - N_track 트랙 쿼리 출력(track query output)과 실제 객체(ground truth object) 간의 매칭은 아래 가지 규칙을 따른다. 1. 이전 Frame의 Track identity K와 매칭 / 2. Background class와 매칭 / 3. Minimum cost mapping - 두 번째 Ground truth idnetity 집합 K_t−1∖K는 가려지거나 프레임 t에서 장면을 떠난 트랙을 포함 - 마지막 실제 객체 집합 K_object=K_t∖K_t−1은 아직 추적되지 않은 객체로, N_object 객체 쿼리와 매칭되어야 한다. minimum cost mapping
σ(i): index C_match: yi(G.T)와 y^_i(Prediction) 간 pair-wise cost - 이 문제는 조합 최적화 알고리즘(combibatorial optimization)으로 해결된다.
- 실제 클래스 레이블 Ci와 출력 임베딩 i의 예측된 클래스 확률
다음을 기반으로 한 matching cost C_match는 아래와 같다.
C_box: bi(Bounding box)와 b^_σ(i)의 차이를 반영하며, 이는 L1 distnace와 일반화 된 IoU 조합을 사용해 계산
Set prediction loss
- 최종 MOT Set prediction loss는 모든 출력 예측 N = N_object + N_track에 대해 계산된다.
track identity σ를 통해 매칭되지 않은 output embedding은 매핑 π에 포함되지 않으며, background class ci = 0 으로 할당
- 각 query에 대한 Loss는 아래와 같이 정의
Track augmentations
- 학습 중 잠재적 트랙 쿼리 집합(potnetial track queries)을 풍부하게 하기 위해 다음과 같은 증강 방식을 제안 - 이 증강 방식들은 실험에서 검증 - 객체 위치와 움직임의 변형, 탐지 누락, 시뮬레이션된 가림(occlusions)을 유발하는 세 가지 유형의 증강 방식을 사용
1. Frame sampling augmentation
단계 (i)에서 t−1 프레임은 t 프레임 주변의 다양한 프레임 범위에서 샘플링
이를 통해 객체가 이전 위치에서 크게 이동한 프레임 쌍을 생성하여 더 도전적인 시나리오를 만든다.
이러한 샘플링은 카메라 움직임과 낮은 프레임 속도를 시뮬레이션하여 보통 단순한 시퀀스에서 더 자연스러운 데이터 증강을 제공
2. False negatives
확률 p_FN로 트랙 쿼리를 제거하여 거짓 음성을 샘플링
이는 단계 (ii)로 진행하기 전에 수행
프레임 t의 해당 실제 객체는 객체 쿼리와 매칭되며 새로운 객체 탐지를 trigger
거짓 양성(false positives)의 비율을 충분히 높게 유지하는 것은 두 쿼리 유형의 통합 학습에 필수적
3. False positive
가림(occlusions) 시나리오에서 배경 클래스 할당으로 트랙 제거를 개선하기 위해, 추가 거짓 양성 쿼리를 트랙 쿼리 집합에 추가
이러한 쿼리는 t−1프레임의 출력 임베딩에서 샘플링되며, 이는 배경으로 분류된 것으로 간주
원래 트랙 쿼리는 확률 p_FP로 추가 거짓 양성 쿼리를 생성할 가능성을 가지며, 이는 해당 생성 트랙 쿼리와 가릴 가능성이 높다.
# 추가 증강
견고성을 향상하기 위한 일반적인 증강은 이전 프레임의 바운딩 박스나 중심점에 공간적 지터링(spatial jittering)을 적용하는 것
트랙 쿼리는 객체 정보를 암묵적으로 인코딩하기 때문에 이러한 명시적 변형은 공간 영역에서 허용되지 않을 수 있다.
우리는 시간 범위를 무작위화(randomization)하여 비디오 데이터에서 더 자연스러운 증강을 제공
TrackFormer는 Set prediction Loss을 기반으로 객체 및 트랙 쿼리를 최적화 Bipartite Matching을 통해 실제 객체와 예측값을 최소 비용 기준으로 매칭 손실은 클래스 확률과 바운딩 박스 유사성을 조합해 계산 또한, Track Augmentations로 다양한 시뮬레이션 데이터를 생성해 모델의 추적 성능과 견고성을 강화
4. Experiments
5. Conclusion
- Transformer를 활용한 tracking-by-attention 패러다임을 제시 - end-to-end 학습 가능한 TrackFormer 아키텍처는 autoregressive 트랙 쿼리 임베딩을 적용하여 시퀀스를 통해 객체를 추적 - TrackFormer는 Transformer 인코더-디코더 아키텍처를 활용하여 트랙 초기화, 아이덴티티 보존, 궤적 형성을 통합적으로 처리하며, 추가적인 매칭, 그래프 최적화, 또는 움직임/외형 모델링에 의존하지 않는다. - 우리의 접근법은 다중 객체 추적 및 분할에서 최첨단 성능(state-of-the-art results)을 달성