OpenCV之从视频获取每一帧图像

       当我们有一份视频,想对其做分析时,我们需要将其转化成每一帧图像,并对每一帧图像进行分析。

       本文用opencv读取一段视频,并将视频中的每一帧图像保存到本地,opencv版本为3.2.0,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14

import cv2

videoCapture = cv2.VideoCapture()
videoCapture.open('E:/video/1-1.avi')

fps = videoCapture.get(cv2.CAP_PROP_FPS)
frames = videoCapture.get(cv2.CAP_PROP_FRAME_COUNT)
#fps是帧率,意思是每一秒刷新图片的数量,frames是一整段视频中总的图片数量。
print("fps=",fps,"frames=",frames)

for i in range(int(frames)):
ret,frame = videoCapture.read()
cv2.imwrite("E:/video/pictures/1-1.avi(%d).jpg"%i,frame)