Python提取视频中图片的示例(按帧、按秒)


Posted in Python onOctober 22, 2020

一、按帧提取

#coding=utf-8
import os
import cv2
 
def save_img():  #提取视频中图片 按照每帧提取
 video_path = r'D:\\test\\' #视频所在的路径
 f_save_path = 'D:\\aaa\\' #保存图片的上级目录
 videos = os.listdir(video_path) #返回指定路径下的文件和文件夹列表。
 for video_name in videos:  #依次读取视频文件
 file_name = video_name.split('.')[0] #拆分视频文件名称 ,剔除后缀
 folder_name = f_save_path + file_name #保存图片的上级目录+对应每条视频名称 构成新的目录存放每个视频的
 os.makedirs(folder_name,exist_ok=True) #创建存放视频的对应目录
 vc = cv2.VideoCapture(video_path+video_name) #读入视频文件
 c=0   #计数 统计对应帧号
 rval=vc.isOpened() #判断视频是否打开 返回True或Flase
 
 while rval: #循环读取视频帧
  rval, frame = vc.read() #videoCapture.read() 函数,第一个返回值为是否成功获取视频帧,第二个返回值为返回的视频帧:
  pic_path = folder_name+'/'
  if rval:
  cv2.imwrite(pic_path + file_name + '_' + str(c) + '.jpg', frame) #存储为图像,保存名为 文件夹名_数字(第几个文件).jpg
  cv2.waitKey(1) #waitKey()--这个函数是在一个给定的时间内(单位ms)等待用户按键触发;如果用户没有按下 键,则接续等待(循环)
  c = c + 1
  else:
  break
 vc.release()
 print('save_success'+folder_name)
 
save_img()

运行结果

Python提取视频中图片的示例(按帧、按秒)

二、按秒提取

#coding=utf-8
import os
from cv2 import cv2

def save_img2():  #提取视频中图片 按照每秒提取 间隔是视频帧率
 video_path = r'D:\\test\\' #视频所在的路径
 f_save_path = 'D:\\aaa\\' #保存图片的上级目录
 videos = os.listdir(video_path) #返回指定路径下的文件和文件夹列表。
 for video_name in videos:  #依次读取视频文件
 file_name = video_name.split('.')[0] #拆分视频文件名称 ,剔除后缀
 folder_name = f_save_path + file_name #保存图片的上级目录+对应每条视频名称 构成新的目录存放每个视频的
 os.makedirs(folder_name,exist_ok=True) #创建存放视频的对应目录
 vc = cv2.VideoCapture(video_path+video_name) #读入视频文件
 fps = vc.get(cv2.CAP_PROP_FPS) #获取帧率
 print(fps) #帧率可能不是整数 需要取整
 rval=vc.isOpened() #判断视频是否打开 返回True或Flase
 c = 1
 while rval: # 循环读取视频帧
  rval, frame = vc.read() # videoCapture.read() 函数,第一个返回值为是否成功获取视频帧,第二个返回值为返回的视频帧:
  pic_path = folder_name + '/'
  if rval:
   
  if (c % round(fps) == 0): # 每隔fps帧进行存储操作 ,可自行指定间隔
   cv2.imwrite(pic_path + file_name + '_' + str(c) + '.jpg', frame) # 存储为图像,保存名为 文件夹名_数字(第几个文件).jpg
  cv2.waitKey(1) # waitKey()--这个函数是在一个给定的时间内(单位ms)等待用户按键触发;如果用户没有按下 键,则接续等待(循环)
  c = c + 1
  else:
  break
 vc.release()
 print('save_success' + folder_name)
 
save_img2()

运行结果

Python提取视频中图片的示例(按帧、按秒)

以上就是Python提取视频中的帧图片的示例的详细内容,更多关于python 提取视频图片的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
使用PYTHON接收多播数据的代码
Mar 01 Python
python解析json实例方法
Nov 19 Python
Python Web框架Pylons中使用MongoDB的例子
Dec 03 Python
python web框架学习笔记
May 03 Python
Python使用functools实现注解同步方法
Feb 06 Python
tensorflow学习教程之文本分类详析
Aug 07 Python
python通过配置文件共享全局变量的实例
Jan 11 Python
Python 中的参数传递、返回值、浅拷贝、深拷贝
Jun 25 Python
Jupyter Notebook远程登录及密码设置操作
Apr 10 Python
使用OpenCV获取图片连通域数量,并用不同颜色标记函
Jun 04 Python
keras的三种模型实现与区别说明
Jul 03 Python
Python实现冒泡排序算法的完整实例
Nov 04 Python
详解python模块pychartdir安装及导入问题
Oct 22 #Python
Python实现自动装机功能案例分析
Oct 22 #Python
Python reversed反转序列并生成可迭代对象
Oct 22 #Python
Python+OpenCV图像处理—— 色彩空间转换
Oct 22 #Python
Python类的继承super相关原理解析
Oct 22 #Python
Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头
Oct 22 #Python
Python基于内置函数type创建新类型
Oct 22 #Python
You might like
php使用fsockopen函数发送post,get请求获取网页内容的方法
2014/11/15 PHP
PHP网站建设的流程与步骤分享
2015/09/25 PHP
PHP实现上一篇下一篇的方法实例总结
2016/09/22 PHP
使用php实现网站验证码功能【推荐】
2017/02/09 PHP
JavaScript 特殊字符
2007/04/05 Javascript
JS input 数字验证代码
2009/07/30 Javascript
jQuery 判断页面元素是否存在的代码
2009/08/14 Javascript
ExtJS4如何自动生成控制grid的列显示、隐藏的checkbox
2014/05/02 Javascript
js实现背景图片感应鼠标变化的方法
2015/02/28 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
JavaScript正则表达式小结(test|match|search|replace|split|exec)
2016/12/08 Javascript
微信小程序 下拉菜单简单实例
2017/04/13 Javascript
vue mint-ui学习笔记之picker的使用
2017/10/11 Javascript
js replace 全局替换的操作方法
2018/06/12 Javascript
微信小程序实现卡片层叠滑动效果
2019/06/21 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
JavaScript实现多个物体同时运动
2020/03/12 Javascript
JS apply用法总结和使用场景实例分析
2020/03/14 Javascript
pyqt4教程之实现windows窗口小示例分享
2014/03/07 Python
python循环监控远程端口的方法
2015/03/14 Python
Python中函数的参数传递与可变长参数介绍
2015/06/30 Python
Python正则表达式实现截取成对括号的方法
2017/01/06 Python
Python中装饰器学习总结
2018/02/10 Python
pycharm恢复默认设置或者是替换pycharm的解释器实例
2018/10/29 Python
Python+selenium点击网页上指定坐标的实例
2019/07/05 Python
使用python求解二次规划的问题
2020/02/29 Python
基于Python脚本实现邮件报警功能
2020/05/20 Python
俄罗斯最大的隐形眼镜销售网站:Ochkov.Net
2021/02/07 全球购物
Woods官网:加拿大最古老、最受尊敬的户外品牌之一
2020/09/12 全球购物
策划助理岗位职责
2013/11/18 职场文书
学前教育毕业生自荐信范文
2013/12/24 职场文书
暑期培训随笔感言
2014/03/10 职场文书
民族团结先进集体事迹材料
2014/05/22 职场文书
房屋租赁合同补充协议
2014/10/11 职场文书
2016年安康杯竞赛活动总结
2016/04/05 职场文书
详解MindSpore自定义模型损失函数
2021/06/30 Python