Python 按指定视频帧间隔截图

Python 按指定视频帧间隔截图

import cv2
import os.path
from tqdm import tqdm

file_path = r"F:\\Files\\"			# 视频文件路径
path_dir = os.listdir(file_path)   	# 返回文件夹中的文件名
save_path = r"L:\\0\\"				# 保存图片文件夹路径

name_count = 1

video_path = file_path + "1.avi"	# 视频名称
video = cv2.VideoCapture(video_path)  # 读入视频文件
if video.isOpened():  # 判断是否正常打开
    rval, frame = video.read()
    print("开始读取视频")
else:
    rval = False
    print("读取视频失败")

timeF = 1  # 视频帧计数间隔频率
c = 1
if not os.path.exists(save_path):
    os.makedirs(save_path)
    print("创建保存截图目录")

# 这里按每一帧截图
while rval:  # 循环读取视频帧
    if c % timeF == 0:
    	# zfill(width) 方法返回指定长度的字符串,原字符串右对齐,前面填充0
    	# width -- 指定字符串的长度。原字符串右对齐,前面填充0
        imageName = str(name_count).zfill(5)
        cv2.imwrite(save_path + imageName + '.jpg', frame)  # imwrite在py3中无法保存中文路径
        print("保存图片:" + save_path + imageName + '.jpg')
        name_count = name_count + 1

    c = c + 1
    cv2.waitKey(1)
    rval, frame = video.read()
    
video.release()


猜你喜欢

转载自blog.csdn.net/qq_38828370/article/details/124992157
今日推荐