python实现视频分帧效果


Posted in Python onMay 31, 2019

本文实例为大家分享了python实现视频分帧的具体代码,供大家参考,具体内容如下

import cv2 
vidcap = cv2.VideoCapture('005.avi') 
success,image = vidcap.read() 
count = 0 
success = True 
while success: 
 success,image = vidcap.read() 
 cv2.imwrite("frame%d.jpg" % count, image)  # save frame as JPEG file 
 if cv2.waitKey(10) == 27:      
  break 
 count += 1

python tools:将视频的每一帧提取并保存

# coding=utf-8 
 
import os 
import cv2 
 
videos_src_path = "/home/wgp/视频/" 
video_formats = [".MP4", ".MOV"] 
frames_save_path = "/home/wgp/视频/" 
width = 320 
height = 240 
time_interval = 50 
 
 
def video2frame(video_src_path, formats, frame_save_path, frame_width, frame_height, interval): 
 """ 
 将视频按固定间隔读取写入图片 
 :param video_src_path: 视频存放路径 
 :param formats: 包含的所有视频格式 
 :param frame_save_path: 保存路径 
 :param frame_width: 保存帧宽 
 :param frame_height: 保存帧高 
 :param interval: 保存帧间隔 
 :return: 帧图片 
 """ 
 videos = os.listdir(video_src_path) 
 
 def filter_format(x, all_formats): 
  if x[-4:] in all_formats: 
   return True 
  else: 
   return False 
 
 videos = filter(lambda x: filter_format(x, formats), videos) 
 
 for each_video in videos: 
  print "正在读取视频:", each_video 
 
  each_video_name = each_video[:-4] 
  os.mkdir(frame_save_path + each_video_name) 
  each_video_save_full_path = os.path.join(frame_save_path, each_video_name) + "/" 
 
  each_video_full_path = os.path.join(video_src_path, each_video) 
 
  cap = cv2.VideoCapture(each_video_full_path) 
  frame_index = 0 
  frame_count = 0 
  if cap.isOpened(): 
   success = True 
  else: 
   success = False 
   print("读取失败!") 
 
  while(success): 
   success, frame = cap.read() 
   print "---> 正在读取第%d帧:" % frame_index, success 
 
   if frame_index % interval == 0: 
    resize_frame = cv2.resize(frame, (frame_width, frame_height), interpolation=cv2.INTER_AREA) 
    # cv2.imwrite(each_video_save_full_path + each_video_name + "_%d.jpg" % frame_index, resize_frame) 
    cv2.imwrite(each_video_save_full_path + "%d.jpg" % frame_count, resize_frame) 
    frame_count += 1 
 
   frame_index += 1 
 
 cap.release() 
 
 
if __name__ == '__main__': 
 video2frame(videos_src_path, video_formats, frames_save_path, width, height, time_interval)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python读写文本文件及编写简单的文本编辑器
Mar 11 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
Nov 11 Python
解决Django连接db遇到的问题
Aug 29 Python
使用pyqt5 tablewidget 单元格设置正则表达式
Dec 13 Python
python实现字典嵌套列表取值
Dec 16 Python
Python的形参和实参使用方式
Dec 24 Python
tensorflow获取预训练模型某层参数并赋值到当前网络指定层方式
Jan 24 Python
python使用gdal对shp读取,新建和更新的实例
Mar 10 Python
PYQT5 vscode联合操作qtdesigner的方法
Mar 24 Python
详解Python的爬虫框架 Scrapy
Aug 03 Python
PyCharm2020最新激活码+激活码补丁(亲测最新版PyCharm2020.2激活成功)
Nov 25 Python
你喜欢篮球吗?Python实现篮球游戏
Jun 11 Python
使用Python实现跳帧截取视频帧
May 31 #Python
python tools实现视频的每一帧提取并保存
Mar 20 #Python
Python从list类型、range()序列简单认识类(class)【可迭代】
May 31 #Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
May 31 #Python
Python可变和不可变、类的私有属性实例分析
May 31 #Python
python实现批量视频分帧、保存视频帧
May 31 #Python
Python内置random模块生成随机数的方法
May 31 #Python
You might like
php更改目录及子目录下所有的文件后缀的代码
2010/09/24 PHP
php中ftp_chdir与ftp_cdup函数用法
2014/11/18 PHP
PHP date函数常用时间处理方法
2015/05/11 PHP
php结合md5实现的加密解密方法
2016/01/25 PHP
利用PHP如何写APP接口详解
2016/08/23 PHP
微信开发之php表单微信中自动提交两次问题解决办法
2017/01/08 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
写出更好的JavaScript之undefined篇(上)
2009/11/22 Javascript
JS日期和时间选择控件升级版(自写)
2013/08/02 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
jquery使用remove()方法删除指定class子元素
2015/03/26 Javascript
js判断文件格式及大小的简单实例(必看)
2016/10/11 Javascript
详解React Native网络请求fetch简单封装
2017/08/10 Javascript
vue中component组件的props使用详解
2017/09/04 Javascript
vue轮播图插件vue-concise-slider的使用
2018/03/13 Javascript
JavaScript刷新页面的几种方法总结
2019/03/28 Javascript
微信小程序与webview交互实现支付功能
2019/06/07 Javascript
jQuery实现提交表单时不提交隐藏div中input的方法
2019/10/08 jQuery
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
2款Python内存检测工具介绍和使用方法
2014/06/01 Python
理解python多线程(python多线程简明教程)
2014/06/09 Python
Python编程argparse入门浅析
2018/02/07 Python
Django实现一对多表模型的跨表查询方法
2018/12/18 Python
Python对象转换为json的方法步骤
2019/04/25 Python
python爬取豆瓣电影排行榜(requests)的示例代码
2021/02/18 Python
俄罗斯护发和专业化妆品购物网站:Hihair
2019/09/28 全球购物
农贸市场管理制度
2014/01/31 职场文书
招聘专员岗位职责
2014/03/07 职场文书
租车协议书范本
2014/04/22 职场文书
县政府办公室领导班子对照检查材料思想汇报
2014/09/28 职场文书
网络工程专业大学生求职信
2014/10/01 职场文书
2015年电教工作总结
2015/05/26 职场文书
干部作风纪律整顿心得体会
2016/01/23 职场文书
优秀范文:《但愿人长久》教学反思3篇
2019/10/24 职场文书
详解Python函数print用法
2021/06/18 Python
Java 中的 Unsafe 魔法类的作用大全
2021/06/26 Java/Android