如何使用 OpenCV 从我的磁盘播放视频文件。? [关闭]
Posted
技术标签:
【中文标题】如何使用 OpenCV 从我的磁盘播放视频文件。? [关闭]【英文标题】:How to play a video file from my disk using OpenCV.? [closed] 【发布时间】:2011-08-08 15:22:46 【问题描述】:请帮助我完成上述任务。我是 openCV 的新手。我的系统中安装了 OpenCV 2.2,并使用 VC++ 2010 Express 作为 IDE。我的笔记本电脑没有内置网络摄像头... 只是我学会了如何加载图像。我非常渴望从我的磁盘加载一个视频文件(最好是 mp4,flv 格式)并希望使用 openCV 播放它。
【问题讨论】:
如果您可以编辑此问题以表明您的任何尝试,请随时标记它以供版主注意以进行审核。 【参考方案1】:使用OpenCV的C接口(在Windows机器上对我来说效果更好),加载视频文件的函数是cvCaptureFromAVI()
。之后,您需要使用传统循环通过cvQueryFrame()
检索帧,然后通过cvShowImage()
将它们显示在使用cvNamedWindow()
创建的窗口上。
CvCapture *capture = cvCaptureFromAVI("video.avi");
if(!capture)
printf("!!! cvCaptureFromAVI failed (file not found?)\n");
return -1;
int fps = (int) cvGetCaptureProperty(capture, CV_CAP_PROP_FPS);
printf("* FPS: %d\n", fps);
cvNamedWindow("display_video", CV_WINDOW_AUTOSIZE);
IplImage* frame = NULL;
char key = 0;
while (key != 'q')
frame = cvQueryFrame(capture);
if (!frame)
printf("!!! cvQueryFrame failed: no frame\n");
break;
cvShowImage("display_video", frame);
key = cvWaitKey(1000 / fps);
cvReleaseCapture(&capture);
cvDestroyWindow("display_video");
This blog post 为您尝试完成的任务带来了一些额外信息。
【讨论】:
非常感谢 KarlPhilip,,,, 上面的代码运行良好....我是 openCV 新手,但想了解更多。请指导我应该从哪里开始??我可以得到一些帮助文件,因为我们使用 get 用于 MATLAB.. 再次感谢 ... @mahesh ***.com/questions/5679909/looking-for-opencv-tutorial【参考方案2】:(嗯……您似乎并没有尝试自己做某事,但无论如何)
来自docs:
#include "opencv2/opencv.hpp"
using namespace cv;
int main(int, char**)
VideoCapture cap(0); // open the default camera
if(!cap.isOpened()) // check if we succeeded
return -1;
//Mat edges;
namedWindow("frames",1);
for(;;)
Mat frame;
cap >> frame; // get a new frame from camera
//ignore below sample, since you only want to play
//cvtColor(frame, edges, CV_BGR2GRAY);
//GaussianBlur(edges, edges, Size(7,7), 1.5, 1.5);
//Canny(edges, edges, 0, 30, 3);
//imshow("edges", edges);
imshow("frames", frame);
if(waitKey(30) >= 0) break;
// the camera will be deinitialized automatically in VideoCapture destructor
return 0;
这是 old way 使用 opencv 1.x api。
【讨论】:
OP 想要从视频文件而不是相机中加载帧以上是关于如何使用 OpenCV 从我的磁盘播放视频文件。? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章