Python:如何从 USB 网络摄像头获取图像?

问题描述 投票:0回答:1

我对 python 编程很陌生:)

我的设置:

Windows 11 专业版

Python 3.7

OpenCV 4.7

网络摄像头:来自罗技的 HD Pro 网络摄像头 C920

我想用Python访问相机图像。一切都与我的集成相机配合使用。 当我想访问 USB 摄像头时,没有任何效果。我无法从 USB 网络摄像头获取视频。

我尝试以下代码来查看是否有摄像头。

import cv2
cap = cv2.VideoCapture(0)

print(cap.isOpened())

它与我的集成网络摄像头配合使用。我得到一个

True

随着

cap = cv2.VideoCapture(2)
我得到
False

但是如果我用

cap = cv2.VideoCapture(1)
尝试这个,我什么也得不到,也没有错误。程序继续运行。我的结论是:USB 摄像头必须以某种方式工作。否则我也会期望
cap = VideoCapture(1)
为 False。

我已经在互联网上找到并尝试了很多东西。不幸的是,没有任何帮助。 我也尝试过pygame,但是在windows下好像不能运行。

如何从 USB 摄像头获取视频?

感谢您的帮助:)

python opencv camera usb video-capture
1个回答
0
投票

我也有c920。您输入 cap = cv2.VideoCapture(2) 并需要等待 30 秒,系统才会检测到它。也可以跑步

import cv2
import numpy as np

all_camera_idx_available = []

for camera_idx in range(10):
    cap = cv2.VideoCapture(camera_idx)
    if cap.isOpened():
        print(f'Camera index available: {camera_idx}')
        all_camera_idx_available.append(camera_idx)
        cap.release()

再次强调,您需要等待30秒才能找到ID号码。

© www.soinside.com 2019 - 2024. All rights reserved.