video-capture - 如何在我自己的提要上延迟来自网络摄像头的视频?
问题描述
我希望能够延迟来自我的网络摄像头的视频。我自己的电脑。老实说,我正在使用。它。作为我高尔夫挥杆的“延迟镜子”。我总是录制,然后停下来,打开文件并观看,然后再做一次。在我的挥杆练习中这样做 30 次很烦人。我只想带一个网络摄像头,能够将视频延迟 5、8、10 秒,这样我就可以观看并继续移动。解决这个问题的最简单方法是什么。有人告诉我,我可以用脚本来做到这一点,但不知道从哪里开始。任何人都可以帮助我或向我发送正确的方向吗?我在 Mac 上,但如果需要也有 PC。
解决方案
Python + OpenCV。
首先使用教程设法显示来自网络摄像头的当前图像。
然后不是立即显示您在缓冲区对象末尾添加的图像,这可能是标准 Python 中的collections.deque。
如果您想延迟 5 秒并且以每秒 30 帧的速度进行捕捉,那么在将 5*30 图像从相机添加到缓冲区之前不要显示任何内容。现在,当您在获得另一张图像后立即填充缓冲区时,将其添加到缓冲区的末尾,但也从缓冲区的开头删除 1 张图像并显示它。
推荐阅读
- python - 在函数中使用线程来返回和操作数据
- javascript - Knockout 无法处理绑定 With、options 等
- reactjs - 具有大表单的 ReactJs,在输入文本字段时有延迟
- python - discord.py 中的 Nuke 命令
- python - 以随机顺序运行功能
- python - 如何在使用 tensorflow 时使用 logits 而不是概率来定义自定义损失函数
- reactjs - 如何在反应中将对象数组作为道具传递?
- java - 用 Java 读取 XML API 响应
- reactjs - 反应钩子形式渲染太多次
- python - 如何根据开始日期和结束日期之间的设定时间间隔来扩展带有额外行的 DataFrame?