使用OpenCV访问摄像头(通过GSTREAMER)
Access Camera using OpenCV (Via GStreamer)
我正在尝试开发一个应用程序,该应用程序应分析MIPI摄像机(5MP(的视频流。因此,我正在使用GSTREAMER来使用OpenCV获取视频feed访问它。我尝试了以下管道,并且正在工作:
imxv4l2videosrc device="/dev/video0" ! autovideosink
但是,当我尝试将其与OpenCV一起使用时,它会产生一些错误。
VideoCapture cap("imxv4l2videosrc device="/dev/video0" ! autovideosink");
OpenCV Error: Unspecified error (GStreamer: cannot find appsink in manual pipeline
) in cvCaptureFromCAM_GStreamer, file /root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp, line 759
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:
/root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp:759: error: (-2) GStreamer: cannot find appsink in manual pipeline
in function cvCaptureFromCAM_GStreamer
然后我尝试使用以下管道,并且它也无法正常工作:
VideoCapture cap("imxv4l2videosrc device="/dev/video0" ! appsink");
ERROR: unrecognized std! 0 (PAL=ff, NTSC=b000
ERROR: v4l2 capture: unsupported ioctrl!
GStreamer Plugin: Embedded video playback halted; module imxv4l2videosrc0 reported: Internal data flow error.
ERROR: v4l2 capture: unsupported ioctrl!
OpenCV Error: Unspecified error (GStreamer: unable to start pipeline
) in cvCaptureFromCAM_GStreamer, file /root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp, line 832
VIDEOIO(cvCreateCapture_GStreamer (CV_CAP_GSTREAMER_FILE, filename)): raised OpenCV exception:
/root/OpenCV/opencv/modules/videoio/src/cap_gstreamer.cpp:832: error: (-2) GStreamer: unable to start pipeline
in function cvCaptureFromCAM_GStreamer
GSTREAMER版本:1.0OPENCV版本:3.2
我在这里缺少什么作品?还是我的方法错了?
这是我问题的答案(有@alper kucukkomurler的帮助(
您可以使用
的OpenCV(带GSTREAMER(访问MIPI摄像机VideoCapture cap("imxv4l2videosrc device="/dev/video0" ! videoconvert ! appsink");
另外,如果要更改输入的分辨率,则可以使用imx-capture-mode
参数,即imxv4l2videosrc
元素。例如,
imxv4l2videosrc imx-capture-mode=5 ! <other elements>
相关文章:
- 通过方法访问结构
- 通过递归进行因子分解
- std::map<struct,struct>::find 找不到匹配项,但是如果我循环通过 begin() 到 end(),我在那里看到匹配项
- 尝试通过多个向量访问变量时,向量下标超出范围
- C++如何通过用户输入删除列表元素
- 通过多个头文件使用常量变量
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 设计一个只能由特定类实例化的类(如果可能的话,通过make_unique)
- 如何通过派生类函数更改基类中的向量
- 无法通过空白将文本文件行分隔为矢量
- 我正在使用嵌套的while循环来解析具有多行的文本文件,但由于某种原因,它只通过第一行,我不知道为什么
- gStreamer 将元素添加到通过 gst_parse_launch 创建的管道中
- 使用OpenCV访问摄像头(通过GSTREAMER)
- 红色伪像通过GSTREAMER和QT5可视化RTSP流
- OPENCV中的GSTREAMER不会通过UDP发送视频数据
- 如何将OpenCV图像推送到GStreamer管道中,以便通过TCPServer接收器进行流式传输
- gstreamer 管道代码,用于通过来自相机的实时流式传输而不是图像显示文本
- Gstreamer通过RTP传输多个摄像机,同时保存每个流
- 在OpenCV中使用自定义相机(通过GStreamer)
- Gstreamer:为什么我不能在本地主机上通过UDP发送数据?