📜  leer video con opencv (1)

📅  最后修改于: 2023-12-03 15:32:38.128000             🧑  作者: Mango

如何用 OpenCV 读取视频

如果你需要在你的程序中读取视频, OpenCV 是一个不错的选择。本文将详细介绍如何使用 OpenCV 在 Python 中读取视频。

安装 OpenCV

如果你还没有安装 OpenCV,可以使用以下命令在 Python 中安装:

!pip install opencv-python
读取视频

要读取视频,你需要调用下面的代码:

import cv2

video_capture = cv2.VideoCapture('video.mp4')
if not video_capture.isOpened():
    print('Error: Cannot open video')
    exit()
    
frame_count = int(video_capture.get(cv2.CAP_PROP_FRAME_COUNT))
fps = video_capture.get(cv2.CAP_PROP_FPS)
frame_width = int(video_capture.get(cv2.CAP_PROP_FRAME_WIDTH))
frame_height = int(video_capture.get(cv2.CAP_PROP_FRAME_HEIGHT))

print(f'Video has {frame_count} frames, with {fps:.2f} fps, and resolution {frame_width}x{frame_height}')
while True:
    ret, frame = video_capture.read()
    if not ret:
        break
    # Do something with the frame, for example display it
    cv2.imshow('Frame', frame)
    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

video_capture.release()
cv2.destroyAllWindows()

解析上面的代码:

  • cv2.VideoCapture('video.mp4'):打开要读取的视频文件。
  • video_capture.isOpened():检查视频文件是否成功打开。
  • video_capture.get():获取视频文件的相关属性,例如帧数、帧速率、分辨率等。
  • video_capture.read():读取下一个视频帧。
  • cv2.imshow():显示视频帧。
  • cv2.waitKey():等待一段时间并检查键盘输入。
  • video_capture.release():释放视频文件。
  • cv2.destroyAllWindows():销毁所有窗口。
结论

使用 OpenCV 读取视频是一个相对简单的任务,而且常用于很多计算机视觉应用中。如果你需要在你的代码中读取视频,希望本文可对你有所帮助。