ORB-SLAM编译记录

系统:Ubuntu16.04+ROS-Kinetic

ROS-Kinetic的安装请参考http://www.cnblogs.com/liu-fa/p/5779206.html

新建一个ros工作空间(如果有就不用了),参考http://www.cnblogs.com/huangjianxin/p/6347416.html

在你的工作空间下,我的是~/catkin_ws/src,下载ORB-SLAM到本地,git clone https://github.com/raulmur/ORB_SLAM.git ORB_SLAM,然后根据作者给的readme.md编译,这里主要说一下可能会碰到的问题吧

首先安装依赖项:Boost/g2o/DBoW2,后两个都在自带的Thirdparty里,我这里都没碰到什么问题

接着是编译ORB_SLAM,这里需要注意一点,在Indigo之后的ROS版本中都不带opencv了,所以我们需要在manifest.xml中注释掉opencv2,这在readme.md中作者提到了,但是好像很多人都没有注意,注释的方式是<!--depend package="opencv2"/-->

出现报错error: ‘YOU_MIXED_DIFFERENT_NUMERIC_TYPES__YOU_NEED_TO_USE_THE_CAST_METHOD_OF_MATRIXBASE_TO_CAST_NUMERIC_TYPES_EXPLICITLY’ is not a member of ‘Eigen::internal::static_assertion<false>’,这里我参考http://blog.csdn.net/qq_33179208/article/details/53032687的建议安装了另一版本的Eigen3,再次编译就没问题了,使用命令rospack list检查ORB_SLAM是否已安装

最后就可以愉快地跑ros了,开启roscore,然后运行roslaunch ExampleGroovyHydro.launch就开启了ORB_SLAM,可以跑数据集*.bag,也可以用自己的相机跑,如果是用自己的相机跑,需要写如下launch文件,我用的是笔记本相机,还需要安装相机驱动,sudo apt-get install ros-kinetic-usb-cam

<launch>
  <node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >
   <param name="video_device" value="/dev/video0" />
   <param name="image_width" value="640" />
    <param name="image_height" value="480" />
    <param name="pixel_format" value="yuyv" />
    <param name="camera_frame_id" value="camera" />
    <param name="io_method" value="mmap"/>
    <remap from="/usb_cam/image_raw" to="/camera/image_raw" />
  </node>

<node pkg="image_view" type="image_view" name="image_view">
    <remap from="/image" to="/ORB_SLAM/Frame" />
    <param name="autosize" value="true"/>
    </node>

<node pkg="rviz" type="rviz" name="rviz" args="-d $(find ORB_SLAM)/Data/rviz.rviz" output="log">
   </node>

<node pkg="ORB_SLAM" type="ORB_SLAM" name="ORB_SLAM"  args="Data/ORBvoc.txt Data/Settings.yaml" cwd="node" output="screen">
   </node>

</launch>

时间: 2024-12-14 20:39:18

ORB-SLAM编译记录的相关文章

dubbo 源码编译记录

DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,阿里内部采用sofa框架,同属于分布式RPC框架,dubbo开源,而sofa和hsf没有开源而已. Dubbo的github地址:https://github.com/alibaba/dubbo 目前最新是2.5.4 由于dubbo里面一些依赖的jar包是才阿里的内部服务器上,外部无法down,所以在其中折腾了很久,现将自己操作的步骤和遇到的问题记录下来: 前提条件: 1.

lAMP安装编译记录笔记!

####################httpd2.2配置参数整理相当重要(以复制为主)###################### 一.MPM:Multipath Processing Modules    prefork:多进程模型,每个进程响应一个请求:     一个主进程:负责生成n个子进程,子进程也称为工作进程,每个子进程处理一个用户请求:即便没有用户请求,也会预先生成多个空闲进程,随时等待请求到达:最大不会超过1024个:    worker:多线程模型,每个线程响应一个请求:  

thinking in JAVA 编译记录

编辑/编译<thinking in JAVA>源代码 一.下载源代码 首先,我阅读的是<thinking in JAVA>第四版,因此按照书中提供的链接找到了mindview主页,并找到了对应下载链接:https://www.mindviewllc.com/quicklinks/,并跳转到https://github.com/BruceEckel/TIJ4-code进行下载,下载后解压到某个目录: D:\source\TIJ4_code\ examples\,下面所有操作涉及到源代

手把手搭建UBUNTU版ORB—SLAM

对于视觉SLAM来说,目前主流的开源框架使用较贫的莫过于ORB-SLAM 接下来就从零开始搭建开发环境,在UBUNTU上运行ORB-SLAM需要一些支持包: 1.git sudo apt-get install git 2.cmake sudo apt-get install cmake 3.Pangolin sudo apt-get install libglew-dev libpython2.7-dev git clone https://github.com/stevenlovegrove

hadoop 2.4.1 64位编译记录

hadoop 2.4.1 64位编译 安装jdk 安装maven sudo apt-get install maven 安装g++ sudo apt-get install g++ 安装protobuf-2.5.0 下载解压 cd protobuf-2.5.0/,进行如下操作: sudo ./configure sudo make sudo make check sudo make install sudo ldconfig sudo nano /etc/profile export LD_LI

android5.0 aosp编译记录(未完成)

编译环境必须是64位系统啊,妥妥的又装了64位的ubuntu,虚拟机推荐server版本,不带x省性能…… 接着要装openjdk 1.7,记得更新一下系统的源,下面这个不错 1 deb http://mirrors.163.com/ubuntu/ trusty main restricted universe multiverse 2 deb http://mirrors.163.com/ubuntu/ trusty-security main restricted universe mult

ubuntu12.04 内核编译 记录

近期学习linux这门课,做实验要编译系统内核,然后..五一没事就捣鼓了一上午,还好成功了,以下就写下过程吧. 注意:以下过程的有些make 这类的命令 可能要获取权限 1.開始时能够查一下自己如今系统的版本号: uname -a : 我的是 3.2.0.-23 2.然后在 http://www.kernel.org/下载一个和你自己版本号高一点的内核:我下的是 3.4.88 3.安装编译所要的工具: sudo apt-get install libncurses-dev kernel-pack

Android 内核编译记录

下载内核源码和交叉编译链,交叉编译链我用的https://aosp.tuna.tsinghua.edu.cn/platform/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9 export CROSS_COMPILE=$(pwd)/bin/<toolchain_prefix>- 例如: export CROSS_COMPILE=$(pwd)/bin/aarch64-linux-android- export ARCH=<arch

php-7.1编译记录

编译php-7.1.28步骤 检查环境 ./configure --prefix=/u01/server/php-7.1.28 --enable-fpm --with-fpm-user=daemon --with-fpm-group=daemon --with-zlib-dir=/u01/server/common --enable-mbstring=all --enable-soap --enable-bcmath --enable-ftp --with-xmlrpc --enable-cgi