python - 简单的 OpenCV 测试只显示第一帧
问题描述
这个简单的 python 脚本应该持续显示网络摄像头视频,但它只显示第一帧。
import cv2
print('cv2 version is ' + str(cv2.getVersionString()))
def capture_config(camera_port=0):
frame_height = 480
frame_width = 640
cap = cv2.VideoCapture(camera_port)
cap.set(3, frame_width)
cap.set(4, frame_height)
if not cap.isOpened():
print('Unable to read camera feed')
return False
return cap
cap = capture_config()
while cap:
ret, frame = cap.read()
cv2.imshow('captured frame', frame)
if cv2.waitKey(0) & 0xff == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
输出是
cv2 version is 4.5.1
它在 ubuntu 20.03 和 python 3.8 上
脚本只显示第一帧的任何正当理由?
解决方案
推荐阅读
- firebase - 在颤振中包含 Firebase 并在构建时出错(警告我已经粘贴了我得到的所有错误代码,所以请保持冷静)
- angular - 如何使用预定义的库或框架以角度创建微调器日期选择器(可滚动日期选择器)?
- java - 有没有在java中获取设备名称的函数?
- node.js - 如何在 Azure 函数中读取 Nodejs 中的 .env 文件变量
- python - 为什么 Python 3.9 中 SyntaxErrors 的错误消息与以前的 Python 版本不同?
- javascript - 移除带有属性 JS 的元素
- python - 气流弹性搜索钩子
- java - java - 如何在java的全局DbConnection中使用准备好的sql语句?
- c# - 搜索文件并删除它,不知道路径 C#
- r - 制作函数时保留列名