python opencv 按一定间隔截取视频帧
前言
关于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()
原文:https://blog.csdn.net/xinxing__8185/article/details/48440133
python opencv 按一定间隔截取视频帧的更多相关文章
- FFmpeg 入门(1):截取视频帧
本文转自:FFmpeg 入门(1):截取视频帧 | www.samirchen.com 背景 在 Mac OS 上如果要运行教程中的相关代码需要先安装 FFmpeg,建议使用 brew 来安装: // ...
- Python+Opencv实现把图片转为视频
1. 安装Opencv包 在Python命令行输入如下命令(如果你使用的Anaconda,直接进入Anaconda Prompt键入命令即可.如果你不知道Anaconda是什么,可以参考王树义老师的文 ...
- 基于 Python + OpenCV 进行人脸识别,视频追踪代码全注释
先来普及一下概念, 计算机对人脸是如何识别的呢? 或者说图像是如何识别的.主要是获取单张图片的特征值记录了特征值以后,如果下一张图片来了以后两张图片特征值进行对比,如果相似度很高那么计算机就认定这两个 ...
- 【小工具系列】Python + OpenCV 图片序列转换成视频
图片序列转换成视频 最近一直在找一个工具,能够将一堆图片转化成视频.网上找了一些小软件,还有 win10 的照片自带的视频制作功能,都不是很满意. 又不想下载那些专业的视频剪辑软件大材小用. 然后找到 ...
- vue 截取视频第一帧
最近自己写项目,在项目中涉及功能点又截取视频帧的点:需求澄清:移动端封面展示,平台上传图片(多张上传)取第一张上传图片为封面图:如上传视频则截取视频第一帧作为封面图: 实现思路:h5 video标签 ...
- python opencv —— io(帧、图像、视频的读取与保存)
0. VideoCapture VideoCapture:构造函数: 常见成员函数: open:打开视频文件,或者捕获视频设备,该函数会首先调用 release() 函数以关闭已打开的文件或设备: P ...
- 【Python | opencv+PIL】常见操作(创建、添加帧、绘图、读取等)的效率对比及其优化
一.背景 本人准备用python做图像和视频编辑的操作,却发现opencv和PIL的效率并不是很理想,并且同样的需求有多种不同的写法并有着不同的效率.见全网并无较完整的效率对比文档,遂决定自己丰衣足食 ...
- Python+moviepy音视频剪辑:视频帧数据的本质、Clip的fl方法进行变换处理的原理以及滚屏案例
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- Python OpenCV图片转视频 工具贴(三)
Python OpenCV图片转视频 粘贴即用,注意使用时最好把自己的文件按照数字顺序命名.按照引导输入操作. # 一键傻瓜式引导图片串成视频 # 注意使用前最好把文件命名为数字顺序格式 import ...
随机推荐
- ZH奶酪:PHP的cURL库
原文链接:http://coolshell.cn/articles/664.html 参考链接:http://www.runoob.com/php/php-ref-curl.html 使用PHP的cU ...
- ldd 以及 ld-linux.so.2
最近跟编译工具干上了,可能是问题积累集中爆发的结果. 今天对 ld-linux.so.x 有很大兴趣,想对它多些了解,遂百度之.发现了指令 ldd. 关于 ldd 其实 ldd 是一个脚本,并不是一个 ...
- PgSql备份pg_dump与还原手记pg_restore
真没有想到,以前一直是PostgreSQL使用者,突然需要库移植又成了头一招了!原来它与mysql命令行操作区别还挺大.不用怕,但绝对要细心,因为数据库操作是网站的核心,一旦出现损坏或丢失,后果就非常 ...
- JAVA识别字符串是数字(英文)还是汉字,web页面进行字符截断的帮助类
public static void main(String[] args) { //长度是2说明是英文/数字/英文状态下的字符,长度为4说明是汉字/中文状态下的字符 String str = &qu ...
- spring boot 配置动态刷新
本文测试使用的spring cloud版本为: Dalston.SR1 很多朋友只知道spring cloud config可以刷新远程git的配置到内存中, 却不知道spring cloud con ...
- Linux系统Ubuntu安装zookeeper
1. 下载zookeeper二进制安装包 下载地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.8/zookeeper-3.4.8.tar.gz ...
- 【laravel5.*】添加ide_helper.php 助手
1.参照文档:https://github.com/barryvdh/laravel-ide-helper#automatic-phpdoc-generation-for-laravel-facade ...
- ios 7新特性
1:解决ios7.0中视图控制器中视图坐标布局问题 if ([[[UIDevice currentDevice] systemVersion] floatValue]>=7.0) { self. ...
- ios中NSObject分类(2)
#import <Foundation/Foundation.h> UIColor * rgb(int r, int g, int b); UIColor * rgbA(int r, in ...
- python中对两个 list 求交集,并集和差集
python中对两个 list 求交集,并集和差集: 1.首先是较为浅白的做法: >>> a=[1,2,3,4,5,6,7,8,9,10] >>> b=[1,2,3 ...