You need to enable JavaScript to run this app. Linux Mint下OpenCV经Jupyter打开索引1的USB摄像头报893无法打开错误
优惠活动
大模型
产品
解决方案
定价
更多

Linux Mint下OpenCV经Jupyter打开索引1的USB摄像头报893无法打开错误

OpenCV 无法打开外接USB摄像头(/dev/video1)问题记录

已确认的设备与验证前提

  • 运行系统为Linux Mint,设备共搭载2个摄像头:内置摄像头对应设备路径/dev/video0,USB外接摄像头对应设备路径/dev/video1
  • 基础硬件校验通过:
    • 执行ls -ltrh /dev/video*命令可正常列出两个摄像头设备
    • 使用guvcview工具可正常调用两个摄像头完成画面采集
  • 代码运行表现:
    • 使用cv2.VideoCapture(0)调用内置摄像头时,程序可正常运行
    • 仅当使用cv2.VideoCapture(1)调用USB外接摄像头时,触发OpenCV警告:

      [ WARN:0] global /tmp/pip-req-build-ms668fyv/opencv/modules/videoio/src/cap_v4l.cpp (893) open VIDEOIO(V4L2:/dev/video1): can't open camera by index

  • 已尝试的无效修复操作:执行sudo chmod 777 /dev/video1为USB摄像头设备赋予全部操作权限,问题未得到解决

触发异常的测试代码

import cv2
   
cap= cv2.VideoCapture(1)

if not cap.isOpened():
    raise IOError("Cannot open webcam")

cntr =0
while True:
    ret,frame = cap.read()
    
    cntr= cntr+1;
    if ((cntr%30)==0):
            
        cv2.putText(frame,'cool' ,(50,50), cv2.FONT_HERSHEY_SIMPLEX, 0.7,(0,0,255),2)
        cv2.imshow('Text Detection Tutorial',frame)
        if cv2.waitKey(2) & 0xff == ord('q'):
             break
cap.release()
cv2.destroyAllWindows()

程序抛出的运行时错误

17 raise IOError("Cannot open webcam")
OSError: Cannot open webcam

待解决问题

在当前Jupyter Notebook运行环境下,如何修复OpenCV通过设备索引打开外接USB摄像头的接口兼容/访问异常,让程序可正常采集/dev/video1的摄像头画面。


内容的提问来源于stack exchange,提问作者Ron Bergen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.25 16:06:05