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 相关文章推荐
利用Python的Django框架中的ORM建立查询API
Apr 20 Python
详解python开发环境搭建
Dec 16 Python
python requests 使用快速入门
Aug 31 Python
python基础_文件操作实现全文或单行替换的方法
Sep 04 Python
把csv文件转化为数组及数组的切片方法
Jul 04 Python
Python实现微信自动好友验证,自动回复,发送群聊链接方法
Feb 21 Python
Python变量访问权限控制详解
Jun 29 Python
Django后端接收嵌套Json数据及解析详解
Jul 17 Python
pandas中遍历dataframe的每一个元素的实现
Oct 23 Python
python实现局域网内实时通信代码
Dec 22 Python
通过Django Admin+HttpRunner1.5.6实现简易接口测试平台
Nov 11 Python
python缺失值填充方法示例代码
Dec 24 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
PHP5.3的垃圾回收机制(动态存储分配方案)深入理解
2012/12/10 PHP
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
2015/09/22 PHP
类似框架的js代码
2006/11/09 Javascript
懒就要懒到底——鼠标自动点击(含时间判断)
2007/02/20 Javascript
ie 调试javascript的工具
2009/04/29 Javascript
js获取IFRAME当前的URL的方法
2013/11/13 Javascript
Node.js模块加载详解
2014/08/16 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
JS常用知识点整理
2017/01/21 Javascript
JS检测数组类型的方法小结
2017/03/14 Javascript
Bootstrap Table 删除和批量删除
2017/09/22 Javascript
Vue2 配置 Axios api 接口调用文件的方法
2017/11/13 Javascript
VueJs使用Amaze ui调整列表和内容页面
2017/11/30 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
Nodejs 发布自己的npm包并制作成命令行工具的实例讲解
2018/05/15 NodeJs
基于jquery ajax的多文件上传进度条过程解析
2019/09/11 jQuery
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
详解React路由传参方法汇总记录
2020/11/29 Javascript
Python计算一个文件里字数的方法
2015/06/15 Python
Python下的Softmax回归函数的实现方法(推荐)
2017/01/26 Python
Python的log日志功能及设置方法
2019/07/11 Python
pytorch如何冻结某层参数的实现
2020/01/10 Python
python使用python-pptx删除ppt某页实例
2020/02/14 Python
Python爬虫回测股票的实例讲解
2021/01/22 Python
html5 postMessage前端跨域并前端监听的方法示例
2018/11/01 HTML / CSS
优质美利奴羊毛袜,不只是徒步旅行:Darn Tough Vermont
2018/11/05 全球购物
Sandro法国官网:法国成衣品牌
2019/08/28 全球购物
软件缺陷的分类都有哪些
2014/08/22 面试题
建筑学推荐信
2013/11/03 职场文书
经管应届生求职信
2013/11/17 职场文书
战友聚会邀请函
2014/01/18 职场文书
大学同学十年聚会感言
2014/02/21 职场文书
年终工作总结范文2014
2014/11/27 职场文书
公司聚餐通知
2015/04/22 职场文书
在python中实现导入一个需要传参的模块
2021/05/12 Python
SQL实现LeetCode(197.上升温度)
2021/08/07 MySQL