Python Tool9:opencv将视频转为图片

Python Tool9:opencv将视频转为图片

Demo

  • 相比于ffmepg转换,这种转换方式图片更加清晰。
  • 熟速度相比于ffmepg慢一些
import cv2 def transfer(video, save): cap = cv2.VideoCapture(video) num = 0 while True: if cap.grab(): num += 1 if num % 30 == 1: # 每30帧截取一个图片 flag, frame = cap.retrieve() #解码并返回一个帧 if not flag: continue else: cv2.imshow('video', frame) new = save + "\\" + str(int(num / 60)) + ".jpg" print('正在输出:' + str(int(num / 60)) + ".jpg(按Esc停止运行)") cv2.imencode('.jpg', frame)[1].tofile(new) # 检测到按下Esc时,break(和imshow配合使用) if cv2.waitKey(10) == 27: break videoPath = 'D:\\视频\\2022-07-14.mp4' imgPath = 'D:\\视频\\temp\\' transfer(videoPath, imgPath) print('运行完毕!')