程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

ROS多用户视频延迟

发布于2019-10-31 08:46     阅读(1867)     评论(0)     点赞(0)     收藏(4)


当有多个节点订阅同一视频主题时,我遇到了延迟。

我正在使用近似时间同步器,从不同的摄像机收集几张图像,然后立即发布。虽然摄像机之间的时间安排可能是个问题,但不是在这里,当我只有一个节点订阅时,就不会有延迟。

camtop_sub = message_filters.Subscriber('cam1/usb_cam1/image_raw', Image)
camfront_sub = message_filters.Subscriber('cam2/usb_cam1/image_raw', Image)
ts_log = message_filters.ApproximateTimeSynchronizer([cam1_sub, cam2_sub], 10, 1)
ts_log.registerCallback(self.log_callback)

我的项目的结构方式是,我需要能够有多个节点来检索最新的图像文件。

有关如何立即完成此操作的任何建议?现在大约是500毫秒。

我注意到其他一些人提出通过增加队列的缓存大小BUFF_SIZE参数rospy.Subscriber类,但没有这个参数为ApproximateTimeSynchronizer


解决方案


我不太使用ROS,但这是我的看法。

您可以指定要使用的相机吗?相机驱动程序中可能会出现一些实现故障吗?您是否可能只有一个订户来接口/缓存/管理来自设备的图像提要,而不是让需要实际图像提要的其他节点订阅该节点?本质上是发布/订阅广播者。

我从事的一个项目是本地IoT摄像机提要视频分析。通常,摄像头驱动程序和OS Kernels素材不能很好地处理广播。通常在驱动程序外部实现一个缓存/广播组件,例如Wowza Media流媒体。供您使用,您可以实现一些简单的流缓冲区并使其安全并发访问。



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/147943/ac2a7797292979bd3c6d/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

0 0
收藏该文
已收藏

评论内容:(最多支持255个字符)