




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ORB_SLAM2 安装与运行1. 安装 C+11 编译器ORB_SLAM2 使用了 C+11 的线程和时间控制函数。 javascript view plain copy print?$sudo apt-get install gcc g+2. 安装 PangolinORB_SLAM2 使用 Pangolin 构建可视化用户界面 . 参 见 javascript view plain copy print?$ sudo apt-get install libglew-dev#安装 Glew $ sudo apt-get install cmake#安装 CMake# 安装 Boost $ s
2、udo apt-get installlibboost-dev libboost-thread-dev libboost-filesystem-dev $ sudo apt-get install libpython2.7-dev# 安装 Python2 /Python3 #下载、编译、安装 Pangolin: $ git clone $ cd Pangolin $ mkdir build $ cd build $ cmake -DCPP11_NO_BOOST=1 . $ make $ sudo make install3. 安装 OpenCV ORB_SLAM2 使用 OpenCV 处理图像
3、以及特征 . 参见 : /downloads.htm. 至少需要 的版本 .本测试用 OpenCV 2413.(注:与 cuda 8.0不兼容,若需要 GPU 加速(使用 cuda8.0 ,cuda8.0 以前的 版本不支持 GTX1080 ),则需要安装 CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -DINSTALL_C_EXAMPLES=ON -D INSTALL
4、_PYTHON_EXAMPLES=ON -DBUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -DCUDA_GENERATION=Kepler .$ make $ sudo make installjavascript view plain copy print?# 在其中写入 : /usr/local/lib# 在文件末尾写入 :#PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/l ib/pkgconfig #export PKG_CONFIG_PATH sudo ldconfig sudo gedit
5、/etc/bash.bashrc #source 此脚本 source /etc/bash.bashrc4. 安装 g2o 需要 Eigen ,下载和安装 Eigen3 的方法可以看这儿 . 需要 及以上。 编译时依赖此模块,最好在 编译前安装 )提供以下功能模块:1) 密集矩阵和数组操作2) 解密集线性方程组和矩阵分解-求解线性最小二乘系统-密集矩阵分解 (Cholesky, LU, QR, SVD,特征值分解 )3)解稀疏线性方程组和矩阵分解-稀疏矩阵操作-求解稀疏线性最小二乘系统- 稀疏矩阵分解( SpareCore, OrderingMethods, SpareCholesky, Sp
6、areLU, SparseQR, 迭代线性求解)4)空间变换- 2D 旋转(角度)- 3D 旋转(角度 +轴 )- 3D 旋转 ( 四元组 : quaternion)- N 维缩放- N 维平移- N 维仿射变换- N 维线性变换(旋转、平移、缩放)javascript view plain copy print?$ sudo apt-get install libeigen3-dev5. BLAS and LAPACKg2o 需要 BLAS 和 LAPACK(1) BLAS: Basic Linear Algebra Subprograms 提供了基本的向量和矩阵操作:Level-1 BLA
7、S:支持标量、向量、向量 -向量 操作Level-2 BLAS:支持矩阵 -向量 操作Level-3 BLAS:支持矩阵 -矩阵 操作(2) LAPACK : Linear Algebra PACKage它调用 BLAS 来实现更高级的功能,支持以下操作:- 解线性方程组- 线性方程组的最小二乘解- 特征值问题和奇异值问题- 矩阵分解 (LU, Cholesky, QR, SVD, Schur, generalized Schur)- 支持密集和带状矩阵,但不支持一般的稀疏矩阵- 支持单精度和双精度javascript view plain copy print?$ sudo apt-get
8、install libblas-dev $ sudo apt-get install liblapack-dev6. DBoW2 and g2o (Included in Thirdparty folder)ORB_SLAM2 使用修改版的 DBoW2 库进行位置识别 使用 g2o 库进行非线性优化 . 这两个修改版的库被放在第 三方文件夹内 .7. 编译 ORB_SLAM2 库和例子程序 (单目、双目和 RGB-D) javascript view plain copy print?$ git clone ORB_SLAM2 $ cd ORB_SLAM2$ chmod +x build.sh
9、$ ./build.sh生成的 libORB_SLAM2.so 位于 lib 目录下,可执行程序 mono_tum, mono_kitti, rgbd_tum, stereo_kitti, mono_euroc and stereo_euroc 位于 Examples 目录下。8. 运行例子程序8.1 Monocular 实例1) TUM 数据集从 d 下载并解压一个序列,如: rgbd_dataset_freiburg1_desk2.tgz执行下面的命令(把 TUMX.yaml 修改为 TUM1.yaml < freiburg1 序列 >,TUM2.yaml < freib
10、urg2 序列 > or TUM3.yaml < freiburg3 序列 > )javascript view plain copyprint?$ ./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt ./Examples/Monocular/TUMX.yam l PATH_TO_SEQUENCE_FOLDER#for example$ ./Examples/Monocular/mono_tumVocabulary/ORBvoc.txt ./Examples/Monocular/TUM1.yaml./tum_data/rgb
11、d_dataset_freiburg1_desk2/2) KITTI 数据集从 下载 数据集(灰度图像) , 把 KITTIX.yaml 修改为 KITTI00-02.yaml, KITTI03.yaml or KITTI04-12.yaml ,这些 *xx.yaml 各自对应于序列 0 to 2, 3, and 4 to 12. Change PATH_TO_DATASET_FOLDER to the uncompressed dataset folder. Change SEQUENCE_NUMBER to 00, 01, 02,., 11. 如有不明白的地方,看一下代码: javascr
12、ipt view plain copy print?./Examples/Monocular/mono_kitti Vocabulary/ORBvoc.txt Examples/Monocular/KITTIX.yaml PATH_TO_DATASET_FOLDER/dataset/sequences/SEQUENCE_NUMBER8.2 Stereo 实例1) KITTI 数据集从 下载 数据集(灰度图像) ,把 KITTIX.yaml修改为 KITTI00-02.yaml, KITTI03.yaml orKITTI04-12.yaml ,这些 *xx.yaml 各自对应于序列 0 to 2
13、, 3, and 4 to 12. Change PATH_TO_DATASET_FOLDER to the uncompressed dataset folder. ChangeSEQUENCE_NUMBER to 00, 01, 02,., 11.如有不明白的地方,看一下代码:javascript view plain copy print?./Examples/Stereo/stereo_kittiVocabulary/ORBvoc.txt Examples/Stereo/KITTIX.yaml PATH_TO_DATASET_FOLDER/dataset/sequences/SEQ U
14、ENCE_NUMBER8.3 RGB-D 实例1) TUM 数据集从d 下载并解压一个序列,如:rgbd_dataset_freiburg1_desk2.tgz运行 RGB-D 实例时需要 RGBD(depth) 图像和 RGB 图像,所以需要把每一张 RGB 图像与之对应的 RGBD 图像 建立关联 (在 Examples/RGB-D/associations/ 目录下有一部 分关联文件,可以直接使用) ,关联 python 文件 associate.py( 根据 timestamp 进行关联 ) 。javascript view plain copy print?$ python asso
15、ciate.py PATH_TO_SEQUENCE/rgb.txt PATH_TO_SEQUENCE/depth.txt > associations.txt执行下面的命令 (把 TUMX.yaml 修改为 TUM1.yaml < freiburg1 序列 >,TUM2.yaml < freiburg2 序列 > or TUM3.yaml < freiburg3 序列 > ),把 ASSOCIATIONS_FILE 修改为对应的关联文件。javascript view plain copy print?$./Examples/RGB-D/rgbd_tu
16、m Vocabulary/ORBvoc.txt Examples/RGB-D/TUMX.yaml PATH_TO_SEQUENCE_FOLDER ASSOCIATIONS_FILE# for example $./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt ./Examples/RGB-D/TUM1.yaml ./tum-data/rgbd_dataset_freiburg1_desk2/ ./Examples/RGB-D/associations/fr1_desk2.txt8.4 ROS 实例8.4.1 安装 ROS 9. SLAM 和 Localization 模式你可在 GUI 中切换至 SLAM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 班组长自我总结模版
- 全铝家居合同范例
- 医疗信息化背景下的电子健康记录培训教育
- 年度个人思想总结模版
- 医疗大数据分析在药物研发中的价值
- 供应部采购合同范例
- 医疗设备租赁服务的供应链优化
- 上海商场绿植租赁合同范例
- 业主别墅出售合同范例
- 一年级上册语文《四季》教学设计
- 2024年云南省职业技能大赛(健康照护赛项)理论参考试题库(含答案)
- 1.5弹性碰撞和非弹性碰撞 课件高二上学期物理人教版(2019)选择性必修第一册
- 专题11二次函数中矩形存在性综合应用(专项训练)(原卷版+解析)
- 金庸人物课件
- 【浅谈劳动合同法中的试用期制度7500字(论文)】
- 影视艺术鉴赏课件
- 泼水节文化介绍课件
- 2024-2030年中国机载气象雷达行业市场发展趋势与前景展望战略分析报告
- 提高四级手术术前多学科讨论完成率实施方案
- 【一例猪流行性腹泻的诊断与治疗实例探析4500字(论文)】
- 第1课古代亚非教学设计-2023-2024学年中职高一下学期高教版(2023)世界历史
评论
0/150
提交评论