最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

【VINS

互联网 admin 12浏览 0评论

【VINS

Estimator::initialStructure()

bool Estimator::initialStructure()

用途:使用sfm对图像数据进行三维重建,并对所有帧进行pnp,最后和imu联合初始化

主要思路:首先计算速度方差来确定IMU的可观性,然后将f_manage中所有的feature保存到vector sfm_f中,然后判断是否产生足够位移来进行初始化,满足条件则进行sfm重建,最后将所有数据标记为关键帧进行pnp

涉及变量:

const map<int, vector<pair<int, Eigen::Matrix<double, 7, 1>>>> &image:图像数据

double header:时间戳

if (imu_buf.empty() || feature_buf.empty())

IMU或者相机帧的buff为空,measurements返回空值。return measurements;

if (!(imu_buf.back()->header > feature_buf.front()->header + estimator.td))

IMU最新的时间戳imu_buf.back() 小于 最旧的图像帧feature_buf.front()+ td,说明IMU数据太少,等待IMU刷新

【VINS

Estimator::initialStructure()

bool Estimator::initialStructure()

用途:使用sfm对图像数据进行三维重建,并对所有帧进行pnp,最后和imu联合初始化

主要思路:首先计算速度方差来确定IMU的可观性,然后将f_manage中所有的feature保存到vector sfm_f中,然后判断是否产生足够位移来进行初始化,满足条件则进行sfm重建,最后将所有数据标记为关键帧进行pnp

涉及变量:

const map<int, vector<pair<int, Eigen::Matrix<double, 7, 1>>>> &image:图像数据

double header:时间戳

if (imu_buf.empty() || feature_buf.empty())

IMU或者相机帧的buff为空,measurements返回空值。return measurements;

if (!(imu_buf.back()->header > feature_buf.front()->header + estimator.td))

IMU最新的时间戳imu_buf.back() 小于 最旧的图像帧feature_buf.front()+ td,说明IMU数据太少,等待IMU刷新

发布评论

评论列表 (0)

  1. 暂无评论