浅析ros下订阅消息,并发布apriltags算法位姿

本文介绍了如何在ROS环境中订阅apriltags2_ros发布的AprilTagDetectionArray消息,解析其中的位姿信息。通过理解geometry_msgs/PoseWithCovariance及其与geometry_msgs/PoseWithCovarianceStamped的区别,解决了订阅过程中的问题,最终成功获取并输出了apriltags2_ros标签的实时位姿数据。
摘要由CSDN通过智能技术生成
fake_ar_publisher::ARMarkerConstPtr last_msg_;
void visionCallback(const fake_ar_publisher::ARMarkerConstPtr& msg)
    {
      last_msg_ = msg;
      ROS_INFO_STREAM(last_msg_->pose.pose);
    }

这里的消息文件是:ARMarker.msg在fake_ar_publisher包里,内容如下:
Header header
uint32 id
geometry_msgs/PoseWithCovariance pose
uint32 confidence

可以看出这里先是先是通过指针找到ARMarker下的pose消息,而这里的消息类型是geometry_msgs/PoseWithCovariance,然后从官网上搜索geometry_msgs/PoseWithCovariance
在这里插入图片描述
看到此消息类型的定义,这里更像是一个大的结构体,里面定义了各种消息类型,从最下面看到实际的消息定义
在这里插入图片描述
通过这里可以理顺last_msg_->pose进行类似于对结构体的指针操作找到pose,所以写成这种形式last_msg_->pose.pose
点开geometry_msgs/Pose 可以看到内部包含了位置(xyz)和方向&

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值