def save_thumbnail(video_path, output_path): cap = cv2.VideoCapture(video_path) if not cap.isOpened(): print("Error opening video file") return
frame_count = 0 while cap.isOpened(): ret, frame = cap.read() if not ret: break
ret, first_frame = cap.read() if ret: cv2.imwrite(output_path, first_frame) print(f"Thumbnail saved to {output_path}") else: print("Failed to read the video")
# Example usage video_path = "000.mp4" thumbnail_path = "thumbnail.jpg" save_thumbnail(video_path, thumbnail_path) For more complex features, such as video content analysis (e.g., object detection, motion detection), you would typically use more advanced techniques and possibly pre-trained models. OpenCV comes with some basic functionalities for this, but tasks like object detection often require libraries like TensorFlow or PyTorch, along with specific models like YOLO.
import cv2
cap.release()
# Save frame as an image file cv2.imwrite(f"frame_{frame_count}.jpg", frame) print(f"Frame {frame_count} saved") frame_count += 1
pip install opencv-python Here's a basic script to read a video file, extract its frames, and save them as images: