Opecv + Anaconda 读取视频(windows)

前言:之前一直用的是python(x,y),但是发现在使用opencv时容易出现一些pythonw.exe停止工作的问题。后来发现自己的操作系统是64位的,却安装了32位的python(x,y),虽然在此之前已经安装好theano、opencv等封装好的库,但是花了一下午时间没有解决之前出现的问题,治标不治本。因此,果断放弃治疗,选择Opecv + Anaconda 。Anaconda Python 是 Python 科学技术包的合集,功能和 Python(x,y) 类似。它是新起之秀,已更新多次了。包管理使用 conda,GUI基于 PySide,所有的包基本上都是最新版,没有PyQtwxpython等,容量适中,但该有的科学计算包都有:numpy,sicpy,matplotlib,spyder等,是完全免费的企业级的Python发行大规模数据处理、预测分析和科学计算工具。

废话不多说啦~直接上步骤吧

1、下载安装 Anaconda 对应版本。官网链接https://www.continuum.io/downloads

2、网管下载 opencv 对应版本(注:python2.7版本的只能对用opencv2.4版本才可用)。官网链接:http://opencv.org/,安装好后做如下两个操作

第一步:将opencv安装目录D:\Program Files\opencv\build\python\2.7\x64下的cv2.pyd复制到Anaconda安装目录C:\Anaconda2\Lib\site-packages下。

第二步:将D:\Program Files\opencv\sources\3rdparty\ffmpeg下的opencv_ffmpeg_64.dll复制到C:\Anaconda2下,并改名为opencv_ffmpeg2413_64.dll,其中2413指代的是opencv的版本号,我下载的为2.4.13版本。

读取视频代码如下,其中,第二步主要是避免了读取视频失败的问题:

 1 # -*- coding: utf-8 -*-
 2 import cv2
 3
 4 cap = cv2.VideoCapture(‘01.avi‘)
 5
 6 while (cap.isOpened()):
 7     ret,frame = cap.read()
 8     cv2.imshow(‘video test‘,frame)
 9     key = cv2.waitKey(10)
10     if key == 27:
11         break
12     if key == ord(‘ ‘):
13         cv2.imwrite(‘vid_result.jpg‘,frame)

cv2.imshow(‘video test‘,frame)
cv2.error: ..\..\..\..\opencv\modules\highgui\src\window.cpp:261: error: (-215) size.width>0 && size.height>0 in function cv::imshow

时间: 2024-08-24 00:00:13

Opecv + Anaconda 读取视频(windows)的相关文章

OpenCV读取视频和图像序列

在使用OpenCV时候,我们首先会做的是获取待处理的图像,这个图像可能来源于已存储的视频文件.也可能来源于实时的摄像头画面.或是某个文件夹下的一系列图片.或许你会觉得,这都是小菜一碟,因为我们学习OpenCV的第一步一般是学习如何加载和显示一幅图片.对于打开摄像头或是读取视频的程序,网上也是一抓一大把.如果你是初学者,不妨看一下我下面的总结,或许有你不曾注意到的. 对于图像或视频的加载.显示.窗口设置.工具条.图像合并为视频.视频分割成图像.打开视频或摄像头等操作的定义是放在OpenCV的hig

Linux OpenCV读取视频失败,cvCreateFileCapture失败的解决

背景: 最近想在嵌入式平台上开发QT+Opencv,无料PC机上编写的OpenCV程序老是打不开视频. 开始提示:OpenCV Error: Bad argument (Array should be CvMat or IplImage) in cvGetSize 但是没有用错.考虑到可能没有打开视频,以作为cvGetSize的参数. 以前程序运行没有问题,最近电脑进行了一些FFMPEG/ZLIB等的交叉编译,就不能运行了. 解决方法: 网上搜索,发现是因为ffmpeg没有编译到opencv里.

python_Opencv_读取视频_摄像头

目标 • 学会读取视频文件,显示视频,保存视频文件 • 学会从摄像头获取并显示视频 • 你将会学习到这些函数:cv2.VideoCapture(),cv2.VideoWrite()用摄像头捕获视频 使用摄像头来捕获一段视频,并把它转换成灰度视频显示出来. 首先应该创建一个VideoCapture 对象,参数可以是设备的索引号,或者是一个视频文件. 设备索引号就是在指定要使用的摄像头.一般的笔记本电脑都有内置摄像头.所以参数就是0.你可以通过设置成1或者其他的来选择别的摄像头. 之后,你就可以一帧

Jquery Mobile实例--利用优酷JSON接口读取视频数据

本文将介绍,如何利用JqueryMobile调用优酷API JSON接口显示视频数据. (1)注册用户接口. 首页,到 http://open.youku.com 注册一个账户,并通过验证.然后找到API接口 (http://open.youku.com/docs/tech_doc.html) 可以看到优酷提供不少API,本文将演示“通过视频关键词”接口. 点击进去后,会发现client_id和keyword是必填的,因此,未来构造的URL应该类似 https://openapi.youku.c

OpenCV3读取视频或摄像头

我们可以利用OpenCV读取视频文件或者摄像头的数据,将其保存为图像,以用于后期处理.下面的实例代码展示了简单的读取和显示操作: 1 // This is a demo introduces you to reading a video and camera 2 #include <iostream> 3 #include <string> 4 #include <sstream> 5 using namespace std; 6 7 // OpenCV include

opencv学习之路(2)、读取视频,读取摄像头

一.介绍 视频读取本质上就是读取图像,因为视频是由一帧一帧图像组成的.1秒24帧基本就能流畅的读取视频了. ①读取视频有两种方法: A. VideoCapture cap; cap.open("1.avi"); B. VideoCapture cap("1.avi"); ②循环显示每一帧: while(1) { Mat frame; //定义Mat变量,用来存储每一帧 cap>>frame; //读取当前帧方法一 //cap.read(frame); /

也谈matlab中读取视频的一个重要函数mmreader

也谈matlab中读取视频的一个重要函数mmreader 在matlab中输入help mmreader来查阅一下该函数,有如下信息: MMREADER Create a multimedia reader object.     OBJ = MMREADER(FILENAME) constructs a multimedia reader object, OBJ, that    can read in video data from a multimedia file.  FILENAME

在opencv下读取视频保存为图片

VideoCapture capture; capture.open("D:\\car.avi");//读取视频 对于视频下一帧的读取: capture>>frameImg;//读取视频流下一帧控制,字符重载 对于视频的图片保存 std::stringstream ss;//存储图片路径保存信息 ss<<"D:/output/image_"<<setfill('0')<<setw(3)<<(nCount-1

FFMPEG系列课程(二)读取视频帧

再来介绍下如何读取视频帧,打开视频参考前面的文章,首先需要创建一个帧的存放对象 AVPacket pkt; memset(&pkt, 0, sizeof(AVPacket)); 再通过 int err = av_read_frame(ic, &pkt); 读取帧数据,其中ic是之前打开的视频流句柄.读取视频帧后要注意一点av_read_frame会自动给视频帧分配空间,返回值0表示成功. 可以通过 av_packet_unref(&pkt);删除packet的控制,注意这里删除的不