2011-10-25 88 views
0

我使用openCV,并且在运行代码时,我的输出窗口不显示任何内容(黑屏)。我正在使用我的默认摄像头。使用OpenCV从网络摄像头抓取帧的问题

#include "cv.h" 
#include "highgui.h" 

int main() { 
    //simple camera capture program. 

    IplImage* newImg; 
    CvCapture* capture = cvCaptureFromCAM(0); 

    while(1) { 
    newImg = cvQueryFrame(capture); 
    cvShowImage("src", newImg); 

    if (cvWaitKey(15) == 27) { 
     break; 
    } 
    } 
    return 0; 
} 
+0

您能否提供操作系统和相机供应商信息等详细信息?它会帮助你获得更有用的答案。 – mevatron

+0

你是否在Ubuntu 11.04或11.10上偶然? – xamox

+0

@mevatron我使用Windows Vista和netbeans.i一起认为我的摄像头不支持。我在我的桌面执行程序,它工作正常。我想以某种方式执行它在我的笔记本电脑上。我的笔记本电脑有一个NVIDIA显卡。我正在尝试学习cuda以进行图像处理。我读了你需要使用cuda以及opencv的地方。 –

回答

0

您的代码正常工作。

由于OpenCV仅支持少数摄像头,因此该问题很可能与您的机器相关。您可能想使用其他库从相机抓取帧 - (例如V4L?)。

0

您错过了创建用于显示图片的窗口。在此之前,请添加:

cvNamedWindow("src");