我试图让OpenCV处理gstreamer管道中间的一个帧。在
我有一个gstreamer管道生成流,并将其发送到appsink,以便OpenCV代码接收:
v4l2src ! ffmpegcolorspace ! jpegenc ! appsink name=sink
另一个管道从appsrc(OpenCV向其发送数据)获取数据并在屏幕上输出:
^{pr2}$我用sink上的pull buffer请求打开每个帧,并用OpenCV处理它,然后在src上使用push buffer。我用Python做所有这些。在
由于某些原因,这似乎不起作用(分段错误)。在
但我并不是真的想解决它,反正效率非常低。我只是想知道有没有更好的方法让OpenCV在帧到达输出接收器之前处理它?在
我知道你最初的问题已经过去好几年了,但为了记录,OpenCv可以直接打开Gstreamer管道。请参阅Using custom camera in OpenCV (via GStreamer)中的(自我)答案以获取示例。在
顺便说一下,OpenCv 3.0(主分支)实际上集成了gstreamer1.0支持。在
你试过gst-opencv?它提供了几个opencv原语作为gstreamer插件。在
编辑:似乎它已经合并到gst-plugins-bad,上面的链接已经过时。在
相关问题 更多 >
编程相关推荐