SLAM中的3D特征参数化表示

Last updated on May 7, 2023 pm

[TOC]

Overview

  • 一般表示形式

  • 优化形式(避免过参数化)

特征的参数化表示,即以何种方式表示特征,在优化中决定了特征以何种参数进行的迭代更新,或者 在EKF中决定了以何种参数构建高斯模型。不论在优化还是EKF中,我们关心的都是特征在图像上的投影与特征参数之间的关系(Jacobian)。

过参数化(Overparameterization) 问题

特征参数化之后参数的个数大于实际表示的 自由度 的表现形式就被称为 过参数化

3D Point

\[ P: \left[ X \; Y \; Z \right]^T \]

  • 3 DoF

ref:

XYZ

  • Global XYZ
  • Anchored XYZ

Inverse Depth

  • Global inverse depth (spherical coordinates)
    • has a singularity when the z-distance goes to zero
    • 球坐标逆深度仅在xyz都趋近于0时才存在数值奇异,所以能用在全局坐标系
  • Anchored inverse depth (MSCKF)
    • 逆深度 + normalized UV (Bearing Vector)
  • Anchored inverse depth (MSCKF single depth)
    • 逆深度
    • the the single depth from VINS-Mono

3D Line

\[ L: \left[ P_0 \; P_1 \right] \]

  • 4 DoF

ref:

普吕克(Plucker)坐标

  • 过参数化 问题

正交表示法

3D Plane

\[ Ax + By + Cz + D = 0 \]

  • 3 DoF

ref:

Hesse

用一个平面的 单位法向量 和 平面距离原点的 距离 来表示

\[ \pi: \left(\mathbf{n}^{\top}, d\right)^{\top} \in \mathbb{R}^4 \]

过参数化 问题:平面的Hesse形式的过参数化就是因为单位法向量部分有3个参数,但是实际只有两个自由度导致的。

球坐标

单位法向量可以被看成是一个单位圆球上的一点,那么就可以用两个角度 \(\theta\)\(\phi\) 来参数化这个点,从而表示出这个单位法向量。

\[ \pi: \left[ \theta \; \phi \; d \right] \in \mathbb{R}^3 \]

\[ \tau=(\theta, \phi, d)^{\top}= q(\pi)=\left(\theta=\arctan \frac{n_{y}}{n_{x}}, \; \phi=\arcsin n_{z}, \; d\right)^{\top} \]

切平面

GTSAM里面表示面的方式用切平面的方式来更新单位法向量,同样也可以被用来优化单位法向量。

最近点

单位四元数

退化二次曲面 [1]

Unified Representation

Reference

  1. Unified Representation of Heterogeneous Sets of Geometric Primitives

SLAM中的3D特征参数化表示
https://cgabc.xyz/posts/4294f23/
Author
Gavin Gao
Posted on
March 6, 2022
Licensed under