hdl_graph_slam|Start|运行环境搭建|运行官方数据集

开发环境

  • Ubuntu18.04
  • melodic
  • 在Ubuntu18.04上安装版本为melodic的ROS开发环境

编译hdl_graph_slam

mkdir -p hdl_graph_slam_ws/src
cd hdl_graph_slam_ws
catkin_make
cd hdl_graph_slam_ws/src
git clone https://github.com/koide3/hdl_global_localization.git
git clone https://github.com/koide3/hdl_localization.git
cd ..
catkin_makecd hdl_graph_slam_ws/src
git clone https://github.com/koide3/hdl_people_tracking.git
git clone https://github.com/SMRT-AIST/interactive_slam.git --recursive
cd ..
catkin_make注释:
git clone --recursive 用于循环克隆git子仓库至此全部编译好了

测试hdl_graph_slam

sudo apt-get install python-pip #python2
sudo apt-get install python3-pip #python3
室内样例
cd hdl_graph_slam_ws
source devel/setup.bash
roslaunch hdl_graph_slam hdl_graph_slam_501.launchrosparam set use_sim_time truesource devel/setup.bash
roscd hdl_graph_slam/rviz && rviz -d hdl_graph_slam.rvizrosbag play --clock hdl_501_filtered.bag

在这里插入图片描述

室外样例

室外建图中引入了GPS和IMU信息融合,参考系关系会更加复杂。

roscorerosparam set use_sim_time true这个参数当回放bag数据集是设置为true,此时说明系统使用的是仿真时间,如果设置为false,则系统使用wall time。
此参数可以通过launch文件中设置,或者通过节点设置。实时建图时必须将系统时间变成实际的wall time:rosparam set use_sim_time false。launch文件设置:
<param name="use_sim_time" value="false" />
通过节点设置:
rosparam set use_sim_time true运行结点
roslaunch hdl_graph_slam hdl_graph_slam_400.launch
访问特定的rviz文件,这里面已经设置好了可视化的参数。
source devel/setup.bash
roscd hdl_graph_slam/rviz
rviz -d hdl_graph_slam.rviz第五行即播放包,要注意必须有 --clock,
该参数是在包播放时同时publish时间,以便和前面的sim_time搭配。rosbag play --clock hdl_400.bag比较简单的方式是输入到save_map后,双击TAB,这样就只需要填空就可以了。

在这里插入图片描述

跑自己录制数据bag包
录制命令如下:rosbag record -a在当前所在文件夹,记录下所有被list的publihed data。rosbag info <name_bag>输出当前文件夹内的 name_bag包内信息,包括时长,类型,topics,信息数。rosbag play <name_bag>重新播放bag文件,但需要原来接收的那个node在运行中。通常会有0.2s的延迟,这是为了让订阅者可以准备接收。-s 选项用于延迟,-r选项用于改变指令速度,如 -r 2会使得指令速度 翻倍。有些时候,由于包太大了,信息太多,此时可能需要只记录某些特定的topics。此时可以在后面指定topics,如:rosbag record -O subset /turtle1/cmd_vel /turtle1/pose注:-o 是自定义名字,但后面会自带日期。而-O是直接覆盖整个文件名字,即不再自xiugai 动追加日期。修改launch文件和rviz文件将 topic <arg name="points_topic" default="/velodyne_points" />改成<arg name="points_topic" default="/rslidar_points" />。将 frame_id <node pkg="tf" type="static_transform_publisher" name="lidar2base_publisher" args="0 0 0 0 0 0 base_link velodyne 10" />改成<node pkg="tf" type="static_transform_publisher" name="lidar2base_publisher" args="0 0 0 0 0 0 base_link rslidar 10" />。可以直接运行原来的rviz,自己手动调节,然后保存设置即可

OK 祝你成功

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

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

相关文章

从0到1构建一个RAG检索增强系统

RAG&#xff08;Retrieve Augment Generation&#xff0c;检索增强&#xff09;是“驯服”大语言模型的主要手段之一。它允许大语言模型在从固定的数据库中抽取相关内容的基础上生成答案&#xff0c;从而限制随意发挥&#xff0c;提升答案的可靠性。 核心组件&#xff1a; RA…

第五篇: 使用Python和BigQuery进行电商数据分析与可视化

使用Python和BigQuery进行电商数据分析与可视化 大数据分析对于电商业务的洞察至关重要。在这篇文章中&#xff0c;我们将使用Python结合Google BigQuery来分析电商数据集&#xff0c;以最畅销商品和平均订单价格最高的前10位客户为主题&#xff0c;展示如何通过数据可视化提供…

无线无源振动温度传感器应用实例

本产品是专为设备故障监测、设备健康管理的应用场景设计的一款无源、无线振动温度复合传感器&#xff0c;可以对设备进行状态监测和故障诊断&#xff0c;实现设备的安全监测和预测性维护&#xff0c;避 免非计划停机&#xff0c;降低运维的时间和成本。 lora无线温振一体传感器…

IDEA2024下安装kubernetes插件并配置进行使用

【1】安装插件 其实2024.2.3下默认已经安装了kubernetes插件&#xff0c;如果你发现自己IDEA中没有&#xff0c;在市场里面检索并下载即可。 【2】kubernetes配置 ① 前置工作 首先你要准备一个config文件和一个kubectl.exe 。 config文件类似如下&#xff1a; apiVersi…

MATLAB/Simulink学习|在Simulink中调用C语言-03使用C Function 实现PI运算(使用模块自定义代码)

在前两篇博客中&#xff0c;介绍了如何使用C Function实现比例运算和积分运算&#xff0c;这篇博客将介绍如何实现PI运算&#xff0c;实际上是在前两篇博客的基础上完成的。 添加CFunction 端口和参数 共有两个输入端口&#xff0c;分别是参考Ref和反馈Fbk。一个输出端口Out。…

#【YashanDB认证】#YCA的学习过程总结-之崖山数据库初体验

概述 前段时间崖山数据库做推广活动&#xff0c;参加了yca的考试&#xff0c;为啥参加这个数据库厂商的学习呢&#xff0c;因为目前这个数据库最像Oracle&#xff0c;又听公司的前辈说呢&#xff0c;这个公司的前身是华为人出来做的数据库&#xff0c;华为人的精神呢&#xff0…

UE 引入 IOS framework库的坑

一、我明明已经把framework库进行签名的却在 上传到开发者后台时一直报错 90034 签章遗失 或者 未签 这个问题我最近遇到 极其坑爹 我是这个情况 这是我的framework库的目录 关键就在这了 多出了这个文件 就影响了 上传到开发者后台 就报错 90034 将其删除就好 &…

使用Service Worker实现离线应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 使用Service Worker实现离线应用 引言 Service Worker 简介 注册和激活 Service Worker 注册 Service Worker 激活 Service Work…

【Spring IoCDI】IoC容器,IoC注解,Bean的使用

【Spring核心思想:IoC】 spring是一个开源框架&#xff0c;支持广泛的应用场景&#xff0c;简而言之:Spring是包含了众多工具方法的IoC容器 【IoC】 IoC的意思是「控制反转」&#xff0c;也就是说Spring是一个“控制反转”的容器 通用程序的实现代码&#xff0c;类的创建顺序…

docker 可用镜像服务地址(2024.10.31亲测可用)

1.错误 Error response from daemon: Get “https://registry-1.docker.io/v2/” 原因&#xff1a;镜像服务器地址不可用。 2.可用地址 编辑daemon.json&#xff1a; vi /etc/docker/daemon.json内容修改如下&#xff1a; {"registry-mirrors": ["https://…

200smart怎么通过4G网络与wincc通讯

smart的PLC距离监控室距离比较&#xff0c;要在监控中心使用wincc组态来远程控制&#xff0c;物联网技术已经非常成熟&#xff0c;通过4G无线网络部署速度最快&#xff0c;成本最低&#xff0c;且稳定性可靠性已经完全满足工控技术需求。那200smart是怎样通过4G网络与wincc通讯…

Git学习记录

文章目录 一、版本控制工具1.1、集中式版本控制工具1.2、分布式版本控制工具 二、Git安装与常用命令2.1、Git环境配置2.2、基础操作指令2.2、分支2.2.1、基本指令2.2.2、合并冲突 三、Git远程仓库3.1、添加和查看远程仓库3.2、推送到远程仓库3.3、从远程仓库克隆3.4、从远程仓库…

如何打开/关闭 GitLab 的版本检查功能?

本文分享如何打开/关闭 GitLab 的版本检查功能。 极狐GitLab 是 GitLab 的中国发行版【https://dl.gitlab.cn/ncecn6kb】&#xff0c;中文版本对中国用户更友好&#xff0c;文章以私有化部署的极狐GitLab 实例来演示版本检查功能的开启和关闭。强烈不建议关闭该功能&#xff0…

Docker入门系列——网络

Docker 通过容器化应用程序&#xff0c;彻底改变了我们构建、分发和运行应用程序的方式。然而&#xff0c;有效使用 Docker 的一个关键方面是理解容器如何相互通信以及与外界通信。 1. 什么是 Docker 网络&#xff1f; Docker 网络允许容器相互通信以及与外部资源通信。默认情况…

20241029软考架构-------软考案例9答案

每日打卡题案例9答案 【2014年真题】 难度&#xff1a;简单 请详细阅读有关软件架构评估方面的说明&#xff0c;回答下列问题。&#xff08;25分&#xff09; 【说明】 某电子商务公司拟升级目前正在使用的在线交易系统&#xff0c;以提高客户网上购物时在线支付环节的效率和安…

双分解+一区极光优化+Transformer!CEEMDAN-Kmeans-VMD-PLO-Transformer多元时序预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现CEEMDAN-Kmeans-VMD-PLO-Transformer融合K均值聚类的数据双重分解极光优化Transformer多元时间序列预测&#xff08;完整源码和数据&#xff09; 2.CEEMDAN分解&#xff0c;计算样本熵&#xff0c;根据样…

2024 CSS保姆级教程二 - BFC详解

前言 - CSS中的文档流 在介绍BFC之前&#xff0c;需要先给大家介绍一下文档流。​ 我们常说的文档流其实分为定位流、浮动流、普通流三种。​ ​ 1. 绝对定位(Absolute positioning)​ 如果元素的属性 position 为 absolute 或 fixed&#xff0c;它就是一个绝对定位元素。​ 在…

el-table 滚动条重置 手动控制滚动条

最近在使用 el-table 的时候&#xff0c;出现一个问题&#xff1a; 表头过长的时候&#xff0c;会有左右滑动的操作&#xff0c;当我们把表格拉到最右侧&#xff0c;这个时候重新请求数据的话&#xff0c;表格位置还是在最右侧&#xff0c;不会恢复原位。 那我们想恢复原位&a…

【Android】View的事件分发机制

文章目录 分发顺序ActivityViewGroupView 协作方法整体流程注意 Activity事件分发ViewGroup事件分发View点击事件总结 分发顺序 Activity->ViewGroup->View Activity 分发事件&#xff1a;Activity 通过 dispatchTouchEvent 方法分发事件&#xff0c;首先尝试将事件传递…

基于vue框架的的考研网上辅导系统ao9z7(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;学生,公告信息,课程分类,考研资料,考研视频,课程信息,院校建议,教师 开题报告内容 基于Vue框架的考研网上辅导系统开题报告 一、研究背景与意义 随着高等教育的普及和就业竞争的加剧&#xff0c;考研已成为众多大学生提升学历、增强就…