Python OpenCV 实时视频帧显示 - 使用 cv2.VideoCapture() 和 cv2.imshow()
本文将介绍如何使用 Python 和 OpenCV 库来实现实时视频帧显示。通过 cv2.VideoCapture() 读取视频文件,并使用 cv2.imshow() 显示当前帧图像,从而实现视频的实时预览。
代码示例:
import cv2
# 打开视频文件
cap = cv2.VideoCapture('test.mp4')
while True:
# 读取当前帧图像
ret, frame = cap.read()
if ret:
# 显示当前帧图像
cv2.imshow('frame', frame)
# 等待10毫秒,按'q'键退出循环
if cv2.waitKey(10) & 0xFF == ord('q'):
break
else:
# 读取错误或读取结束,退出循环
break
# 释放资源
cap.release()
cv2.destroyAllWindows()
代码解释:
- 导入 OpenCV 库: 使用
import cv2导入 OpenCV 库。 - 打开视频文件: 使用
cv2.VideoCapture('test.mp4')打开视频文件,'test.mp4'为视频文件路径。 - 循环读取帧: 使用
while True循环不断读取视频帧。 - 读取当前帧: 使用
cap.read()读取当前帧图像,返回两个值:ret为布尔值,表示读取是否成功;frame为当前帧图像。 - 显示图像: 如果
ret为 True,则使用cv2.imshow('frame', frame)显示当前帧图像。 - 等待用户输入: 使用
cv2.waitKey(10)等待 10 毫秒,并检测用户输入。如果按下 'q' 键,则退出循环。 - 释放资源: 循环结束后,使用
cap.release()释放视频资源,并使用cv2.destroyAllWindows()关闭所有窗口。
总结:
通过以上代码,我们可以使用 OpenCV 库实现实时视频帧显示。代码简单易懂,方便学习和使用。
原文地址: https://www.cveoy.top/t/topic/odta 著作权归作者所有。请勿转载和采集!