首页 > 代码库 > ORB-SLAM2编译并跑通自己的数据集

ORB-SLAM2编译并跑通自己的数据集

我的环境是Ubuntu14.04虚拟机。

首先一定要认真看官网的安装教程,把需要安装的依赖都装好。https://github.com/raulmur/ORB_SLAM2

然后按以下步骤下载编译,我最开始是文件夹名称不为ORB_SLAM2,一直编译不成功,很是郁闷,重新按官网的git方法下载下来,很顺畅的就编译成功了,遇到同样问题的小伙伴可以试一下次解决方法

git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
cd ORB_SLAM2
chmod +x build.sh
./build.sh

技术分享

 

跑自己的数据集,我的是单目的,以mono_tum.cc为例,结合代码的内容,需要生产一个图像集关系。

1.首先用file_text.py生成图像集的txt,以下为.py的内容

import os

def getName(num):
    strTmp = []
    strRes = ‘‘

    while(num / 10):
        strTmp.append(num % 10)
        num = num / 10
    strTmp.append(num)
    n = len(strTmp)
    for i in range(0,5-n):
        strRes = strRes + 0
    for i in range(n-1,-1,-1):
        strRes = strRes + str(strTmp[i])
    return strRes

file_object = open(rgb.txt,w)
Ostr = ‘‘
num = len(os.listdir(rgb))
for i in range(1,num+1):
    name = getName(i)
    Ostr = Ostr + name +  rgb/ + name + .jpg\n
file_object.writelines(Ostr)
file_object.close()

执行以下指令,rgb是文件夹,其中是要跑的自己的图片集,图片名称前面补0,补全5位。

技术分享

 

效果如下

技术分享

2.然后生成自己的参数配置文件SettingsMy.yaml。将TUM1.yaml的内容复制过来,相机参数修改成自己的即可。如下

 技术分享

 

3.cd到ORB-slam所在文件夹执行以下指令即可

 技术分享

./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/SettingsMy.yaml /home/wxt/broden/project/test

大功告成!

 技术分享

 

 

 

ORB-SLAM2编译并跑通自己的数据集