ROS学习笔记之——message filters的应用
Posted gwpscut
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ROS学习笔记之——message filters的应用相关的知识,希望对你有一定的参考价值。
message_filters用于对齐多种传感信息的时间戳,对齐时间戳有两种方式,一种是时间戳完全对齐 :ExactTime Policy ,另一种是时间戳相近:ApproximateTime Policy
message_filters作用是:
- 同时订阅并发布话题
- 时间同步
接下来看看esvo里面的时间同步处理
先看看esvo_mapping.h文件
message_filters::Subscriber<sensor_msgs::Image> TS_left_sub_, TS_right_sub_;//TS用message filter订阅
// Time-Surface sync policy
typedef message_filters::sync_policies::ExactTime<sensor_msgs::Image, sensor_msgs::Image> ExactSyncPolicy;
message_filters::Synchronizer<ExactSyncPolicy> TS_sync_; ///message filter做时间同步(要求时间戳完全对齐)
TS_left_sub_(nh_, "time_surface_left", 10),//订阅的topic,通过message filter
TS_right_sub_(nh_, "time_surface_right", 10),
TS_sync_(ExactSyncPolicy(10), TS_left_sub_, TS_right_sub_),//对其进行同步处理
TS_sync_.registerCallback(boost::bind(&esvo_Mapping::timeSurfaceCallback, this, _1, _2));//回调,进行时间同步处理?回调timesurface
参考资料:
以上是关于ROS学习笔记之——message filters的应用的主要内容,如果未能解决你的问题,请参考以下文章
ROS学习笔记之——基于dv-gui的多种事件相机标定的方法对比