[問題] OpenCV開兩個攝影機

作者: s20394 (HAPPY123)   2014-07-16 21:12:07
開發平台(Platform): VC++
額外使用到的函數庫(Library Used): OpenCV
問題(Question):想使用OpenCV開啟兩個網路攝影機,但是卻開不起來,目前最多只能開啟一個。
程式碼(Code):
#include <cv.h>
#include <highgui.h>
#include <stdio.h>
#include <stdlib.h>
#include<iostream>
using namespace std;
using namespace cv;
void onMouse(int Event,int
x,int y,int
flags,void* param);
int main()
{
VideoCapture cap1(0);
VideoCapture cap2(1);
if(!cap1.isOpened()
&& !cap2.isOpened())
{
return 1;
printf("未搜尋到攝影機\n");
}
double
rate=cap1.get(CV_CAP_PROP_FPS);
bool stop(false);
Mat frame1;
Mat frame2;//(480,640,CV_8UC3,Scalar(0,0,0));
namedWindow("camera1");
namedWindow("camera2");
printf("P鍵:拍照儲存\tn鍵:關閉視窗
\n");
//int delay=1000/rate;
while(!stop)
{
if(!cap1.read(frame1)
&&
!cap2.read(frame2))
{
break;
}
imshow("camera1",frame1);
imshow("camera2",frame2);
if
(waitKey(33)=='p')
{
Mat photo1,photo2;
imwrite("photo1.jpg",frame2);
imwrite("photo2.jpg",frame1);
namedWindow("photo1");
namedWindow("photo2");
//waitKey(100);
photo1=imread("photo1.jpg");
photo2=imread("photo2.jpg");
imshow("photo1",photo1);
imshow("photo2",photo2);
cvSetMouseCallback("photo",onMouse,NULL);
}
if(waitKey(33)=='n')
{
stop=true;
}
}
}
void onMouse(int Event,int
x,int y,int
flags,void* param)
{
if(Event==CV_EVENT_LBUTTONDOWN)
{
printf("(%d,%d)\n",x,y);
}
}
作者: uranusjr (←這人是超級笨蛋)   2014-07-16 21:25:00
作者: s20394 (HAPPY123)   2014-07-16 21:37:00
為什麼不能使用VideoCapture來開呢?已解決 我少了一段程式碼

Links booklink

Contact Us: admin [ a t ] ucptt.com