DM-VIO安装与运行自己数据集(ROS版本)

这篇具有很好参考价值的文章主要介绍了DM-VIO安装与运行自己数据集(ROS版本)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DM-VIO安装与运行自己数据集(ROS版本)

1、dm-vio安装

进入官方链接下载dm-vio和dm-vio-ros,基本上就是按照readme的操作来:
下载代码:

git clone https://github.com/lukasvst/dm-vio.git

安装gt-sam:

sudo apt install libtbb-dev
git clone https://github.com/borglab/gtsam.git
cd gtsam
git checkout 4.2a6          # not strictly necessary but this is the version tested with.
mkdir build && cd build
cmake -DGTSAM_POSE3_EXPMAP=ON -DGTSAM_ROT3_EXPMAP=ON -DGTSAM_USE_SYSTEM_EIGEN=ON -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
make -j
sudo make install

安装opencv:

sudo apt-get install libopencv-dev

安装pangolin:

sudo apt install libgl1-mesa-dev libglew-dev pkg-config libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
git checkout v0.6
mkdir build
cd build
cmake ..
cmake --build .
sudo make install

这里要注意,如果电脑里没有pangolin,是可以编译的,但是不会生成可执行文件,所以这个仍然是必须安装的库,此外,必须是0.6版本。

git checkout v0.6

编译:

cd dm-vio
mkdir build
cd build
cmake ..
make -j

编译完成后,在build/bin目录下,就能看到可执行文件dmvio_dataset。接下来,就可以按照官方的方法跑数据了。(一般来说按照readme进行安装即可正常编译成功,主要在ROS版本容易出错)

2、dm-vio-ros安装

代码下载:

git clone https://github.com/lukasvst/dm-vio-ros.git

我是新建了一个ROS工程:dm-vio-ws,为了能让这个插件找到刚刚编译的dm-vio,所以一个偷懒的办法,就是在.bashrc加上一个环境变量(这一步很重要,不用修改CMakeLists.txt文件)

sudo gedit ~/.bashrc
export DMVIO_BUILD=/home/xtz/dm-vio-master/build

然后编译:

catkin_make
source devel/setup.bash

3、使用自己的数据集:

3.1运行euro数据集

该代码默认配置为euroc数据集(程序里面包括了euroc数据的外参),所以只需要添加相机模型camera.txt和IMU.taml文件即可运行euroc数据集:

echo -e "458.654 457.296 367.215 248.375 -0.28340811 0.07395907 0.00019359 1.76187114e-05\n752 480\ncrop\n640 480\n" > camera.txt

rosrun dmvio_ros node calib=/PATH/TO/camera.txt settingsFile=/PATH/TO/dm-vio/configs/euroc.yaml mode=1 nogui=0 preset=1 useimu=1 quiet=1 init_requestFullResetNormalizedErrorThreshold=0.8 init_pgba_skipFirstKFs=1
 
rosbag play V2_01_easy.bag

第一个命令,生成相机内参文本文件
第二个命令,读取 camera.txt和euroc.yaml(IMU内参),运行节点
第三个命令:运行数据包。

3.2运行自己的数据集

修改dm-vio工程里面的IMUSettings.cpp文件里面IMU到CAM的外参(void IMUCalibration::initDefault()),下面是我自己的外参:

   m << 0.999265 , 0.0338909, -0.0178914,
          0.0167624 , 0.0333074, 0.999305,
          0.0344632 , -0.99887 , 0.0327149;
   p <<-0.0263343,  0.0107831, -0.0136551;

然后重新编译:

make -j4

修改dm-vio-ws(ROS工程里面的话题名称):

    ros::Subscriber imageSub = nh.subscribe("/camera/color/image_raw", 3, &vidCb);
    ros::Subscriber imuSub = nh.subscribe("/camera/imu", 50, &imuCb);

重新编译:

catkin_make -j4

编译成功之后,就可以运行自己的数据集了,首先准备cam.txt和IMU.txt文件。
DM-VIO安装与运行自己数据集(ROS版本)
`DM-VIO安装与运行自己数据集(ROS版本)
我使用的IMU内参和相机内参文件。
运行:

roscore
source ./devel/setup.bash
rosrun dmvio_ros node calib=/home/xtz/dm_vio_ws/src/config/camera.txt settingsFile=/home/xtz/dm_vio_ws/src/config/imu.yaml mode=0 nogui=0 preset=0 useimu=1 quiet=1 init_requestFullResetNormalizedErrorThreshold=0.8 init_pgba_skipFirstKFs=1 setting_weightZeroPriorDSOInitX=5e09 setting_weightZeroPriorDSOInitY=5e09

运行成功:
DM-VIO安装与运行自己数据集(ROS版本)

DM-VIO安装与运行自己数据集(ROS版本)

4、论文:

链接: 论文地址文章来源地址https://www.toymoban.com/news/detail-449635.html

到了这里,关于DM-VIO安装与运行自己数据集(ROS版本)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ROS的安装【Ubuntu18.04版本】

    ROS是机器人学习所需要用到的平台软件,记录一下装的过程,为下一次重装节省一下时间嘻嘻。 目录 一.设置sources.list 二.设置密匙 三.安装   四.配置环境   五.检测ros是否安装成 【在设置密匙的时候可能会遇见以下问题,没有找到有效的openPGP数据】  【解决方案如下】 

    2024年02月02日
    浏览(101)
  • DBeaver数据库管理工具安装连接PostgreSQL和DM

    1. 安装 下载地址 https://dbeaver.io/download/ 2. 连接PostgreSQL 配置显示所有数据库 第二个勾选会显示模板数据库 点击 测试连接 ,然后下载驱动 连接成功 3. 连接DM8 3.1 下载驱动 地址 https://eco.dameng.com/document/dm/zh-cn/app-dev/java_Mybatis_frame.html 下载完成解压,将需要的 DmJdbcDriver18.jar 放到

    2024年02月16日
    浏览(49)
  • Window环境下不安装DM数据库,编译dmPython

    dmPython 是 DM 提供的依据 Python DB API version 2.0 中 API 使用规定而开发的数据库访问接口。dmPython 实现这些 API,使 Python 应用程序能够对 DM 数据库进行访问。 dmPython 通过调用 DM DPI 接口完成 python 模块扩展。在其使用过程中,除 Python标准库以外,还需要 DPI 的运行环境。 应用服务

    2024年02月04日
    浏览(35)
  • 【点云检测】OpenPCDet 教程系列 [1] 安装 与 ROS运行

    主要是介绍库的使用,做笔记区 首先搜索的时候有个问题 一直在我脑子里 hhh 就是MMlab其实还有一个叫mmdetection3d 的库,然后搜的时候发现 hhh 有网友和我一样的疑惑:OpenPCDet和mmdetection3d有什么区别 ? - 知乎 (zhihu.com) 这是OpenMMLab官方的回复: OpenPCDet 和 mmdetection3d 是两个不同的

    2024年02月14日
    浏览(39)
  • 【Carla】carla仿真环境安装与运行(Python、ros)

    😏 ★,° :.☆( ̄▽ ̄)/$: .°★ 😏 这篇文章主要介绍carla仿真环境安装与运行。 学其所用,用其所学。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,下次更新不迷路🥞 Carla 是一个开源的无人驾驶仿真平台,用于训练和测试自动驾驶算法。

    2024年02月05日
    浏览(40)
  • 【Database-02】达梦数据库 - DM Manager管理工具安装

    DM Manager是达梦数据库自带的图形化界面管理工具,在安装达梦数据库的时候就会自动安装。 Linux环境,默认安装路径为:达梦安装目录/tool/manager,如果Linux是安装GUI,那么就可以直接启动使用。 实际大部分使用过程中,是在windows环境另外再安装一个达梦数据库客户端。 从达

    2024年02月15日
    浏览(63)
  • Linux安装达梦数据库/DM8(附带客户端工具安装完整版)

    1.1、创建安装与运行的Linux用户 官方也明确提出,为了减少对操作系统的影响, Linux 用户不应该已 root 用户和默认的用户组来安装与运行达梦数据库,应该为 DM 创建一个专用的用户组和系统用户。例如: 1.2、操作系统资源限制检查 这也是官方给出的提醒,在 Linux 系统中,

    2024年02月02日
    浏览(54)
  • Ubuntu22.04源码安装ROS-noetic(ROS1非ROS2),编译运行VINS-MONO

    由于22.04默认安装ROS2,但很多仓库都是基于ROS1的,不想重装系统,参考这两个博客安装了ROS-noetic: 博客1. https://blog.csdn.net/Drknown/article/details/128701624 博客2. https://zhuanlan.zhihu.com/p/418227536 我的库版本(实测可行): eigen:3.3.7 ceres:1.14.0(用2.系列版本的编译时需要把C++版本设

    2024年02月02日
    浏览(53)
  • ROS2 humble版本安装gazebo提示:没有可安装候选或无法定位安装包

    错误提示如下所示: 或者: 解决方法: 如果大家使用这条指令依然无法解决问题,请大家注意发帖时间,是否与您当前使用的时间相隔过久,可能官方又更换安装指令了 方法来源:How to install Gazebo for Ubuntu 22.04 with ROS2 Humble - Gazebo: QA Forum

    2024年02月08日
    浏览(39)
  • ROS2安装ORB—SLAM3并用电脑摄像头运行

    安装环境: Ubuntu22.04 ros2 humble 安装参考链接 1、准备工作 1.1安装依赖 1.2源码下载 原版本: ROB-SLAM3源码下载 修改版本: 下面链接是适用ROS2的ORB-SLAM3修改版 ORB-SLAM3-STEREO-FIXED ,本文下载的是此版本 ORB-SLAM3-STEREO-FIXED下载 2、安装Eugen3 3、安装 Pangolin 原博客说使用0.6,但实测报错

    2024年03月15日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包