
VIO
文章平均质量分 95
雨幕丶
这个作者很懒,什么都没留下…
展开
-
VINS-Mono学习(六):回环检测
VINS最后一个节点 pose_graph 是和回环检测相关内容。节点订阅 图像话题 和 vins_estimator节点发布的话题。1.ros初始化、设置句柄;2.创建一些publisher;3.从launch文件读取参数和参数文件config中的参数;4.回环检测下的处理,如从yaml文件读取参数、读取训练好的二进制词袋、描述子pattern、如果需要加载离线地图及对应的处理;5.订阅七个话题;6.创建五个话题的发布;7.主线程process;8.接收键盘回调值的线程,“s” 保存地图。原创 2025-04-01 15:31:51 · 939 阅读 · 0 评论 -
VINS-Mono学习(五):非线性优化
i++)// para_Pose是位姿 前三维是平移 后四维是旋转// para_SpeedBias是 速度、加速度计偏置、陀螺仪偏置//?为什么位姿有local_parameterization,速度、加速度计偏置、陀螺仪偏置没有local_parameterization// 因为位姿中的旋转使用四元数表示,四元数带约束,PoseLocalParameterization类中重载了Plus()函数类需要重载类的两个函数:Plus。原创 2025-03-29 20:47:00 · 766 阅读 · 0 评论 -
VINS-Mono学习(四):关键帧和初始化
到此,已经求解了陀螺仪零偏Bgs、所有帧在自己坐标系中的速度、第0帧的重力方向、和尺度s。①获取滑动窗口内所有图像帧相对于第l帧的位姿信息,并设置为关键帧// 计算滑窗帧的位姿Ps、Rs,并将其置为关键帧// initialStructure函数虽然计算了所有帧all_image_frame的位姿 frame_it->second.R 和frame_it->second.T,// 但是并没有存到Ps和Rs中,这里我们把这些位姿存到Ps和Rs中,并且把这些帧的is_key_frame标志位置为true。原创 2025-03-25 01:43:14 · 842 阅读 · 0 评论 -
VINS-Mono学习(三):vins_estimator
参考。原创 2025-03-22 02:31:37 · 998 阅读 · 0 评论 -
VINS-Mono学习(二):feature_tracker
以运行数据集为例,运行命令:第一行命令是启动VINS系统,第二行是打开配置好的可视化界面,第三行播放数据。通过euroc.launch 启动了三个结点:feature_tracker、vins_estimator、pose_graph。feature_tracker总体的作用是接收图像,使用KLT光流算法跟踪;vins_estimate包含相机和IMU数据的前端预处理(也就是预积分过程)、单目惯性联合初始化(在线的标定过程)、基于滑动窗口的BA联合优化、全局的图优化和回环检测等通过rqt_graph命原创 2025-03-21 22:34:41 · 629 阅读 · 0 评论 -
VINS-Mono学习(一):论文
一个鲁棒的基于紧耦合的滑动窗非线性优化的单目视觉惯性里程计(VIO)。单目VIO模块不仅提供精确的局部姿态、速度和方位估计,而且还以在线方式执行摄像机IMU外部校准和IMU偏置校正。使用DBoW2进行回环检测。重新定位是在对单目VIO进行特征级别融合的紧耦合设置中完成。这使得重新定位具有鲁棒性和精确性且有最小的计算代价。最后,几何验证的回环被添加到位姿图中,并且由于来自单目VIO的可观测的翻滚角和俯仰角,生成四自由度(DOF)位姿图以确保全局一致性。:ORB-SLAM 采用,由于单目相机无法直接感知。原创 2025-03-20 18:38:18 · 608 阅读 · 0 评论 -
VIO笔记
记录笔记快速运动融合过程本身会影响视觉和IMU中的参数(如IMU的零偏和视觉的 尺度)。典型方案为MSCKF和非线性优化。VIO使用紧耦合原因:视觉存 在尺度不确定性、IMU存在零偏导致漂移。将IMU定位与视觉的位姿直接进行融合,融合过程对二者本 身不产生影响,作为后处理方式输出。典型方案为卡尔曼滤波器。IMU坐标系到世界坐标系的外参矩阵Twb 的平移部分可直接视作IMU在世界中的坐标。IMU坐标系的原点Pb = [0,0,0] 因此Pw = t_wb。原创 2025-03-13 01:12:26 · 631 阅读 · 0 评论