import cv2
import os
def extract_frames(video_path, output_folder):
# 确保输出文件夹存在
if not os.path.exists(output_folder):
os.makedirs(output_folder)
# 读取视频文件
cap = cv2.VideoCapture(video_path)
if not cap.isOpened():
print("Error: Could not open video.")
return
frame_count = 0
while True:
# 读取一帧
ret, frame = cap.read()
# 如果正确读取帧,ret为True
if not ret:
print("Reached end of video or failed to read frame.")
break
# 构建输出图片的文件名
frame_filename = os.path.join(output_folder, f"frame_{frame_count:04d}.jpg")
# 保存图片
cv2.imwrite(frame_filename, frame)
print(f"Saved {frame_filename}")
frame_count += 1
# 释放视频捕捉器
cap.release()
print("Released video capture.")
# 使用示例
video_path = r'D:\demo.mp4'
output_folder = r'D:\filename'
extract_frames(video_path, output_folder)
10-25
5346
09-07
1941
03-07