Files
3D-pano/extract_frames.py
袁涛 427d99d87a 更新 序列帧资源更换为video2.mp4
- 更换视频源从video.mp4到video2.mp4
- 重新提取400帧序列图(原336帧)
- 更新应用配置中的总帧数
2026-03-29 01:37:55 +08:00

38 lines
978 B
Python

import cv2
import os
# 配置
video_path = r'J:\git\3D-pano\video2.mp4'
output_dir = r'J:\git\3D-pano\images'
total_frames = 400
# 确保输出目录存在
os.makedirs(output_dir, exist_ok=True)
# 打开视频
cap = cv2.VideoCapture(video_path)
if not cap.isOpened():
print('Error: Cannot open video')
exit(1)
video_frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
print(f'Video total frames: {video_frame_count}')
# 计算帧间隔
interval = video_frame_count // total_frames
for i in range(total_frames):
frame_idx = i * interval
cap.set(cv2.CAP_PROP_POS_FRAMES, frame_idx)
ret, frame = cap.read()
if ret:
output_path = os.path.join(output_dir, f'car_{str(i+1).zfill(3)}.jpg')
cv2.imwrite(output_path, frame, [cv2.IMWRITE_JPEG_QUALITY, 90])
print(f'Saved: {output_path}')
else:
print(f'Failed to read frame {frame_idx}')
cap.release()
print(f'Done! Extracted {total_frames} frames to {output_dir}')