3.3 C. Bundle Adjustment with Monocular and Stereo Constraints 使用单目或者双目光束优化法

3.3.1 paragraph

Our system performs bundle adjustment to optimize the camera pose in the Tracking (motion-only BA), to optimize a local window of keyframes and points in the Local Mapping (local BA), and after a loop closure to optimize all keyframes and points (full BA).

我们的系统采用光束优化法(BA),优化在跟踪过程(纯运动BA)中相机的位姿,优化本地窗口的关键帧和局部地图的特征点(局部BA),并且在回环检测之后优化所有的关键帧和特征点(全局BA)。

We use the Levenberg-Marquadt implementation in g2o [19].

我们在g2o当中使用Levenberg-Marquadt方法[19]。

3.3.2 paragraph

Motion-only BA\textbf{Motion-only BA} optimizes the camera orientation RSO(3)\text{R} \in SO(3) and position tR3\text{t} \in \mathbb{R^{3}} , minimizing the reprojection error between matched 3D points XiR3\mathrm {X}^{i} \in \mathbb{R^{3}} in world coordinates and keypoints x()i\mathrm {x}_{(\cdot)}^{i} , either monocular xmiR2\mathrm{x}_{\mathrm{m}}^{i} \in \mathbb{R^{2}} or stereo xsiR3\mathrm{x}_{\mathrm{s}}^{i} \in \mathbb{R^{3}} , with iXi \in \mathcal{X} the set of all matches:

BA\textbf{纯运动BA} ,优化相机旋转矩阵 RSO(3)\text{R} \in SO(3) 和位置 tR3\text{t} \in \mathbb{R^{3}} ,最小化世界坐标系下匹配3D点云 XiR3\mathrm {X}^{i} \in \mathbb{R^{3}}x()i\mathrm {x}_{(\cdot)}^{i} 特征点(单目的 xmiR2\mathrm{x}_{\mathrm{m}}^{i} \in \mathbb{R^{2}} 或双目的 xsiR3\mathrm{x}_{\mathrm{s}}^{i} \in \mathbb{R^{3}} ,其中 iXi \in \mathcal{X} 的重投影误差:

equation_1

where ρ\rho is the robust Huber cost function and Σ\Sigma the covariance matrix associated to the scale of the keypoint.

在这个式子当中,ρ\rho 是强健的Huber的cost函数,Σ\Sigma 是协方差矩阵,关联对于特征点的尺度。

The projection functions π()\pi_{(\cdot)} , monocular πm\pi_{m} and stereo πs\pi_{s} , are defined as follows:

这个投影函数 π()\pi_{(\cdot)} ,单目的时候使用 πm\pi_{m} ,修正双目的时候用 πs\pi_{s} ,他们的定义如下:

equation_2

where (fx,fy)(f_x,f_y) is the focal length, (cx,cy)(c_x,c_y) is the principal point and bb the baseline, all known from calibration.

在这个式子当中 (fx,fy)(f_x,f_y) 是焦距,(cx,cy)(c_x,c_y) 是主要点(象点),bb 是基线,所有的这些参数都是通过标定获得。

3.3.3 paragraph

Local BA\textbf{Local BA} optimizes a set of covisible keyframes KL\mathcal{K}_{L} and all points seen in those keyframes PL\mathcal{P}_{L} .

BA\textbf{局部BA} 采用一系列可用的关键帧 KL\mathcal{K}_{L} 和所有在关键帧可观点 PL\mathcal{P}_{L}

All other keyframes KF\mathcal{K}_{F}, not in KL\mathcal{K}_{L} , observing points in PL\mathcal{P}_{L} contribute to the cost function but remain fixed in the optimization.

所有的其他关键帧是 KF\mathcal{K}_{F} ,而不是 KL\mathcal{K}_{L} ,观察 PL\mathcal{P}_{L} 当中所有的特征点用于代价函数,但是在优化中是固定的。

Defining Xk\mathcal{X}_{k} as the set of matches between points in PL\mathcal{P}_{L} and keypoints in a keyframe kk , the optimization problem is the following:

定义 Xk\mathcal{X}_{k}PL\mathcal{P}_{L} 中关键帧 kk 的一系列匹配特征点,这个优化问题如下:

equation_3

3.3.4 paragraph

Full BA\textbf{Full BA} is the specific case of local BA, where all keyframes and points in the map are optimized, except the origin keyframe that is fixed to eliminate the gauge freedom.

BA\textbf{全局BA} 是局部光束法的一个特例,这个方法除了初始帧所有的关键帧和点在地图当中都会被优化.初始帧是固定的,用来消除随机化。

全篇仅提供学习,请勿用于商业用途,翻译版权【泡泡机器人】 all right reserved,powered by Gitbook修订时间: 2017-04

results matching ""

    No results matching ""