GVINS与VINS-MONO编译安装
GVINS网址
安装依赖项
ubuntu-20.04.6
ceres-solver2.0.0(同时系统中安装了ceres-solver2.2.0作为/usr/local/中的默认版本)
想再系统中安装多版本ceres solver参考连接安装多版本ceres solver
编译出现的问题
ceres-solver-2.0.0问题问题展示如下:
针对于ceres solver 2.0.0的版本 需要将对应的gvins中的camakelist文件中的cxx-flag 换成c++14
需要将对应的gvins中的camakelist文件中的cxx-flag 换成c++14
opencv -4.2.0问题问题展示部分如下:
具体的解决方法,参照的博客为:CV部分的解决方法
这里参考的博客含金量都非常高!!!
可作为额外的参考
至此 编译成功
同理,因为VINS-MONO是GVINS的先驱版本,所以,先跑通VINS-MONO,后续只需要在VINS-MONO的依赖基础上添加 gnss_comm即可,这里可以通过:
catkin -DCATKIN_WHITELIST_PACKAGES=“;;;”来选择编译指定的包。
最终实现的VINS-MONO结果如图:
GVINS结果图展示:
如果在clion中实现GVINS的debug,打开工程的时候选择GVINS,前提是:必须要先CATKIN_MAKE后,然后在clion中选择open project 然后
右键选择项目的Reload CMake Project 加载项目的依赖项,
![请添
不然如果将gnss_com同样加载近来的话,会出现很多的报错。
最终的工作空间应该是这样的:
如果有朋友也在用CLIONdebug GVINS的话,可以分享下经验,我遇到了一个问题类似这样问题
不过我的问题是:open函数有关的问题,提示open 打开为空,我排查了一下大致是confige.yaml配置读取参数出现了问题(也就是yaml文件路径错了),我改正的方法是:
- 首先在visensor.f9.launch的文件中关于gvins的节点
看到config_file的路径配置如下,在找到对应的config_path的路径 - 利用clion实现debug,我首先通过getcwd输出了当前的系统运行的工作目录。对应的输出如下:
执行:
输出: - 我的gvins节点设置的arguments是:
- 报出问题后,我选择使用ROS的param参数在readParam中这样实现
最终在clion中成功init begin。
原文地址:https://blog.csdn.net/2201_76063234/article/details/140605594
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!