如何使用OpenCV打开第二台相机?我使用的是VS2008,OpenCV 2.4.13,并附带了2种不同的USB摄像头。
我尝试使用下面的代码,但是我收到错误:
无法打开Capture1
代码是:
int _tmain(int argc, _TCHAR* argv[])
{
VideoCapture capture(0);
if( !capture.isOpened() )
std::cout << "Capture0 can't be opened\n" << std::endl;
VideoCapture capture1(1);
if( !capture1.isOpened() )
std::cout << "Capture1 can't be opened\n" << std::endl;
return 0;
}
答案 0 :(得分:0)
我经历过一些旧相机需要几秒钟等待准备捕捉。如果您在“等待准备”时间捕获它将返回空(OpenCV)或黑色图像(DirectShow)。它甚至在单个相机中也会发生。您可以陷入while(img.empty())循环,直到它正确返回有效图像并测量此时间段的长度。
在多摄像机环境中,为了让所有摄像机都可以捕获,你可以抓住然后检索。