本文實例為大家分享了Python跳幀截取視頻幀的具體代碼,供大家參考,具體內容如下
可以自由設定時長來截取視頻,經實測效果理想。期間遇到的一個麻煩是我的視頻文件在D:盤,在原視頻D盤目錄上不能保存截取的圖片文件,后改為在C:盤上保存,正常。具體原因不明,有網友知道原因所在,請告知。
import cv2
import os
def save_img():
video_path =r'讀入視頻路徑'
videos = os.listdir(video_path)
for video_name in videos:
videopath=video_path+'\\'+video_name
print(videopath)
vc = cv2.VideoCapture(videopath) #讀入視頻文件
c = 1
if vc.isOpened(): # 判斷是否正常打開
rval, frame = vc.read()
else:
rval = False
timeF = 300 # 視頻幀計數間隔頻率
a=1
while rval: # 循環讀取視頻幀
rval, frame = vc.read()
if (c % timeF == 0): # 每隔timeF幀進行存儲操作
print(video_path+'\\' + str(a) + '.jpg')
#不能在D:盤原視頻目錄上保存圖像文件,原因不明
cv2.imwrite(r'保存圖片文件路徑 '+'\\'+ str(a) + '.jpg', frame)
cv2.imshow('Video',frame)
a+=1
c = c + 1
m=cv2.waitKey(1)
vc.release()
save_img()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。