Raspberry Pi 相机和 OpenCV:无法按索引打开相机

Ska*_*ary 5 python opencv raspberry-pi4

我有一个奇怪的问题:

我已经在我的 Pi 上安装了 OpenCV 库。我有一个连接到 Pi 的 Pi Cam(我能够列出所有视频设备,并且能够使用 raspistill 拍照)

但是当我尝试使用 python 从 opencv 获取视频源时

from flask import Flask, render_template, Response
import cv2

app = Flask(__name__)

cap = cv2.VideoCapture(1)
Run Code Online (Sandbox Code Playgroud)

我收到错误:

[ WARN:0] global /tmp/pip-wheel-qd18ncao/opencv-python/opencv/modules/videoio/src/cap_v4l.cpp (893) open VIDEOIO(V4L2:/dev/video0): can't open camera by index
Run Code Online (Sandbox Code Playgroud)

我尝试使用不同的索引(从-1到13)但没有任何效果。

有什么提示吗?

rok*_*rok 5

我遇到了类似的问题,尝试指定视频后端,例如:

cap = cv2.VideoCapture(index, cv2.CAP_V4L)
Run Code Online (Sandbox Code Playgroud)

Index可以设置为-1来自动检测。如果您的树莓派不是最新的,您还应该需要启用此模块:

sudo modprobe bcm2835-v4l2

另请查看此处,其中描述了类似的问题。

  • 尝试以下两件事:1)将索引设置为-1,2)使用 sudo modprobe bcm2835-v4l2 启用摄像头模块 (2认同)