我一直在关注ROS官方文档中有关publish a point cloud的信息,并且能够成功运行该代码。现在,我尝试使用ROS RVIZ可视化点云,但出现错误。



c++ - ROS RVIZ : How to visualize a point cloud that doesn't have a fixed frame transform-LMLPHP

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

最佳答案

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,如下图所示。

c++ - ROS RVIZ : How to visualize a point cloud that doesn't have a fixed frame transform-LMLPHP

关于c++ - ROS RVIZ : How to visualize a point cloud that doesn't have a fixed frame transform,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52420672/

10-12 00:38