我怎样才能同时打开4个摄像头

时间:2014-03-04 08:47:03

标签: opencv

我可以在opencv中打开多少相机? 我可以打开2个,但我需要打开4个摄像头,我必须关闭2个,每次打开另外2个。 问题是在捕获的图像中我有一个img与cols:320和行:0

            VideoCapture cam0(0);
            Sleep(1000);
            VideoCapture cam1(1);
            Sleep(1000);
            VideoCapture cam2(2);
            Sleep(1000);
            VideoCapture cam3(3);
            Sleep(1000);

并在循环中检索图像

                cam0.retrieve(src,0);
                if(src.empty())
                    cout<<"error in rec data..."<<endl;
                imshow("Cam0",src);



                cam1.retrieve(src,0);
                if(src.empty())
                    cout<<"error in rec data..."<<endl;
                imshow("Cam1",src);


                cam2.retrieve(src,0);
                if(src.empty())
                    cout<<"error in rec data..."<<endl;
                imshow("Cam2",src);



                cam3.retrieve(src,0);
                if(src.empty())
                    cout<<"error in rec data..."<<endl;
                imshow("Cam3",src);

它适用于2个第一个摄像头但是2秒钟我有一个错误“坏标志”

感谢

1 个答案:

答案 0 :(得分:0)

 VideoCapture cap0(0);
 VideoCapture cap1(1);
...

// later:
cap0.read(frame0);
cap1.read(frame1);
...

但现实又糟透了。单个集线器的USB带宽足以容纳1个凸轮,如果将2个或更多插入1个总线,则会使其饱和。你仍然可以减少帧大小,

cap0.set(CV_CAP_PROP_FRAME_WIDTH,320);
cap0.set(CV_CAP_PROP_FRAME_HEIGHT,240);

并祈祷,你有两个独立的枢纽(尝试前/后)