实现:
读取视频的一帧图像并保存为图片
# 导入opencv包
import cv2
# 实例化一个类
# VideoCapture('视频路径+名称')
cap = cv2.VideoCapture('1.mp4')
# 通过上面实例的对象调用read()函数
# read():两个返回值:
# 返回值1:是否成功读取图片 True 或者 False
# 返回值2:图片
success, frame = cap.read()
# 通过imwrite函数写入到文件夹
cv2.imwrite('1.jpg', frame)
# 最后可以将这个图片显示出来
cv2.imshow('frame', frame)
cv2.waitKey(0)
cv2.destroyAllWindows()
如果你的文件夹中没有提取到的图片,可能是你的视频有问题,换一个视频试一下。
读取一段视频帧并保存为图片:
和上面的程序差不多,只是一直提取到视频帧播放结束就行
# 导入包
import cv2
# 实例化一个对象
cap = cv2.VideoCapture('MyoutputVid.mp4')
# 定义变量i
i = 0
# 先提取一张图片
success, frame = cap.read()
# 如果一张图片提取成功,则继续提取剩下的,直到视频结束
while success:
# 将上面提取到的图片写入到文件夹
cv2.imwrite(str(i)+'.jpg', frame)
# 更新变量i
i += 1
# 继续提取
success, frame = cap.read()
这样就能通过python的opencv模块实现将一段视频帧提取为图片并保存