ros 多传感器同步及topic下采样重发

我们在使用ros过程中,经常要对某个或多个topic进行下采样后重发,用于ros数据采集。

非同步下采样重发

rosrun topic_tools throttle messages /rgb_n_f/img/compressed 5 /rgb_n_f/img_throttle/compressed

参考:topic_tools throttle

throttle工具能实现单个topic的制定频率的重发,但是对于多个传感器的下采样就无能为力了,只能运行多个throttle实例导致多传感器同步问题

同步下采样重发

基于上述多传感器下采样不同步的问题,我们自然想到同步接收多个传感器的数据,然后下采样后逐个转发。需要用到的关键代码为:

message_filters.ApproximateTimeSynchronizer

具体代码如下

#!/usr/bin/env python

import rospy
import message_filters
from rostopic import get_topic_class

global syn_cnt
syn_cnt=0

def callback(*msgs):
    global syn_cnt
    global down_rate
    if syn_cnt%down_rat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值