【发布时间】:2015-06-13 08:25:46
【问题描述】:
刚开始学opencv,现在卡在一个程序里。
我正在尝试运行一个仅显示来自内置网络摄像头的视频的程序。
#include <opencv2\highgui\highgui.hpp>
int main() {
cvNamedWindow("Streaming", CV_WINDOW_AUTOSIZE);
CvCapture* capture = cvCreateCameraCapture(0);
IplImage* frame;
while (1) {
frame = cvQueryFrame(capture);
if (!frame) break;
cvShowImage("Streaming", frame);
char c = cvWaitKey(33);
if (c == 27) break;
}
cvReleaseCapture(&capture);
cvDestroyWindow("Streaming");
return 0;
}
一切正常,没有抛出错误,但是当我运行程序时,正在打开一个名为 Streaming 的新窗口,并且我的网络摄像头灯也打开(意味着网络摄像头已启动),但尽管如此,没有显示任何视频在打开的新窗口中。
对此有什么帮助吗?我只是这方面的初学者。
提前致谢!!
【问题讨论】:
-
在我的机器上,这段代码运行得非常好!你有第二个摄像头来测试代码吗?或者其他使用您的网络摄像头的软件,可能是坏了。
-
您可能对使用C++接口感兴趣,可以在here找到一个例子。
标签: c++ opencv visual-studio-2013 webcam opencv3.0