python自动读取文件夹下的多个.mp4格式视频,并每隔10帧自动保存图片,保存成.jpg格式
时间: 2024-05-10 21:17:58 浏览: 104
可以使用OpenCV库来实现这个功能。以下是一个简单的Python脚本,可以读取指定文件夹下的所有.mp4视频,并每隔10帧自动保存成.jpg图片。
```python
import cv2
import os
input_folder = "/path/to/videos/" # 视频所在文件夹
output_folder = "/path/to/images/" # 图片保存文件夹
skip_frames = 10 # 每隔几帧保存一张图片
# 遍历文件夹下所有.mp4文件
for filename in os.listdir(input_folder):
if filename.endswith(".mp4"):
video_path = os.path.join(input_folder, filename)
cap = cv2.VideoCapture(video_path)
frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
# 每隔skip_frames帧保存一张图片
for i in range(0, frame_count, skip_frames):
cap.set(cv2.CAP_PROP_POS_FRAMES, i)
ret, frame = cap.read()
if ret:
image_path = os.path.join(output_folder, f"{filename}_{i}.jpg")
cv2.imwrite(image_path, frame)
cap.release()
```
你需要将 `input_folder` 和 `output_folder` 的路径替换为你自己的路径。同时,你还需要安装OpenCV库,可以使用以下命令来安装:
```
pip install opencv-python
```
运行脚本后,会自动读取指定文件夹下的所有.mp4文件,并每隔10帧保存一张.jpg图片。图片的命名格式为`视频文件名_帧数.jpg`。
阅读全文