【问题标题】:ROS RVIZ: How to visualize a point cloud that doesn't have a fixed frame transformROS RVIZ:如何可视化没有固定帧变换的点云
【发布时间】:2019-02-24 12:03:55
【问题描述】:

我在关注 ROS 官方文档中关于如何publish a point cloud 并且能够成功运行代码。现在我正在尝试使用 ROS RVIZ 可视化点云,但出现错误。

转换 [sender=unknown_publisher] 对于框架 [single_frame]:固定框架 [地图] 不存在

我该如何克服这个错误?它说框架不存在。 RVIZ 中是否有解决方法或配置设置来绕过错误?或者如何更新我的 C++ 代码来更新框架对象?你能给我一些示例代码吗?

【问题讨论】:

    标签: c++ transform visualization ros point-clouds


    【解决方案1】:

    为知识库添加更多内容。按照@Tik0 的说明执行 static_transform_publisher 后,Transform 错误消失了。但是,我仍然无法在可视化器中看到点云。然后在做了几次试验后,我注意到点的大小默认设置为 0.01。因此,这些点太小而无法可视化。在 rviz 点云设置中增加点大小后,我能够对其进行可视化。

    【讨论】:

      【解决方案2】:

      rviz 缺少从给定的Fixed Frame(即map)到点云数据框架(即base_link)的转换。 如果您正在通过测量数据、运动学和动力学使用 ROS,我强烈建议您使用tf-tutorials

      但是,有两个选项可以解决您的问题:

      1. 您可以创建一个发布者,通过在命令行中输入以下命令,告诉 rviz 如何将 base_link 框架转换为 map 框架:

      rosrun tf static_transform_publisher 0 0 0 0 0 0 map base_link 50
      

      此命令explanation here 以 50 Hz 的频率发布两个帧一致的信息。

      2.另一个选择是告诉rviz它的固定框架应该是base_link。所以只需将map 更改为base_link,如下图所示。

      【讨论】:

      • 嗨@Tik0,非常感谢您提供的信息。我尝试了您的解决方案,在对其进行试验并对云转换进行了更多研究之后,我终于能够可视化点云。您提供的信息很有帮助。
      猜你喜欢
      • 1970-01-01
      • 2017-02-07
      • 2022-06-29
      • 1970-01-01
      • 2020-02-10
      • 2016-09-06
      • 1970-01-01
      • 1970-01-01
      • 2022-07-19
      相关资源
      最近更新 更多