当前位置: 首页 > news >正文

ROS学习笔记(六):TF坐标变换

ROS学习笔记(六):TF坐标变换

  • TF的基本知识
  • TF工具
    • tf_monitor
    • tf_echo
    • static_transform_publisher
    • view_frames
  • 创建TF广播器
  • 创建TF监听器

TF的基本知识

TF是一个让用户随时间跟踪多个坐标系的功能包,它使用树形数据结构,根据时间缓冲并维护多个坐标系之间的坐标变换关系,可以帮助开发者在任意时间、在坐标系间完成点、向量等坐标的变换。

使用TF功能包,一般包括以下两个步骤:
(1)监听TF变换
接收并缓存系统中发布的所有坐标变换数据,并从中查询所需要的坐标变换关系。
(2)广播TF变换
向系统中广播坐标系之间的坐标变换关系。系统中可能会存在多个不同部分的TF变换广播,每个广播都可以直接将坐标变换关系插入TF树中,不需要再进行同步。

TF工具

tf_monitor

tf_monitor工具的功能是打印TF树中所有坐标系的发布状态,也可以通过输入参数来查看指定坐标系之间的发布状态。

tf_monitor
tf_monitor <source_frame> <target_frame>

tf_echo

tf_echo工具的功能是查看指定坐标系之间的变换关系。

tf_echo <source_frame> <target_frame>

static_transform_publisher

static_transform_publisher工具的功能是发布两个坐标系之间的静态坐标变换,这两个坐标系不发生相对位置变化。

# 坐标xyz表示偏移参数,欧拉角yaw(围绕z轴旋转的偏航角)pitch(围绕y轴旋转的俯仰角)roll(围绕x轴旋转的翻滚角)表示旋转参数,period_in_ms为发布频率
static_transform_publisher x y z yaw pitch roll frame_id child_frame_id period_in_ms
#  坐标xyz表示偏移参数,四元数qx qy qz qw表示旋转参数,period_in_ms为发布频率
static_transform_publisher x y z yaw qx qy qz qw frame_id child_frame_id period_in_ms

view_frames

view_frames是可视化的调试工具,可以生成pdf文件,显示整棵TF树的信息。

rosrun tf view_frames

创建TF广播器

C++:参考网站链接
Python:参考网站链接

创建TF监听器

C++:参考网站链接
Python:参考网站链接

相关文章:

ROS学习笔记(六):TF坐标变换

ROS学习笔记&#xff08;六&#xff09;&#xff1a;TF坐标变换TF的基本知识TF工具tf_monitortf_echostatic_transform_publisherview_frames创建TF广播器创建TF监听器TF的基本知识 TF是一个让用户随时间跟踪多个坐标系的功能包&#xff0c;它使用树形数据结构&#xff0c;根据…...

【python】为你绘制玫瑰一束,爱意永存

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 若是有真情&#xff0c;爱意如溪水&#xff0c; 若是有真爱&#xff0c;爱意如阳光&#xff0c; 若是两情相悦&#xff0c;又岂在朝朝暮暮&#xff0c; 女子淡淡的情愫&#xff0c;深深地想念&#xff0c; 浓浓的爱意&a…...

智能家居创意产品一Homkit智能通断器

智能通断器&#xff0c;也叫开关模块&#xff0c;可以非常方便地接入家中原有开关、插座、灯具、电器的线路中&#xff0c;通过手机App或者语音即可控制电路通断&#xff0c;轻松实现原有家居设备的智能化改造。 随着智能家居概念的普及&#xff0c;越来越多的人想将自己的家改…...

【数据库】MySQL表的增删改查(基础命令详解)

写在前面 : 语法中大写字母是关键字&#xff0c;用[]括这的是可以省略的内容。文中截图是相对应命令执行完得到的结果截图。1.CRUD 注释&#xff1a;在SQL中可以使用“--空格描述”来表示注释说明.CRUD:即增加(Create)、查询(Retrieve)、更新(Update)、删除(Delete)四个单词的首…...

2023年全国最新保安员精选真题及答案15

百分百题库提供保安员考试试题、保安职业资格考试预测题、保安员考试真题、保安职业资格证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 151.该图所要表达的是&#xff08;&#xff09;消防器材。 A:地上消防栓 B:灭火器 …...

KPN对任意形状文本检测

文章目录一、研究背景二、方法流程1. 特征提取2. 核建议3. 实例无关特征图4. 轮廓生成5. 其余部分内容三、不足一、研究背景 相比起基于 FCN 网络的文本边缘检测网络&#xff0c;KPN网络可以更好地处理文本之间的间隔。 二、方法流程 1. 特征提取 FCN 和 FPN FCN(全卷积神经…...

同城外卖跑腿系统源码分析

外卖订餐已经成为很多“社畜”日常不可分割的一部分&#xff0c;足不出户&#xff0c;只需要一部电子设备即可在线订餐&#xff0c;并且可提供的选择非常多样化&#xff0c;与传统的电话订餐外卖模式相比也更便捷的多。 因此&#xff0c;同城外卖跑腿系统源码得以爆火&#xff…...

SCL_PFENET跑通填坑

1.数据准备&#xff1a;VOC2012数据集&#xff0c;initmodel文件夹&#xff08;预训练模型&#xff09;&#xff0c;SegmentationClassAug数据2.训练部分&#xff1a;训练部分没什么需要改动的&#xff0c;也就改一下选择的配置文件。在config文件夹里有关于coco和voc数据的配置…...

Redis 做延迟消息队列

背景 看到消息队列&#xff0c;我们肯定会想到各种MQ&#xff0c;比如&#xff1a;RabbitMQ&#xff0c;acivityMQ、RocketMQ、Kafka等。 但是&#xff0c;当我们需要使用消息中间件的时候&#xff0c;并非每次都需要非常专业的消息中间件&#xff0c;假如我们只有一个消息队…...

刚果金FERI证书模板

FERI办理流程介&#xff08;一&#xff09;申请资料1&#xff1a;FERI APPLICATION FORM申请表格&#xff1b;2&#xff1a;草本海运提单(DRAFT B/L COPY)&#xff1b;三&#xff1a;已盖章的商业发飘和箱单扫描件 &#xff08;Commercial Invoice&Packing list&#xff09…...

什么是蜕变测试?

文章目录1.传统测试2.蜕变测试2.1.蜕变测试的理解2.2.蜕变测试的步骤2.2.1.生成蜕变关系2.2.2.生成蜕变用例2.2.3.执行蜕变用例2.2.4.校验蜕变关系参考文献1.传统测试 在没有蜕变测试的时代&#xff0c;传统软件测试的原理是&#xff1a;给定输入&#xff0c;观察被测软件的输…...

74. ‘pip‘不是内部或外部命令,也不是可运行的程序-解决办法

74. pip’不是内部或外部命令&#xff0c;也不是可运行的程序-解决办法 文章目录74. pip不是内部或外部命令&#xff0c;也不是可运行的程序-解决办法1. 课题导入2. 手动配置环境变量1. 准备工作2. 配置步骤3. 命令行安装1. 课题导入 有的同学在使用pip安装第三方库时&#xf…...

MIL图像处理那些事:应用程序模块(Mapp)- 初始化和控制MIL应用程序的执行环境

提示:本系列文章通过示例详细介绍MIL图像处理的基础知识及相关操作,让给你快速学会使用MIL进行图像处理 文章目录 前言初始化Mil环境MappAllocMappAllocDefault计时MappTimer异常处理打开和关闭 Mil 异常提示C# try...catch回调函数MappHookFunction查询MappInquire文件操作Ma…...

Pytorch基础语法学习2——argparse模块

一、基本介绍 argparse 模块是 Python 内置的用于命令行参数解析的模块&#xff0c;可以通过少数代码中变量或者参数的改变以实现对整个代码项目的操控。对于大型代码项目(如代码超过1000行)&#xff0c;十分便捷 argparse 模块可以让人轻松编写用户友好的命令行接口&#xf…...

CHAPTER 2 目录及文件

目录及文件1 目录1.1 目录结构1.2 核心目录2 文件2.1 /etc/中的文件2.1.1 修改主机名(/etc/hostname)2.1.2 网卡配置文件2.1.3 开机自启动配置文件(/etc/rc.local)2.1.4 /etc/motd和/etc/issue2.2 /var/中的文件2.3 /proc/中的文件2.3.1 CPU信息(lscpu)3 文件类型3.1 类型说明3…...

2021牛客OI赛前集训营-提高组(第四场) T1最终测试

2021牛客OI赛前集训营-提高组&#xff08;第四场&#xff09; 题目大意 有nnn个选手参加比赛&#xff0c;比赛有两道题。 对于第一题&#xff0c;第iii个选手有50%50\%50%的可能拿到ai,1a_{i,1}ai,1​分&#xff0c;有50%50\%50%的可能拿到000分。 对于第二题&#xff0c;第…...

【华为OD机试2023】租车骑绿岛 C++ Java Python

【华为OD机试2023】租车骑绿岛 C++ Java Python 前言 如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您解答,也可以给您一些建议! 本文解法非最优解(即非性能最优),不能保证通过率。 Tips1:机试为ACM 模式 你的代码需要处理输入输出,input/cin接收输入…...

05-路由中的Hook

hook中使用 this.props中的路由 类组件中我们通过 this.props 获取到的关于路由的相关方法和数据&#xff0c;在函数组件中还是可以继续通过参数 props 来获取使用&#xff1a; export default function Login(prosp) {return (<button onClick{() > {props.history.pu…...

Ubuntu20.04 源码编译安装SRS-6流媒体服务器,开启GB28181支持

1. 下载SRS源码 直接从仓库clone git clone -b develop https://gitee.com/ossrs/srs.git 2. 编译源码 此处通过 --gb28181on 开启GB28181支持&#xff0c;默认是不开启的 cd srs/trunk && ./configure --gb28181on && make -j4 3. 编译过程中遇到的问题 …...

Web前端学习:六 -- 练习小总结

1、背景颜色透明度写法&#xff1a; background&#xff1a;rgba(R&#xff0c;G&#xff0c;B&#xff0c;Alpha透明度) 透明度范围&#xff1a;0–1&#xff0c;1完全不透明&#xff0c;0完全透明 2、伪类 hovar&#xff1a; 当鼠标接触该元素是&#xff0c;显示另一种样…...

【C++ 多态】虚函数 · 虚表 · 重写,一篇彻底弄明白!

C 多态详解 C多态是面向对象的核心灵魂&#xff0c;本文将由浅入深&#xff0c;带你循序渐进地掌握多态的方方面面&#xff0c;全程干货&#xff0c;坐稳发车~ ദ്ദി˶&#xff70;̀֊&#xff70;́ )✧ 文章目录C 多态详解1. 什么是多态&#xff1f;2. 运行时多态的实现前…...

Orama混合搜索实战:从全文检索到向量搜索的轻量级实现

1. 项目概述&#xff1a;从“全文搜索”到“向量搜索”的现代演进如果你做过Web开发&#xff0c;尤其是需要处理大量文本内容的应用&#xff0c;比如博客站、文档中心或者电商平台&#xff0c;那么“搜索”功能绝对是你绕不开的核心需求。传统上&#xff0c;我们可能会直接想到…...

RK3368安卓9.0固件烧录后开机卡Recovery?手把手教你调整分区表解决4GB闪存空间不足

RK3368安卓9.0固件烧录实战&#xff1a;4GB闪存分区优化全解析 当你满怀期待地将Android 9.0固件烧录到RK3368开发板&#xff0c;却发现设备直接进入了Recovery模式&#xff0c;屏幕上躺着那个令人沮丧的红色感叹号机器人——这可能是每个嵌入式开发者都经历过的"入门仪式…...

为什么Windows用户需要APK安装器?三大场景解决你的跨平台痛点

为什么Windows用户需要APK安装器&#xff1f;三大场景解决你的跨平台痛点 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否曾经遇到过这样的困境&#xff1a;在电…...

Perplexity学术模式到底有多“实时”?我们用NIST标准测试集连续监控72小时,结果让3所常春藤图书馆紧急更新采购清单…

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Perplexity学术模式到底有多“实时”&#xff1f;我们用NIST标准测试集连续监控72小时&#xff0c;结果让3所常春藤图书馆紧急更新采购清单… 实时性验证方法论 我们采用 NIST TREC 2023 Dynamic Filt…...

寄生电感容易被忽略,却是电路不稳定的隐形元凶

调试电路板的时候&#xff0c;最让人抓狂的并不是那些明面上能查到文档的参数问题。示波器一抓波形&#xff0c;明明电源电压已经稳定&#xff0c;负载也没动&#xff0c;可偏偏就是有那种挥之不去的毛刺&#xff0c;幅度不大&#xff0c;频率不低&#xff0c;排查了半天才发现…...

MATLAB roots函数实战:5分钟搞定高阶系统稳定性判断(附完整代码)

MATLAB roots函数实战&#xff1a;高阶系统稳定性分析的黄金法则 在控制工程和自动化领域&#xff0c;系统稳定性分析是每个工程师的必修课。面对复杂的高阶系统特征方程&#xff0c;传统的手工计算方法不仅耗时耗力&#xff0c;还容易出错。而MATLAB的roots函数配合简单的可视…...

犬种识别实战:细粒度CNN模型从训练到ONNX部署

1. 项目概述&#xff1a;用一张照片&#xff0c;让模型告诉你这是什么狗 “Deep Learning (CNN) — Discover the Breed of a Dog in an Image”这个标题看起来像一句教科书里的课后习题&#xff0c;但实际落地时&#xff0c;它是一条从数据噪声里硬生生凿出来的技术路径——不…...

告别软件模拟!用GD32F303硬件I2C驱动AT24C02 EEPROM保姆级教程(附完整代码)

从软件模拟到硬件加速&#xff1a;GD32F303硬件I2C驱动AT24C02全流程解析 当你在嵌入式项目中频繁操作EEPROM时&#xff0c;是否遇到过这样的困扰&#xff1a;软件模拟I2C占用大量CPU资源&#xff0c;时序稳定性受中断影响&#xff0c;传输速率始终无法突破瓶颈&#xff1f;这些…...

FPGA以太网MAC调试架构设计与DSP优化实践

1. 项目概述&#xff1a;FPGA与以太网MAC的DSP调试架构在数字信号处理&#xff08;DSP&#xff09;的硬件实现中&#xff0c;调试环节往往成为开发效率的瓶颈。传统JTAG调试方式受限于带宽和灵活性&#xff0c;难以满足大规模数据交互的需求。我们基于Xilinx Virtex-4 FPGA平台…...