DynaSLAM II
Bescós 2021 · 논문
한 줄 요약 — 다중 물체 추적과 SLAM을 강결합(tightly coupled)한 시스템으로, DynaSLAM처럼 동적 물체를 버리는 대신 카메라 포즈, 정적 지도, 움직이는 강체 물체들의 궤적을 하나의 번들 조정 안에서 함께 최적화합니다.
문제
동적 물체를 제거하는 방식(DynaSLAM, DS-SLAM)은 카메라 추적을 보호하지만 정보를 버리게 됩니다 — 그리고 “자율주행, 다중 로봇 협업, 증강/가상 현실을 포함한 대부분의 시나리오는 의사결정과 장면 이해를 돕기 위해 주변 환경에 대한 명시적인 모션 정보를 필요로 합니다.” 그래서 DynaSLAM II는 첫 번째 논문의 철학을 반대로 뒤집습니다: 동적 내용을 걸러내는 대신, 움직이는 물체들의 궤적을 카메라와 함께 추정하며, 스테레오와 RGB-D 구성 모두에 대해 하나의 강결합 최적화로 이를 수행합니다.
방법 및 아키텍처
ORB-SLAM2를 기반으로 합니다. 프레임마다 픽셀 단위 인스턴스 세그멘테이션과 스테레오 쌍 사이에서 매칭된 ORB 특징점을 사용합니다. 정적 특징점은 이전 프레임/지도에 매칭되어 카메라를 초기화합니다. 동적 특징점(차량/보행자/동물 인스턴스에 속한)은 지역 지도의 물체 포인트에 매칭됩니다 — 물체의 속도를 알고 있다면 등속 모델 하의 재투영을 통해, 그렇지 않다면 가장 많이 겹치는 인스턴스로 제한된 전수 매칭을 통해 매칭됩니다. 인스턴스는 자신의 키포인트 대부분이 특정 트랙의 포인트에 매칭될 때 그 물체의 트랙 id를 물려받으며, 이는 CNN 2D 박스의 IoU 매칭으로 뒷받침됩니다. 매칭이 이전 프레임이 아니라 지도상의 물체를 대상으로 이루어지기 때문에 가림(occlusion)도 처리됩니다. 새로운 물체의 SE(3) 포즈는 그 3D 점들의 질량중심에서 단위 회전으로 초기화됩니다.
물체를 포함한 재투영 오차. 고전적인 정적 잔차 는 동적 포인트에 대해 다음과 같이 다시 표현됩니다.
여기서 는 카메라 가 물체 를 관측할 때 물체 의 포즈이며, 는 물체 좌표계에 고정된 3D 점입니다. 이렇게 하면 물체 포인트가 유일하게 유지되어, 파라미터 수가 (프레임별로 독립된 포인트 클라우드를 쓰는) 에서 로 줄어듭니다.
물체를 포함한 BA. 카메라, 정적 포인트, 물체 포즈, 물체 포인트, 물체 속도 가 (Huber로 강건화되어) 함께 최적화되며, 두 개의 추가 항이 사용됩니다: 등속 오차 와 속도를 포즈 및 포인트에 연결하는 결합 항
입니다. 키프레임은 카메라 추적 또는 물체 추적이 약해질 때 생성됩니다. 물체에 의해 촉발된 키프레임은 2초짜리 시간 구간에 대해 그 물체와 카메라를 함께 최적화합니다. Schur complement를 이용한 계산 비용은 입니다.
디커플링된 3D 바운딩 박스. CubeSLAM과 달리, 궤적 추정이 박스를 기다리지 않습니다: 박스는 트랙마다 한 번씩 RANSAC으로(물체 포인트를 지나는 두 개의 수직 평면, 관측되지 않은 치수에 대한 클래스 기반 사전 정보를 사용) 맞춰지고, 이후 시간 윈도우 안에서 그 이미지 투영과 CNN 2D 박스 사이의 거리를 최소화하여 느슨하게 정제됩니다 — 이는 3개 이상의 키프레임이 그 물체를 관측한 이후에만 이루어지며, 관측되지 않은 시점에 대해서는 완만한 치수/포즈 사전 정보가 사용됩니다.
실험 결과
- KITTI 추적(자기 모션): 평균 ATE 1.54 m로, ORB-SLAM2의 2.33 m와 DynaSLAM의 1.45 m보다 우수합니다. 교통량이 많은 시퀀스 0020에서는 1.36 m로 ORB-SLAM2의 16.80 m를 크게 앞섭니다. 동적 클래스 물체가 정차 중일 때, DynaSLAM II는 이를 (속도 ≈ 0으로) 유지하여 그 특징점을 무조건 삭제하는 DynaSLAM보다 우수합니다. 평균 RPE 0.053 m/frame은 모든 시퀀스에서 VDO-SLAM(0.084)을 앞서지만, VDO-SLAM은 더 낮은 회전 RPE(0.036 대 0.043°/frame)를 갖습니다. ClusterVO는 대체로 비슷한 수준입니다.
- 다중 물체 추적: KITTI 3D-object 벤치마크에서 원시 정밀도(raw precision) 측면으로는 단일 뷰 CNN + 정제 방식이나 밀집 스테레오 시스템보다 MOTP가 낮지만, 절단(truncation)과 가림 하에서의 성능 저하가 훨씬 적습니다. 다만 (특징 기반이라는 희소성 때문에) 발견하는 박스 수가 더 적습니다. 추적된 자동차는 궤적의 대부분을 유지하지만, 보행자는 비강체(non-rigid)이기 때문에 정확도가 더 낮습니다.
- 처리 속도: 세그멘테이션 CNN을 제외하면, 최대 2개의 동시 물체가 있는 경우(시퀀스 0003) 약 12 fps, 최대 20개인 경우(시퀀스 0020) 약 10 fps입니다 — 비교 대상 중 실시간으로 동작하는 유일한 결합 SLAM + MOT 시스템입니다.
SLAM에서의 의미
DynaSLAM II는 동적 SLAM의 2세대를 대표합니다: 동적 콘텐츠 제거가 충분히 잘 해결되고 나자, 연구의 최전선은 그것을 활용하는 방향으로 옮겨갔습니다. 동적 물체를 추적하는 것이 장면 이해뿐 아니라 카메라 추적 자체에도 이득이 된다는 이 논문의 핵심적인 실증적 주장, 그리고 물체 중심 파라미터화와 궤적을 바운딩 박스로부터 분리한 방식은 동시대의 VDO-SLAM과 더불어, 이후 주행 지향 및 임바디드 AI(embodied-AI) SLAM 시스템들이 따르는 하나의 템플릿이 되었습니다.