OpenCV 2.2网络摄像头无法显示图像

时间:2012-08-12 07:07:07

标签: visual-c++ image-processing opencv webcam

我在Windows 7 64位上的Visual C ++ 2010 Express上使用OpenCV 2.2。每当我尝试运行一些简单的程序来访问和显示网络摄像头的图像时,我会得到一个黑色的输出窗口,而不是实际的网络摄像头。 OpenCV检测到网络摄像头,不报告任何错误或警告,但每个帧都是黑屏图像。

这是我一直在尝试的代码:

#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
    Mat img;
    VideoCapture cap(0);
    while (true)
    {
        cap >> img;
        Mat edges;
        cvtColor(img, edges, CV_BGR2GRAY);
        Canny(edges, edges, 30, 60);
        imshow("window label", img);
        waitKey(100);
    }
    return 0;
}

关于什么似乎是问题的任何想法?在OpenCV 2.4.2上一切正常,但我不得不切换,因为我无法让MSER正常工作。

1 个答案:

答案 0 :(得分:1)

尝试使用VideoCapture cap(-1)

这将自动选择网络摄像头设备。它可能会或可能不会解决问题,但值得一试。