博主一开始使用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()

reference:

python opencv 读取视频流不解码_python + opencv: 解决不能读取视频的问题相关推荐

  1. android 读取txt转为utf-8乱码,彻底解决android读取txt乱码终极方案

    解决android读取txt乱码 一,工具类FileUtil /** * 获取文件内容 * * @param filePath * @return */ public static String ge ...

  2. python opencv二值化图像_python opencv,读取彩色图像,提取三通道,图像二值化,提取图像的边缘...

    python opencv,读取彩色图像,提取三通道,图像二值化,提取图像的边缘 python opencv 1,读取图像 2,图像变矩阵 3,图像转灰度图像 4,彩色图像是3D数组 5,灰度图像是2 ...

  3. python加载图片并显示_python OpenCV 读取并显示图像

    读入图像 读入图像使用cv2.imread(). 读取方式: cv2.IMREAD_COLOR:读取一副彩色图像,图像的透明度会被忽略,这是默认参数 cv2.IMREAD_GRAYSCALE:以灰度图 ...

  4. python图片保存为txt文件_python + opencv实现提取png图像的像素信息并存储到txt文件中(附安装指导)...

    相关库安装指导: 这里我们需要 opencv_python,numpy,matplotlib库,另外我用的是python3.6.1版本. 一般库大家都是用pip install命令安装的,不过不知道为 ...

  5. python打出由边框包围的_python opencv 图像边框(填充)添加及图像混合的实现方法(末尾实现类似幻灯片渐变的效果)...

    图像边框的实现 图像边框设计的主要函数 cv.copyMakeBorder()--实现边框填充 主要参数如下: 参数一:源图像--如:读取的img 参数二--参数五分别是:上下左右边的宽度--单位:像 ...

  6. python如何放一张图片上去_python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码...

    python opencv把一张图片嵌入(叠加)到另一张图片上 1.背景: 最近做了个烟火生成系统的界面设计,需要将烟雾图片嵌入到任意一张图片中,因此需要python opencv把一张图片嵌入(叠加 ...

  7. python安装cv2模块的方法_Python opencv模块cv2安装和部分函数使用

    Python opencv模块cv2安装和部分函数使用 前几天做了一下验证码识别,在这里分享一下用到的opencv模块cv2部分函数的使用方法,也是给自己加深一下记忆. 一.cv2模块安装 在这里提醒 ...

  8. hutool 读取扩展名文件_Python OpenCV视觉智能感知第一讲——读取摄像头或视频文件并播放显示...

    Python OpenCV视觉智能感知 第一讲--读取摄像头或视频文件并播放显示 本部分内容将深入.全面.详细地介绍如何使用Anaconda Python和OpenCV读取摄像头或视频文件,并进行播放 ...

  9. python数字图像处理、色彩空间类型转换_Python+OpenCV图像处理—— 色彩空间转换...

    一.色彩空间的转换 代码如下: #色彩空间转换 import cv2 as cv def color_space_demo(img): gray = cv.cvtColor(img, cv.COLOR ...

最新文章

  1. SAP采购订单抬头、行项目屏幕增强的两种方法
  2. labimage 怎样旋转图片_大理石旋转楼梯的测量方法,你学会了吗?
  3. 前端学习(2053)vue之电商管理系统电商系统之使用pm2管理
  4. response.setContentType()的作用及MIME参数详解
  5. java记录pv,计算500万PV/每天的网站
  6. 乘风破浪的迁移学习!四字成语讲明白这个大热研究方向
  7. Unity 检测物体是否在相机视野范围内
  8. Node:使用node-postgre时,使用async、await查询
  9. 有关并联机器人动力学的学习
  10. ictclas java_ICTCLAS50 基于中科院分词作的java 工具,内容详细各个函数都有实现 含有word解析文档 Develop 238万源代码下载- www.pudn.com...
  11. 据说99%的程序猿都不懂得这样表白
  12. python实现主成分估计
  13. go 并发编程 之 数据竞争 data race (三)
  14. Python爬虫实战:爬取淘女郎照片
  15. thinkcmf调用子类
  16. go项目标准化工程结构解析
  17. python一键替换_python 实现批量替换文本中的某部分内容
  18. 在python中使用liblinear
  19. vue全局修改字体样式(修改成苹方)
  20. Android 读取excel(支持 xls)和 xml

热门文章

  1. 采集标签_分流器(二):灵活分流能力,数据采集无忧
  2. 微信小程序弹出框竖向滚动_微信小程序 解决自定义弹出层滑动时下层页面滚动问题...
  3. (CED)列指针与行指针的联系与区别
  4. Hibernate的数据删除,更改
  5. android 常用注解,Android 开发小工具之:注解 Annotation
  6. 0 179 90 150matlab,matlab成功的函数拟合方法_更新中
  7. 二叉树的层序遍历和前中后序遍历代码 迭代/递归
  8. sqli-lab——Writeup21~38(各种过滤绕过WAF和)
  9. java厨房_JAVA环境搭建,厨房安装图文教程!
  10. 提出离职后怎么定last day_不管你因为什么离职,用正规的离职方式是你最正确的选择!...