Navigation

    VEYE IMAGING Forum

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Recent
    • Popular
    • Users
    • WIKI
    • veye.cc

    求助树莓派MV-MIPI-IMX178M 使用python调用cv2.VideoCapture显示can't open camera by index

    General Discussion
    3
    6
    746
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      June20255202 last edited by

      在命令行使用V4L2-ctl命令摄像头可以正常拍照,/dev/video0节点也存在,用vlc播放器也可以捕获到摄像头,但是使用python调用cv2.VideoCapture(0)提示can't open camera by index,也验证过cv2.VideoCapture()是可以提取本地视频的,请问这是什么原因?
      e6523df3-821f-4938-9fe7-62ef7dd819be-60F5B75B28D7A0EEF266A8760201DEED.jpg
      2feaeb9a-8ffc-425d-a517-10386503ca16-1A3AEA06977108E30F5A9E4B7D44E7BD.jpg
      42eb00b7-1b26-49ba-8a33-c38e635e128b-573BC033144FDFCE3D1FBF1B662E402E.jpg

      veye_xumm 1 Reply Last reply Reply Quote 0
      • veye_xumm
        veye_xumm @June20255202 last edited by

        @june20255202 said in 求助树莓派MV-MIPI-IMX178M 使用python调用cv2.VideoCapture显示can't open camera by index:

        can't open camera by index

        你好,我们现在对于MV系列相机尚未提供opencv的使用demo。
        您这个应用可能是参考了我们YUV输出接口的sample。
        我这边测试的显示:

        >>> import cv2
        >>> cap = cv2.VideoCapture(0)
        [ WARN:0] global ../modules/videoio/src/cap_gstreamer.cpp (1824) handleMessage OpenCV | GStreamer warning: Embedded video playback halted; module v4l2src0 reported: Device '/dev/video0' does not support 1:4:7:1 colorimetry
        [ WARN:0] global ../modules/videoio/src/cap_gstreamer.cpp (914) open OpenCV | GStreamer warning: unable to start pipeline
        [ WARN:0] global ../modules/videoio/src/cap_gstreamer.cpp (501) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created
        [ WARN:0] global ../modules/videoio/src/cap_v4l.cpp (893) open VIDEOIO(V4L2:/dev/video0): can't open camera by index
        

        我理解的是这样,cv2.VideoCapture(0)实际调用的是gstreamer的plugin,其不支持现在我们声明的color space。

        但是,我认为关键问题并不在此,MV camera输出的是RAW8 RAW10 RAW12等格式,gstreamer可能并不能处理。—— 这部分也是我的猜测。

        建议你可以参考https://github.com/veyeimaging/raspberrypi_v4l2/tree/main/samples/opencv/v4l2_opencv_show2.py
        尝试采用appsink的方式。
        我们会将MV系列导入opencv列入开发计划。抱歉现在无法直接给你可用的代码。

        J 1 Reply Last reply Reply Quote 0
        • J
          June20255202 @veye_xumm last edited by

          @veye_xumm谢谢您的回复,因为我是在MV-MIPI-IMX178M介绍的页面看得到链接,以为是可以用这个demo的,后面我试着用一下您提供appsink的方法再尝试一下,有问题了再请教您,谢谢!

          1 Reply Last reply Reply Quote 0
          • J
            June20255202 last edited by

            您好,我想再请问一下,MV系列的相机拍照的话只能用树莓派的终端命令行吗?有没有方法可以让python来控制拍照,我想了一个办法是让python调用函数与命令行进行交互,但是实现起来有些麻烦,所以我想请问一下有没有其他便捷的方法能够实现运行一个python脚本就可以实现拍照、存储照片功能呢?

            veye_xumm 1 Reply Last reply Reply Quote 0
            • veye_xumm
              veye_xumm @June20255202 last edited by

              @june20255202 不好意思,python我不是很熟。但是感觉上用python
              去调用命令行或者脚本也是可行的方法。
              本身python内置v4l2的控制库的话,底层应当也是用C做的。

              H 1 Reply Last reply Reply Quote 0
              • H
                hujun @veye_xumm last edited by

                This post is deleted!
                1 Reply Last reply Reply Quote 0
                • First post
                  Last post