如何从rosbag读取消息作为结构?
1、命令行键入:bag = rosbag('ros_turtlesim.bag');
%加载rosbag。

2、命令行键入:bSel = select(bag,'Topic','/turtle1/pose');
%选择一个特定的主题。

3、命令行键入:
msgStructs = readMessages(bSel,'DataFormat','struct');
msgStructs{1}
%将消息作为结构读取。在读取消息时指定DataFormat名称-值对。检查返回的结构单元数组中的第一个结构。

4、从消息中提取xy点并绘制机器人轨迹。
5、命令行键入:
xPoints = cellfun(@(m) double(m.X),msgStructs);
yPoints = cellfun(@(m) double(m.Y),msgStructs);
plot(xPoints,yPoints)
%使用cellfun从结构中提取所有的X和Y字段。这些字段表示机器人在rosbag记录期间的xy位置。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:29
阅读量:30
阅读量:174
阅读量:112
阅读量:47