SLAM之小觅相机跑开源方案(ORB_SLAM2,VINS MONO,VINS FUSION,RTAB-Map)

2023-05-16

传感器: 小觅相机标准版
开源SLAM方案: ORB_SLAM2,VINS MONO,VINS FUSION,RTAB-Map
测试地点: 室内大厅(光线不均)/ 露天阳台
实现形式: 小觅相机 / kinect 在目标地点跑两圈

相机标定:

1) 安装标定工具,在命令行里输入:
 rosdep install camera_calibration
 rosmake camera_calibration
2) roscore
3) source MYNT-EYE-S-SDK/wrappers/ros/devel/setup.bash
 roslaunch mynt_eye_ros_wrapper mynteye.launch
4) rosrun camera_calibration cameracalibrator.py --size 9x6 --square 0.02516 --no-service-
  check --approximate=0.1 right:=/right/image_raw_color left:=/left/image_raw_color right_camera:=/mynteye/right   left_camera:=/mynteye/left

获取图像校准参数

1)cd MYNT-EYE-S-SDK
2)./samples/_output/bin/tutorials/get_img_params
获得针孔模型下的 distortion_parameters 和 projection_parameters 参数,然后在×××.yaml 更新。

方案匹配:
在这里插入图片描述

一、slam方案:ORB_SLAM2

室内跑两圈,采集结果如下:
在这里插入图片描述说明:
1、可获得point、keyframe、graph数据
2、相比于kinect相机,跑小觅相机中速运动时不易丢包;
3、重定位算法比较好,但仍有较大偏差;
4、光线强度高的地方很容易丢包;测量地点为一个闭环,测试结果却没形成闭环;图像为稀疏点云,数据大了会卡。

二、slam方案:VINS MONO;mono+imu;回环

室内跑两圈,采集结果如下:
在这里插入图片描述说明:
1、加回环检测(红三角)能识别曾经到过的路径并修正,但延迟比较高;未加回环(绿三角)跑偏,相比于vins fusion的双目不加回环,效果较差;
2、IMU漂移比较严重

三、slam方案:VINS FUSION;stereo+imu;无回环

室内跑两圈,采集结果如下:
在这里插入图片描述说明:
1、快速运动时不丢包;光线不敏感,能适应复杂场景; 能形成闭环
2、生成稀疏点云图,同ORB_SLAM2,需后期进行稠密建图等优化处理
3、未加回环,无法识别曾经到过的路径,拟后期加上回环再进行测试

四、slam方案:RTAB

三楼阳台测试,生成点云图示意:
在这里插入图片描述说明:
1、SLAM集成完整;可生成稠密地图,用于导航、避障
2、慢速下不易丢包【速度和ORB差不多】;丢包后能进行快速重定位;对光线不敏感,能适应多复杂场景
3、两种安装格式:二进制——直接应用;源码——可二次开发
4、用kinect测试,效果不错,但kinect可视距离在2米内;拟后期改跑小觅相机再测试

综上:

可参考方案有VINS FUSIONRTAB
1)若选择VINS FUSION双目+imu,加入回环算法,效果会好很多;但后续仍需优化、稠密建图等处理
2)若选择RTAB-Map,添加小觅相机的依赖,提高识别距离,效果应该不错;选用源码安装方式,便于后期二次开发。

以上是相机实跑SLAM方案测试结果,小白一枚,若有误差,请指出,不甚感激!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SLAM之小觅相机跑开源方案(ORB_SLAM2,VINS MONO,VINS FUSION,RTAB-Map) 的相关文章

  • 当 WebRequest 无法找到该前缀的创建者时出现“NotSupportedException”

    我有一个非常奇怪的问题WebRequest in a ServiceStackWeb 应用程序 由 Mono 上的 XSP 托管 看起来请求模块的注册工作方式非常奇怪 我在用WebRequest创建一个 HTTP 请求 但它失败了 因为它无
  • MonoDevelop - 转换行结束对话框

    我经常在 Linux 上的 MonoDevelop 和具有相同代码库的 VS2010 之间切换 因此我永远不得不单击不转换行结尾 MonoDevelop 中是否有一个选项可以设置默认答案以防止弹出此对话框 找到了 编辑 gt 首选项 gt
  • 如何使 Xamarin.Mac 应用程序“登录时打开”?

    我有一个 Xamarin Mac 应用程序需要在登录时自动打开 如何让我的应用程序获得此设置而无需手动单击它 我可以给你一个如何以编程方式完成的提示 对于这种方法 您需要通过以下方式调用本机库DllImport 以下代码将让您了解如何继续
  • 在 Mono 或 Windows 上托管 ServiceStack、MVC3 或 MVC4,以及 Mono 的状态是什么

    我正在尝试决定为基于网络的新后台系统使用什么堆栈 我们使用 C 进行开发 并将使用 ServiceStack 和 或 ASP NET MVC 我们的客户更喜欢在 Linux 服务器上托管 因此排除了 MVC4 因为 Mono 不支持 MVC
  • 如何为 MAC OS X 安装 libgluezilla

    我正在尝试在具有嵌入式 Web 浏览器控件的 Mac 上运行 Mono 应用程序 程序运行 但现在显示浏览器并输出一条消息 未找到 libgluezilla 要获得网络浏览器支持 您需要安装 libgluezilla 我已经搜索过 但不知道
  • 如何从 Mono 证书存储“我的”和“信任”中删除/删除证书?

    我已在 Linux 中使用以下命令将证书添加到 Mono 3 2 8 存储中 certmgr add c m My mycert cer 添加的证书可以通过以下方式查看 certmgr list c m My mycert cer 使用以下
  • Mono 可以在 rdlc 中创建/运行报告吗?

    我从未使用过 mono 很好奇 mono 是否可以创建 运行 rdlc 报告 我正在寻找实现的是一个单声道 asp net mvc 应用程序 用于使用 rdlc 创建报告并导出为 pdf 单声道可以吗 有一些开源项目尝试在 NET 中实现
  • LSH 是将向量转换为汉明距离的二进制向量吗?

    我读了一些关于 LSH 的论文 我知道它用于解决近似 k NN 问题 我们可以将算法分为两部分 给定一个向量D尺寸 其中D是大 的任何值 用一组翻译它N where N lt
  • 在Ubuntu 18.04、Python 3.6.7 64位、Mono 5.16上安装pythonnet失败

    我想在 Ubuntu 上安装 pythonnet 但失败了 这就是我到目前为止所尝试的 usr bin python3 m pip install U pythonnet user Error Collection pythonnet Us
  • GTK C# 小部件更改颜色不起作用

    我试图通过使用更改 GTK 中按钮小部件的颜色 button1 ModifyBase Statetype Normal new Gdk Color 1 1 1 这是从另一个按钮单击事件调用的 但小部件颜色未更新 为什么是这样 您可以只使用M
  • .NET CLR 线程池耗尽 - 实现错误?

    我编写了一个简单的基于异步的负载测试库 它还有一个控制台界面可以从命令行进行测试 基本上 它同时运行大量请求 聚合它们 并显示摘要和简单的直方图 没有什么花哨 但我在本地系统中运行了大量测试 因此我想确保测试工具能够使用尽可能少的资源来获得
  • nix*es 上 .NET Core 和 Mono 的“System.Diagnostics”中不存在“Eventing”命名空间

    我目前正在开发一个 C 应用程序 可以使用以下导入读取和查询 Windows 事件日志 using System Diagnostics Eventing Reader 此导入在使用 Visual Studio 2017 的 Windows
  • 是否可以使用 Mono 运行 clickonce 应用程序?

    我正在开发 clickonce 应用程序 我可能想在 Mac 平台上分发该应用程序 我知道我可以使用 Mono 编译 Net 应用程序 并且它可以在 Mac 上运行 但是我可以使用 clickonce 作为安装程序吗 thanks 我认为
  • Directory.GetCurrentDirectory() 在 Linux 上不起作用?

    因此 我尝试创建一个需要读取名为 scripts 的子文件夹中的脚本的应用程序 我的代码有问题 string script Console ReadLine string path Directory GetCurrentDirectory
  • C# 中的字符串加密和解密? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何在 C 中加密和解密字符串 编辑 2013 年 10 月 虽然我随着时间的推移编辑了这个答案以解决缺点 但请参阅jbtule 的回
  • 服务堆栈上的 SSL

    Mono 上的服务堆栈是否支持 SSL 我只能访问 Mac 我在这里找到的说明要求您使用 Windows 工具创建 pvk 文件 http joshua perina com geo post using ssl https with mo
  • Mono 的 DNS 刷新超时

    虽然目前Mono项目的ServicePointManager类有DnsRefreshTimeout属性启用到其接口中 相关属性未实现 调用示例 ServicePointManager DnsRefreshTimeout 10 60 1000
  • 扩展 Mono C# 编译器:有任何文档或先例吗?

    我目前正在参与一些有趣的编程语言研究 到目前为止 这些研究的重点是通过一些非常强大的基于程序员生产力的功能来扩展即将推出的 Java 7 0 编译器 这项工作应该同样适用于 C 等相关编程语言 我目前正在研究用于对该功能的 C 端口进行原型
  • OpenCV 3 中的 FLANN 错误

    我运行的是 Ubuntu 14 04 我正在尝试使用 openCV 3 运行 FLANN 但出现错误 下面的所有内容都是通过使用 AKAZE 和 ORB 进行尝试的 但代码来自我尝试使用 ORB 的情况 我使用 ORB 来查找描述符和关键点
  • C# MonoGame 有帮助吗? (Content.Load("入侵者");)

    我正在 MonoGame 中使用 Open GL 制作太空入侵者游戏 并且尝试加载已添加到内容文件夹中的纹理 这是一个名为 Invader 的 PNG 文件 我使用的代码是 invader Content Load

随机推荐