Bootstrap

opencv --视频截取每一帧并保存为图片python代码 Pycharm实现

当涉及到视频处理时,Python中的OpenCV库提供了强大的功能,可以方便地从视频中截取每一帧并将其保存为图片。这是一个很有趣的练习,可以让你更深入地了解图像处理和多媒体操作。

使用OpenCV库,你可以轻松地读取视频文件,并在循环中逐帧读取视频的每一帧。随后,你可以将这些帧保存为独立的图片文件,使得你能够以图片的形式呈现视频的每个时间段。以下是一个示例代码,展示了如何实现视频每一帧截取并保存为图片:

import cv2
import os

# 创建保存图片的文件夹
if not os.path.exists('images'):
    os.mkdir('images')

cap = cv2.VideoCapture("Test.mp4")
c = 0

while True:
    # 读取帧
    ret, frame = cap.read()

    # 检查帧是否有效
    if not ret:
        break

    # 保存帧为图片
    image_path = os.path.join('images', f'frame_{c:04d}.jpg')
    
    # 将调整大小后的帧frame当作图片保存到磁盘上的帧路径的frame_path
    cv2.imwrite(image_path, frame)
    print(f"Saved {image_path}")

   # 增加计数器cnt的值,以便为下一帧生成不同的路径
    c += 1
    
    if cv2.waitKey(100) & 0xFF == ord('q'):
        break

cap.release()
cv2.destroyAllWindows()

代码效果

这是汽车行驶视频中截取的每一张图片

;