[Paper Review] FairMOT: On the Fairness of Detection and Re-Identification in Multiple Object Tracking
FairMOT: On the Fairness of Detection and Re-Identification in Multiple Object Tracking
Abstract
-
최근 object detection과 re-ID tasks에서 많은 발전이 있었지만, 두가지 task를 하나의 네트워트에서 공동으로 수행하는 것에 대해서는 많이 연구되지 않았음
-
기존의 시도들은 re-ID task가 공정하게 학습되지 않아서 정확도가 떨어지는 문제점이 존재
- re-ID를 2번째 task로 처리
detection task를 먼저 수행하기 때문에, detection task에 매우 의존적임
학습과정에서 detection task에 큰 비중을 두게 되면서 re-ID task를 무시함
- re-ID features를 추출하기 위해 ROI-Align 사용
많은 샘플링 포인트들이 다른 instance나 background에 속하기 때문에, object를 특징짓는데 애매모호함을 유발
- 기존의 문제점들을 해결하기 위해, 단순한 접근법인 FairMOT 제안
2-branches : pixel 단위로 objectness scores를 예측하는 branch, re-ID features를 학습하는 branch
- 2가지 tasks를 공평하게 학습하면서 FairMOT는 detection, tracking에서 높은 정확도를 냄
Introduction
-
Multi-Object Tracking(MOT)는 videos에서 관심있는 objects의 움직임에 따른 위치를 추척하는 task로, computer vision에서 오랫동안 연구되어 옴
-
기존의 방식들은 MOT를 2개의 독립적인 models로 처리함
-
detection model : 각 frame에서 object의 bounding box를 localization
-
association model : 각 bounding box에 대한 re-ID features를 추출하고, 기존 tracks 중 하나에 연결시킴
한계점 : 많은 objects를 포함하고 있을 때, real-time inference를 수행할 수 없음
- multi-task learning이 발전하면서, 하나의 네트워크로 objects를 예측하고 re-ID features를 학습하는 one-shot trackers에 대한 연구가 등장
two-step 방식들에 비해 정확도가 상당히 떨어짐
특히, ID switches의 발생 횟수가 증가함
- 기존 방식들의 실패요인에 대해 깊이 이해하고, 단순하지만 효과적인 접근법을 제시함
Unfairness caused by anchors
-
anchor-based framework는 많은 ID switches를 유발하기 때문에 re-ID features 학습에 적합하지 않음
-
Overlooked re-ID task
Track R-CNN : cascade style로 object proposals(boxes)을 먼저 예측하고, proposals에서 re-ID features를 추출
이런 방식은 re-ID features의 질이 proposals의 질에 매우 의존적이라는 문제점이 있음
model이 정확한 object proposals을 예측하는 것에 큰 비중을 두면서 학습을 진행하게 되면서 두 tasks가 공정하게 학습되지 않음
- One anchor corresponds to multiple identities
anchor-based 방식들은 각 proposal에서 features를 추출하기 위해 ROI-Pool이나 ROI-Align을 사용
각 ROI-Align에서 대부분의 샘플링 위치들이 다른 instance나 background에 속할 수 있음
이는 target objects에 대해 정확하고 구별적인 features를 추출하기에 최적이 아님
예측된 object centers에서 features를 추출하는 것이 더 좋다는 것을 발견함
- Multiple anchors correspond to one identity
다양한 인접 anchors는 IOU 값이 충분히 큰 값을 경우 동일한 identity를 예측하도록 학습되는데, 이는 학습과정에 심각함 애매모호함을 유발함
또 다른 문제로, 이미지에 작은 변화가 생겼을 때(ex, augmentation) 동일한 anchor가 다른 identities를 예측하도록 학습될 가능성이 있음
추가적으로, object detection에서 feature maps은 보통 8/16/32로 downsampling을 수행하는데, 이는 re-ID features를 학습하기에 너무 coarse 하다는 문제점이 있음
Unfairness caused by features
- one-shot trackers에서 2개의 tasks 사이 대부분의 features가 공유되지만, 각 task가 필요로 하는 feature level이 다름
object detection은 deep하고 abstract한 features를 필요로 하고, re-ID는 동일한 class의 다른 instance를 구별할 수 있도록 하는 low-level appearance features를 필요로 함
- 경험적으로, multi-layer feature aggregation이 이러한 문제를 해결할 효과적인 방식임을 발견함
다양한 object scale을 다룰 수 있도록 함
Unfairness caused by feature dimension
- 기존의 re-ID 연구들은 일반적으로 매우 높은 차원의 features를 학습시켰으나, 낮은 차원의 features를 학습시키는 것이 one-shot MOT에서 더 좋은 성능을 낸다는 것을 발견함
- 높은 차원의 re-ID features를 학습시키는 것이 objects를 구별하는 능력을 조금 더 키울 수 있지만, 이는 object detection 정확도를 상당히 낮춤
2개의 tasks 사이 균형을 맞추기 위해 낮은 차원의 features를 학습시키는 것을 제안
-
학습 데이터가 적을 때, 낮은 차원의 re-ID features를 학습시키는 것이 오버피팅을 줄이는데 도움을 줌
-
낮은 차원의 re-ID features는 inference speed를 향상시킴
Overview of FairMOT
-
3가지 fairness 문제를 해결한 FairMOT 제안
-
Contributions
-
기존의 one-shot tracking frameworks의 challenges에 대해 분석
-
detection과 re-ID tasks를 공정하게 학습하는 framework 제안
-
대규모의 detection datasets에서 FairMOT를 학습하기 위한 self-supervised learning 방법 제안
- objects를 탐지하는 branch와 re-ID features를 추출하는 branch로 구성되어 있는 FairMOT
detection branch : anchor-free style로, object의 center와 size를 예측
re-ID branch : 각 pixel에 대한 re-ID feature를 예측 ??
-
FairMOT는 high-resolution의 feature maps을 사용하면서 object centers에 대한 re-ID features alignment를 더 잘 수행하여 tracking 성능 향상
-
re-ID features의 차원을 64로 고정시켜 계산시간을 줄이고, 2개의 tasks 사이 적절한 균형을 맞추어 tracking의 robustness를 향상시킴
-
multiple layers로부터 features를 융합하는 Deep Layer Aggregation operator와 함께 backbone network를 구성함
FairMOT
Backbone network
-
정확도와 속도의 적절한 균형을 위해 backbone network로 ResNet-34를 적용
-
multi-layer features를 융합시키기 위해 backbone에 향상된 Deep Layer Aggregation(DLA) 적용
기존의 DLA와 다르게 low-level와 high-level 사이 더 많은 skip connections이 있음(FPN과 유사)
모든 upsampling modules에서 convolution layers가 deformable convolution으로 대체됨
- DLA를 다른 deep network로도 대체 가능
Detection branch
- CenterNet으로 구성되어 있음
DLA-34는 heatmaps, object center offsets, bounding box size를 예측하는 3개의 head가 추가되어 있음
각 head는 DLA-34의 output features에 3x3 convolution을 적용 (이후, 최종 targets을 생성하기 위한 1x1 convolution layer 적용)
- Heatmap head
object centers의 위치를 예측
representation 기반 heatmap이 적용됨 (dimension : 1 x H x W)
- Box offset and size heads
box offset head : 더 정확하게 objects를 localization
최종 feature map의 stride가 4이기 때문에, 다운샘플링 과정에서 양자화 오류가 발생함
오류를 완화시키기 위해 각 픽셀에서 object center에 대한 상대적인 연속적인 offset을 예측
box size head : 각 위치에서 target box의 H, W를 예측
- detection loss
Re-ID branch
- objects를 구별할 수 있는 features를 생성하는 branch
동일한 objects 끼리 가깝고, 다른 objects 끼리 멀게 하는 것이 목표
-
각 위치에서 re-ID features를 추출하기 위해 backbone features에 128개의 kernels을 갖는 하나의 convolution layer를 적용함
-
Re-ID loss
re-ID features를 classification task로 해결
동일한 identity를 갖는 object instances는 동일한 class로 간주
re-ID feature vector E를 추출하고, 이를 하나의 class distribution vector P에 mapping 시킴
K = class의 개수
Training FairMOT
- detection과 re-ID branches를 공동으로 학습
w1, w2 : 두가지 task의 balance를 맞추는 learnable parameters
- 추가적으로, COCO dataset과 같은 image-level object detection datasets에서 FariMOT 학습을 하기 위한 약지도학습 방식을 제안
dataset에서 각 object instance를 다른 class로 간주하고, 동일한 object의 다른 transformations은 동일 class instances로 간주
transformations : HSV augmentation, rotation, scaling, translation, shearing
- 모델을 CrowdHuman dataset에서 pre-train하고, 이것을 MOT datasets에서 finetune하여 최종 성능을 향상시킴
Online inference
- Network inference
input : 1088x608 frame size
- 예측된 heatmap에서 peak keypoints를 추출하기 위해, heatmap scores에 기반하여 non-maximum suppression(NMS)을 수행
keypoints에서 heatmap scores가 threashold 보다 크면 유지시킴
-
예측된 offsets과 box sizes에 기반하여 해당 bounding boxes를 계산
-
예측된 object centers에서 identity embeddings 추출
- Online association
bounding boxes를 연관시키기 위해, 표준 online tracking 알고리즘 사용
-
첫번째 frame에서 예측된 boxes에 기반하여 tracklets의 수를 초기화시킴
-
다음 frame에서 Re-ID features로 계산된 cosine distances에 따라 존재하는 tracklets과 탐지된 boxes를 연결시키고, bipartite matching을 사용하여 box overlapping
또한, 현재 frame에서 tracklets의 위치를 예측하기 위해 Kalman Filter 사용
- variation를 잘 다룰 수 있도록 매 time step 마다 trackers의 appearance features를 업데이트
Leave a comment