【问题标题】:Synchronizing multiple RTSP streams with OpenCV?使用 OpenCV 同步多个 RTSP 流?
【发布时间】:2017-11-28 03:53:29
【问题描述】:

我目前正在使用 OpenCV 通过 OpenCV 和 Python 绑定来消化 RTSP 流。但是,我正在尝试扩展它以捕获多个 RTSP 流,然后对每个帧执行操作并对聚合结果执行附加逻辑(并行)。我需要将这些实时流同步到大约 1 秒的精度。如果我所有的流都是相同的配置文件,这将没有那么具有挑战性。但是,我正在消化的一些流是可变帧速率 (VFS),因此 FPS 可以从最大 FPS 下降到最小 FPS,具体取决于 带宽,而其他带宽可能是恒定的。如果有一种方法可以从 RTSP 实时流中获取嵌入式时间戳,这可以大大简化,这是protocol 的一部分。但是,我不相信有办法使用 OpenCV 获取这个时间戳......

我想知道在使用 OpenCV 之前是否已经这样做了?我知道有商业广播工具可以做到这一点,但这对于我的用例来说似乎不切实际并且过度杀戮。有人还推荐了http://www.ros.org/about-ros/,但这对于我想做的事情来说可能太多了……

【问题讨论】:

    标签: python c++ opencv rtsp


    【解决方案1】:

    查看来自 RTSP 摄像机的 NTP 设置,以获取所有摄像机帧的同步时间戳。看看这个:

    https://ipcamtalk.com/threads/network-time-protocol-ntp.1287/

    之后,您可以为每个摄像头启动一个线程,并将帧及其时间戳存储在一个小缓冲区中。然后,您可以比较来自较快相机的时间戳和丢帧,以尽可能匹配帧。 我已经编写了一个代码来执行此操作,但目前我无法分享它,如果将来可能的话,我会更新答案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-30
      • 1970-01-01
      • 1970-01-01
      • 2016-06-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多