录制的视频,使用python opencv去截取帧数(只取某一帧)同时可裁剪图像尺寸 coding: utf-8 指定某一帧截取图像(不包括裁剪) 1.读取视频文件夹 2.截视频帧数

录制的视频,使用python opencv去截取帧数(只取某一帧)同时可裁剪图像尺寸
coding: utf-8
指定某一帧截取图像(不包括裁剪)
1.读取视频文件夹
2.截视频帧数

指定某一帧截取图像(不包括裁剪)

import cv2 as cv
import os

1.读取视频文件夹

filepath = './Input_video' # 需要读取的视频的路径
pathDir = os.listdir(filepath) # 获取文件夹中文件名称

2.截视频帧数

for allDir in pathDir: # 逐个读取视频文件
a = 80# 截取指定帧数
videopath = r'./Input_video/'+allDir # 视频文件路径
vc = cv.VideoCapture(videopath) # 读入视频文件
# 存储视频的子目录
path = './Video_Result(Only-1)Frame/'#+allDir.split('.')[0] # 文件夹名称 + 以什么符号分割,此处选择直接放进一个文件夹中
if not os.path.exists(path): # 如果不存在就创建文件夹
os.mkdir(path)
if vc.isOpened(): # 判断载入的视频是否能够打开
rval , frame = vc.read()
else:
rval = False
while rval:

	vc.set(cv.CAP_PROP_POS_FRAMES, a) # 截取指定帧数
	rval,frame = vc.read()      # 分帧读取视频
	#frame = frame[130:920,380:1420]

	cv.imencode('.jpg',frame)[1].tofile(path +'/' + str(a) +'-'+ allDir[:-4] + '.jpg')  
	print(str(a) +'-'+ allDir[:-4] + '---视频截取完成')
	break

print(' ','处理完成,请移步------→ :Video_Result(Only-1)Frame查看结果')