我最近安装了一个覆盆子Pi相机,正在RTSP上传输帧。虽然这可能不是完全必要的,但我使用以下命令来广播视频:
raspivid -o - -t 0 -w 1280 -h 800 |cvlc -vvv stream:///dev/stdin --sout '#rtp{sdp=rtsp://:8554/output.h264}' :demux=h264
这段视频流得很好。
我现在要做的是用Python解析这个流,并分别读取每个帧。我想做些运动检测来监视。
我完全不知道从哪里开始这项任务。有人能给我指一个好的教程吗?如果这无法通过Python实现,我可以使用什么工具/语言来实现?
使用opencv
然后你就可以抓住弗拉姆斯了。阅读openCV文档访问:https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_gui/py_video_display/py_video_display.html
有点老套,但你可以使用VLC python bindings(你可以用
pip install python-vlc
安装)并播放流:然后每隔一秒左右拍一张快照:
然后您可以使用SimpleCV或其他东西进行处理(只需将图像文件
'.snapshot.tmp.png'
加载到处理库中)。使用“depu”列出的相同方法对我来说非常有效。 我刚刚用实际相机的“RTSP URL”替换了“视频文件”。 下面的例子适用于AXIS IP摄像机。 (在以前的OpenCV版本中,这一点暂时不起作用) 在OpenCV3.4.1 Windows 10上工作)
相关问题 更多 >
编程相关推荐