【SLAM】ORBSLAM34macOS: ORBSLAM3 Project 4(for) macOS Platform

news2025/1/21 22:00:56

文章目录

    • 配置
    • ORBSLAM34macOS 版本
    • 运行步骤:
    • 版本修复问题记录:
      • 编译 fix
      • 运行 fix

配置

硬件:MacBook Pro Intel CPU
系统:macOS Ventura 13.4.1


ORBSLAM34macOS 版本

https://github.com/phdsky/ORB_SLAM3/tree/macOS

运行步骤:

  1. 克隆仓库与三方子仓(Pangolin)
  2. 安装各子仓及主仓所需依赖库 (核对主仓CMakeList:124/125 boost/openssl 版本与库位置)
  3. 运行 ./build.sh 完成编译 (本版只改动了 stereo_euroc 样例供测试,其余样例自行修改线程)
  4. 下载 EuRoc 数据,按 euroc_examples.sh 脚本放置,运行脚本即可

ORBSLAM34macOS


版本修复问题记录:

编译 fix

https://github.com/UZ-SLAMLab/ORB_SLAM3/commit/82ffae29de41b9eba50eb23834184c84f585f290

  1. DBoW 库 CMakeList 引入 Boost 库依赖
  2. DBoW / g2o / ORBmatcher 头文件引入问题
  3. DBoW / g2o tr1/unordered_map 引入问题
  4. 添加第三方库 Pangolin submodule

运行 fix

https://github.com/UZ-SLAMLab/ORB_SLAM3/commit/c0358724c59822725b0c181552b64b0cb706751a

  1. 修改词袋文件为二进制方式,并 提前开辟内存解决载入过慢问题
  2. 修改 Viewer 线程使之在主进程中起 (macOS / Win 只支持主线程 GUI 渲染)
  3. 回退 System Shutdown viewer 状态检查,使程序可以正常退出
  4. 添加旧版本中的 euroc_xx.sh tum_vi_xx.sh 脚本供测试使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/883667.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TALKS:解决模型-数据差异的系统框架

资料收集于网络,仅供学习使用 TALKS: A systematic framework for resolving model-data discrepancies https://doi.org/10.1016/j.envsoft.2023.105668 问题现状 TALKS框架 TALKS(Trigger, Articulate, List, Knowledge elicitation, Solve),作为解…

SpringBoot引入外部jar打包失败解决,SpringBoot手动引入jar打包war后报错问题

前言 使用外部手动添加的jar到项目&#xff0c;打包时出现jar找不到问题解决 处理 例如项目结构如下 引入方式换成这种 <!-- 除了一下这两种引入外部jar&#xff0c;还是可以将外部jar包添加到maven中&#xff08;百度查&#xff09;--><!-- pdf转word --><…

时间序列数据的预处理方法总结

时间序列数据随处可见&#xff0c;要进行时间序列分析&#xff0c;我们必须先对数据进行预处理。时间序列预处理技术对数据建模的准确性有重大影响。 在本文中&#xff0c;我们将主要讨论以下几点&#xff1a; 时间序列数据的定义及其重要性。 时间序列数据的预处理步骤。 构…

opencv实现以图搜图

这里写目录标题 1. 步骤1.1 导入OpenCV库&#xff1a;1.2 加载图像1.3 提取特征1.4 匹配特征1.5 显示结果 2. 完整代码3. 测试图片及效果 1. 步骤 1.1 导入OpenCV库&#xff1a; 在您的C代码中&#xff0c;首先需要导入OpenCV库。您可以使用以下语句导入核心模块&#xff1a;…

【第三阶段】kotlin语言的安全调用操作符

&#xff1f;. fun main() {var name:String?"kotlin" //name是一个可空类型&#xff0c;发出广播&#xff0c;调用的地方必须补救措施namenullvar r name?.capitalize() //?. 如果namenull&#xff0c;那么?.的将不执行&#xff0c;就不会引发空指针异常prin…

多线程学习和Thread类

多线程的创建使用和Thread类 一、多线程相关概念1. 并行与并发2. 进程与线程3. 多线程的作用4. 线程调度 二、多线程创建使用1.经典的两种方式2. 匿名内部类实现3 Thread类3.1 构造器3.2 基本方法3.3 线程控制方法3.4 守护线程 三、 线程的生命周期四、线程安全方式1&#xff1…

hive-无法启动hiveserver2

启动hiveserver2没有反应&#xff0c;客户端也无法连接( beeline -u jdbc:hive2://node01:10000 -n root) 报错如下 查看hive的Log日志&#xff0c;发现如下报错 如何解决 在hive的hive_site.xml中添加如下代码 <property><name>hive.server2.active.passive…

8年测试经验之谈 —— JMeter生成HTML性能测试报告

1.修改JMeter的配置文件 2.配置环境变量 3.控制台到测试脚本目录并执行命令 4.查看测试报告 1.修改JMeter的配置文件 在JMeter本地安装目录下&#xff0c;把bin目录下jmeter.properties文件中的jmeter.save.saveservice.output_formatcsv禁⽤取消 # legitimate values: xml…

涨薪加薪利器:聊聊Synchronized和Volatile的差异究竟何在?

大家好&#xff0c;我是小米&#xff01;今天&#xff0c;我们要聊一个在Java多线程编程中非常重要的话题&#xff1a;Synchronized和Volatile的区别。这两个关键字常常令人迷惑&#xff0c;但却是我们编写高效、稳定多线程程序不可或缺的工具。废话不多说&#xff0c;让我们一…

Redis专题-队列

Redis专题-队列 首先&#xff0c;想一想 Redis 适合做消息队列吗&#xff1f; 1、消息队列的消息存取需求是什么&#xff1f;redis中的解决方案是什么&#xff1f; 无非就是下面这几点&#xff1a; 0、数据可以顺序读取 1、支持阻塞等待拉取消息 2、支持发布/订阅模式 3、重…

Vue 批量注册组件

全局组件 在components文件夹下新建一个Gloabl文件夹&#xff08;可以自行命名&#xff09; 在目录下新建index.js import Vue from vue// require.context(路径, 是否遍历子目录, 匹配规则) const requireComponents require.context(./, true, /\.vue/)requireComponents.k…

常见的前端对数据的操作方法

[{"name": "蒸汽锅炉 A 年度检验报告","sort": 5,"analysisComponent": "组件类型","trHeadVOList": [],"trContentVOList": [{"jieguo": "√","jianyanxiangmu": "…

神经网络分类算法的应用及其实现

目录 神经网络分类算法的应用及其实现 神经网络算法特点 1) 黑盒算法 2) 数据量 3) 算力和开发成本高 神经网络算法应用 神经网络分类算法的应用及其实现 神经网络算法特点 我们知道&#xff0c;深度学习的本质就是神经网络算法&#xff08;深度学习是神经网络算法的一个…

嵌入式编译FFmpeg6.0版本并且组合x264

下载直通车:我用的是6.0版本的 1.准备编译: 2.进入ffmpeg源码目录&#xff0c;修改Makefile&#xff0c;添加编译选项&#xff1a; CFLAGS -fPIC 不加会报错 3.使用命令直接编译 ./configure --cross-prefix/home/xxx/bin/arm-linux-gnueabihf- --enable-cross-compile --targ…

生信豆芽菜-多种算法计算免疫浸润

网址&#xff1a;http://www.sxdyc.com/immuneInfiltration 一、使用方法 1、数据准备 一个全编码蛋白的表达谱基因&#xff0c;其中行为基因&#xff0c;列为样本 第一列为基因为行名&#xff0c;不能重复 2、选择计算的方法&#xff08;这里提供了5种免疫计算的方法&#x…

php错误类型与处理

1 语法编译错误&#xff0c;少了分号&#xff0c;这是系统触发的错误&#xff0c;不需要我们去管。 2 错误类型有四种&#xff1a;error致命错误&#xff0c;代码不会往下运行&#xff1b;warning&#xff1a;提醒错误&#xff0c;会往下运行&#xff0c;但是会有意想不到的结果…

【BEV】3D视觉 PRELIMINARY

这里的知识来自于论文 Delving into the Devils of Bird’s-eye-view Perception: A Review, Evaluation and Recipe 的 Appendix B.1 部分来自 这篇文章 从透视图转向鸟瞰图。&#xff08;Xw、Yw、Zw&#xff09;、&#xff08;Xc、Yc、Zc&#xff09;表示世界World坐标和相…

Unity TreeView 树形菜单

文章目录 1. 参考文章2. 工程地址3. 项目结构4. 主要代码 1. 参考文章 https://blog.csdn.net/qq992817263/article/details/54925472 2. 工程地址 将文件夹放入 unity 中即可查看 作者 github 地址&#xff1a;https://github.com/ccUnity3d/TreeView 本人 gitee 地址(不用…

IronPDF for .NET Crack

IronPDF for .NET Crack ronPDF现在将等待HTML元素加载后再进行渲染。 IronPDF现在将等待字体加载后再进行渲染。 添加了在绘制文本时指定旋转的功能。 添加了在保存为PDFA时指定自定义颜色配置文件的功能。 IronPDF for.NET允许开发人员在C#、F#和VB.NET for.NET Core和.NET F…

【数据库系统】-- 【1】DBMS概述

1.DBMS概述 01数据库系统概述02数据库技术发展概述03关系数据库概述04数据库基准测试 01数据库系统概述 几个基本概念 为什么使用数据库系统 数据库发展的辉煌历程 02数据库技术发展概述 数据模型 应用领域 ● OLTP ● OLAP ● HTAP ● GIS OLTP与OLAP 与其他技术相…