opencv播放视频
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了opencv播放视频相关的知识,希望对你有一定的参考价值。
新建Qt的控制台应用
.pro目录设置如下 //qt配置opencv的过程见http://blog.csdn.net/bladeandmaster88/article/details/51591579
#-------------------------------------------------
#
# Project created by QtCreator 2016-06-08T22:26:44
#
#-------------------------------------------------
QT += core
QT -= gui
TARGET = PlayVideo
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += d:\opencv\include\
INCLUDEPATH += d:\opencv\include\opencv\
INCLUDEPATH += d:\opencv\include\opencv2\
LIBS+= d:\OpenCV\lib\libopencv_core249.dll.a\
d:\OpenCV\lib\libopencv_highgui249.dll.a\
//main.cpp
//--------------------------------------【程序说明】-------------------------------------------
// 程序说明:《OpenCV3编程入门》OpenCV2版书本配套示例程序06
// 程序描述:使用VideoCapture类进行视频读取和播放
// 开发测试所用操作系统: Windows 7 64bit
// 开发测试所用IDE版本:Visual Studio 2010
// 开发测试所用OpenCV版本:
2.4.9
// 2014年03月 Created by @浅墨_毛星云
// 2014年11月 Revised by @浅墨_毛星云
//------------------------------------------------------------------------------------------------
//---------------------------------【头文件、命名空间包含部分】----------------------------
// 描述:包含程序所使用的头文件和命名空间
//-------------------------------------------------------------------------------------------------
#include <opencv2\opencv.hpp>
using namespace cv;
#include <QDebug>
int main( )
{
//【1】读入视频
VideoCapture capture("1.avi");
if(!capture.isOpened())
qDebug()<<"faile to open!";
//【2】循环显示每一帧
while(1)
{
Mat frame;//定义一个Mat变量,用于存储每一帧的图像
capture>>frame; //读取当前帧
if(!frame.empty())
imshow("reading video",frame); //显示当前帧
waitKey(30); //延时30ms
}
return 0;
}
注意的几个问题
1.我的代码是《OpenCV3编程入门》里面的
2.在debug目录下需要放置1.avi文件,如图所示
3.刚开始capture老提示打开失败,网上说下载virtualdub和xvid解编码器,但是都不管用,其实只需要下载ffdshow解码器,亲测可用。
ffdshow解码器下载地址为http://sourceforge.net/projects/ffdshow-tryout,安装时,一定要选上“VFW接口”和“VirtualDub”,安装完就行了。
4.imshow("reading video",frame);//书里面的代码第一个参数是中文,我改成了英文,否则,窗口很小,而且显示不出图像。
http://blog.csdn.net/bladeandmaster88/article/details/51628659
以上是关于opencv播放视频的主要内容,如果未能解决你的问题,请参考以下文章