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

大功告成!

 
时间: 2024-10-06 18:19:19

ORB-SLAM2编译并跑通自己的数据集的相关文章

如何在Windows下用cpu模式跑通py-faster-rcnn 的demo.py

关键字:Windows.cpu模式.Python.faster-rcnn.demo.py 声明:本篇blog暂时未经二次实践验证,主要以本人第一次配置过程的经验写成.计划在7月底回家去电脑城借台机子试试验证步骤的正确性,本blog将根据实际遇到的问题持续更新.另外blog中除提到的下载链接外我还会给出网盘链接方便下载,包括我的整个工程的网盘链接.如果有些报错解决不了可直接拿本人的相关文件替换,本篇blog具有较高的参考性. 本人微软版caffe工程     下载链接:http://pan.bai

ORB SLAM2在Ubuntu 16.04上的运行配置

安装依赖 安装OpenGL 1. 安装opengl Library$sudo apt-get install libgl1-mesa-dev2. 安装opengl utility$sudo apt-get install libglu1-mesa-dev3. 安装opengl utility toolkit$sudo apt-get install freeglut3-dev 安装GLEW $sudo apt-get install libglew-dev 安装boost $sudo apt-g

ubuntu12.04+fuerte 下跑通lsd-slam——使用usb摄像头

上一篇介绍了如何使用数据集跑lsd-slam,这篇介绍如何用一个普通的usb摄像头跑lsd-slam,默认ubuntu12.04,fuerte已经安装好,workspace也已设置,如果没有,请参考上一篇数据集下跑lsd-slam的博文. 我使用的摄像头是罗技c310 usb摄像头,其他的usb摄像头应该也没什么问题. 1.测试摄像头好坏.安装cheese,执行 $ sudo apt-get install cheese 运行cheese,执行 $ cheese 确认摄像头是否能在ubuntu下

ubuntu12.04+fuerte 下跑通lsd-slam——数据集

第一次在博客园写文章,写的不好的地方,还请大家指出来:) lsd-slam(下载链接:https://github.com/tum-vision/lsd_slam)提供了两种方法,一种是用数据集(下载地址http://vision.in.tum.de/lsdslam),一种是用usb摄像头,github也有相应的使用说明,不是很详细,下面介绍我的步骤.ps:也是一个slam新手,很多东西不懂,有错误的地方请大家指出 环境:ubuntu12.04+fuerte 目标:使用数据集,跑通lsd-sla

Ubuntu14.04 使用本地摄像头跑ORB SLAM2

前面的准备: Ubuntu14.04安装 ROS 安装步骤和问题总结 Ubuntu14.04+ROS 启动本地摄像头 STEP1:第一个终端 roscore STEP2:第二个终端运行usb_cam roslaunch usb_cam usb_cam-test.launch STEP3: rosrun ORB_SLAM2 Mono /home/zc/Desktop/ORBvoc.txt  /home/zc/Desktop/Asus.yaml 我把 ./Vocabulary/ORBvoc.txt

微信公众号开发技术基础(一):Eclipse+Tomcat搭建本地服务器并跑通HelloWorld程序

本文结构:(一)环境准备(二)在Eclipse里创建Dynamic Web工程(三)写一个简单的Servlet类并配置web.xml(四)运行程序 (一)环境准备 1.Eclipse:要使用for JavaEE版本的Eclipse,因为要创建Dynamic Web(动态Web)程序,这里使用eclipse-jee-mars-1-win32-x86_64版本.Eclipse是绿色软件,下载后解压缩即可打开使用. 百度网盘下载链接:https://pan.baidu.com/s/1dFvaKrJ 2

VIM+qmake编译示例程序HelloQt出错问题的解决(文件名一定要使用.cpp,否则就会默认使用gcc编译,当然通不过)

之前看到很多初学Qt的Linux友们在使用qmake编译第一个HelloQt或者HelloWorld程序时报错,并且始终找不到原因. 前几天我也遇到了同样的问题,我用的是<精通Qt4编程>书上的例子,将代码用Vim输入之后qmake,再make结果报错N行, 大部分是说什么什么为定义之类的,查了半天发现是只要把开头的几行#include<QtGui/..>里的文件包含进去就会出错, 但是不包含也不行,(后来发现网上不少人也在问这个问题,可是没说解决的),花了几个小时时间无果而终.

sparkR 跑通的函数

spark1.4.0的sparkR的思路:用spark从大数据集中抽取小数据(sparkR的DataFrame),然后到R里分析(DataFrame). 这两个DataFrame是不同的,前者是分布式的,集群上的DF,R里的那些包都不能用:后者是单机版的DF,包里的函数都能用. sparkR的开发计划,个人觉得是将目前包里的函数,迁移到sparkR的DataFrame里,这样就打开一片天地. > a<- sql(hiveContext, "SELECT count(*) FROM a

百度地图sdk跑通遇到的问题2--地图不显示数据

地图不显示数据. 原因使用了自己的签名,但跑demo的时候,使用的是eclipse默认的签名. 修正:百度应用申请的数字签名(SHA1)先改成eclipse默认的签名.