python使用opencv按一定间隔截取视频帧


Posted in Python onMarch 06, 2018

关于opencv

OpenCV 是 Intel 开源计算机视觉库 (Computer Version) 。它由一系列 C 函数和少量 C++ 类构成,实现了图像处理和计算机视觉方面的很多通用算法。

OpenCV 拥有包括 300 多个 C 函数的跨平台的中、高层 API 。它不依赖于其它的外部库 —— 尽管也可以使用某些外部库。 OpenCV 对非商业应用和商业应用都是免费 的。同时 OpenCV 提供了对硬件的访问,可以直接访问摄像头,并且 opencv 还提供了一个简单的 GUI(graphics user interface) 系统 :highgui 。 我们就通过 OpenCV 提供的一些方法来构造出这个人脸检测 ( face detection ) 程序来。

opencv的python包装

OpenCV 本身是有 C/C++ 编写的,如果要在其他语言中使用,我们可以通过对其动态链接库文件进行包装即可,幸运的是, Python 下有很多个这样的包装,本文中使用的是 Cvtypes 。

事实上,在 Python 中很多的包都是来自第三方的,比如 PIL(Python Image Library) 即为 C 语言实现的一个图形处理包,被包装到了 Python 中,这些包装可以让你像使用 Python 的内建函数一样的使用这些 API 。

这个例子使用python编程:用opencv按一定间隔截取视频帧,并保存为图片。

import cv2 
 
     
vc = cv2.VideoCapture('Test.avi') #读入视频文件 
c=1 
 
if vc.isOpened(): #判断是否正常打开 
  rval , frame = vc.read() 
else: 
  rval = False 
 
timeF = 1000 #视频帧计数间隔频率 
 
while rval:  #循环读取视频帧 
  rval, frame = vc.read() 
  if(c%timeF == 0): #每隔timeF帧进行存储操作 
    cv2.imwrite('image/'+str(c) + '.jpg',frame) #存储为图像 
  c = c + 1 
  cv2.waitKey(1) 
vc.release()

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

Python 相关文章推荐
Linux下使用python调用top命令获得CPU利用率
Mar 10 Python
简单理解Python中基于生成器的状态机
Apr 13 Python
Python使用numpy模块实现矩阵和列表的连接操作方法
Jun 26 Python
python的pstuil模块使用方法总结
Jul 26 Python
如何使用python操作vmware
Jul 27 Python
python Kmeans算法原理深入解析
Aug 23 Python
tensorflow2.0保存和恢复模型3种方法
Feb 03 Python
Python restful框架接口开发实现
Apr 13 Python
PyCharm vs VSCode,作为python开发者,你更倾向哪种IDE呢?
Aug 17 Python
Python 字典一个键对应多个值的方法
Sep 29 Python
Python实现PS滤镜中的USM锐化效果
Dec 04 Python
python spilt()分隔字符串的实现示例
May 21 Python
python+ffmpeg视频并发直播压力测试
Mar 06 #Python
小白如何入门Python? 制作一个网站为例
Mar 06 #Python
python调用系统ffmpeg实现视频截图、http发送
Mar 06 #Python
Python从零开始创建区块链
Mar 06 #Python
Django 实现下载文件功能的示例
Mar 06 #Python
python入门前的第一课 python怎样入门
Mar 06 #Python
详解Python判定IP地址合法性的三种方法
Mar 06 #Python
You might like
windows下配置apache+php+mysql时出现问题的处理方法
2014/06/20 PHP
PHP实现对png图像进行缩放的方法(支持透明背景)
2015/07/15 PHP
PHP图片添加水印功能示例小结
2016/10/03 PHP
浅谈laravel框架sql中groupBy之后排序的问题
2019/10/17 PHP
range 标准化之获取
2011/08/28 Javascript
javascript 二进制运算技巧解析
2012/11/27 Javascript
Jquery写一个鼠标拖动效果实现原理与代码
2012/12/24 Javascript
如何使用JS获取IE上传文件路径(IE7,8)
2013/07/08 Javascript
javascript操作excel生成报表示例
2014/05/08 Javascript
网站接入QQ登录的两种方法
2014/07/22 Javascript
JavaScript中获取鼠标位置相关属性总结
2014/10/11 Javascript
轻松实现js图片预览功能
2016/01/18 Javascript
javascript每日必学之条件分支
2016/02/17 Javascript
JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)
2016/03/25 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
2016/06/12 Javascript
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
2017/02/22 Javascript
JavaScript 中 apply 、call 的详解
2017/03/21 Javascript
angular6根据environments配置文件更改开发所需要的环境的方法
2019/03/06 Javascript
Vue组件系列开发之模态框
2019/04/18 Javascript
python 获取指定文件夹下所有文件名称并写入列表的实例
2018/04/23 Python
Python拼接字符串的7种方法总结
2018/11/01 Python
Python任意字符串转16, 32, 64进制的方法
2019/06/12 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
python递归函数求n的阶乘,优缺点及递归次数设置方式
2020/04/02 Python
Python参数传递对象的引用原理解析
2020/05/22 Python
Python爬虫实例——scrapy框架爬取拉勾网招聘信息
2020/07/14 Python
Python爬虫入门教程01之爬取豆瓣Top电影
2021/01/24 Python
项目建议书怎么写
2014/05/15 职场文书
个人查摆问题整改措施
2014/10/04 职场文书
2014年公务员个人工作总结
2014/11/22 职场文书
单位计划生育责任书
2015/05/09 职场文书
工厂员工辞职信范文
2015/05/12 职场文书
简历中的自我评价怎么写呢?
2019/04/30 职场文书
php中pcntl_fork详解
2021/04/01 PHP
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python