SIMPLE ONLINE AND REALTIME TRACKING WITH A DEEP ASSOCIATION METRIC, Nicolai Wojke et al., 2017(DeepSORT)을 읽고 요약한 글입니다.
⏹️ Abstract
단순 온라인 및 실시간 추적(SORT)은 단순하고 효과적인 알고리즘에 초점을 맞춘 다중 객체 추적(MOT)에 대한 실용적인 접근법이다. 본 논문에서는 SORT의 성능을 향상 시키기 위해 외관(appearance) 정보를 통합한다. 이로 인해 더 오래 occlusion된 객체를 추적할 수 있어 ID 스위치의 횟수를 효과적으로 줄일 수 있다. 본 논문은 visual appearance space에서 가장 가까운 이웃 쿼리를 사용하여 measurement-to-track association을 설정한다. 실험 평가에 따르면 본 논문에서 제시한 확장은 ID 스위치 횟수를 45% 줄여서 높은 프레임률로 전반적인 경쟁적 성능을 달성한다.
1️⃣ Introduction
tracking-by-detection 패러다임에서 객체 trajectory는 일반적으로 전체 비디오 배치를 한 번에 처리하는 global optimization 문제가 있었지만 batch processing으로 인해 각 time step에서 target ID를 사용할 수 있어야 하는 온라인 시나리오에는 적용되지 않는다.
SORT는 bounding box overlap을 측정하는 association metric과 함께 헝가리안 알고리즘을 사용하여 이미지 공간 및 프레임 별 데이터 association에서 칼만 필터링을 수행하는 훨씬 간단한 프레임 워크이다. 이는 높은 프레임율로 좋은 성능을 달성한다.
MOT 챌린지 데이터 세트에서 최첨단 detector가 있는 SORT는 표준 detector에서 MHT보다 평균적으로 더 높다. 이는 전체 tracking result에 대한 객체 detector 성능의 영향을 강조할 뿐만 아니라 실무자의 관점에서 중요한 통찰력이다.
tracking 정밀도와 정확도 측면에서 전반적으로 우수한 성능을 달성하면서도 SORT는 사용된 association metric은 state estimation uncertainty가 낮을 때만 정확하기 때문에 상대적으로 많은 ID 스위치가 발생한다. 따라서 SORT는 일반적으로 정면 카메라 장면에서 나타나기 때문에 occlusion을 tracking하는데 결함이 있다. 본 논문은 accosiation metric을 motion과 appearance 정보를 결합한 더 많은 정보를 가진 metric으로 대체함으로써 이 문제를 극복한다.
2️⃣ SORT with Deep Assocation Metric
◾ Track Handling and State Estimation
track handling 및 kalman filtering 프레임워크는 기존 SORT 알고리즘과 동일하다. 본 논문은 카메라가 불안정하거나 하는 등의 일반적인 tracking 시나리오라고 가정하기 때문에 tracking 시나리오는 bounding box 중심 위치(u, v, )와 aspect ratio γ, height h 및 이미지 좌표에 있는 각각의 속도를 포함하는 8차원 상태 공간(u, v, γ, h, x,˙ y,˙ γ, ˙ h˙)에 대해 정의된다. 우리는 등속 운동과 선형 관측 모델이 있는 표준 칼만 필터를 사용하며, 여기서 경계 좌표(u, v, γ, h)를 물체 상태의 직접 관측으로 취한다.
각 트랙 k에 대해 마지막으로 성공한 measurement association ak 이후의 프레임 수를 계산한다. 이 카운터는 칼만 필터 예측 중에 증가하며 트랙이 측정과 연결되면 0으로 재설정 된다. 사전 정의된 최대 age인 Amax를 초과하는 track은 scene을 떠난 것으로 간주하고 track set에서 삭제된다. 기존 트랙과 연결할 수 없는 각 detection에 대해 새 track 가설이 시작된다. 이 새로운 트랙들은 처음 세 프레임 동안 잠정적인 것으로 분류된다. 이 기간 동안 각 시간 단계에서 성공적인 measurement association을 기대한다. 처음 세 프레임 내에서 measurenemt에 성공적으로 연결되지 않은 트랙은 삭제된다.
◾ Assignment Problem
기존에는 예측된 칼만 상태와 새로 도착한 측정 사이의 연관성을 헝가리 알고리즘을 사용하여 해결할 수 있는 할당 문제를 구축했다. 본 논문은 두 가지 적절한 metric의 조합을 통해 motion 및 appearance 정보를 통합한다.
motion 정보를 통합하기 위해 예측된 칼만 states와 새로 도착한 measurenemts 사이의 (제곱된) Mahalanobis 거리를 사용한다(Eq(1)).
i번째 트랙 분포에서 measurement space에 대한 projection을 (yi,Si)로, j번째 bounding box detection을 dj로 나타낸다. Mahalanobis 거리는 detection이 평균 track location에서 얼만큼의 표준 편차가 떨어져 있는지를 측정하여 state estimation uncertainty(상태 추정 불확실성)를 고려한다.
또한, 이 metric을 사용하면 inverse X^2 분포에서 계산된 95% 신뢰 구간에서 Mahalanobis 거리를 임계값화함으로써 가능성이 없는 연관성을 제외할 수 있다. 이는 i번째 트랙과 j번째 detection 사이의 연관성이 허용될 경우 1로 평가하는 지표 eq(2)로 나타낼 수 있다.
4차원 측정 공간의 경우 해당 Mahalanobis 임계값은 t^(1) = 9.4877이다.
Mahalanobis 거리는 motion uncertainty가 낮을 때에는 적절한 association metric이지만, image-space 문제 공식에서는 칼만 필터링 프레임워크에서 얻은 예측 상태 분포는 객체 위치의 대략적인 추정치만 제공한다. 특히, 설명되지 않은 카메라 움직임은 이미지 평면에 급속한 변위를 일으키기 때문에 Mahalanobis 거리를 occlusion을 tracking하기 위한 형식적인 metric이 아니게 만든다.
따라서, 본 논문은 assignment 문제에 두 번째 metric을 통합한다. 각 bounding box detection dj에 대해 ||rj|| = 1(절대값이 1인)로 appearance descriptor rj를 계산한다. 또한, 각 트랙 k에 대한 appearance descriptor의 마지막 100개를 가지는 갤러리인 Rk를 유지한다.
그런 다음, 두 번째 metric은 appearance space에서 i번째 트랙과 j번째 detection 사이의 가장 작은 코사인 거리를 측정한다: eq(3).
metric eq(4)에 따라 연관성이 허용되는지 여부를 나타내는 이진 변수를 도입하고 별도의 학습 데이터셋에서 이 metric에 적합한 임계값을 찾는다.
두 metric을 조합하여 사용하면 각 metric이 assignment 문제의 서로 다른 측면을 지원함으로써 상호 보완된다.
Mahalanobis 거리는 단기 예측에 특히 유용한 motion을 기반으로 가능한 물체 위치에 대한 정보를 제공한다. 코사인 거리는 motion이 덜 차별적(discriminative)일 때 긴 시간 동안의 occlusion 후에 동일성을 회복하는 데 특히 유용한 외관 정보를 고려한다. assignment 문제를 구축하기 위해 가중 합계 eq(5)를 사용하여 두 metric을 결합한다.
여기서 두 metric의 gate 영역 내에 있는 경우 연관성이 인정된다: eq(6).
하지만 Mahalanobis는 칼만 필터에 의해 추론된 가능한 객체 위치를 기반으로 실행 불가능한 할당을 무시하는 데 여전히 사용된다.
◾ Matching Cascade
global assignment 문제에서 measurement-trakcing association을 해결하는 대신 일련의 하위 문제를 해결하는 cascade를 도입한다.
물체가 더 긴 시간 동안 occlusion될 때, 뒤이어 진행되는 칼만 필터 예측은 물체 위치와 관련된 불확실성을 증가 시킨다. 결과적으로, 확률 질량은 state space에서 퍼져나가고 관측 가능성은 더 낮아진다. 직관적으로, 관련 metric은 measurement에서 track까지의 거리를 증가 시켜 확률 질량의 확산을 고려해야 한다.
반면에, 두 track이 동일한 detection을 위해 경쟁할 때, Mahalanobis 거리는 투영된 track 평균에 대한 검출의 표준 편차의 거리를 효과적으로 줄이기 때문에 더 큰 불확실성을 선호하는데, 이는 트랙의 단편화와 불안정으로 이어질 수 있기 때문에 바람직하지 않다.
따라서, 본 논문은 association 가능성에서 확률 확산의 개념을 인코딩하기 위해 더 자주 보이는 객체에 우선 순위를 부여하는 matching cascade를 도입한다.
input으로 track T 및 detection D 지수 세트와 최대 연령 Amax를 제공한다.
- detection과 track 사이의 cost matrix 계산.
- detection과 track 사이에서 cost를 기반으로 threshold를 적용하기 위한 mask 계산.
- Matched matrix : 공집합으로 초기화.
- Unmatched detections matrix : detection으로 초기화(매칭 시 제거).
- 1부터 age까지의 값이 할당된 변수 n으로 for문 수행.
- (6) 마지막 n개 프레임에서 detection과 associate 되지 않은(age=n인 경우) track들을 부분 집합 Tn으로 설정.
- (7) Tn의 track과 매칭되지 않은 detection U사이의 최소 cost 매칭.
- (8) mask의 threshold 적용 후 match matrix M에 넣음.
- (9) 조건에 따라 unmatched matrix U 제외. 일치 및 불일치 detection 세트를 업데이트.
11. 일치 및 불일치 detection 세트 업데이트 완료 후 반환.
이 matching cascasde는 더 작은 age의 track(최근에 더 많이 본 track)에 우선 순위를 부여한다는 것에 유의해야 한다. 최종 matching 단계에서, age n = 1의 확인되지 않고 일치하지 않는 트랙 세트에서 원래 SORT 알고리즘에서 제안 된 대로 union association을 통해 교차점을 실행한다. 이는 부분 occlusion으로 인한 갑작스러운 appearance 변화를 설명하고 잘못된 초기화에 대한 견고성을 높이는 데 도움이 된다.
◾ Deep Appearance Descriptor
추가적인 metric 학습 없이 가장 가까운 간단한 인접 쿼리를 사용함으로써, 본 논문에서 제시하는 방법을 성공적으로 적용하려면 실제 online tracking application 전에 오프라인에서 well-discriminating feature embedding을 훈련해야 한다.
이를 위해, 본 논문은 1,261명의 보행자의 111만개 이상의 이미지를 포함하는 large re-identification dataset(MARS)에 대해 훈련된 CNN을 채택하였으며 이는 사람 tracking context의 deepp metric learning에 매우 적합하다.
본 논문에서 사용한 네트워크의 CNN 아키텍처는 표 1에 나와 있다.
두 개의 convolution layer에 이어 여섯 개의 residual block이 있는 광범위한 residual network를 사용한다. 128 dimension의 global feature map은 dense layer 10에서 계산된다. 최종 batch 및 L2 normalization은 cosine apeearance metric과 호환되도록 unit hypershpere에 feature를 projection한다.
3️⃣ Experiments
MOT16 benchmark에서 tracker의 성능을 평가한다. 이 벤치마크는 움직이는 카메라와 하향식 보안 감시 설정을 포함한 7가지 까다로운 테스트 시퀀스에서 tracking 성능을 평가한다. tracker에 대한 input은 Yu 등이 제공한 detection에 의존한다. 그들은 우수한 성능을 제공하기 위해 공공 및 민간 데이터 세트에 대해 faster R-CNN을 학습했다. 공정한 비교를 위해 동일한 detection에 대해 SORT를 다시 실행한다.
테스트 시퀀스에 대한 평가는 λ = 0 및 Amax = 30 프레임을 사용하여 수행되었다. detection은 confidence 0.3의 threshold로 설정했다. 본 논문에서의 나머지 매개 변수는 벤치마크에서 제공하는 별도의 training sequence에서 발견되었다. 평가는 다음 metric 기준에 따라 수행된다.
- Multi-object tracking accuracy (MOTA): Summary of overall tracking accuracy in terms of false positives, false negatives and identity switches [23].
- Multi-object tracking precision (MOTP): Summary of overall tracking precision in terms of bounding box overlap between ground-truth and reported location [23].
- Mostly tracked (MT): Percentage of ground-truth tracks that have the same label for at least 80% of their life span.
- Mostly lost(ML): Percentage of ground-truth tracks that are tracked for at most 20% of their life span.
- Identity switches (ID): Number of times the reported identity of a ground-truth track changes.
- Fragmentation (FM): Number of times a track is interrupted by a missing detection
평가 결과는 표 2와 같다.
본 논문의 adaptions은 성공적으로 ID 스위치의 수를 줄였다. SORT와 비교하여 ID 스위치는 1423에서 781로 감소했다. 이것은 약 45%의 감소이다. 동시에, track fragmentation은 occlusion 및 misses를 통한 객체 식별 유지로 인해 약간 증가한다. 또한 대부분 tracking된 개체의 수가 크게 증가하고 대부분 손실된 개체의 수가 감소하는 것을 볼 수 있다.
전반적으로, appearance 정보의 통합으로 인해 더 긴 occlusion임에도 identities를 성공적으로 유지한다. 해당 tracker의 ouput 예시는 그림 1과 같다.
MOTA 점수에 대한 전반적인 영향을 고려할 때, 더 큰 confidence threshold를 detection에 적용하면 잠재적으로 알고리즘의 보고된 성능을 큰 폭으로 향상 시킬 수 있다. 그러나 False positive가 대부분 정적 장면의 기하학에서 산발적인(sporadic) detecotr response에서 생성되고 상대적으로 큰 maximum allowed track age 때문에, FP가 객체 trajectory에 결합된다. 동시에 잘못된 경보(alarm) 사이에서 track jumping을 자주 관찰하지 못했지만 tracker는 일반적으로 보고된 물체 위치에서 비교적 안정적이고 정지된 track을 생성했다.
4️⃣ Conclusion
본 논문은 사전 훈련된 association metric을 통해 appearance 정보를 통합하는 SORT의 확장을 제시다. 이러한 확장으로 인해, 더 긴 occlusion을 tracking할 수 있어 SORT는 최첨단 온라인 추적 알고리즘의 강력한 경쟁자이다. 이 알고리즘은 구현이 간단하며 실시간으로 실행된다.
논문을 읽고 DeepSORT의 흐름을 그림으로 간략하게 나타내 보았다.
SORT 보다 훨씬 더 복잡하고 어려워서 이해한 걸 바탕으로 흐름을 그림으로 정리하는데도 한참 걸렸다..
제대로 이해한 건지 모르겠지만.. 나름대로 색으로도 나눠본다고 했는데 오히려 더 헷갈리고 있는건가? 라는 생각이 들었다..ㅋㅋ..
논문을 읽은 후 주관을 가지고 요약, 정리한 글이므로 해당 포스팅에 대한 이의 제기, 다른 의견 제시 등 다양한 지적, 의견은 언제나 대환영입니다!
댓글로 남겨주시면 늦더라도 확인하겠습니다!!!