GradSLAM
Murthy 2020 · 논문
한 줄 요약 — 밀집 SLAM을 완전히 미분 가능한 연산 그래프로 취급하는 PyTorch 프레임워크로, 신뢰 영역 최적화, 표면 측정, 융합, 레이캐스팅을 매끄럽게 재파라미터화하여 3D 지도로부터 2D 픽셀까지 그래디언트가 종단간으로 흐를 수 있게 한다.
문제
표현 학습과 SLAM을 결합하는 것은 SLAM 시스템이 매우 모듈화되고 복잡하기 때문에 열려 있는 질문이다. 기능적으로 SLAM은 원시 센서 입력을 로봇과 환경 상태에 대한 분포로 변환한다 — 이 매핑 가 미분 가능하다면, 그래디언트 은 “특정 픽셀 측정값이 결과로 나온 3D 지도에 얼마나 기여하는가?”에 답할 수 있고, 태스크 기반 오차 신호로 표현을 종단간 학습시킬 수 있을 것이다. 그러나 밀집 SLAM의 여러 구성 요소는 미분 불가능하거나 그래디언트가 거의 어디서나 0이다: LM 솔버는 이산적인 감쇠/비감쇠 결정을 내리고, 매핑은 클리핑/인덱싱/임계값 처리 및 새 요소인지 기존 요소인지에 대한 이산적 결정을 포함하며, 레이캐스팅은 레이를 따라 이산적으로 전진한다.
방법 및 아키텍처
GradSLAM은 각각의 매끄럽지 않은 블록을 가능한 한 정확한 미분 가능한 대응물로 대체한 다음, 이를 조합해 완전한 파이프라인을 구성한다.
미분 가능한 LM (LM). 목적함수 에 대해 LM 스텝은 현재 반복값과 미리 내다본 반복값에서의 오차 노름 과 을 비교하여 감쇠와 비감쇠 사이에서 결정해야 한다. GradSLAM은 이 이산적 스위치를 일반화 로지스틱 함수 위에 만들어진 매끄러운 게이팅 함수로 대체한다:
여기서 는 감쇄 속도를 제어하고 는 댐핑을 제한한다 — 이렇게 하면 전체 옵티마이저가 하나의 미분 가능한 그래프가 된다.
미분 가능한 매핑과 융합. 표면 측정은 세 가지 방식으로 매끄럽게 처리된다: 유효한 각 픽셀의 측정값은 그 이웃의 커널 함수 이다(2D에서는 쌍선형); 실측 측정값을 지도 요소에 연관시키는 것은 소프트하게 이루어지며, 카메라 레이로부터의 반경 깊이 에 따른 깊이 센서 특성 기반 가우시안 감쇠 로 가장 가까운 후보들에 퍼진다; 그리고 기본적으로 모든 측정값은 미분 가능한 융합 스텝으로 넘겨지는 새 요소로 취급된다. (지도 크기가 시간이 아니라 탐색된 부피에 비례하도록 유지하는) 융합은 고전적 가중 평균 기법의 급격한 절단 임계값을 매끄럽게 하기 위해 로지스틱 감쇠를 사용한다.
미분 가능한 레이캐스팅. 레이는 픽셀의 깊이 측정값을 중심으로 한 가우시안 감쇠를 가지고 자신이 관통하는 모든 복셀에 걸쳐 풀링된다. 레이의 픽셀 위치에 대한 도함수는 이웃한 레이들에 대한 Igehy 스타일 유한 차분을 사용한다: .
사례 연구. 세 가지 고전적인 밀집 시스템이 이 블록들로 다시 구성된다: KinectFusion (TSDF 볼륨; 잘린 SDF 는 매끄러운 로지스틱 절단을 얻는다. 의 바닥 연산자와 에서의 강한 절단 모두가 그래디언트를 막기 때문이다), PointFusion (이 논문의 소프트-연관 매핑과 PointFusion의 융합 규칙을 사용하는 서펠 지도), ICP-SLAM (프레임-대-프레임 ICP-오도메트리와 프레임-대-모델 변형). 모두 GPU에서 완전히 실행되며, 카메라 포즈, 픽셀 강도/깊이, 옵티마이저 파라미터, 카메라 내부 파라미터 등 임의의 중간 변수에 대한 그래디언트를 노출한다.
실험 결과
- LM vs 고전적 솔버: 지수, 사인, sinc 함수 각각에 대한 100개의 곡선 피팅 문제 모음(파라미터는 에서 샘플링; 10/50/100회 반복)에서, LM은 파라미터 공간 및 함수 공간 MSE 모두에서 LM과 거의 동일한 성능을 낸다.
- 궤적 정확도 (ICL-NUIM living_room_traj0 분할, ATE/RPE): ICP-Odometry 0.01664/0.0237 vs 비미분 버전 0.029/0.0318; ICP-SLAM 0.01660/0.0204 vs 0.0282/0.0294; PointFusion 0.0072/0.0101 vs 0.0071/0.0099; KinectFusion 0.016/0.021 vs 0.013/0.019 — 미분 가능성으로부터 “성능상 실질적 변화가 없음”.
- 재구성 품질: 동일 시퀀스의 일부 구간에서 미분 가능한 KinectFusion은 21.301점을 기록해 Kintinuous의 18.625점을 웃돈다(논문은 이 비교가 다소 유리하게 작용함을 경고한다. 매끄러운 절단이 일부 잡음 있는 아티팩트를 남기는 반면 Kintinuous는 신뢰도 높은 점만 유지하기 때문이다).
- TUM RGB-D, ScanNet, 자체 Intel RealSense D435 시퀀스에서 즉시 사용 가능한 정성적 결과.
SLAM에서의 의미
GradSLAM은 최초의 범용 미분 가능 SLAM 프레임워크로서, “레이어로서의 SLAM”이라는 슬로건을 실행 가능한 연구 코드로 바꾸었다. BA-Net, Theseus, LieTorch와 같은 흐름 — 기하학적 최적화를 네트워크 안에 내재시키는 것 — 에 속하며, 프레임별 레이블이 아니라 다운스트림 매핑 품질에서 나오는 감독으로 인식 모듈(깊이 사전 정보, 센서 잡음 모델, 비용 함수)을 학습시키는 길을 열었다. 오픈소스 PyTorch 라이브러리는 여전히 미분 가능한 로봇 인식 연구의 흔한 출발점이다.
관련 문서
- Differentiability — 미분 가능한 기하학적 파이프라인이 중요한 이유
- BA-Net — 네트워크 레이어로서의 미분 가능한 번들 조정
- Theseus — 범용 미분 가능 비선형 최소제곱 라이브러리
- Lietorch — PyTorch에서의 미분 가능한 리 그룹 연산
- ElasticFusion — gradSLAM이 미분화하는 시스템들과 관련된 서펠 융합 계보
- KinectFusion — gradSLAM이 미분 가능하게 재구현하는 TSDF 융합 파이프라인