NodeSLAM
Sucar 2020 · 논문
한 줄 요약 — 검출된 각 물체를 클래스 조건부 VAE가 디코딩하는 컴팩트한 학습된 점유(occupancy) 코드로 표현하는 객체 수준 SLAM으로, 새로운 확률적 미분 가능 렌더러를 사용해 물체 형상, 물체 포즈, 카메라 궤적을 공동으로 최적화한다.
문제
장면 표현의 선택은 SLAM 시스템에 필요한 추론 알고리즘과 그것이 가능케 하는 응용 모두를 결정한다. 포인트 맵이나 surfel 맵은 물체 정체성, 포즈, 완전한 형상에 대한 개념이 전혀 없다 — 그러나 로봇이 머그컵을 잡거나 상자를 포장하려면 정확히 그런 정보가 필요하다. 고전적인 복원은 직접 관측된 표면만을 복원할 수 있고, feed-forward 형상 예측은 여러 측정값을 원칙적인 방식으로 통합할 수 없다. NodeSLAM은 SLAM 스타일의 공동 추정 안에서 하나 이상의 RGB-D 이미지로부터 원칙에 기반한 완전한 물체 형상 추론을 요구하며, 객체별 TSDF 시스템(Fusion++)과 CAD 모델 인스턴스 시스템 사이의 간극을 메운다.
방법 및 아키텍처
형상 모델. 단일 클래스 조건부 3D CNN VAE(5개의 합성곱 층, 커널 4, 스트라이드 2; 대칭 구조의 decoder)가 테이블 위 물체 4개 클래스(머그컵, 그릇, 병, 캔)에 대한 크기의 ShapeNet 점유 격자로 학습되며, KL latent 손실과 binary cross-entropy 복원 손실을 사용한다. 맵의 각 물체는 크기 16의 latent code 와 9-DoF 포즈(회전, 이동, 스케일)로 표현된다.
확률적 렌더링(측정 함수). 각 픽셀에 대해, 역투영된 광선을 따라 개의 깊이 를 샘플링하고, 디코딩된 격자로부터 삼중선형 보간된 점유값 를 가져온다. 광선 종료 확률과 이탈(escape) 확률은
이며, 렌더링된 깊이와 픽셀별 불확실성은 이 분포의 평균과 분산으로 주어진다:
다중 물체 렌더는 최소 깊이 방식으로 결합되며(가림 처리), 4단계 가우시안 피라미드가 조대-정밀(coarse-to-fine) 최적화를 위해 수용 영역을 넓힌다.
추론. 코드에 대한 가우시안 사전 분포가 주어지면, MAP 문제는 Levenberg–Marquardt로 풀리는 최소자승 목적함수가 된다:
이동/스케일은 마스킹된 포인트 클라우드로부터, 방향은 검출된 지지 평면(머그컵의 yaw는 추가로 CNN을 사용)으로부터 초기화되고, (클래스 평균 형상)으로 초기화된다.
SLAM 루프. Mask R-CNN 마스크는 두 단계로 맵의 물체와 연관된다(먼저 이전 프레임 마스크 IoU > 0.2, 그다음 렌더링된 마스크 IoU); 매칭되지 않은 마스크는 새 물체를 생성한다. 카메라 추적은 맵을 고정한 채 동일한 렌더 손실을 최소화한다. 키프레임(물체가 초기화되거나 시점 변화가 13°를 초과할 때 생성)은 카메라 포즈, 물체 포즈, 형상 코드에 대한 3개 키프레임 슬라이딩 윈도우 공동 최적화로 들어간다: . 타이밍: 물체당 렌더링 7ms, 전체 물체 복원 약 1.5초, 추적 7fps, 공동 최적화 2초.
실험 결과
- ShapeNet 머그컵에 대한 다중 뷰 형상 최적화(표 1): 3개 뷰에서 정확도 3.48mm, chamfer- 3.65mm, 완성률 96.1%로, 로컬 수용 영역 렌더러를 사용하는 DVR(8.28mm / 10.91mm / 44.8%)을 능가한다; 불확실성이나 가우시안 피라미드를 제거하면 모든 지표가 일관되게 나빠지며, 수렴 속도는 DVR보다 훨씬 빠르다.
- ModelNet40의 미관측 물체 10개씩을 포함한 5개의 합성 장면에서 Fusion++ 스타일 TSDF 기준선과 비교: 형상 완성도는 첫 뷰들부터 거의 완전한 수준에 도달한다(TSDF는 프레임이 누적될수록 서서히 완성된다), 표면 정확도는 약 5mm로 비슷하다.
- 추적 ablation(표 2): 전체 시스템의 평균 절대 포즈 오차는 5개 장면에서 0.81~1.73cm; 공동 최적화가 없으면 오차가 최대 10.17cm까지 커지고, 불확실성 렌더링이 없으면 최대 6.99cm까지 커진다.
- 실세계 시연: 노이즈가 있는 깊이 카메라를 사용한 잡동사니 테이블 SLAM, AR 데모, 그리고 완성된 메시를 사용하여 복원된 머그컵/그릇/병을 포장하고 정렬하는 실시간 로봇.
SLAM에서의 의미
NodeSLAM은 현대적인 객체 수준 SLAM 패러다임을 확립했다: 학습된 형상 사전을 고전적 공동 추정 안의 최적화 가능한 맵 변수로 사용하고, 미분 가능한 렌더링을 측정 모델로 사용한다 — 이는 이후 신경 필드 SLAM을 이끄는 것과 같은 렌더러 역변환(inverted-renderer) 아이디어이다. 포즈를 가진 완전한 물체 모델은 원시 기하 파편과 달리 로봇 조작이 정확히 필요로 하는 것이다. 이는 코드 기반 밀집 SLAM(CodeSLAM)에서 객체 중심 신경 필드 매핑(vMAP)과 DeepSDF 기반 시스템인 DSP-SLAM으로 이어지는 개념적 다리이다.
관련 문서
- CodeSLAM — NodeSLAM이 객체 수준으로 끌어올린 프레임 수준 latent code 아이디어
- DSP-SLAM — ORB-SLAM2 백본 위의 DeepSDF 물체 사전
- vMAP — 객체 수준 신경 필드 후속 연구
- Fusion++ — 학습된 형상 사전 없는 객체 수준 TSDF 매핑
- MoreFusion — 같은 연구실, 같은 시기의 조작을 위한 객체 수준 융합