import cv2 import os videopath =r"1-1-2-1_fa_diantou+idle+idle_audio.mp4" pic_path = r'F:\2023_02_24\liu_hui\video_cv2\pic' def start_deal(): vc = cv2.VideoCapture(videopath) # 讀入視頻文件 if vc.isOpened(): # 判斷是否正常打開 rval, frame = vc.read() else: rval = False fps = vc.get(cv2.CAP_PROP_FPS) # 每秒幀數 image_timer = 1 timeF = int(fps * image_timer) c = 0 cut_time = 0 while rval: # 循環讀取視頻幀 rval, frame = vc.read() if (c % timeF == 0 and rval): # 每隔timeF幀進行存儲操作 img2gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) imageVar = cv2.Laplacian(img2gray, cv2.CV_64F).var() if imageVar > 10: image_full_path = os.path.join(pic_path,str(cut_time)+'.jpg') cv2.imwrite(image_full_path, frame) # 存儲爲圖像 cut_time += image_timer # 這裏記錄疊加時間 c = c + 1 cv2.waitKey(1) vc.release() if __name__ == '__main__': start_deal()