본문 바로가기

Others/Development

[People Detection and Tracking] Tracking by Detection Approaches

실시간으로 여러 사람을 검출하고 추적해야 할 필요성이 있어서 1080 ti single GPU 환경에서, 적어도 fps 20 이상의 실시간성이 보장되는 접근들의 조합을 이용해서 단순한 테스트를 해보았다. tracking by detection의 접근을 이용하였으며, 사용한 알고리즘들은 아래와 같다.  

 

  • Object Detection
  • Multiple Object Tracking
    • SORT(Simple Online and Realtime Tracking): 리뷰 링크 
    • DeepSORT(Simple Online and Realtime Tracking with a Deep Association Metric): 리뷰 링크(예정)
    • IOU(High-Speed Tracking-by-Detection Without Using Image Information): 리뷰 링크

1. YOLOv4에 다양한 tracker를 적용한 결과 동영상은 아래와 같다.

파라미터들은 논문의 기본적인 세팅값들을 이용하였고, 실험에 사용된 테스트 데이터셋은 MOT 20의 train set 중에 하나를 이용하였다. 정량적 평가는 지금 단계에서는 의미가 없고, 속도적인 측면만 봤을 때 모든 후보들이 사용 가능하다는 판단이 든다. IOU의 경우 워낙 메커니즘이 단순하니 빠른 속도가 나오고, SORT의 경우도 학습된 모델을 사용하지 않으니 빠른 속도가 나오는 것은 예상했는데, DeepSORT의 경우 학습 기반 접근임에도 불구하고 생각보다 빠른 속도를 보였다.  

 

이번에는 Object Detector를 YOLOv4에서 아래와 같이 바꾼 후 나머지 tracking과 관련된 부분들은 그대로 유지하였다. 

2. CenterNet+HarDNet을 detector로 이용한 결과 동영상은 아래와 같다.

CenterNet과 HarDNet을 이용한 조합도 YOLOv4 대비 그렇게 나쁜 처리 속도를 보이는 것 같지는 않아서, 실시간 object detector의 후보군으로 같이 사용해볼 필요가 있을 것 같다. 

 

 

3. 이번에는 YOLOv4와 CenterNet+HarDNet 간의 속도 및 검출된 object의 개수를 비교해보았다. 결과 동영상은 아래와 같다.

속도는 거의 비슷해보인다. 정량적 평가는 아니지만, 눈에 뛰는 False Positive가 적다는 관찰하에, 검출된 object의 개수는CenterNet+HarDNet의 경우가 YOLOv4 대비 전반적으로 많은 것을 알 수 있다. 따라서 정확도와 속도를 함께 고려했을 때 CenterNet+HarDNet도 실시간으로 사용해볼만한 object detector가 아닐까 생각이 된다.