vMAP
Kong 2023 · 논문
한 줄 요약 — 검출된 물체마다 자신만의 작은 MLP를 가지고, 벡터화된 연산을 통해 모두 동시에 학습되는 객체 수준 뉴럴 필드 SLAM으로 — 사전 모델 없이 워터타이트한 물체별 재구성을 5 Hz의 지도 업데이트 속도로, 장면당 최대 50개 물체까지 수행합니다.
문제
iMAP이나 NICE-SLAM 같은 뉴럴 필드 SLAM 시스템은 전체 장면을 물체 수준 구조가 없는 하나의 거대한 필드로 표현하며, 개별 물체를 추출하는 것은 “네트워크 파라미터와 특정 장면 영역 간의 대응 관계가 복잡하기” 때문에 어렵습니다. 한편 물체 수준 SLAM은 관측되지 않은 표면을 완성하기 위해 CAD 모델이나 범주 수준 형태 사전(shape prior)이 필요했습니다 — 사전 정보가 없으면 직접 관측된 부분만 재구성되어 구멍이 남습니다. vMAP은 사전 정보가 없는 경우를 목표로 합니다: 실시간 RGB-D SLAM 시스템 내부에서 효율적이고 워터타이트한 물체별 재구성을 수행합니다.
방법 및 아키텍처
물체 초기화 및 연관. 각 프레임은 밀집 인스턴스 마스크를 가지고 있습니다(정답 데이터, 또는 LVIS로 사전 학습된 Detic). 검출 결과는 두 가지 기준으로 프레임 간에 연관됩니다 — 의미적 일관성(동일한 예측 클래스)과 공간적 일관성(3D 물체 경계의 평균 IoU); 매칭되지 않은 검출은 모델 스택에 추가되는 새로운 물체 MLP를 생성합니다. 물체별 3D 경계는 깊이 역투영된 포인트 클라우드로부터 얻어지고 관측이 누적됨에 따라 정제됩니다. 카메라 포즈는 ORB-SLAM3에서 외부적으로 제공되며 — 이는 “포즈와 형상을 함께 최적화하는 것보다 더 정확하고 강건함”이 확인되었습니다.
벡터화된 학습(핵심 기여). 모든 물체 MLP는 동일한 아키텍처를 공유합니다(4개 레이어, 은닉 크기 32; 배경 모델은 128을 사용), 이렇게 하면 Python 루프 대신 PyTorch의 벡터화된 연산으로 하나의 배치 연산처럼 이들을 쌓아서 최적화할 수 있습니다. 각 물체는 자신만의 독립적인 키프레임 버퍼에서 픽셀을 샘플링하므로, 어떤 물체의 학습도 다른 물체와의 상호 간섭 없이 멈추거나 재개될 수 있습니다.
깊이 기반 샘플링. 각 레이를 따라, 개의 점이 근접 경계 과 깊이맵 표면 사이에 층화-균등 샘플링되고, 개의 점은 표면 근처에 집중됩니다:
cm이며; 잘못된 깊이는 먼 경계로 대체됩니다.
점유도(occupancy) 렌더링. 뷰 방향은 생략됩니다(뷰 의존적 외관보다 표면을 우선함), 각 점은 점유 확률 을 가지며, 이는 종료 확률 을 주어 다음을 렌더링합니다
손실. 물체 에 대해, 픽셀은 오직 2D 경계 상자 내부에서 샘플링되며; 깊이와 색상은 마스크 내부에서 감독됩니다(L1), 렌더링된 점유도는 내의 모든 곳에서 마스크와 일치하도록 밀려납니다 — 그래서 필드는 물체 바깥에서 비어있도록 학습됩니다:
합성 렌더링. 어떤 물체든 자신의 3D 경계 안에서 조회, 고정, 제거, 재합성될 수 있습니다; 장면 수준의 새로운 뷰는 물체별 Ray-Box 교차와 각 레이를 따라 렌더링된 깊이의 순위 매김을 이용해 가려짐을 고려한 합성을 수행합니다.
실험 결과
- Replica(8개 장면, 각 2000개의 RGB-D 프레임, 정답-포즈 기준선은 *로 표시): 물체 수준 Accuracy 2.23 cm, Completion 1.44 cm, Completion Ratio 94.55%(<5 cm) 및 69.23%(<1 cm) — iMAP*(3.57 / 2.38 / 90.19 / 47.79) 및 NICE-SLAM*(3.91 / 3.27 / 83.97 / 37.79)과 비교; “물체 수준 완성도에서 iMAP과 NICE-SLAM보다 50–70% 이상 향상”. 장면 수준 Completion Ratio는 92.99%로, 90.85(iMAP*)와 86.52(NICE-SLAM*)와 비교됩니다.
- TUM RGB-D 추적(포즈-지도 결합 모드, ATE RMSE): fr1-desk / fr2-xyz / fr3-office에서 2.6 / 1.6 / 3.0 cm — iMAP(4.9 / 2.0 / 5.8)과 NICE-SLAM보다 낫지만, ORB-SLAM2(1.6 / 0.4 / 1.0)에는 뒤지며, 이것이 ORB-SLAM3가 외부 추적기로 사용되는 이유입니다.
- 효율성(Replica Room-0, RTX 3090): 전체 파라미터 0.66M(물체당 약 40 KB)으로 NICE-SLAM의 12.12M에 비해 적음; 프레임당 매핑 226 ms(약 5 Hz) — iMAP보다 1.5배, NICE-SLAM보다 4배 빠름. 벡터화된 학습은 물체가 200개여도 각 최적화 단계를 15 ms 이내로 유지하는 반면, 순차적 for 루프 학습은 폭발적으로 느려집니다.
- ScanNet과 실시간 Azure Kinect 데이터에서는 NICE-SLAM*보다 더 선명한 물체 경계와 오프라인 ObjSDF보다 더 세밀한 디테일을 생성하며, 현실적인 구멍 채우기를 보입니다 — 다만 완전히 시야 밖의 영역(예: 의자 뒷면)은 3D 사전 정보 없이는 여전히 손이 닿지 않습니다.
SLAM에서의 의미
vMAP은 물체 수준 분해를 뉴럴 필드 SLAM에 가져와, 물체 SLAM 계보(SLAM++, Fusion++, NodeSLAM)와 암묵적 매핑 계보(iMAP, NICE-SLAM)를 이어주었습니다. 결과로 나온 지도는 단순한 기하학이 아니라 독립적으로 학습 가능하고 조작 가능한 물체 엔티티들의 집합입니다 — 이는 정확히 로봇 조작과 장면 편집이 필요로 하는 것이며 — 벡터화된 학습 기법은 “다수의 네트워크”가 단일 GPU에서 확장될 수 있음을 보였습니다. 이는 물체 중심 뉴럴 필드 매핑의 참조 설계가 되었고 이후의 물체 인지형 밀집 SLAM 연구에 영향을 미쳤습니다.