记录:robot_localization传感器数据融合学习

news2024/11/23 11:25:12

一、参考资料

  1. 官方:
  • http://wiki.ros.org/robot_localization
  • http://docs.ros.org/en/noetic/api/robot_localization/html/index.html
  • 2015 ROSCon 演讲官方网址(youyube上也有这个视频)
  1. 实践教程
  • https://kapernikov.com/the-ros-robot_localization-package/
  • https://github.com/methylDragon/ros-sensor-fusion-tutorial?tab=readme-ov-file

二、安装

mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/cra-ros-pkg/robot_localization --branch kinetic-devel
cd ..
catkin_make -DCMAKE_BUILD_TYPE=Release
source ./devel/setup.bash

出现CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake报错,执行sudo apt-get install ros-kinetic-geographic-msgs

三、实践

代码:https://github.com/Kapernikov/ros_robot_localization_tutorial

source /opt/ros/kinetic/setup.bash
cd /ros_robot_localization_tutorial/ros-ws
catkin_make
source ./devel/setup.bash

根据第一个教程,运行即可。如果报c++11的错误,CMakeLists中添加SET(CMAKE_CXX_FLAGS "-std=c++0x")
在这里插入图片描述
编译通过以后,启动节点,出现TurtleSim界面,可通过键盘操作,结果已经可视化出来了。

roslaunch robot_localization_demo robot_localization_demo.launch

在这里插入图片描述
灰色粗线是TurtleSim节点画的轨迹。蓝色细线是虚拟位置传感器,测量乌龟的绝对位置和方向。红色细线是虚拟速度传感器,测量乌龟的线速度和角速度。绿色粗线是robot_location融合的位姿估计结果。

四、理解

robots_localization 包是用于在 3D(或 2D)空间中移动的机器人的非线性状态估计器的集合。每个状态估计器都可以融合任意数量的传感器(IMU、里程计、GPS ……)来跟踪 15 维( x x x y y y z z z r o l l roll roll p i t c h pitch pitch y a w yaw yaw x ˙ \dot{x} x˙ y ˙ \dot{y} y˙ z ˙ \dot{z} z˙ r o l l ˙ \dot{roll} roll˙ p i t c h ˙ \dot{pitch} pitch˙ y a w ˙ \dot{yaw} yaw˙ x ¨ \ddot{x} x¨ y ¨ \ddot{y} y¨ z ¨ \ddot{z} z¨) 机器人的状态。

。。。待写

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

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

相关文章

【C++】再识构造函数:初始化列表新方式

欢迎来到CILMY23的博客 🏆本篇主题为: 再识构造函数:初始化列表新方式 🏆个人主页:CILMY23-CSDN博客 🏆系列专栏:Python | C | C语言 | 数据结构与算法 | 贪心算法 | Linux 🏆感…

【实践】使用vscode来debug go程序的尝鲜

配置 首先,当然得配置好vscode 的go环境, 装个go插件就基本满足了 配置 launch.json, 可以配置多个环境的程序启动参数(很友好) {"version": "0.2.0","configurations": [{"name": &…

C++深度解析教程笔记8

C深度解析教程笔记8 第17课 - 对象的构造(上)类定义中成员变量i和j的初始值?实验-成员变量的初始值对象初始化解决方案1实验-手动调用函数初始化对象对象初始化解决方案2:构造函数实验-构造函数小结 第18课 - 对象的构造&#xff…

乡村振兴的乡村人才振兴计划:培养乡村人才,吸引人才回流,激发乡村发展活力,为美丽乡村建设提供人才保障

目录 一、引言 二、乡村人才振兴计划的必要性 (一)乡村发展面临的人才困境 (二)人才振兴对乡村振兴的推动作用 三、乡村人才振兴计划的实施路径 (一)加强乡村教育体系建设 (二&#xff0…

AD软件针对分散的元器件归一排列

先框选 然后快捷键TOL 绿色的十字箭头选框选位置 完成

Golang | Leetcode Golang题解之第87题扰乱字符串

题目: 题解: func isScramble(s1, s2 string) bool {n : len(s1)dp : make([][][]int8, n)for i : range dp {dp[i] make([][]int8, n)for j : range dp[i] {dp[i][j] make([]int8, n1)for k : range dp[i][j] {dp[i][j][k] -1}}}// 第一个字符串从 …

deveco studio 打开官方案例,不显示运行按钮。

就拿官方的search举例好了 git 地址 https://gitee.com/harmonyos/samples/tree/master/ETSUI/Search 使用deveco studio打开Search项目,打开Tools->Device-Manager中的Local Emulator本地模拟器, 此时会发现,运行按钮是灰色的&#xff0…

【前端性能优化】深入解析重绘和回流,构建高性能Web界面

🔥 个人主页:空白诗 文章目录 🎯 引言:探索Web性能的基石🏗️ 基础概念:什么是重绘和回流?📌 回流(Reflow)📌 重绘(Repaint&#xff0…

阿赵UE引擎C++编程学习笔记——解决中文乱码问题

大家好,我是阿赵。   在UE编写C的时候,可能有些朋友发现,在C里面如果打印输出或者赋值一些中文的字符串的时候,会出现各种的报错,要么乱码,要么直接编译不过。   这个问题,其实和UE本身没什…

数字化信息协同助力智能巡查,基于YOLOv5全系列【n/s/m/l/x】参数模型开发构建无人机数字侦查场景下智能靶标检测识别系统

无人机的快速发展与普及,使得其进入千家万户各行各业,发挥着越来越重要的作用。随着科技的飞速发展,未来的数字信息化战场正逐渐展现出其独特的作战形态。在这个以数据和信息为主导的新战场上,无人机侦查手段与人工智能目标智能检…

vue3编译优化之“静态提升”

前言 在上一篇 vue3早已具备抛弃虚拟DOM的能力了文章中讲了对于动态节点,vue做的优化是将这些动态节点收集起来,然后当响应式变量修改后进行靶向更新。那么vue对静态节点有没有做什么优化呢?答案是:当然有,对于静态节…

AI论文写作生成器-AI自动生成论文-10分钟/万字论文

在当今这个高速发展的信息时代,科技的进步无疑给我们的工作、学习乃至生活带来了翻天覆地的变化。学术研究领域也不例外,近期一款新型的论文自动写作神器诞生了,它凭借人工智能技术的优势,为学者和研究人员撰写学术论文提供了极大…

每日一题11:Pandas:数据重塑-透视

一、每日一题 解答: import pandas as pddef pivotTable(weather: pd.DataFrame) -> pd.DataFrame:df_pivot weather.pivot(indexmonth, columnscity, valuestemperature)return df_pivot 题源:力扣 二、总结 Pandas 是一个强大的 Python 数据分析…

ANSYS Workbench中如何从面选择创建节点集合named selection?

点击选中一个面,右键named selection:

windows下安装redis

正常生产我们会在Linux下安装redis,windows下安装redis只做依赖环境的快速搭建、项目的快速验证。 1、下载地址 Releases microsoftarchive/redis GitHub 下载 Redis-x64-3.0.504.zip 2、解压文件夹 解压到本地某个文件夹下,比如 D:\redis-3.0.504 3…

STL---排序模板参数

map 对map进行排序 首先一定要注意map模板类的第三个模板参数&#xff0c;这个参数决定元素按键值升序或者降序在map中的存储方式&#xff1a; 默认&#xff1a;less<key>升序----- < -----第一个小于取第一个 可设置&#xff1a;greater<key>降序-------…

机器人系统ros2-开发学习实践11-从零开始构建视觉机器人模型(urdf)(02)

接上一个教程继续完善&#xff0c; 我们需要对机器人身体的蓝色&#xff0c;我们定义了一种名为“蓝色”的新材质&#xff0c;其中红色、绿色、蓝色和 alpha 通道分别定义为 0、0、0.8 和 1。所有值都可以在 [0,1] 范围内。然后该材料由 base_link 的视觉元素引用。白色材料的…

移动 App 入侵与逆向破解技术-iOS 篇

如果您有耐心看完这篇文章&#xff0c;您将懂得如何着手进行app的分析、追踪、注入等实用的破解技术&#xff0c;另外&#xff0c;通过“入侵”&#xff0c;将帮助您理解如何规避常见的安全漏洞&#xff0c;文章大纲&#xff1a; 简单介绍ios二进制文件结构与入侵的原理介绍入…

【C++】可变参数模板简单介绍

前言 可变参数模板是C11中的新特性&#xff0c;它能够让我们创建可以接收可变参数的函数模板和类模板&#xff0c;相比C98/03&#xff0c;类模版和函数模版中只能含固定数量的模版参数&#xff0c;可变模版参数是一个巨大的改进&#xff0c;通过系统系统推演数据的类型&#xf…