python调用opencv截取视频中的帧为图片

import cv2
import os
#START_TIME= 180 #设置开始时间(单位秒)
#END_TIME= 600 #设置结束时间(单位秒)
video_path = '../video_to_picture/test.mp4' #视频路径
picSavePath = '../video_to_picture/pictures' #图片保存路径
video_capture = cv2.VideoCapture(video_path) #读取视频
FPS = video_capture.get(cv2.CAP_PROP_FPS) #获取帧率单位帧每秒
print(FPS)
size = (video_capture.get(cv2.CAP_PROP_FRAME_WIDTH), video_capture.get(cv2.CAP_PROP_FRAME_HEIGHT)) #获取视频长宽
print(size)
#TOTAL_FRAME = int(video_capture.get(cv2.CAP_PROP_FRAME_COUNT)) #获取视频总帧数
#frameToStart = START_TIME*FPS #开始帧 = 开始时间*帧率
frameToStart = 16200
print(frameToStart)
#frametoStop = END_TIME*FPS #结束帧 = 结束时间*帧率
frametoStop = 16800
print(frametoStop)
video_capture.set(cv2.CAP_PROP_POS_FRAMES, frameToStart) #设置读取的位置,从第几帧开始读取视频
COUNT = frameToStart
while True:
	success, frame = video_capture.read()
	if success:
		if COUNT <= frametoStop:#选取起始帧
			path = os.path.join(os.path.abspath(picSavePath), 'test_' + str(COUNT) + ".jpg")#设置输出图片的名字
			cv2.imwrite(path, frame, [cv2.IMWRITE_JPEG_QUALITY, 100])#100表示图像质量最高
			COUNT += 1
		else: #退出读取程序
        		break

print('end')
video_capture.release()
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值