一. Maplab编译
二.简单操作
参考博客
(先记录部分操作,理论部分与其它操作有时间在记录)
该VIO平台分为在线VIO和maplab_console 两个部分,在线VIO为一个是基于ROVIOLI的VIO算法,可以实现mapping模式、localiztion模式及多任务建图模式。而maplab_console 相当于是一系列的离线包,可以为生成的地图进行二次处理(生成稠密地图等)
1.VIO mapping
在线建图
(1)打开终端
source ~/maplab_ws/devel/setup.bash
rosrun rovioli tutorial_euroc_live locationTest
其中locationTest是存放地图的地址
tutorial_euroc_live是运行模式
(2)打开终端,发送ros包
rosbag play locationTest2.bag
//公司数据集
rosbag play RobotOffice2.bag /imsee/imu:=/imu0 /imsee/image/left:=/cam0/image_raw /imsee/image/right:=/cam1/image_raw
(3)打开终端,打开rviz
rviz -d /home/zsk/rviz-rovioli.rviz
rviz-rovioli.rviz这个文件是官方的rviz的配置文件
运行即可
2.Localization 模式
(1)对VIO mapping生成的地图进行优化
source ~/maplab_ws/devel/setup.bash
//启动maplab_consloe:
rosrun maplab_console maplab_console
load --map_folder /home/zsk/indemindData/map/RobootOffice_2_3/
//优化
optvi//(visual-inertial BA over the entire map)
rtl//(The command rtl retriangulates all landmarks in the VI map and reevaluates their quality.)
kfh//(This will remove certain vertices from the map and merge the neighboring edges.)
lc//(The command lc searches the map for loop closures)
//对地图进行修剪
summary_map --summary_map_save_path RobootOffice_2_3_summary
optvi之后
kfh之后
lc之后
(2)启动
source ~/maplab_ws/devel/setup.bash
rosrun rovioli tutorial_euroc_localization save_folder_0/ save_map_with_localization MH_02_easy.bag
其中
tutorial_euroc_localization是运行模式
save_folder_0/ 是mapping模式下产生的地图
save_map_with_localization 表示定位过程中输出的新地图的路径(环境有可能改变),如果你不需要更新地图可以用 “” 这两个双引号表示空来代替这个路径。
MH_02_easy.bag 是要重定位的地图
//公司数据集
rosrun rovioli tutorial_euroc_localization Office_sum/ Office_sum_loca /home/zsk/indemindData/map/RoboTOffice2Loca.bag
(3)启动rviz查看
rviz -d rviz-rovioli.rviz
重定位