Paper Reading/Review
[리뷰] Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking
- -
728x90
반응형
이번에는 2022년에 발표된 논문인 Observation-Centric SORT: Rethinking SORT for Robust Multi-Object Tracking를 읽고, 리뷰해보고자 합니다.
본 논문은 2023년에 발표된 논문인 Deep OC-SORT: Multi-Pedestrian Tracking by Adaptive Re-Identification의 baseline이 되는 논문입니다.
Index
1. Background
1.1. Limitations of Simple Online and Realtime Tracking
2. Abstract
3. Introduction
4. Related Work
5. Method
5.1. Observation-centric Online Smoothing
5.2. Observation-Centric Momentum
5.3. Observation-Centric Recovery
5.4. Whole Architecture
6. Experiment
7. Conclusion
1. Background
1.1. Limitations of Simple Online and Realtime Tracking
- 객체가 linear하게 움직인다고 가정
- \( u_{t+1}=u_{t}+\dot{u}_{t} \Delta t \), \( v_{t+1}=v_{t}+\dot{v}_{t} \Delta t \)
- \( (u,v) \) is object center point in 2D
- \( u_{t+1}=u_{t}+\dot{u}_{t} \Delta t \), \( v_{t+1}=v_{t}+\dot{v}_{t} \Delta t \)
- kalman filter는 object가 잠시 사라지는 순간(측정 값이 없는 경우)에는, 예측값을 그대로 가져와서 사용
- sensitive to state noise
- \( (u,v) \)가 가우시안 분포를 따른다고 가정하면, 위의 식은 아래와 같이 표현 가능
- \( \dot{u}=\frac{u_{t} + \Delta t - u_{t}}{\Delta t} \), \( \dot{v}=\frac{v_{t} + \Delta t - v_{t}}{\Delta t} \)
- \( \delta_{\dot{u}} \sim \mathcal{N}(0, \frac{2\sigma_u^2}{(\Delta t)^2}) \), \( \delta_{\dot{v}} \sim \mathcal{N}(0, \frac{2\sigma_v^2}{(\Delta t)^2}) \)
- noise가 최대인 경우는 \( \Delta t=1 \)인 경우임
- \( \dot{u}=\frac{u_{t} + \Delta t - u_{t}}{\Delta t} \), \( \dot{v}=\frac{v_{t} + \Delta t - v_{t}}{\Delta t} \)
- 보통의 시나리오에서 object의 변위는 몇 픽셀에 불과하지만, 이는 곧, 추정치가 몇 픽셀의 이동만 있더라도 속도 추정에 큰 variance가 발생
- 예측값과 측정값이 크게 다르지 않다면 큰 영향이 없지만, kalman filter를 업데이트 하기 위한 관측치가 없는 경우에는 오류가 누적되기 때문에 문제가 발생할 수 있음
- \( (u,v) \)가 가우시안 분포를 따른다고 가정하면, 위의 식은 아래와 같이 표현 가능
- temporal error magnification
- kalman filter는 관측값이 없는 경우, 자체 예측만을 기반으로 state를 업데이트
- \( t \) ~ \( t+T \) frame 사이에 occlusion이 발생한 경우, SORT의 object center point 예측값은 아래와 같음
- \( u_{t+T}=u_{t}+T\dot{u}_{t} \), \( v_{t+T}=v_{t}+T\dot{v}_{t} \)
- \( \delta_{u_{t+T}} \sim \mathcal{N}(0, 2T^{2}\sigma_{u}^{2}) \), \( \delta_{v_{t+T}} \sim \mathcal{N}(0, 2T^{2}\sigma_{v}^{2}) \)
- 즉, 시간 \( T \)가 길어질수록 error는 제곱값으로 축적
- \( u_{t+T}=u_{t}+T\dot{u}_{t} \), \( v_{t+T}=v_{t}+T\dot{v}_{t} \)
- 복잡한 장면의 경우에 큰 문제 발생
- estimation-centric
- 이전의 두 가지 문제는 kalman filter가 추정값 중심의 방법이기 때문에 발생하며, 관측값은 trajectory의 propagation을 위해서만 사용
- 관측값이 추정값과 다른 점은, \( \delta_{z} \sim \mathcal{N}(0, {\sigma\prime}^{2}) \)와 같은 noise의 영향을 받는 것
- detector는 object의 apperance 정보를 사용하지만, kalman filter에서는 사용되지 않음
- noise의 분산이 추정값의 분산보다 작다면 error가 축적되지 않을 것이므로, 관측값에 중요성을 부여해야 함
2. Abstract
- MOT는 많은 발전이 있었지만, 이전의 observation을 이용하여 trajectory를 예측하고 이를 association에 도움을 주는 motion modeling은 상대적으로 덜 연구 되었음
- 최근의 MOT model은 대부분 object는 짧은 시간동안 선형 운동 한다고 가정
- occlusion과 비선형 운동에 민감, 높은 FPS의 영상 필요
- 본 논문에서는 단순한 motion model이 축적된 오류를 줄이고, track이 손실된 것을 복구하는데 관찰의 역할을 강조
3. Introduction
- MOT에서 대부분의 오류는 선형 운동을 가정하는 model을 사용하기 때문에, occlusion이나 비선형 운동에서 발생
- 주로 사용되는 motion model 기반 알고리즘으로는 SORT가 있지만, kalman filter가 선형 운동을 가정
- 높은 FPS의 영상에서 object는 선형 운동일 수 있지만, state noise의 민감도가 증가
- object 변위의 noise는 실제 object의 변위와 같은 크기가 될 수 있고, 큰 variance을 겪는 kalman filter에 의해 추정된 obejct 속도로 이어질 수 있음
- state noise는 object가 occlusion이나 비선형 운동을 하는 경우, detection 되지 않아 error가 더 축적될 수 있음
- SORT는 추정이 중심이라 관찰 보다는 추정에 의존
- 높은 FPS의 영상에서 object는 선형 운동일 수 있지만, state noise의 민감도가 증가
- 추정을 신뢰할 수 없을 때, 관측치를 이용하여 kalman filter를 향상하는 관점 제시
- SORT의 한계를 해결하기 위해, 관측이 trajectory의 momentum을 추정하는 강력한 증거가 된다고 주장
- 관찰 부족으로 인한 kalman filter의 error 누적을 완화하기 위해, 비활성 track이 다시 detection에 의해 활성화되는 시점까지의 가상 궤적을 구축하여 kalman filter를 이용하는 observation-centric online smoothing 방법 설계
- 더 나은 tracklet과 observation의 일치를 위해, direction consistency를 cost matrix에 통합하는 observation-centric momentum 방법 제안
- 단 시간에 occlusion이 발생한 경우를 처리하기 위해, 마지막 observation을 새로운 observation과 연결하여 복구하는 observation-centric recovery 방법 제안
4. Related Work
- motion model
- 선형 움직임을 가정하고, 가우스 근사치에 의존하는 kalman filter, extended kalman filter, unscented kalman filter
- 비선형 움직임을 처리하고, 샘플링 기반의 사후 추정을 하지만 계산 cost가 높은 particle filter
- multi-object tracking
- SORT, DeepSORT, FairMOT, TrackFormer, TransTrack, MOTR, … etc
5. Method
5.1. Observation-centric Online Smoothing
- object가 tracking되지 않는 동안(\( t_{1} \) ~ \( t_{2} \)) error가 축적되는 문제를 해결하기 위해, 가상의 trajectory를 이용하여 kalman filter의 parameter를 수정
- tracking 되지 않는 동안은 object가 등속 운동한다고 가정하며, 그 동안의 추정 측정값 \( \hat{z}_{t} \)는 아래와 같이 표현 가능
- \( \hat{z}_{t}=Traj_{virtual}(z_{t_{1}}, z_{t_{2}}, t)=z_{t_{1}}+\frac{t-t_{1}}{t_{2}-t_{1}}(z_{t_{2}}-z_{t_{1}}) \), \( t_{1} < t < t_{2} \)
- 위의 \( \hat{z}_{t} \)을 kalman filter에 아래와 같이 적용
- \( \hat{x}=F_{t}\hat{x}_{t-1}+K_{t}(\hat{z}_{t}-H_{t}F_{t}\hat{x}_{t-1}) \)
- \( F \) is state transition model
- 기존의 kalman filter와 비교하면, 관측 값이 없는 경우 현재 예측 값을 사용하는 대신, 가상의 trajectory상에 있는 추정값을 사용한다는 차이가 있음
- \( \hat{x}=F_{t}\hat{x}_{t-1}+K_{t}(\hat{z}_{t}-H_{t}F_{t}\hat{x}_{t-1}) \)
- tracking 되지 않는 동안은 object가 등속 운동한다고 가정하며, 그 동안의 추정 측정값 \( \hat{z}_{t} \)는 아래와 같이 표현 가능
5.2. Observation-Centric Momentum
- kalman filter는 선형 운동을 가정하지만 현실의 세계는 대부분 비선형 운동이며, state noise 존재
- 매우 짧은 시간에는 선형 운동으로 근사할 수 있지만, noise가 속도의 consistency 방해
- 속도의 consistency(= momentum)을 cost matrix에 추가
- \( C(\hat{X}, Z)=C_{IoU}(\hat{X}, Z)+\lambda C_{v}(\hat{X}, Z, V) \)
- \( \hat{X}\in \mathbb{R}^{N \times 7} \)은 추정값, \( Z \in \mathbb{R}^{M \times 5} \)는 측정값, \( V \in \mathbb{R}^{N} \)은 \( \Delta t \) 간격으로 관측한 두 frame의 정보를 이용하여 계산된 존재하는 track의 방향, \( C_{IoU} \)는 nagative pairwise IoU를 계산, \( C_{v} \)는 track의 방향과 과거 관측값과 새로운 관측값으로 형성된 방향의 일관성을 계산, \( \lambda \)는 weight factor
- \( C(\hat{X}, Z)=C_{IoU}(\hat{X}, Z)+\lambda C_{v}(\hat{X}, Z, V) \)
- 과거의 측정값과 새 측정값의 방향 계산을 위해, 어떤 두 측정(얼마나 과거의)값을 선택하는 것에 대한 문제가 있음
- 선형 운동에서 noise scale은 두 관측 지점의 시간 차이에 비례한다는 것을 발견
- 그러나 선형 운동을 가정하고 있으므로, 시간 차이가 너무 크면 안됨 (논문에서는 interval로 3을 이용)
- 선형 운동에서 noise scale은 두 관측 지점의 시간 차이에 비례한다는 것을 발견
5.3. Observation-Centric Recovery
- SORT는 비선형 운동인 경우 track이 손실되는데, 보수적인 방법으로 lost target을 찾는 방법 제안
- association 과정에서 track이 비활성화 되는 경우, 새로운 관측값을 이전의 관측값과 연결
- 즉, track이 비활성화된 observations들과 새로운 observation을 비교
5.4. Whole Architecture
- Workflow
- Algorithm
6. Experiment
- MOT17 dataset에서의 성능 비교
- MOT20 dataset에서의 성능 비교
- DanceTrack dataset에서의 성능 비교
- KITTI dataset에서의 성능 비교
- OOS, OCM, OCR의 적용 여부에 따른 성능 변화
- OOS에서 trajectory의 hypothesis 종류에 따른 성능 변화
- OCM에서 \( \Delta t \)의 값에 따른 성능 변화
7. Conclusion
- 선형 운동을 가정하는 SORT의 한계 분석 및 개선을 위해 OOS, OCM, OCR 제안
- occlusion이나 극적으로 비선형 움직임을 가진 object들에 대해 robust함
- 아래와 같은 한계 존재
- 낮은 FPS의 영상이나, object의 움직임이 매우 빠른 경우 IoU와 momentum만으로는 matching하는데 부족
- kalman filter를 개선하지만, 여전히 kalman filter는 선형 움직임을 가정한 model임
논문 링크
728x90
반응형
'Paper Reading > Review' 카테고리의 다른 글
Contents
당신이 좋아할만한 콘텐츠
-
[리뷰] KalmanNet: Neural Network Aided Kalman Filtering for Partially Known Dynamics 2023.03.27
-
[리뷰] Hard to Track Object with Irregular Motions and Similar Appearances? Make It Easier by Buffering the Matching Space 2023.03.21
-
[리뷰] SMILEtrack: SiMIlarity LEarning for Multiple Object Tracking 2023.03.06
-
[리뷰] BoT-SORT: Robust Associations Multi-Pedestrian Tracking 2023.02.27
소중한 공감 감사합니다