常用库安装

一. DBoW2

github的DBoW2不能替代ORBSLAM2内部的库,ORBSLAM2多实现了一些函数在内部,别再尝试了,再尝试得动源码。

        之所以下载这个库,是因为你目前想手写一个ORBSLAM2,谁知道,ORBSLAM2内部自带的词袋模型只适用DBoW2,而不适用DBoW3,因此,你必须得自己引入DBoW2,这里就需要对比ORBSLAM2里面的DBoW2的CMakeLists文件了!

1. 先给出库的github下载地址:dorian3d/DBoW2: Enhanced hierarchical bag-of-word library for C++ (github.com)https://github.com/dorian3d/DBoW2

下面是github的CMakeList文件

下面是ORBSLAM2里面的DBoW2的CMakeLists文件

可以看到orbslam2的dbow2代码跟github上的有一些区别

2. 开始正式移植

首先,移植关注的点应该在于:

(1)add_library生成的库包含什么文件

(2)生成的库名是什么样,生成的库类型(静态/共享)

(3)库链接了什么库


针对第(1)点

ORBSLAM2包含如下的文件

而github里面包含的文件如下

 

可以看见 第一点是不相同的,因此若编译出错,可以考虑一下这里是否少了DUtils库的内容


针对第(2)点

ORBSLAM2的是DBoW2

github的是${PROJECT_NAME},而${PROJECT_NAME}的值又是DBoW2,因此二者相同


针对第(3)点

ORBSLAM2 链接了如下

库类型是SHARED

github里面链接了如下

 库类型是SHARED


综述所上可得,只有第一点不太相同,因此如果运行出错,大概率是由于第(1)点少了DUtils库导致的。 

3. 最后也是最重要的一点,既然没有选择安装这个库,那么ORBSLAM2是如何包含头文件的呢?

我们都知道引用一个库包含以下两步骤

(1)包含头文件目录

(2)链接库文件

orbslam2太残暴了,它直接下面这样引用的

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值