RVIZ中的fixed frame选项以及“For frame [XX]: Fixed Frame [map] does not exist”

2023-05-16

RVIZ 使用的时候如果fixed frame选项设置不正确,那么就会无法显示显示相应的数据信息,并提示一下错误:“For frame [XX]: Fixed Frame [map] does not exist”
官方文档对该选项的解释为:

The Fixed Frame/固定参考系
The more-important of the two frames is the fixed frame. The fixed frame is the reference frame used to denote the “world” frame. This is usually the “map”, or “world”, or something similar, but can also be, for example, your odometry frame.
If the fixed frame is erroneously set to, say, the base of the robot, then all the objects the robot has ever seen will appear in front of the robot, at the position relative to the robot at which they were detected. For correct results, the fixed frame should not be moving relative to the world.
If you change the fixed frame, all data currently being shown is cleared rather than re-transformed.
The Target Frame
The target frame is the reference frame for the camera view. For example, if your target frame is the map, you’ll see the robot driving around the map. If your target frame is the base of the robot, the robot will stay in the same place while everything else moves relative to it.
http://wiki.ros.org/rviz/UserGuide#Coordinate_Frames

在这里插入图片描述如果显示不了topic报frame 、transform之类错误,就有两个办法,
1.把global fixed frame设成topic自己所在的坐标系,按照上图的显示,应该改为tramcar;
2.用tf包工具发布global fixed frame到topic所在坐标系的tf关系,例如:

 rosrun tf static_transform_publisher 0.0 0.0 0.0 0.0 0.0 0.0 map xxx 100 ;//将xxx映射为map

那么还有一个疑问: topic自己所在的坐标系名字(上图中为tramcar)是在那里设定的?
我们知道topic这一项(即话题的名字,上图中对应的是/cloud)是在程序里面指定的,同理消息的参考坐标系信息记录在消息的frame_id中,该值可以在程序中直接通过给消息头的frame_id字段赋值的方式指定也可以在.cfg配置文件中事先指定。查看一个消息的 fix frame:

   rostopic echo /cloud | grep frame_id

在这里插入图片描述
The frame_id in a message specifies the point of reference for data contained in that message.
消息的头 std_msgs/Header header中通常会有该信息 。标准头信息主要包括:seq是消息的顺序标识,不需要手动设置,发布节点在发布消息时,会自动累加。stamp 是消息中与数据相关联的时间戳,例如激光数据中,时间戳对应激光数据的采集时间点。frame_id 是消息中与数据相关联的参考系id,例如在在激光数据中,frame_id对应激光数据采集的参考系。

例如LaserScan消息结构:

    std_msgs/Header header    #   标准头信息
    uint32 seq
    time stamp           
    string frame_id        # in frame frame_id, angles are measured around  the positive Z axis (counterclockwise, if Z is up) with zero angle being forward along the x axis                              
    float32 angle_min        # start angle of the scan [rad]
    float32 angle_max        # end angle of the scan [rad]
    float32 angle_increment  # angular distance between measurements [rad]
    float32 time_increment   # time between measurements [seconds] - if your scanner
                             # is moving, this will be used in interpolating position of 3d points
    float32 scan_time        # time between scans [seconds
    float32 range_min        # minimum range value [m]
    float32 range_max        # maximum range value [m]
    float32[] ranges         # range data [m] (Note: values < range_min or > range_max should be discarded)
    float32[] intensities    # intensity data [device-specific units].  If your device does not provide intensities, please leave the array empty.

修改完正确的Fixed Frame:
在这里插入图片描述

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

RVIZ中的fixed frame选项以及“For frame [XX]: Fixed Frame [map] does not exist” 的相关文章

  • 如何在 C# 中将固定字节/char[100] 转换为托管 char[]?

    在 C 中将固定字节或 char 100 转换为托管 char 的最佳方法是什么 我最终不得不使用指针算术 我想知道是否有更简单的方法 比如 memcpy 或其他方法 using System using System Collection
  • 如何在android中使用opencv从另一帧中减去一帧

    我正在处理视频的帧 我想从其他帧中减去一帧以找出差异 但我不知道如何继续 我尝试将位图帧转换为垫子 然后减去它们 但它不起作用 我正在使用 opencv 2 4 3 作为 mat 函数 谁能告诉我该怎么做 如果可能的话用代码片段进行解释 我
  • 固定背景图像

    我很想知道如何在固定的 div 中创建背景图像 当您向下 或向上 滚动时 图像会保留 但内容会流过 div 这是一个实现我想要解释的内容的网站 以便让您更好地了解我想要描述的内容 网络媒体 http www jwebmedia com 我一
  • 当我们调整窗口大小时,Container 中的元素如何调整?

    下面是一个窗口的代码 当用户单击一个按钮时 该窗口会更改颜色 并在单击另一个按钮时更改标签的文本 它有两个按钮 一个用于保存按钮的面板 一个标签和一个用于图形的面板 概念解释 首先 我添加了label to the North的一部分fra
  • div外框

    我有一个关于 div 和框架的问题 当框架内有下拉列表时 按下下拉列表时 下拉列表将显示在框架外部 我有一个替代下拉列表 它几乎具有相同的属性 但我必须将元素彼此相邻显示 因此元素显示在 div 中 我的问题 有没有办法 当您按下替代下拉菜
  • 固定大小缓冲区不能直接从“this”对象使用

    我使用结构来表示纯数据 其中一个字段是固定大小的缓冲区 如下所示 StructLayout LayoutKind Sequential Pack 2 unsafe struct ImageDosHeader private fixed us
  • ios 7 UiView 框架问题

    我在 iOS6 和 iOS7 中运行相同的应用程序 其中有导航栏 它在 iOS6 上运行良好 但在 iOS7 中 所有视图都有点向上 就像根本没有考虑导航栏一样 我尝试更改模拟指标选项中的顶栏属性 但它不起作用 在 iOS6 中 它从导航栏
  • 在 WPF Frame 控件中关闭导航页面声音

    我在 WPF 窗口中有一个 Frame 元素 并且应用程序中的所有内容都是使用 Frame Navigate 加载的 但是 当导航到新页面时 默认会播放该声音 它与 Internet Explorer 中播放的声音相同 有什么方法可以从应用
  • 使用不安全代码会产生什么影响

    除了代码本身可以直接访问内存这一事实之外 使用 unsafe 编译器标志和 fixed 关键字还有什么其他含义 是否有与我的 exe 的代码签名和部署相关的任何连锁效应 我的应用程序仅限桌面 这不是我是否应该这样做的问题 why我的问题涵盖
  • 如何使用 selenium 执行网页上的所有 javascript 内容,以在完全加载的网页上查找并发送登录表单信息

    我一直在尝试制作一个 Python 脚本来登录某个网站 浏览菜单 填写表单并将其生成的文件保存到文件夹中 我一直在使用 Selenium 尝试使网站完全加载 以便我可以找到登录的元素 但我没有成功 可能是因为网站在完全加载之前执行了大量 J
  • 位置:在reveal.js中固定

    我正在尝试为我的reveal js 演示文稿制作一个标题 使其粘贴在屏幕顶部 标题中的内容在每张幻灯片的基础上都是动态的 因此我必须将标记放置在部分标记内 显然 如果标记位于部分标记内 position fixed 并不能真正在 Revea
  • sizeWithFont: constrainedToSize: with UITextView (有时) 没有创建正确的高度 - iPhone

    我使用以下代码来确定所需的高度UITextView正在添加到UITableViewCell 并确定每个的高度UITableViewCell 这在 90 的情况下有效 但某些传入数据 始终是相同的传入数据 会出现不足 如果我允许在UIText
  • 删除框架,同时保留 pyplot 子图中的轴

    我正在创建一个包含 3 个子图的图形 并且想知道是否有任何方法可以移除它们周围的框架 同时保持轴就位 如果您想删除轴脊 但不想删除其他信息 刻度 标签等 您可以这样做 fig ax plt subplots 7 1 sharex True
  • 框架可以用什么代替?

    假设我有一个包含 50 个网页的网站 每个页面由 A Header 导航 左侧内容 右侧内容 Footer 不使用 Frames 服务器端编程 第三方工具和软件 构架 我需要将这 5 个部分的代码 HTML 标记 分别放入这 50 个页面中
  • 在 Borland C++ Builder 6 中使用帧缓冲区对象 (FBO)

    我对帧缓冲区对象 FBO 的命令 glGenFramebuffersEXT 有 访问冲突 void TGLForm DrawScene wglMakeCurrent ghDC ghRC glEnable GL TEXTURE 2D GLui
  • iOS WKWebView.scrollView委托导致BAD_ACCESS

    我的 viewController 有一个 UIView 属性 其中包含一个 WKWebView 我将 WKWebView rollView 委托设置为我的 viewController 它是我的 UIView 子类的公共函数 并在我的 v
  • 滚动视图上的固定按钮

    我目前正在尝试在屏幕右下角的滚动视图上显示一个按钮 但它不起作用 当我滚动视图时按钮会移动 我尝试先插入按钮 但滚动视图位于其上方 class HomePage extends Component loadUserItems this pr
  • 在 Android 上提取/修改视频帧

    我有一个视频文件 我想获取视频的每一帧并对帧进行一些修改 例如在其中绘制另一个位图 放置一些文本等 Android 中是否有任何 API 框架可用于从视频中获取帧 我在 iOS 中使用他们的 AVFramework 做了类似的事情 如果可以
  • Java固定内存映射

    有没有一种简单 高效的Map允许限制映射使用的内存的实现 我的用例是 我想在创建时动态分配大部分可用内存 但我不希望OutOFMemoryError将来的任何时候 基本上 我想使用这个地图作为缓存 但我想避免像这样的重缓存实现EHCache
  • 如何在不指定像素格式的情况下从 AVFrame.data[] 和 AVFrame.linesize[] 获取原始帧数据?

    我的总体想法是frame data 根据视频的像素格式 RGB 或 YUV 进行解释 但是有没有通用的方法可以从帧中获取所有像素数据 我只想计算帧数据的哈希值 而不解释它来显示图像 根据 AVFrame h uint8 t AVFrame

随机推荐

  • 阿里云服务器的使用

    阿里云服务器的使用 外网ip 39 108 98 xxx xff08 linux xff09 ubuntu16 04 root root密码 putty ssh工具 xshell ssh scp 登录到阿里云服务器上 xff08 ubunt
  • 项目如何介绍

    谈谈XXX项目 分析 xff1a 考官通过看你的简历或者你的介绍来了解你所做的项目 xff0c 那么考官肯定想更详细的了解您的项目 xff0c 看是不是与你的简历写的项目经验一致 也就是考核你是否具有真实的项目经验 一般来说 xff0c 在
  • K8S的flannel组件容器网络分析

    kubernetes的网络通信可以分为一下几个部分 xff1a pod内部的容器间通信pod间通信pod与service之间网络通信kubernetes外部与service之间的网络通信 理论 xff1a 1 pod内部的容器间通信 kub
  • 数据结构(Data Structure)——1、栈(Stack)

    栈的介绍 栈 xff08 stack xff09 在计算机科学中是限定仅在表尾进行插入或删除操作的线形表 栈是一种数据结构 xff0c 是只能在某一端插入和删除的特殊线性表 它按照先进后出的原则存储数据 xff0c 先进入的数据被压入栈底
  • 进程间通信之消息队列

    首先说一下什么是消息队列 消息队列是进程间通信的一种 xff0c 它是由操作系统维护的以字节序列为基本单位的间接通信机制 xff0c 它提供了一个进程向另一个进程发送一个带类型的数据块的方法 我们知道用管道来实现进程间通信的机制是两个进程利
  • STM32 编码器模式详解

    0 编码器模式 stm32的定时器带的也有编码器模式 所用的编码器是有ABZ三相 xff0c 其中ab相是用来计数 xff0c z相输出零点信号 AB相根据旋转的方向不同 xff0c 输出的波形如下图所示 xff1a 从图上可以看出来 xf
  • LAN8720A网络模块关于时钟的使用问题

    微雪的LAN8720A驱动电路 xff1a 正点原子LAN8720A驱动电路 xff1a 1 nINTSEL Configuration 从原理图中可以看出正点原子的LAN8720A模块所使用的晶振是25M 而微雪的LAN8720A模块使用
  • 机器学习和深度学习大纲

    机器学习 https blog csdn net qq 45056216 article details 104303569 深度学习 https blog csdn net weixin 42237113 article details
  • VIM 助记符

    https www bilibili com video BV114411J7Z8 from 61 search amp seid 61 9900190950002805677 一 工作模式 vim其实三种模式 xff0c 一般模式 xff
  • STLINK下载程序(附STLINK驱动包)

    一 ST Link V2的JTAG SWD接口定义及产品图 实物图 STLINK指定标准接口 xff1a 二 STLINK驱动安装 xff1a 双击ST LinkUpgrade安装即可 安装成功之后 xff0c 设备管理器 三 打开工程文件
  • STM32 之 HAL库

    1 STM32的三种开发方式 通常新手在入门STM32的时候 xff0c 首先都要先选择一种要用的开发方式 xff0c 不同的开发方式会导致你编程的架构是完全不一样的 一般大多数都会选用标准库和HAL库 xff0c 而极少部分人会通过直接配
  • 迷你版的ARDUINO MEGA2560

    1 传统的MEGA2560板 xff1a 2 迷你的MEGA2560 特点 xff1a 嵌入版Mega 2560 CH340G ATmega2560 兼容 Mega 2560主板 基于Atmel ATmega2560微控制器和USB UAR
  • MATLAB撸了一个2D LiDAR SLAM

    0 引言 刚刚入门学了近一个月的SLAM xff0c 但对理论推导一知半解 xff0c 因此在matlab上捣鼓了个简单的2D LiDAR SLAM的demo来体会体会SLAM的完整流程 1 数据来源 xff1a 德意志博物馆Deutsch
  • 基于粒子滤波的定位算法 ——原理、理解与仿真

    1 算法原理 1 1 机器人定位问题 关于机器人定位 xff0c 有三大问题 xff0c 它们分别是 xff1a 1 全局定位 xff1a 指初始位置未知 xff0c 机器人靠自身运动确定自己在地图中的位姿 2 位姿跟踪 xff1a 指已知
  • 从图片中提取曲线坐标数据--基于MATLAB

    转载 https zhuanlan zhihu com p 52112012 0 引言 在读文献的时 xff0c 经常遇到这样的情况 xff1a 文章里提出的方法好有趣啊 xff0c 好想拿文中用的数据来试试看看能不能得到相近的结果 xff
  • 49天精通Java,第8天,JDK 和 JRE 、final 与 static 、堆和栈

    作者简介 哪吒 CSDN2022博客之星Top1 CSDN2021博客之星Top2 多届新星计划导师 博客专家 专注Java硬核干货分享 立志做到Java赛道全网Top N 本文收录于 Java基础教程系列 目前已经700 订阅 CSDN最
  • Python 之 Serial串口通信

    0 Serial方法 1 导入pyserial模块 import serial 2 打开串行口 打开串口0 xff0c 9600 xff0c 8N1 xff0c 连接超时0 5秒 import serial ser 61 serial Se
  • PYTHON字符串转数字,数字转字符串;数字转bytes,bytes转数字;字符串转bytes,bytes转字符串。数字表达字符串

    字符串str转数字 float str int str 数字num转字符串 str num a 61 39 1234 39 print 39 a 61 39 a print type a b 61 int a print 39 b 61 3
  • 杂记 | Linux中修改docker默认访问端口(2375)

    2375端口是docker的默认访问端口 xff0c 使用该端口可实现远程访问和操作docker xff0c 但在服务器上直接开启该端口有安全风险 xff08 笔者本人今天就应该端口导致服务器被入侵 xff09 xff0c 可以修改该默认端
  • RVIZ中的fixed frame选项以及“For frame [XX]: Fixed Frame [map] does not exist”

    RVIZ 使用的时候如果fixed frame选项设置不正确 xff0c 那么就会无法显示显示相应的数据信息 xff0c 并提示一下错误 xff1a For frame XX Fixed Frame map does not exist 官