Tech
42dot MCMOT(Multi-Camera Multi-Object Tracking) 챌린지
2022.09.20

42dot이 자율주행 연구 개발을 위한 생태계 조성의 일환으로 공개한 자율주행 데이터 ‘42dot Open Dataset’을 토대로 진행한 MCMOT 챌린지 결과와 그 내용을 공개합니다.


교통 흐름에 맞춰 자율주행을 하기 위해서는 주변 사물의 3차원 위치와 속도를 정확하게 인식하는 것이 중요합니다. 이를 위해 자율주행 시스템은 객체 인식(object detection)과 객체 추적(object tracking)과 같은 컴퓨터 비전 기술을 활용합니다. 객체 인식은 사물의 종류와 위치를 파악하고, 객체 추적은 이동하는 객체들에게 고유한 트랙 ID를 부여하여 시간에 따른 움직임을 계산합니다. 자율주행차는 주변 상황을 인식하기 위해서 여러 대의 카메라(또는 임의의 센서)를 이용합니다. 그렇다면 서로 다른 방향을 바라보는 카메라에 동시에 인식된 객체는 어떻게 처리되어야 할까요?


동일한 객체가 카메라 시점을 넘나드는 순간 트랙 ID가 변한다면 자율주행 시스템은 해당 객체가 갑자기 사라지고 나타났다고 오인식을 하게 되며 주행 품질 저하(급감속)가 발생합니다. MCMOT 챌린지는 카메라 시점이 바뀌더라도 추적이 유지되는 동안 동일한 객체에 대해서 고유한 ID를 부여하는 것을 목표로 합니다. 이번 챌린지에서는 모든 시간과 카메라 시점에 대한 객체 인식 정보를 제공하고, 고유한 ID를 얼마나 정확하게 할당하는가를 평가합니다. 챌린지는 2022년 6월 15일부터 7월 31일까지 진행되었고, 상위 3개 팀에게 각각 300만원, 100만원, 50만원의 상금을 수여했습니다.

위와 같이 다른 방향(left, center, right)을 바라보는 서로 다른 카메라에서 동시에 인지된 객체에 대해서는 고유한 트랙 ID가 할당됩니다. 해당 ID는 시간이 지나도 계속 유지되어야 합니다.



MCMOT 데이터셋


MCMOT 데이터셋은 3대의 카메라에서 나타나는 7종의 사물(car, bus, truck, two wheeler, pedestrian, emergency car, misc.)에 대한 cuboid annotation과 트랙 ID를 제공합니다. 각 객체의 전/후/좌/우 면을 구분하고 추가적인 속성으로 4단계의 가시성 척도(visibility level)를 표현했습니다. 데이터셋은 도심 도로에서 흔히 나타나는 주행 시나리오(끼어들기, 차선 변경, 교차로 등)로 구성되어 총 13개의 시퀀스(16,233 프레임)가 제공됩니다. MCMOT 데이터셋에 대한 내용은 웹페이지를 통해서 자세히 확인할 수 있습니다.




챌린지 평가 방식


순위를 다투는 챌린지에서는 올바른 지표 설정이 중요합니다. MCMOT 챌린지에서는 IDF1[1] 스코어를 이용하여 카메라 시점과 무관하게 트랙 ID가 얼마나 지속되었는가에 대하여 평가합니다. 아래의 그림은 IDF1의 계산 방법을 설명합니다. 예제는 객체가 왼쪽에서 오른쪽으로 이동하는 상황을 가정합니다. 좌측 카메라 시점(left)에서 보이던 객체는 시간이 지남에 따라 사라지고 우측 카메라 시점(Right)에 다시 나타납니다. GT(ground truth)와 동일하게 하나의 트랙 ID를 사용한다면 IDF1 점수는 1.0으로 최대가 됩니다. 예제와 같이 P1과 P2로 트랙 ID가 둘로 나뉘는 경우, IDF1 점수는 1.0보다 작은 값이 되었음을 확인할 수 있습니다.



MCMOT 챌린지 결과


MCMOT 챌린지의 결과는 KCCV2022와 연계된 온라인 워크숍 형태로 42dot Autonomous Tech Day를 통해서 소개되었습니다. 이날 MCMOT 챌린지 수상팀들의 솔루션이 소개되었으며, 흥미롭게도 상위 3개 입상팀은 서로 다른 방식으로 문제에 접근했습니다.


3위를 수상한 CDW 팀은 두 단계로 과정을 구분하여 카메라별로 트랙 ID를 추적하고 전역적인 범위에서 통합 관리하는 방식을 제안했습니다. 먼저 로컬 트래킹(local tracking)은 개별 카메라 영상에 대해서 독립적으로 트랙 ID를 부여하는 과정입니다. 이때 StrongSORT 알고리즘[2]이 사용되었습니다. 글로벌 ID 매칭 단계에서는 다른 시점에서 나타나는 객체들이 고유한 ID가 부여될 수 있도록 아래의 과정을 수행합니다.


1) 카메라의 위치가 고정이므로 겹치는 영역에 속하는 트랙들을 매칭(matching) 후보로 지정한다.

2) 글로벌 트랙 ID가 부여되지 않은 인식 결과(unmatched detection)에 대해서 appearance 기반 feature vector를 추출하고 기존 트랙 ID와 거리(distance)를 계산한다.

3) 거리가 일정 범위 이내이면 매칭이 이루어진 것으로 판단되어 이전 트랙의 글로벌 ID를 할당하고, 그렇지 않으면 새로운 글로벌 ID가 생성된다.

제안하는 방법은 글로벌 ID 매칭이 잘 이루어지면 StrongSORT 알고리즘에 의해 로컬 트랙이 유지되면서 좋은 성능을 보였지만, 글로벌 ID 트랙이 최초로 생성되는 시점의 appearance가 모호하면 잘못 형성된 로컬 트랙에 의해 전체 성능이 저하되는 한계가 있다고 CDW 팀이 밝혔습니다.


2위를 수상한 MLV_GIST 팀은 빠르게 동작할 수 있는 online MCMOT pipeline을 만드는 것을 목표로 삼았습니다. (A baseline for online Multi-Camera Multi-Object Tracking with filters and rule-based multi-view associations) 전체 파이프라인은 아래 그림과 같이 구성됩니다.

효율적인 연산을 위해 42dot MCMOT 챌린지에서 제공되는 카메라별 영상으로부터 detection 정보를 정리하고 각 시점 간 매칭에 필요한 homography를 미리 계산합니다. MOT(Multi Object Tracking) 프로세스는 카메라의 개수와 객체의 종류를 고려하여 총 21개(3*7)로 구성됩니다. 마지막으로 multi-view association을 통해서 시점이 다른 카메라에서 계산된 local ID들을 통합합니다.


단일 카메라에 대한 MOT는 2D 포인트 기반 GMPHD(Gaussian Mixture Probability Hypothesis Density) 필터 [3]을 사용했습니다. MCMOT 데이터셋은 객체마다 앞/뒤/좌/우 4개의 면에 대한 정보를 제공하는데, 2D 포인트 트래킹을 위해서 객체의 전체를 포함하는 bounding box의 중심점을 사용했습니다. GMPHD 필터는 multi-class MOT로 확장하고 병렬 연산을 위해서 카메라 개수(3개)와 객체의 종류(7종)를 고려해 21개로 구성했습니다. 또한 multi-camera MOT로 확장하기 위해 matching matrix와 homography matrix를 online으로 계산합니다. 이때 SIFT feature [4]와 LMEDAS [5]가 사용되었습니다. 아래 그림은 parallel 한 tracking filter에서 얻은 local ID가 homography 변환을 통해 global ID로 통합되는 과정을 나타냅니다. 좌/우 시점의 디텍션 결과를 중앙 카메라 시점으로 옮기고 IOU(intersection over union)를 이용해 cost matrix를 계산합니다. Global ID를 추정하기 위해서 헝가리안 알고리즘을 통해 전체 비용을 최소화합니다.

42dot MCMOT 챌린지에서 제공되는 객체 인식 결과는 앞/뒤/좌/우 면이 구분되어서 제공됩니다. 추가적인 성능 개선을 위해서 multi plane을 각각 총 8가지로 나눈 후 서로 간의 이동이 가능한 transition에 대해서만 association을 적용했습니다.


우승을 차지한 CVLAB_CNU 팀은 Re-ID 방식을 채택했습니다. MOT 문제는 일반적으로 motion model 과 re-identification(Re-ID) model 중 하나를 기반으로 풀게 됩니다. 42dot MCMOT 챌린지는 단순히 시간 축에 대해서만 매칭을 수행하는 것이 아니라, 서로 다른 시점에 대해서도 매칭을 해야 하므로 특징 벡터를 추출하고 유사도를 측정하는 Re-ID 기반의 모델을 구성하는 것이 좋을 것으로 CVLAB_CNU 팀은 판단했습니다.


MCMOT를 위한 Re-ID 모델의 구조는 아래와 같습니다. 동일 시간대의 모든 카메라 입력 영상을 backbone 모델에 통과시켜 특징 벡터 F_t를 추출합니다. F_t는 챌린지에서 주어진 객체 정보 B_t 와 함께 Re-ID 추출 모델의 입력으로 사용합니다. Re-ID 추출 모델은 아래 그림과 같이 간단하게 pooling, conv, 그리고 FC 레이어로 구성되며, 객체는 512 차원의 벡터로 변환됩니다. 여기서 얻어진 Re-ID 특징 벡터를 이용하여 객체 사이의 매칭이 이루어지고 기존 trajectory에 동일한 객체가 존재하는지 association이 진행됩니다.

Association은 1) frame-by-frame matching과 2) center-to-side matching으로 진행됩니다. Frame-by-frame matching은 동일한 카메라 시점에 대해서 이전 프레임(t−1)과 현재 프레임(t)을 매칭하는 것이고, center-to-side matching은 center 카메라와 left 카메라 간의 매칭과 center 카메라와 right 카메라 간의 매칭을 의미합니다. Re-ID의 객체의 유사도는 cosine similarity를 사용됩니다.

추가적인 성능 개선을 위해 Re-ID 과정에서 2D transformation 관계를 추가로 고려합니다. 카메라의 위치가 고정되었다는 점에 착안하여 2D transformation 관계는 영상에 존재하는 모든 객체에 동일합니다. 학습 데이터셋의 매칭 관계를 이용해서 변환 matrix를 추출하였고, 해당 matrix로 모든 검증 데이터셋에 대해 중첩되는 IOU를 계산해 보니 평균 0.65가 나타나는 것을 확인하였습니다. Center-to-side matching 과정에서 유사도를 측정할 때 box의 center point에 대한 거리를 측정해서 서로 가까울수록 매칭될 수 있도록 설계했습니다.


또한 siamese tracker [6] 기반의 모션 모델도 추가했습니다. Siamese tracker는 이전 프레임의 객체 box를 padding 해서 2배로 확장 후 현재 프레임으로 적용을 합니다. 확장하지 않은 이전 프레임의 객체는 15x15 pooling을 진행하고, 2배를 확장시킨 현재 frame의 객체에 대해서는 30x30 pooling을 수행합니다. 이후 convolution layer를 통과시켜 현재 frame의 객체의 center point와 box regression 값을 구하게 됩니다.

Siamese tracker가 추가된 최종 네트워크의 구조는 아래와 같습니다. Center-to-side matching 시에 유사도를 측정할 때 box의 center point에 대한 거리를 활용하는 것 대신에 siam-tracker의 예측 결과를 center point로 활용함으로써 성능을 개선할 수 있었습니다.




・ ・ ・

참가팀들은 챌린지 기간(22년 6월 15 ~ 22년 7월 31일) 동안 주어진 문제를 탐구하고 해결하기 위해 다양한 실험을 진행했습니다. MCMOT 챌린지는 종료되었지만 리더보드는 활성화된 상태로 현재 최고 점수(76.95)를 뛰어넘는 새로운 결과물 제출을 기대하고 있습니다.


앞으로 42dot Open Dataset을 통해 MCMOT 뿐만 아니라 자율주행 기술 발전에 기여할 수 있는 다양한 데이터셋들을 공개할 예정이니 많은 기대 부탁드립니다. 데이터셋과 관련한 문의사항은 dataset@42dot.ai로 연락 주시기 바랍니다.


조훈경 | AD Labeling (Tech Lead)


Fleet에서 시시각각 수집되는 대용량의 원천 데이터를 활용하여 어제보다 더 발전한 자율주행차를 개발하고 있습니다.


References

[1] E. Ristani, F. Solera, R. Zou, R. Cucchiara, and C.Tomasi, "Performance measures and a data set for multi-target, multi-camera tracking." In ECCV 2016.

[2] Y. Du, Y. Song, B. Yang, and Y. Zhao, "Strongsort: Make deepsort great again." arXiv preprint arXiv:2202.13514, 2022.

[3] B.-N. Vo and W.-K. Ma, “The Gaussian Mixture Probability Hypothesis Density Filter”, IEEE Trans. Signal Process., Vol. 54, No. 11, pp.4091–4104, 2006.

[4] D. G. Lowe, "Distinctive image features from scale-invariant keypoints." IJCV, Vol. 60, No. 2, pp. 91–110, 2004.

[5] P. J. Rousseeuw, "Least median of squares regression." Journal of the American statistical association, Vol. 79, No.388, pp. 871–880, 1984.

[6] B. Shuai, A. Berneshawi, X. Li, D. Modolo, and J. Tighe, "SiamMOT: Siamese multi-object tracking", In CVPR, 2021.

Active Learning을 통한 지속적인 모델 성능 개선
Tech
2024.12.21
42dot LLM 1.3B
Tech
2024.12.21
42dot at CES 2024: Software-Defined Vehicle Technology
Tech
2024.12.21
영지식 증명과 블록체인 그리고 SDV, 모빌리티
Tech
2024.12.21
Team 42dot Wins 2nd Place in the Autonomous Driving Challenge at CVPR 2023
Tech
2024.12.21
Joint Unsupervised and Supervised Learning for Context-aware Language Identification
Publication
2024.12.21
AWS IoT Core Resource Deployment via CDK
Tech
2024.12.21
ML Data Platform for Continuous Learning
Tech
2024.12.21
속도와 보안이 강화된 OTA 업데이트
Tech
2024.12.21
Self-Supervised Surround-View Depth Estimation with Volumetric Feature Fusion
Publication
2024.12.21
Foros : 자동차에 합의 알고리즘을?
Tech
2024.12.21
42dot이 그리는 미래 모빌리티 세상
Insight
2024.12.21