MAC-VO

Qiu 2024 · 논문

한 줄 요약 — 메트릭 인식적인 매칭 공분산을 예측하고, 이를 키포인트 선택과 포즈 최적화의 잔차 가중치 부여에 모두 활용하는 학습 기반 스테레오 시각 오도메트리.

문제

학습 기반 VO 모델은 신뢰도를 잘 모델링하지 못한다. 비지도 방식으로 학습된 신뢰도 가중치(DROID-SLAM, DPVO)는 스케일 무관이다 — 매치들끼리 상대적으로 순위를 매길 뿐, 실제 3D 추정 오차를 미터 단위로 반영하지 않으며, 이는 “스케일이 다른 여러 환경에서 공분산이 일관되지 않게 만들고”, “서로 다른 모달리티나 센서로부터의 다중 제약을 통합하기 더 어렵게 만든다.” 한편 키포인트 선택은 여전히 텍스처가 풍부한 에지와 코너를 선호하는데, 바로 이런 곳에서 학습된 매칭과 깊이는 보간과 에지 모호성 때문에 가장 부정확하다 — D3VO는 이런 특징들이 무작위 선택보다 더 나쁘게 동작할 수 있음을 보였다. MAC-VO는 이 둘을 하나의 학습된 메트릭 인식 불확실성 모델로 대체한다.

방법 및 아키텍처

불확실성 인식 매칭 네트워크. FlowFormer 백본을 공유하는 네트워크가 프레임 간 깊이, 광학 흐름 f^R2\hat{f} \in \mathbb{R}^2, 그리고 이들의 불확실성 Σ^f=diag(σu2,σv2)\hat{\Sigma}_f = \mathrm{diag}(\sigma_u^2, \sigma_v^2)을 동시에 추정한다. 공분산 디코더는 순환 흐름 디코더에 얹혀져, 로그 공간에서의 반복적 업데이트 logΔσ\log \Delta\sigma를 예측한다(가산적 업데이트, 양의 분산이 보장되고, 안정적인 기울기). 감독 신호는 업데이트 반복에 대한 음의 로그 가능도 손실이다.

Lcov=iNαi((yf^i)Σ^f1(yf^i)+log(detΣ^f))L_{cov} = \sum_i^N \alpha_i \left( (y - \hat{f}_i)^\top \hat{\Sigma}_f^{-1} (y - \hat{f}_i) + \log(\det \hat{\Sigma}_f) \right)

여기서 yy는 정답 흐름, αi\alpha_i는 지수적으로 감소하는 가중치(비율 0.8)이다. TartanAir만으로 학습되며, 다른 모든 곳에서는 제로샷으로 평가된다.

불확실성 기반 키포인트 선택. 세 개의 필터가 순차적으로 적용된다: 비최소 억제(공간적 분산), 기하 필터(이미지 경계, 무효 깊이), 그리고 깊이나 흐름의 불확실성이 프레임 중앙값의 1.5배를 넘는 픽셀을 제거하는 불확실성 필터 — 이는 움직이는 차량, 가림, 반사, 텍스처가 없는 영역을 암묵적으로 제거한다.

메트릭 인식 3D 공분산. 2D 불확실성은 핀홀 모델을 통해 각 키포인트의 완전한 3D 공분산으로 전파된다. 대각 성분은 (여기서는 xx에 대해; yy는 대칭, σz2=σd2\sigma_z^2 = \sigma_d^2):

σx2=(σu2σd2+σu2d2+(ucx)2σd2)/fx2\sigma_{x}^2 = \left( \sigma_u^2 \sigma_d^2 + \sigma_u^2 d^2 + (u - c_x)^2 \sigma_d^2 \right) / \mathrm{f}_x^2

세 좌표 모두 깊이 dd를 공유하므로, 이 모델은 비대각 항도 유지한다. 예를 들어 σxz=σd2(ucx)/fx\sigma_{xz} = \sigma_d^2 (u - c_x)/\mathrm{f}_x이고 σxy=σd2(ucx)(vcy)/(fxfy)\sigma_{xy} = \sigma_d^2 (u - c_x)(v - c_y)/(\mathrm{f}_x \mathrm{f}_y) — 이는 DROID-SLAM의 스케일 무관 대각 공분산과 달리, 메트릭 단위의 비등방적이고 상관관계를 갖는 공분산이다. 깊이 불확실성은 장면 기하에 대해 추가로 보정된다: 매치 주변 32픽셀 패치 내에서 σd2=jφj(djμD)2\sigma_d^2 = \sum_j \varphi_j (d_j - \mu_D)^2이며, 이 분산은 (σu2,σv2)(\sigma_u^2, \sigma_v^2)로 구성된 2D 가우시안 커널 φ\varphi로 가중된다 — 따라서 깊이 불연속 근처의 매치는 큰 깊이 불확실성을 물려받는다.

포즈 그래프 최적화. 카메라 포즈 TtSE(3)T_t \in SE(3)는 TartanVO의 모션 추정으로 초기화되고, 전파된 공분산으로 가중된 매칭된 3D 키포인트의 두 프레임 정합을 통해 정제된다.

T=arg minTtipi,t1Ttcpi,tΣi2,Σi=Σi,t1p+RtcΣi,tpRtT^{\star} = \operatorname*{arg\,min}_{T_t} \sum_i \left\lVert \mathbf{p}_{i,t-1} - T_t\, {}^c\mathbf{p}_{i,t} \right\rVert^2_{\Sigma_i}, \qquad \Sigma_i = \Sigma^p_{i,t-1} + R_t\, {}^c\Sigma^p_{i,t}\, R_t^\top

이는 PyPose에서 Levenberg-Marquardt로 풀린다. 특히 다중 프레임 번들 조정이나 루프 클로저가 없다 — 정확도는 오로지 보정된 가중치 부여에서 나온다.

실험 결과

모든 데이터셋에서 동일한 구성과 가중치를 사용하며, 평가는 프레임별 상대 오차 trelt_{rel} (m/frame)과 rrelr_{rel} (deg/frame)을 사용한다.

SLAM에서의 의미

MAC-VO는 학습 기반 오도메트리의 성숙을 상징한다: 포즈나 흐름을 예측할 뿐만 아니라, 그 예측이 얼마나 잘못되었는지를, 고전적 추정 이론이 다룰 수 있는 형태(메트릭이며 상관관계를 갖는 공분산)로 예측한다. 보정된 불확실성은 학습된 프론트엔드를 필터, 인수 그래프, 다중 센서 시스템과 융합하기 위해 정확히 필요한 것이며 — 이는 저자들이 명시한 다음 연구 방향이다 — 동시에 이 불확실성 맵은 후속 의사결정을 위한 신뢰도 신호로도 기능한다.

관련 문서