IMU Preintegration on Manifold

Forster 2015 · 논문

한 줄 요약 — IMU 측정값의 SO(3)SO(3) 다양체 위에서 이론적으로 엄밀한 사전 적분을 유도하여, 원시 IMU 데이터를 재적분하지 않고도 최적화 기반 VIO가 바이어스 변화를 해석적으로 보정할 수 있게 한다.

문제

비선형 최적화는 매우 정확한 VIO를 제공하지만, “실시간 최적화는 궤적이 시간이 지남에 따라 성장하면서 빠르게 다루기 힘들어지며; 관성 측정값이 고속으로 도착한다는 사실 때문에 이 문제는 더욱 심화되어 최적화 변수의 수가 급격히 증가한다”(초록). 단순한 적분은 세계 프레임에서 정의되므로 구간 시작 시점의 절대 자세에 의존한다: 최적화기가 그 자세를 옮길 때마다 모든 원시 IMU 데이터를 재적분해야 한다 — 수백 Hz에서는 절망적이다. Lupton의 사전 적분(2012)이 탈출구를 보여주었지만 회전을 벡터 공간에서 다루었다; 엄밀한 정식화는 SO(3)SO(3)의 다양체 구조를 존중하고 회전 잡음을 올바르게 특성화해야 했다.

방법 및 아키텍처

IMU는 서서히 변화하는 바이어스와 백색 잡음으로 오염된 바디 프레임 각속도와 비력을 측정한다(식 27–28):

ω~(t)=ω(t)+bg(t)+ηg(t),a~(t)=RWBT(t)(a(t)g)+ba(t)+ηa(t),\tilde{\boldsymbol{\omega}}(t) = \boldsymbol{\omega}(t) + \mathbf{b}^g(t) + \boldsymbol{\eta}^g(t), \qquad \tilde{\mathbf{a}}(t) = \mathtt{R}_{\mathrm{WB}}^{\mathsf{T}}(t)\big(\mathbf{a}(t) - \mathbf{g}\big) + \mathbf{b}^a(t) + \boldsymbol{\eta}^a(t),

운동학은 R˙WB=RWBω\dot{\mathtt{R}}_{\mathrm{WB}} = \mathtt{R}_{\mathrm{WB}}\,\boldsymbol{\omega}^{\wedge}, v˙=a\dot{\mathbf{v}} = \mathbf{a}, p˙=v\dot{\mathbf{p}} = \mathbf{v}이다. 파이프라인은 다음과 같이 동작한다:

ΔR~ijk=ij1Exp((ω~kbig)Δt),Δv~ijk=ij1ΔR~ik(a~kbia)Δt,\Delta\tilde{\mathtt{R}}_{ij} \doteq \prod_{k=i}^{j-1} \mathrm{Exp}\big((\tilde{\boldsymbol{\omega}}_k - \mathbf{b}^g_i)\Delta t\big), \qquad \Delta\tilde{\mathbf{v}}_{ij} \doteq \sum_{k=i}^{j-1} \Delta\tilde{\mathtt{R}}_{ik}\,(\tilde{\mathbf{a}}_k - \mathbf{b}^a_i)\Delta t,

그리고 Δp~ij\Delta\tilde{\mathbf{p}}_{ij}는 유사한 이중 합으로부터 구해진다 — 이 양들은 측정값과 bi\mathbf{b}_i에만 의존하며 절대 상태에는 의존하지 않는다.

ΔR~ij=RiTRjExp(δϕij),Δv~ij=RiT(vjvigΔtij)+δvij,Δp~ij=RiT(pjpiviΔtij12gΔtij2)+δpij,\Delta\tilde{\mathtt{R}}_{ij} = \mathtt{R}_i^{\mathsf{T}}\mathtt{R}_j\,\mathrm{Exp}(\delta\boldsymbol{\phi}_{ij}), \quad \Delta\tilde{\mathbf{v}}_{ij} = \mathtt{R}_i^{\mathsf{T}}(\mathbf{v}_j - \mathbf{v}_i - \mathbf{g}\Delta t_{ij}) + \delta\mathbf{v}_{ij}, \quad \Delta\tilde{\mathbf{p}}_{ij} = \mathtt{R}_i^{\mathsf{T}}\big(\mathbf{p}_j - \mathbf{p}_i - \mathbf{v}_i\Delta t_{ij} - \tfrac{1}{2}\mathbf{g}\Delta t_{ij}^2\big) + \delta\mathbf{p}_{ij},

여기서 잡음 벡터 [δϕij,δvij,δpij][\delta\boldsymbol{\phi}_{ij}, \delta\mathbf{v}_{ij}, \delta\mathbf{p}_{ij}]는 1차까지 평균이 0인 가우시안이며, 공분산 Σij\mathbf{\Sigma}_{ij}가 반복적으로 전파된다.

ΔR~ij(big)ΔR~ij(bˉig)Exp ⁣(ΔRˉijbgδbg),Δv~ijΔv~ij(bˉi)+Δvˉijbgδbg+Δvˉijbaδba.\Delta\tilde{\mathtt{R}}_{ij}(\mathbf{b}^g_i) \simeq \Delta\tilde{\mathtt{R}}_{ij}(\bar{\mathbf{b}}^g_i)\,\mathrm{Exp}\!\Big(\tfrac{\partial\Delta\bar{\mathtt{R}}_{ij}}{\partial\mathbf{b}^g}\delta\mathbf{b}^g\Big), \qquad \Delta\tilde{\mathbf{v}}_{ij} \simeq \Delta\tilde{\mathbf{v}}_{ij}(\bar{\mathbf{b}}_i) + \tfrac{\partial\Delta\bar{\mathbf{v}}_{ij}}{\partial\mathbf{b}^g}\delta\mathbf{b}^g + \tfrac{\partial\Delta\bar{\mathbf{v}}_{ij}}{\partial\mathbf{b}^a}\delta\mathbf{b}^a.

실험 결과

SLAM에서의 의미

이는 사실상 모든 현대 최적화 기반 VIO의 기초 이론이다: VINS-Mono, ORB-SLAM3, Kimera-VIO, Basalt, OKVIS2 모두 IMU 팩터에 Forster 방식의 다양체 위 사전 적분을 사용한다. 이는 Lupton의 원래 사전 적분 아이디어를 올바른 다양체 처리로 업그레이드하여 — 오일러 각의 특이점을 피하고 — 고속 관성 센싱을 키프레임 속도의 비선형 최적화와 호환되게 만들었다. VIO 이론을 하나만 직접 구현해본다면, 이것으로 하라.

관련 문서