机器视觉开发-打开摄像头

以下是使用Python和OpenCV打开摄像头的最简单实现:

python 复制代码
import cv2

# 打开默认摄像头(通常是0)
cap = cv2.VideoCapture(0)

# 检查摄像头是否成功打开
if not cap.isOpened():
    print("无法打开摄像头")
    exit()

print("摄像头已打开 - 按 '空格' 键退出")

while True:
    # 读取摄像头帧
    ret, frame = cap.read()
    
    # 检查帧是否读取成功
    if not ret:
        print("无法获取帧")
        break
    
    # 显示帧
    cv2.imshow('Cap', frame)
    
    # 按'q'键退出
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

# 释放摄像头资源
cap.release()
cv2.destroyAllWindows()

代码说明:

  1. cv2.VideoCapture(0) - 打开默认摄像头(索引0)

    • 如果有多个摄像头,可以尝试1, 2等索引
  2. cap.isOpened() - 检查摄像头是否成功打开

  3. cap.read() - 读取一帧图像

    • ret: 布尔值,表示是否成功读取
    • frame: 实际的图像数据
  4. cv2.imshow() - 显示图像窗口

  5. cv2.waitKey(1) - 等待键盘输入,1毫秒延迟

    • 按'q'键退出循环
  6. cap.release() - 释放摄像头资源

  7. cv2.destroyAllWindows() - 关闭所有OpenCV窗口

运行要求:

运行效果:

相关推荐
猫头虎5 分钟前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
八零后琐话40 分钟前
干货:程序员必备性能分析工具——Arthas火焰图
开发语言·python
光泽雨1 小时前
检测阈值 匹配阈值分析 金字塔
图像处理·人工智能·计算机视觉·机器视觉·smart3
青春不朽5122 小时前
Scrapy框架入门指南
python·scrapy
sali-tec2 小时前
C# 基于OpenCv的视觉工作流-章22-Harris角点
图像处理·人工智能·opencv·算法·计算机视觉
MZ_ZXD0012 小时前
springboot旅游信息管理系统-计算机毕业设计源码21675
java·c++·vue.js·spring boot·python·django·php
学电子她就能回来吗2 小时前
深度学习速成:损失函数与反向传播
人工智能·深度学习·学习·计算机视觉·github
全栈老石3 小时前
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
后端·python
梨落秋霜3 小时前
Python入门篇【模块/包】
python