Abstract
- 제출된 12개의 MOT(Multiple Object Tracking) 기법들에 대한 결과를 보고
- 추가로, 6개의 최신 MOT 기법들의 결과를 보고
- Challenge 결과 드론 기반 MOT에서는 아직도 풀어야 할 문제가 많이 있음.
- 웹사이트: http://aiskyeye.com/
1. Introduction
- MOT는 비디오 상에서 움직이는 여러 object들에 대한 identities와 trajectories를 결정하는 것을 목적으로 함.
- 기존의 MOT용 벤치마크 데이터셋은 드론 기반 MOT의 데이터셋이 큰 시점 변화나 scale을 갖기 때문에 서로 상당히 다름.
- [53]에서 볼 수 있듯이, 전반적인 MOT 시스템은 보통 object detection과 multi-object tracking으로 구성됨.
-> 공통적인 prior detection input을 사용하지 않고, 완전한 MOT 시스템을 평가하는 것이 보다 합리적임.
-> 참고로, VisDrone-VDT2018[67]에서는 공통적인 prior detection input을 사용한 MOT 기법들을 포함시킴.
2. Related Work
- 최근의 MOT 기법들에 대해 리뷰함.
- similarity learning은 MOT task에서 중요한 역할을 하기 때문에, 관련된 person re-id 기법들에 대해서도 함께 리뷰를 함.
-> person re-id 기법: tracking 성능 향상을 위해 변별력이 있도록 object들의 appearance features를 계산함.
2.1. Multi-Object Tracking
- MOT task의 목적은 sequence 상에서 target의 trajectories를 결정하는 것을 목표로 함.
- 대부분의 이전 연구들은 tracking-by-detection 전략을 기반으로 하고 있음.
- [55]에서는 hierarchical한 relation hypergraph를 기반으로 하는 새로운 data association 기법이 제안됨.
-> MOT task를 동적으로 구성된 affinity graph 상에서 dense한 neighborhoods searching problem로 공식화함.
- [27]에서는 object들에 대해 long-term의 appearance model에 대한 학습을 개선하기 위해 Bilinear LSTM model을 사용
- [65]에서는 noisy detection과 target들 간의 빈번한 interaction을 다루기 위해, single object tracking을 data association 기법으로 embedding함.
- [26]에서는 low-level의 grouping과 high-level의 detection 및 tracking을 결합하기 위해 correlation co-clustering model을 개발함.
- [52]에서는 temporal 및 appearance 정보를 하나의 통일된 프레임워크로 결합함.
- [54]에서는 새로운 non-uniform hypergraph 기반의 MOT 기법을 제안함.
- [37]에서는 tracking 시 객체의 identities가 switching되는 개수의 최소화를 목적으로, scoring function(target tracking metric을 위한 명시적인 proxy를 의미)의 학습을 위해 풍부한 training set을 구축하는 반복적인 체계를 제안함.
- [12]에서는 feature extraction, affinity estimation, multi-dimensional assignment를 포함하는 end-to-end의 network를 제안함.
2.2. Person Re-identification
- Person re-identification(ReID)은 MOT task에 널리 적용되며, 서로 다른 시간이나 장소에서 관심 있는 사람을 식별하는 것을 목표로 함.
- AlignedReID[61]에서는 local features들과 공동으로 학습된 global features를 추출함.
- [59]에서는 unsupervised한 방법으로 raw 픽셀 데이터로부터 multi-level(예: pixel-level, patch-level, image-level)의 descriptor를 학습하기 위한 weighted linear coding 기법을 제안함.
- [50]에서는 part-based convolutional baseline이라 불리는 network와 refined된 part pooling 기법을 사용하여 변별력있는 features를 학습하는 방법을 제안함.
- [47]에서는 context-aware feature sequences를 학습시키며, 동시에 attentive한 sequence 비교를 수행하는 방법을 제안함.
- 이미지의 쌍(pairs) 대신에, 비디오 기반 ReID 기법들은 비디오 sequences의 쌍에 초점을 두고 있음.
- [18]에서는 비디오 기반 person reID를 위해, 4개의 서로 다른 temporal modeling 기법들(temporal pooling, temporal attention, RNN, 3D convnets)에 대해 비교를 수행함.
- [29]에서는 구별되는 신체 part의 다양한 set을 자동으로 발견하기 위해 새로운 spatiotemporal attention model을 제안함.
- [10]에서는 공간 영역 및 시간 영역에서 공동으로 비디오 내 사람의 salient한 part에 집중하는 방법을 제안함.
3. The VisDrone-MOT2019 Challenge
- VisDrone-MOT2019 Challenge는 prior detection input 없이, multi-object tracking을 수행하는 것에 초점을 두고 있음.
-> 즉, 참가자들은 자신들의 개별적인 detection에 기반한 multiple object tracking 결과를 제출하도록 되어 있음. 추가로, appearance 나 motion model과 같은 추가적인 데이터도 가능함.
3.1. The VisDrone-MOT2019 Dataset
- Visdrone-VDT2018 Challenge[67]와 동일한 데이터셋을 사용
-> 79개 비디오 클립으로 구성되어 있으며, 총 33,366개의 프레임을 가지고 있고, 3개의 subset으로 나눠짐.
-> training set: 56개 비디오 클립으로써, 24, 198개의 프레임들로 구성
-> validation set: 7개 비디오 클립으로써, 2, 846개의 프레임들로 구성
-> testing set: 16개 비디오 클립으로써, 6, 322개의 프레임들로 구성
- 데이터셋이 상당히 도전적이므로, 5개의 선택된 object categories에 집중함.
-> pedestrian, car, van, bus, and truck에 해당되며, figure 1은 몇몇의 annotated된 예를 나타냄.
-> 참고: 사람이 서있거나 걷고 있으면 pedestrian으로, 나머지 경우에 대해서는 person으로 분류
- 전체 tracking 시스템의 성능을 평가하므로, tracker를 위한 공통적인 detection input을 제공하지 않으며, 참가자들은 자신들만의 detection 기법들을 이용하도록 함.
- VDT2018[67]의 Task 4a와 유사하게, 제출된 알고리즘들의 성능 평가를 위해 [41]의 protocol을 사용함.
- 각각의 알고리즘들은 confidence scores를 가진 bounding boxes 리스트와 이에 상응하는 identities를 제공해야 함.
- bounding box 검출에 대한 average confidence에 따라서 tracklets(동일한 identity로 bounding box 검출에 의해 형성된)를 sorting함.
-> tracklets과 ground truth tracklets과의 IoU(intersection over union) overlap이 0.25, 0.50, 0.75 보다 큰 경우에 대해서만 올바른 tracklets으로 간주함.
-> 서로 다른 thresholds에 대해 object class 당 mAP(mean average precision)를 평균하여 알고리즘에 대한 순위가 결정됨. 보다 자세한 내용은 [41]을 참고할 것.
3.2. Submitted Trackers
- 전체 12개의 알고리즘이 제출되었으며, table 1에 요약을 함.
- Faster R-CNN[44] detection input이 주어진 경우에 대해서 합당한 파라미터를 사용하여 6개의 baseline 기법들에 대해서도 성능 평가를 수행함.
-> 6개의 baseline 기법들: GOG[42], IHTLS[15], TBD[19], CMOT[5], H2T[55], CEM[39]
- 추가로, VisDrone-VDT2018 Challenge Ctrack[67]의 MOT track 우승 기법과도 비교를 함.
- 제출된 모든 MOT 기법들은 tracking-by-detection 전략에 기반하고 있음.
- detection input으로 사용된 알고리즘들의 종류:
-> Cascade R-CNN[8], CenterNet[64], R-FCN[13], FPN[31], RetinaNet[32], Faster R-CNN[44]
- data association 정확도 향상을 목적으로, detection 간의 변별력 있는 feature 생성을 위해 re-id 전략을 적용한 알고리즘들의 종류:
-> HMTT(A.4), IITD DeepSort(A.5), SCTrack(A.7), T&DOF(A.9), TNT DRONE(A.10), VCLDCN(A.12)
- temporal coherency를 capture하기 위해, single object trackers를 MOT 알고리즘으로 결합한 알고리즘들의 종류:
-> KCF(DBAITracker(A.1)), DaSiameseRPN(HMTT(A.4))
- temporal features를 활용한 알고리즘들의 종류:
-> KLT(GGDTRACK(A.3)), optical flow(Flow-Tracker(A.2), T&D-OF(A.9)),
motion patterns(TrackKITSY(A.11)), LSTM(SGAN (A.8))
- 비-딥러닝 기반 기법들을 활용한 알고리즘의 종류:
-> OS-MOT(A.6): feature extraction[14], data association[6], model update의 3가지 주요 모듈을 포함함.
4. Results and Analysis
- 제출 결과는 table 2와 같음.
- 모든 제출된 알고리즘들 중에서 top 3의 AP score를 보인 방법들은 DBAI-Tracker(A.1), TrackKITSY(A.11), Flow-Tracker(A.2)임.
-> 이들은 모두 Cascade R-CNN[8]을 detection으로 이용하고 있음.
-> 작은 object들을 많이 포함하고 있는 VisDrone 데이터에 적응하기 위해, object를 나타내는 강건한 appearance representation 뿐만 아니라, single object trackers나 다른 low-level의 motion patterns에 의한 temporal coherency 정보를 활용함.
- VisDrone-VDT2018 Challenge의 Ctrack[67]의 우승 기법과 비교해봤을 때, 2019 Challenge에 제출된 알고리즘들 중 top 6개는 훨씬 더 높은 정확도를 보임.
- Faster R-CNN을 detection input으로 사용하는 baseline 기법들은 잘 동작하지 않으며, baseline 기법들 중 CMOT(14.22 AP score)가 가장 우수한 성능을 보임.
- DBAITracker(A.1)는 좋은 효율성을 유지(Tesla V100 GPU를 이용하여 20~50 fps로 동작)하면서 가장 우수한 정확도를 보임.
- GGDTRACK(A.3)는 GPU 카드 없이도, 25 fps로 동작하는 효율성을 보이며, 우수한 성능을 보임.
4.1. Performance Analysis by Categories
- 서로 다른 object categories(AP_car, AP_bus, AP_trk, AP_ped, AP_van)에 대해 tracker들의 정확도를 평가함.
- pedestrian을 제외하고는 DBAITracker(A.1)가 모든 categories에 대해 가장 우수한 성능을 보임.
-> 특히 bus나 truck과 같은 작은 양의 training 데이터를 가진 categories에 대해서는 훨씬 더 좋은 AP score를 보임.
-> 이러한 경우에 대해서 개선된 Cascade R-CNN[8]이 효율적이었을 것으로 추측함.
- TrackKITSY(A.11)는 AP_ped에서 가장 높은 score를 보였으며, 이는 작은 object의 추적을 위해 추출된 motion pattern의 효과를 나타내고 있음.
->추가로, car, truck, van 등의 categories에 대해서 두번째로 높은 순위를 보임.
- Flow-Tracker(A.2)는 car, truck, van 등의 categories에 대해서는 세번째로 높은 순위를 보였음.
-> 몇몇 프레임들 내에서 unmatched된 tracks들의 위치를 예측하기 위해 FlowNet[48]을 tracker로 사용함.
- HMMTT(A.4)는 bus는 두번째, pedestrian은 세번째로 높은 순위를 보였음.
-> IOU 메커니즘을 이용한 matching이 동작하지 않을 때 gap을 채우기 위해 최신의 single tracker인 DaSiameseRPN[68]을 사용함.
4.2. Discussion
- 드론에서 multi-object tracking을 수행하는 것은 도전적임.
- 현재 제출된 결과들은 실제적인 어플리케이션 적용을 위해서는 상당히 부족한 결과를 보임.
- 다음과 같이 효과적인 기술들에 대해서 탐구할 수 있음.
Appearance representation: 제출된 MOT 기법들에 따르면, ReID models들은 변별력있는 feature를 활용함으로써 detections을 association하는데 유용함.
-> 예: HMTT(A.4), IITD DeepSort(A.5), SCTrack(A.7), T&D-OF(A.9), TNT DRONE(A.10), VCLDCN(A.12)
-> 위의 알고리즘들에서 사용된 ReID models들은 Market1501[62]와 CUHK[30] 같은 추가 데이터를 이용하여 오프라인으로 훈련됨.
Motion representation: 드론에 장착된 카메라에서 취득된 motion pattern은 복잡하기 때문에, object association을 위한 강건한 motion model을 구축하는 것이 중요함.
-> 예: KLT(GGDTRACK(A.3)), optical flow(Flow-Tracker(A.2)), LSTM(SGAN(A.8))
5. Conclusion
- VisDrone-MOT2019 Challenge에서는 총 12개의 알고리즘들이 제출됨.
- DBAI-Tracker(A.1), TrackKITSY(A.11), Flow-Tracker(A.2)가 top 3에 해당하는 알고리즘들이며, 이들은 각각 43.94, 39.19, 30.87의 AP Score를 보임.
-> 주목할만한 것은 이들은 모두 최신의 object detector인 Cascade R-CNN[8]에 기반하고 있다는 것임.
A. Submitted Trackers
- 개인적으로 최상위 3개의 tracker인 DBAI-Tracker(A.1), TrackKITSY(A.11), Flow-Tracker(A.2)에 대해서만 살펴봄.
A.1. DeepBlueAI-Tracker(DBAI-Tracker)
Zhipeng Luo, Yuehan Yao, Zhenyu Xu, Feng Ni and Bing Dong
{luozp, yaoyh, xuzy, nif, dongb}@deepblueai.com
- tracking by detection에 기반한 tracking 파이프라인을 적용함.
- Iou tracker[7]에 기반한 강력한 detection model을 고안하였으며, GOG[42]와 KCF[21]를 또한 사용함.
- detection model은 Cascade R-CNN[8]과 IoU tracker[7]를 사용함.
- object들에 대해 강건한 representation를 활용하기 위해서, FPN[31]에 기반한 multi-scale feature maps을 사용함.
- 추가로, 보다 나은 성능을 위해, GCNet[9]을 사용함.
A.11. Online multi-object tracking using joint domain information in traffic scenarios(TrackKITSY)
Wei Tian, Jinrong Hu, Yuduo Song, Zhaotang Chen, Long Chen, Martin Lauer
{wei.tian, martin.lauer}@kit.edu, utppm@student.kit.edu, hujr3@mail2.sysu.edu.cn, 761042366@qq.com, chenl46@mail.sysu.edu.cn
- 제안한 알고리즘은 Cascade R-CNN[8]을 이용한 detection에 기반하고 있으며, VisDrone-MOT2019 dataset에 적합하도록 원래 Cascade R-CNN을 약간 변경시킴.
1) bounding box의 aspect ratio에 대한 큰 variance를 fit하기 위해, 서로 다른 aspect ratio를 갖는 더 많은 anchors들을 RPN에 추가시킴.
2) photometric distortion과 random cropping이 training 과정에서 data augmentation을 위해 사용됨.
3) 후처리에 있어서 NMS(non-maximum-suppression) 시 낮은 IoU 임계값이 사용되었으며, 이는 valid한 annotation을 가진 objects들은 거의 겹치지 않지만, 겹쳐진 objects들의 경우 보통 “ignored” region에 있다는 관측에 근거한 것임.
4) precision 개선을 위해 multi-scale training과 testing이 사용되었으며, tracking 모듈의 경우 [51]에 기반하고 있으며, VisDrone-MOT2019 dataset 적합하도록 약간의 변경을 함.
A.2. Multiple Object Tracking with Motion and Appearance Cues(Flow-Tracker)
Weiqiang Li, Jiatong Mu, Guizhong Liu
{lwq1230,m625329163}@stu.xjtu.edu.cn, liugz@xjtu.edu.cn
- Cascade R-CNN[8]과 IoU tracker[7]를 기반으로 하는 접근임.
- detection backbone은 ResNet-101을 이용하였으며, Cascade R-CNN을 base detector로 사용함.
- detection 결과를 개선하기 위해, 기본적인 network에 deformable convolution을 추가함.
- training 데이터를 보완하기 위해, 제안한 detector를 COCO train set을 이용하여, pre-train한 후 VisDrone2019-MOT train set으로 fine-tuning을 수행함.
- tracking을 위해 IoU tracker를 약간 개선시킴.
- 제안한 tracking 프레임워크는 크게 3가지 부분으로 나뉨.
1) 2개의 프레임들 사이의 motion을 예측하기 위해 optical flow network를 사용하고, 현재 프레임 상에서 tracks들의 위치를 예측함. 이를 통해 camera motion 문제를 해결함. 그 다음에 tracks과 detections 사이의 IoU를 계산하고 정해진 임계치보다 큰 경우에는 matched되었다고 간주함.
2) unmatched된 tracks과 detections에 대한 appearance features를 추출함. 그 다음에 appearance distance와 unmatched된 tracks과 detections 사이의 IoU distance를 계산함. 이 둘이 동시에 matching 기준을 충족할 경우에, matched되었다고 간주함.
3) 최종적으로, unmatched된 tracks에 대해서 FlowNet[48]을 tracker로 사용하여 여러 프레임들에 대한 위치를 계속적으로 예측함. 이들 프레임 내에서 성공적으로 matched되었다면 이러한 tracks들은 연속될 수 있다고 간주하며, 그렇지 않은 경우에는 해당 objects들은 사라졌다고 간주함.
- 매 프레임마다 optical flow를 이용한 예측을 수행하면 tracking 속도는 5fps가 나오며, 카메라가 움직이는 경우에 대해서만 optical flow를 이용하여 예측하면, 속도는 100 fps가 나옴.