Paper : https://arxiv.org/abs/1602.00763

 

Simple Online and Realtime Tracking

This paper explores a pragmatic approach to multiple object tracking where the main focus is to associate objects efficiently for online and realtime applications. To this end, detection quality is identified as a key factor influencing tracking performanc

arxiv.org

 

Github : https://github.com/abewley/sort

 

GitHub - abewley/sort: Simple, online, and realtime tracking of multiple objects in a video sequence.

Simple, online, and realtime tracking of multiple objects in a video sequence. - abewley/sort

github.com

 

  “SORT: Simple Online and Realtime Tracking” 논문은 2017년에 나온 논문으로 Multi-object Tracking(MOT)의 기초가 되는 논문 중 하나이다. 논문 제목에서 알 수 있듯이 간단한 Online과 실시간으로 Tracking에 대한 연구를 설명한다.

MOT(Multiple Object Tracking)에서 “Online"은 트래킹 방식을 의미하는데, 이는 데이터를 처리하고 객체의 위치를 추적하는 과정이 실시간으로, 즉 데이터가 수집되는 동시에 이루어진다는 것을 나타낸다. Online 트래킹은 각 시간 단위에서 데이터를 즉시 분석하고 결정을 내리므로, 처리하는 동안 이전의 전체 히스토리를 참조할 수 없는 경우가 많다. 이와 대비되는 개념은 "offline" 트래킹으로, 모든 데이터를 수집한 후에 분석이 이루어지는 방식이다.

 

  논문에서는 Detection 모델 성능이 Tracking 성능에 많은 영향을 주며 Detection 모델을 변경한 것만으로 18.9%의 성능 향상이 있었다고 설명한다. 또한, 기초적인 방법들인 Kalman FilterHungarian algorithm만 사용하였음에도 기존 SOTA 모델에 필적하는 성능이 보였으며 20배 이상 빠른 260hz로 속도로 업데이트된다고 한다.

 

1. Introduction

  이 논문에서는 Batch기반 Tracking 방법들과는 다르게 Tracker에서 이전 프레임과 현재 프레임만을 사용하도록 구성하였다. MOT는 비디오 프레임 사이의 탐지된 데이터를 얼마나 잘 연결하는지가 중요하다. 기존 방법들은 Motion이나 Appearance를 사용하여 데이터를 연결하였지만 해당 연구에서는 Bounding box의 위치와 크기만을 사용하여 Motion Estimation(움직임 추정)과 Data association(데이터 연결)을 하였다. 또한, Occlusion에 대한 처리를 제외하여 더욱 가볍고 간단한 구조가 되었다.

 

  많은 방법들이 정확도와 속도에 Trade-off가 있지만 제안한 방법에서는 속도와 정확도 모두 우수함을 볼 수 있다. Object re-identificaion과 같은 복잡성을 통합하면 Realtime으로 사용하는데 어려움이 있다고 주장을 한다. 또한, CNN 기반의 Detector를 사용하였으며 고전적이면서 효율적인 방법인 Kalman filter와 Hungarian method를 사용하였다.

 

Main Contribution

  • MOT에서 CNN 기반 Detection 활용
  • Kalman filter와 Hungarian algorithm 기반으로 실용적인 Tracking 방법을 MOT Benchmark에 제시 및 평가
  • Collision avoidance 애플리케이션에서 연구 실험을 위한 방법에 도움이 되도록 코드 공개

Literature Review를 이해하려면 기존 MOT 연구에 대한 background 지식이 다소 필요해보인다.

 

2. Literature Review

  전통적으로 MOT는 Multiple Hypothesis Tracking(MHT)과 Joint Probabilistic Data Association(JPDA) 필터를 사용했지만, 높은 불확실성에서 의사 결정을 지연시켜 실시간 애플리케이션에는 부적합하다. 최근에는 Interger program을 통해 JPDA의 조합 복잡성 문제를 해결하려는 시도가 있었으며, 외형 모델을 활용한 온라인 추적 방법들이 등장했다. Geiger 등은 Hungarian algorithm을 사용하여 두 단계에 걸쳐 tracklet을 형성하고 연관시켰으나, 이는 배치 계산에 제한적이다. 본 논문의 방식은 이를 단순화하여 기본 cue를 사용한 single stage association으로 변경했다.

트랙렛(tracklet)은 다중 객체 추적(MOT)에서 사용되는 개념으로, 일련의 연속된 프레임에서 하나의 객체에 대한 일관된 탐지를 의미한다. 간단히 말해, 트랙렛은 짧은 기간 동안 특정 객체의 움직임을 추적한 결과물이다.

 

 

3. Methodology

3.1. Detection

  본 논문에서는 Faster-RCNN을 기반으로 탐지에 사용했으며 아래 표에 나와있는 대로 여러 모델을 비 교하였다. PASCAL VOC 데이터를 사용한 모델을 적용하였으며 보행자 이외의 클래스는 무시하고 output probabilty가 50% 이상인 결과만 tracking framework에 전달했다.

 

  ACF detection과 비교했을 때 MDP와 논문에서 제안한 방법 모두에서 Faster-RCNN을 사용했을 때 성능이 제일 좋은 것을 확인할 수 있다. 이를 통해 Detection 품질이 Tracking 성능에 중요한 역할을 한다고 볼 수 있다.

 

 

 

3.2. Estimation Model

  아래는 target의 identity를 다음 프레임으로 전달하는 정보들이다.

 

  u, v는 horizontal 및 vertical 픽셀 위치를 나타내며 s, r은 bounding box의 aspect ratio(종횡비)와 가로 세로 비율을 나타낸다. 이때 종횡비는 일정한 것으로 간주된다.

 

  • 탐지된 객체와 추적된 객체가 연관될 때
    • 새로 탐지된 객체의 Bounding box를 이용해 추적 중인 객체의 현재 상태를 업데이트한다. 이때 Kalman filter를 사용해 객체의 속도도 최적화한다. 즉, 이전 정보와 새 탐지 정보를 결합해 더 정확한 위치와 속도를 계산한다.
  • 탐지된 객체가 추적된 객체와 연관되지 않을 때
    • 현재 프레임에서 특정 객체가 탐지되지 않으면, 그 객체의 상태는 이전 속도와 위치 정보를 바탕으로 예측만 되며, 이 경우 새로운 탐지 정보가 없으므로 단순한 선형 속도 모델을 사용해 위치를 예측한다. 보정이 없기 때문에 정확도가 떨어질 수 있다.

 

3.3. Data Association

  • 탐지된 객체를 기존 타겟에 할당하는 과정
    • 각 타겟의 위치를 현재 프레임에서 예측하며 각 탐지와 예측된 위치 간의 IOU 거리를 계산하여 할당 비용 행렬(assignment cost matrix)을 만든다. 이 후에 Hungarian algorithm을 사용하여 최적의 할당을 결정하고 탐지와 타겟의 overlap(겹침)이 일정 기준($IOU_{min}$)보다 작으면 할당을 거부한다.
  • Short term occlusion:
    • 지나가는 객체로 인해 타겟이 잠시 가려질 때, IOU 거리 계산이 이를 암시적으로 처리하는 것을 발견했다. 가리는 객체가 탐지되면 그 탐지로 타겟을 수정하고, 가려진 타겟은 할당되지 않아 영향받지 않는다.

 

3.4. Creation and Deletion of Track Identities

  이미지에 객체가 들어오거나 나갈 때, 새로운 ID를 생성하거나 기존 ID를 삭제한다. 새로운 tracker를 만들 때 다른 detection과의 overlap이 $IOU_{min}$보다 적을 경우 모두 고려를 한다. Bounding box를 기반으로 초기화되며, 초기 속도는 0으로 설정된다. 새로운 추적기는 허위 탐지를 방지하기 위해 일정 기간 동안 탐지와 연관되어야 한다.

 

  추적기의 무한 증식을 막고, 긴 시간 동안 탐지가 없을 때 발생할 수 있는 위치 오류를 줄이기 위해 추적기가 특정 프레임($T_{Lost}$) 동안 탐지되지 않으면 추적을 종료한다. 본 논문에서 $T_{Lost}$ 값은 1로 설정하였다. 시스템의 효율성을 높이기 위해 물체가 가려질 경우에 해당 ID는 삭제되며, 객체가 다시 나타나면 새로운 ID로 자동으로 추적이 재개된다.

 

4. Experiments

  실험은 MOT benchmark 데이터셋을 사용하였으며, 해당 데이터는 정적인 카메라와 움직이는 카메라 두 종류 모두를 포함한다. Parameter를 tuning 하기 위해 같은 Train과 valid를 사용하였으며 Detection 모델을 FrRCNN(VGG16)을 사용했다.

 

4.1. Metrics

단일 점수를 사용하여 평가하는 것은 어렵기 때문에 표준 MOT metrics를 활용한다.

  • MOTA(↑): Multi-object tracking accuracy
  • MOTP(↑): Multi-object tracking precision
  • FAF(↓): number of false alarms per frame.
  • MT(↑): number of mostly tracked trajectories. I.e. target has the same label for at least 80% of its life span
  • ML(↓): number of mostly lost trajectories. i.e. target is not tracked for at least 20% of its life span
  • FP(↓): number of false detections
  • FN(↓): number of missed detections
  • ID sw(↓): number of times an ID switches to a different previously tracked object
  • Frag(↓): number of fragmentations where a track is interrupted by miss detection

   (↑)가 있는 metrics는 점수가 높을수록 성능이 우수한 것이며 (↓)가 있는 metrics는 점수가 낮을수록 성능이 우수한 것이다. True positive는 Ground Truth bounding box와 50% 이상 겹치는 것으로 간주한다.

 

 

4.2. Performance Evaluation

 

  제안한 방법인 SORT는 MOTA에서 가장 높은 Score를 얻었으며 frame 간 연결에 초점을 맞추기 때문에 다른 tracker들과 비슷한 False Negavie에도 ML의 수가 최소화된다.

 

4.3. Runtime

  MOT에서는 정확도를 높이기 위해 런타임 성능을 희생하는 경우도 있다. 특히 로봇 공학이나 자율 주행 차량의 경우 실시간 성능이 중요하다. 보통 정확도와 속도가 Trade-off 관계가 있지만 MOT는 정확도와 속도 모두 좋은 성능을 보였다. SORT는 16GB 메모리가 장착된 인텔 i7 2.5 GHZ의 싱글 코어에서 260hz로 실행된다.

 

5. Conclusion

  해당 논문에서는 프레임 간 예측과 연관성에 초점을 맞춘 간단한 online 추적기 SORT에 대해 소개한다. Detection 성능에 따라 Tracking 성능이 크게 좌우되며 고전적인 방법으로도 좋은 성능을 낼 수 있다는 것을 보여준다. SORT는 다른 Tracker와 달리 정확도와 속도에서 우수한 성능을 보여주었으며 단순하기 때문에 Baseline으로 적합하다. 앞으로 Long-term occlusion에 대한 re-identification에 대한 연구가 더 필요하다.