博主一开始使用python2.7和Opencv2.4.10来获取摄像头图像,程序如下:

cap = cv2.VideoCapture(0)
ret, frame = cap.read()

使用这个程序能够打开摄像头并获取图像,一切正常。

接着想使用OpenCv播放视频,按照官方教程只要将VideoCapture的变量0修改为视频文件名即可,程序如下:

cap = cv2.VideoCapture("fliename")
ret, frame = cap.read()

但是始终无法获取视频图像,貌似这个问题很普遍,以至在官方教程的程序下面都提示说请确认ffmpeg或者gstreamer已经正确安装

解决办法:

有两种办法:
       两种方法都需要完成的共同一步是:
       找到opencv安装路径下的\sources\3rdparty\ffmpeg文件夹,如D:\soft setup pack\Python_setpack\opencv\sources\3rdparty\ffmpeg。将文件夹中的opencv_ffmpeg.dll文件名修改为opencv_ffmpeg2410.dll,如果你安装的是opencv2.4.9,那就修改成opencv_ffmpeg249.dll。其他版本依次类推。如果你是64位的系统,那就修改opencv_ffmpeg_64.dll文件名为opencv_ffmpeg2410_64.dll。
       方法1:将opencv_ffmpeg2410.dll复制到E:\programming soft\python2.7文件夹下即可,其中E:\programming
soft\为python安装路径。
       方法2:在windows的环境变量中添加上D:\soft setup pack\Python_setpack\opencv\sources\3rdparty\ffmpeg,其中D:\soft
setup pack\Python_setpack\为博主电脑上OpenCv的安装路径。具体过程:
       点击电脑开始栏-->在命令行输入path,得到如下图所示界面,找到path一栏,输入路径。
              

例程:

       最后贴出一段读取播放视频的完整例程,程序中将彩色图像转化为了灰度图像:
import numpy as np
import cv2 cap = cv2.VideoCapture('Person.wmv') while(cap.isOpened()): ret, frame = cap.read()
if frame is None:
break
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break cap.release()
cv2.destroyAllWindows()


(转载请注明作者和出处:http://blog.csdn.net/heyijia0327 未经允许请勿用于商业用途)

reference:

python + opencv: 解决不能读取视频的问题的更多相关文章

  1. Linux下安装opencv with-ffmpeg解决无法读取视频的问题

    1. 编译安装ffmpeg 下载源码,执行 ./configure --disable-yasm --enbale-shared --prefix=/usr/local/ffmpeg 即可. 2. 下 ...

  2. 【Python | opencv+PIL】常见操作(创建、添加帧、绘图、读取等)的效率对比及其优化

    一.背景 本人准备用python做图像和视频编辑的操作,却发现opencv和PIL的效率并不是很理想,并且同样的需求有多种不同的写法并有着不同的效率.见全网并无较完整的效率对比文档,遂决定自己丰衣足食 ...

  3. day7 opencv+python 读取视频,没有东西

    1.读取视频man.avi, 报错. 我的视频和文件在同一目录下. #coding=utf-8 import numpy as np import cv2 cap = cv2.VideoCapture ...

  4. python+opencv读取视频,调用摄像头

    引用 import cv2 import numpy 创建摄像头对象 cap = cv2.VideoCapture("videoTest/test1.mp4") #参数为视频文件目 ...

  5. python opencv 按一定间隔截取视频帧

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

  6. Opencv读取视频

    CvCapture 是一个结构体,用来保存图像捕获所需要的信息. opencv提供两种方式从外部捕获图像 一种是从摄像头中, 一种是通过解码视频得到图像. 两种方式都必须从第一帧开始一帧一帧的按顺序获 ...

  7. OpenCV 读取视频 多种方式

    OpenCV中常见的视频方式是while循环读取,可是,当遇到嵌套循环呢 1.常见的while循环 ,没有嵌套循环 cv::VideoCapture capture("d:/test/dem ...

  8. 基于Python & Opencv 图像-视频-处理算法

    Alg1:图像数据格式之间相互转换.png to .jpg(其他的请举一反三) import cv2 import glob def png2jpg(): images = glob.glob('*. ...

  9. Python+OpenCV图像处理(一)——读取显示一张图片

    先在此处先声明,后面学习python+opencv图像处理时均参考这位博主的博文https://blog.csdn.net/u011321546/article/category/7495016/2? ...

随机推荐

  1. TCP/IP协议栈与数据报封装

    一.ISO/OSI参考模型 OSI(open system interconnection)开放系统互联模型是由ISO(International Organization for Standardi ...

  2. java的jdbc简单封装

    在学了jdbc一段时间后感觉自己写一个简单的封装来试试,于是參考的一些资料就写了一下不是多好,毕竟刚学也不太久 首先写配置文件:直接在src下建立一个db.properties文件然后写上内容 < ...

  3. jquery autoComplete 插件

    github: https://github.com/Pixabay/jQuery-autoComplete/blob/master/demo.html 官网demo https://goodies. ...

  4. k8s-configmap

    一.目的 把应用的代码和配置分开,通过配置configmap管理pod,一种统一的集群配置管理方案.ConfigMap API资源提供了将配置数据注入容器的方式,同时保持容器是不知道Kubernete ...

  5. 算法导论--装备线调度(升序&amp;&amp;降序输出)

    题意就先不用讲了吧,感觉自己还没有掌握核心的东西. //心得 //如何保持路径,递归的实现 #include<iostream> #include<cstdio> #inclu ...

  6. UIActivityIndicatorView的详细使用

    转自:http://www.cnblogs.com/top5/archive/2012/05/17/2506623.html UIActivityIndicatorView实例提供轻型视图,这些视图显 ...

  7. ASP.NET MVC 入门9、Action Filter 与 内置的Filter实现(介绍)

    原帖地址:http://www.cnblogs.com/QLeelulu/archive/2008/10/09/1307660.html 有时候你想在调用action方法之前或者action方法之后处 ...

  8. C++ Dll 编写入门

    一.前言 自从微软推出16位的Windows操作系统起,此后每种版本的Windows操作系统都非常依赖于动态链接库(DLL)中的函数和数据,实际上 Windows操作系统中几乎所有的内容都由DLL以一 ...

  9. 再访贺利坚(一):IT毕业生去培训机构,这件事很正常(转载)

    转载自: 再访贺利坚(一):IT毕业生去培训机构,这件事很正常 导语:与烟台大学计算机学院贺利坚副教授相识,还是在2012年年底,那个时候我在为社区之星专访栏目寻找合适的采访人.在社区运营的推荐下,我 ...

  10. tomcat 启动 报错Neither the JAVA_HOME nor the JRE_HOME environment variable is definedtemp

    catalina.sh 加入环境 export JAVA_HOME=/usr/local/jdk1.7.0_79 export CATALINA_HOME=/home/sa/webserver/tom ...