학부생 프로젝트를 하는데, 캠 두개가 연결해서 사용하기가 어렵다고 한다.

이유인 즉, 카메라 선택시 다이얼로그 창이 보이면서 캠을 선택해야했다.

우리는 자동으로 시작해야 하기 때문에 이 창이 필요없었다.

그래서 구글 신을 검색한 결과 쓸만한 소스를 구하여 돌려 보니 두개가 작동하였다.

조금만 수정하면 쉽게 사용할 수 있을 것이다.. 고생해랏!! 현석아!!

======================================================
출처 : http://groups.google.co.uk/group/OpenCV/msg/0de2e5945ce5ba65

#include "stdafx.h"
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include "cvcam.h"

void callbackStereo(IplImage* image1,IplImage* image2)
{
        // Do your Image Processing Code here.

}

int _tmain(int argc, _TCHAR* argv[])
{
        int cvCamOne,cvCamTwo;
        int height=240;
        int width=320;
        cvNamedWindow("Camera 1",1);
        cvNamedWindow("Camera 2",1);
        HWND hwnd1 = (HWND)cvGetWindowHandle("Camera 1");
        HWND hwnd2 = (HWND)cvGetWindowHandle("Camera 2");
        int numCams = cvcamGetCamerasCount();

        cvcamSetProperty(0,CVCAM_PROP_ENABLE,&cvCamOne);
        cvcamSetProperty(0,CVCAM_PROP_RENDER,&cvCamOne);
        cvcamSetProperty(0,CVCAM_PROP_WINDOW,&hwnd1);
        cvcamSetProperty(0,CVCAM_STEREO_CALLBACK,callbackStereo);
        cvcamSetProperty(0,CVCAM_RNDWIDTH,&width);
        cvcamSetProperty(0,CVCAM_RNDHEIGHT,&height);

        cvcamSetProperty(1,CVCAM_PROP_ENABLE,&cvCamTwo);
        cvcamSetProperty(1,CVCAM_PROP_RENDER,&cvCamTwo);
        cvcamSetProperty(1,CVCAM_PROP_WINDOW,&hwnd2);
        cvcamSetProperty(1,CVCAM_STEREO_CALLBACK,callbackStereo);
        cvcamSetProperty(1,CVCAM_RNDWIDTH,&width);
        cvcamSetProperty(1,CVCAM_RNDHEIGHT,&height);

        cvcamInit();
        cvcamStart();

        cvWaitKey(0);
        cvcamStop();
        cvcamExit();
        return 0;

}
Posted by 노을지기