您好,登錄后才能下訂單哦!
小編給大家分享一下python怎么實現將視頻按幀讀取到自定義目錄,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
如題,首先讀取視頻路徑,其次根據視頻名稱創建對應的文件夾,再逐幀將視頻幀讀入。
import cv2 import argparse import sys import os parser = argparse.ArgumentParser(description='tranfer the vedio to img.') parser.add_argument('-m', '--mode', choices=['folder', 'url'], default='folder') parser.add_argument('-p', '--path', help='Specify a path [e.g. testModel]', default='E:\DATA\pose_h4.6m\S5\Videos') parser.add_argument('-pimg', '--imgpath', help='Specify a path [e.g. testModel]', default='F:\pythonprogram\multi_task\img\S5') args = parser.parse_args(sys.argv[1:]) if args.mode == 'folder': #get video withPath = lambda f: '{}/{}'.format(args.path,f) video = dict((f,cv2.imread(withPath(f))) for f in os.listdir(args.path) if os.path.isfile(withPath(f))) for key,val in video.items(): fram_video = '{}/{}'.format(args.path,key) act_cam=key[:-4] vc=cv2.VideoCapture('{}\{}'.format(args.path,key)) c = 1 # camera # print('{}\{}\{}.jpg'.format(args.imgpath, act_cam,str(c))) path = '{}\{}'.format(args.imgpath, act_cam) isExists = os.path.exists(path) if not isExists: os.makedirs(path) if vc.isOpened(): rval, frame = vc.read() else: rval = False while rval: rval, frame = vc.read() cv2.imwrite('{}\\{}\\{}.jpg'.format(args.imgpath, act_cam,str(c)),frame) # cv2.imwrite('C:\\Users\\65183\\Desktop\\test\\fuck\\'+str(c)+'.jpg', frame) c = c + 1 cv2.waitKey(1) vc.release()
以上是“python怎么實現將視頻按幀讀取到自定義目錄”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。