2

我正在使用以下代码从连接到视频采集卡的摄像头采集视频。

int main() {
    cv::VideoCapture cap(2);    
    if(!cap.isOpened())  
    {
       std::cerr << "ERROR: Could not open camera." << std::endl;
       return -1;
    }
    cv::Mat frame;
    while(1){
       cap >> frame;
       cv::imshow("frame",frame);
       cvWaitKey(10);
    }
}

当我使用我的 USB 网络摄像头时,没有问题,并且代码运行良好。但是,使用视频采集卡,我看不到任何视频流!也没有错误!当我在循环中放置一个断点时,我可以在几次迭代后看到视频。起初我认为这个问题与延迟和增加等待时间有关,cvWaitKey(30)但这也没有帮助。它工作的唯一方法是使用断点!不明白断点有什么特别之处!

请帮忙!我必须使用这个视频采集卡,并想用这段代码制作一个可执行文件,没有断点就无法工作!!!任何评论表示赞赏。

注意:我使用的是 Windows。

4

0 回答 0