def extract_frames(video_path, output_folder, frame_interval=1): # Print the video path for verification print(f"Attempting to open video file: {video_path}")
# Check if the video file exists if not os.path.exists(video_path): print(f"Error: Video file does not exist at {video_path}") return
# Create the output folder if it doesn't exist if not os.path.exists(output_folder): os.makedirs(output_folder)
# Open the video file cap = cv2.VideoCapture(video_path) if not cap.isOpened(): print("Error: Could not open video.") return
frame_count = 0 saved_frame_count = 0
while True: # Read a frame from the video ret, frame = cap.read() if not ret: break
# Save the frame every 'frame_interval' frames if frame_count % frame_interval == 0: frame_filename = os.path.join(output_folder, f"frame_{saved_frame_count:04d}.jpg") cv2.imwrite(frame_filename, frame) saved_frame_count += 1
frame_count += 1
# Release the video capture object cap.release() print(f"Extracted {saved_frame_count} frames.")