当前位置:   article > 正文

Opencv实时获取摄像头数据(附带解析)_opencv 读取摄像头

opencv 读取摄像头
  1. # 注意这段代码不能直接在jupyter中使用,否则会崩溃
  2. import cv2 # 引入CV库
  3. """
  4. 读取摄像头数据,实时获取摄像头数据,同时按q退出
  5. """
  6. # 创建窗口
  7. cv2.namedWindow('video', cv2.WINDOW_NORMAL)
  8. cv2.resizeWindow('video', 300, 300) # 设置窗口大小
  9. # 获取视频设备
  10. cap = cv2.VideoCapture(0)
  11. while True:
  12. # 从摄像头读视频帧
  13. ret, frame = cap.read()
  14. # 将视频帧在窗口中显示
  15. cv2.imshow('video', frame)
  16. key = cv2.waitKey(1) # 不能为0,0为等待中断,只能读取到一帧的数据
  17. if (key & 0xFF == ord('q')):
  18. break
  19. # 释放资源
  20. cap.release() # 释放视频资源
  21. cv2.destroyAllWindows() # 释放窗口资源

这段代码是一个使用 OpenCV 库在本地摄像头捕获视频并实时显示的简单示例。请注意,由于 Jupyter Notebook 不支持直接在内核中实时显示摄像头视频,因此在 Jupyter 中执行可能导致崩溃。这样的代码通常在本地 Python 脚本或集成开发环境(IDE)中运行。

以下是代码的主要步骤:

  1. 引入 OpenCV 库:import cv2

  2. 创建一个窗口,并设置其大小:cv2.namedWindow('video', cv2.WINDOW_NORMAL)cv2.resizeWindow('video', 300, 300)

  3. 获取视频设备:cap = cv2.VideoCapture(0),其中参数 0 表示使用第一个摄像头。

  4. 进入主循环,不断读取摄像头的视频帧,显示在窗口中:ret, frame = cap.read()cv2.imshow('video', frame)

  5. 使用 cv2.waitKey(1) 获取按键输入,如果按下 'q' 键,则退出循环。

  6. 释放资源:cap.release() 释放摄像头资源,cv2.destroyAllWindows() 释放窗口资源。

请确保在本地 Python 环境中执行此类代码,以便正常运行。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/332194
推荐阅读
相关标签
  

闽ICP备14008679号