Linux OpenCV读取视频失败,cvCreateFileCapture失败的解决
背景:
近期想在嵌入式平台上开发QT+Opencv,无料PC机上编写的OpenCV程序老是打不开视频。
開始提示:OpenCV Error: Bad argument (Array should be CvMat or IplImage) in cvGetSize
可是没实用错。考虑到可能没有打开视频,以作为cvGetSize的參数。
曾经程序执行没有问题。近期电脑进行了一些FFMPEG/ZLIB等的交叉编译。就不能执行了。
解决方法:
网上搜索,发现是由于ffmpeg没有编译到opencv里。于是參照http://blog.csdn.net/tinyway/article/details/9088985进行又一次编译,攻克了问题。
总结例如以下:
PC:Ubuntu12.04LTS OpenCV2.4.3
OpenCV成功编译安装。进而编译算法,也成功编译生成二进制文件,可是执行时候cvCreateFileCapture无法读入视频。终于原因在于ffmpeg没有配置好。删除OpenCV和ffmpeg又一次编译ffmpeg和OpenCV后。视频读入成功。
ffmpeg安装
源代码下载 : svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg(假设没有安装svn。依据提示安装)
安 装: yasm:sudo apt-get install yasm
文件配置 : ./configure --enable-shared --enable-gpl --enable-swscale
编译安装 : make ;sudo make install
然后进行OpenCV安装,安装与使用具体过程參见:http://blog.csdn.net/guo8113/article/details/29211041
以下也给出了简要过程:
OpenCV2.4.4的安装
tar -jxvf OpenCV-2.4.3.tar.bz2
cd OpenCV-2.4.3/
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..
(这一步,就在这一步之后,会显示是否成功配置ffmpeg,若出现例如以下,则表示配置成功,相反。之前的失败是由于配置都为0(或者false),详细例如以下:
FFMPEG:1
codec:
1
format: 1
util: 1
swscale:1
gentoo-style: 1
)
$make
$sudo make install
$sudo ldconfig
Linux OpenCV读取视频失败,cvCreateFileCapture失败的解决的更多相关文章
- opencv 读取视频内容写入图片帧
现在主要把自己平时用到的opencv功能记录到博客,一方面方便自己有时间来回顾,另一方便提供给大家一个参考. opencv 读取视频内容,把视频帧每一帧写成图片,存入电脑中.这个步骤是许多数据处理的基 ...
- 【计算机视觉】OpenCV读取视频获取时间戳等信息(PS:经测试并不是时间戳,与FFMPEG时间戳不一样)
OpenCV中通过VideoCaptrue类对视频进行读取操作以及调用摄像头,下面是该类的API. 1.VideoCapture类的构造函数: C++: VideoCapture::VideoCapt ...
- Opencv读取视频
CvCapture 是一个结构体,用来保存图像捕获所需要的信息. opencv提供两种方式从外部捕获图像 一种是从摄像头中, 一种是通过解码视频得到图像. 两种方式都必须从第一帧开始一帧一帧的按顺序获 ...
- Opencv读取视频一闪而过情况分析
在参加一个软件比赛需要用opencv对视频的处理,也碰到了一些问题. 最常见的就是视频一闪而过了,在网上查了好久都没解决, 最后重装在配置环境变量时发现的. 现在我来终结一下估计是比较全的了. 先说明 ...
- C/C++ OpenCV读取视频与调用摄像头
原文:http://blog.csdn.net/qq78442761/article/details/54173104 OpenCV通过VideoCapture类,来对视频进行读取,调用摄像头 读取视 ...
- python+opencv读取视频,调用摄像头
引用 import cv2 import numpy 创建摄像头对象 cap = cv2.VideoCapture("videoTest/test1.mp4") #参数为视频文件目 ...
- OpenCV 读取视频 多种方式
OpenCV中常见的视频方式是while循环读取,可是,当遇到嵌套循环呢 1.常见的while循环 ,没有嵌套循环 cv::VideoCapture capture("d:/test/dem ...
- C++ 调用 opencv 读取视频文件列表并处理
//g++ trans_video.cpp -o trans_video `pkg-config opencv --libs --cflags` -L/usr/lib/x86_64-linux-gnu ...
- OpenCV3读取视频或摄像头
我们可以利用OpenCV读取视频文件或者摄像头的数据,将其保存为图像,以用于后期处理.下面的实例代码展示了简单的读取和显示操作: // This is a demo introduces you to ...
随机推荐
- Python 2.7 学习笔记 中文处理
首先我们在编写python代码文件时,文件本身会采用一种编码格式,如 utf-8 或 gbk 这时我们需要在python文件的开头设置文件的编码格式,以告诉编译器. 如果文件的编码格式是 utf-8, ...
- Mylyn
Mylyn(旧称Mylar)是eclipse的一个插件,用于将任务管理和上下文管理无缝集成到Eclipse中.1. 安装 下载相应的Mylyn zip包,解压缩开就是两个文件夹:features和pl ...
- 爬虫框架Scrapy
前面十章爬虫笔记陆陆续续记录了一些简单的Python爬虫知识, 用来解决简单的贴吧下载,绩点运算自然不在话下. 不过要想批量下载大量的内容,比如知乎的所有的问答,那便显得游刃不有余了点. 于是乎,爬虫 ...
- map,area标签
map,area标签 <img src ="planets.gif" alt="Planets" usemap ="#planetmap&quo ...
- AS3清空数组的四种方法
第一种最简单的方法是: var arr:Array = ["a", "b", "c", "d", "e&quo ...
- UITabbar的常用属性
// //设置tabbar的背景颜色 // [self.tabBar setBarTintColor:[UIColor redColor]]; // //设置选中时图片和文字的颜色 // [self. ...
- Python中NumPy基础使用
Python发展至今,已经有越来越多的人使用python进行科学技术,NumPY是python中的一款高性能科学计算和数据分析的基础包. ndarray ndarray(以下简称数组)是numpy的数 ...
- C#_会员管理系统:开发四(日志查看)
新建一个日志查看窗体: 日志需要的登录时间和登录状态信息由用户刚登录程序时就提供,所以在登录窗体(VIPLogin.cs)中添加代码: //定义一个全局变量 Uid; //用于获取登录成功后的用户名 ...
- oracle常用函数以及调用入参为record的存储过程的方法,
转自:http://www.cnblogs.com/zhangronghua/archive/2007/08/20/862812.html SQL中的单记录函数1.ASCII返回与指定的字符对应的十进 ...
- PHPer的等级划分
PHPer的等级划分 前一段时间刚刚完成PHP的培训,然后想知道自己目前的水平(或者说等级),并且应该在哪些方面进行提高,所以在网上查了一下相关介绍.其中有一篇介绍讲的挺清楚的,至少目前的我还是很认同 ...