【ROS2】消息过滤、同步message_filters:最新同步LatestTime、精准同步ExactTime、近似同步ApproximateTime
1、简述
当ROS2中有多个消息、这些消息有一定的相关性,需要同步处理时,就要用到message_filters库;
使用message_filters库,开发者可以方便地处理多个话题的消息,并确保这些消息在时间上是同步的。
比如深度相机:需要同时获取图像数据和深度数据。
2、Python示例
1)引入包文件
import message_filters
import cv2
import cv_bridge
from sensor_msgs.msg import Image
from rclpy.qos import QoSProfile
from rclpy.qos import qos_profile_sensor_data
2)添加图像消息和深度消息到过滤器中
class laoerTest(Node):def __init__(self):super().__init__('visualtracker')im_sub = message_filters.Subscriber(self, Image, '/camera/color/image_raw')dep_sub = message_filters.Subscriber(self,Image,'/camera/depth/image_raw', qos_p