2010-04-15 3 views
3

VS2008을 설치했으며 opencv 라이브러리에 들어있는 데모 코드 "camshiftdemo and lkdemo"를 실행할 수 있습니다. 이제 OpenCV에 익숙해지기 위해 인터넷에서 간단한 코드를 실행하려고합니다. 난 그냥 웹캠에서 비디오를 표시하려고 나는 다음과 같은 오류를 얻고있다 .. 내가 점점 오전웹캠에서 OpenCV 비디오를 표시합니다

오류는 다음과 같습니다

opencv.exe에서 0x5e7e3d10 (highgui200.dll)에서

처리되지 않은 예외 : 0xC0000005 : 위치 0x719b3856을 읽는 액세스 위반.

내가 실행하려고 코드는이에

#include <cv.h> 
#include <highgui.h> 
void main(int argc,char *argv[]) 
{ 
    int c; 
    IplImage* color_img; 
    CvCapture* cv_cap = cvCaptureFromCAM(-1); // -1 = only one cam or doesn't matter 
    cvNamedWindow("Video",1); // create window 
    for(;;) { 
     color_img = cvQueryFrame(cv_cap); // get frame 
     if(color_img != 0) 
      cvShowImage("Video", color_img); // show frame 
     c = cvWaitKey(10); // wait 10 ms or for key stroke 
     if(c == 27) 
      break; // if ESC, break and quit 
    } 
    /* clean up */ 
    cvReleaseCapture(&cv_cap); 
    cvDestroyWindow("Video"); 
} 

어떤 도움은 매우 극명하게 될 것이다. "cvReleaseCapture (& cv_cap);"

답변

3

다음 코드는 컴파일 OpenCV의 난 당신이를 삭제해야합니다 생각 2.1

#include <cv.h> 
#include <highgui.h> 
void main(int argc,char *argv[]) 
{ 
    int c; 
    IplImage* color_img; 
    CvCapture* cv_cap = cvCaptureFromCAM(0); 
    cvNamedWindow("Video",0); // create window 
    for(;;) { 
     color_img = cvQueryFrame(cv_cap); // get frame 
     if(color_img != 0) 
      cvShowImage("Video", color_img); // show frame 
     c = cvWaitKey(10); // wait 10 ms or for key stroke 
     if(c == 27) 
      break; // if ESC, break and quit 
    } 
    /* clean up */ 
    cvReleaseCapture(&cv_cap); 
    cvDestroyWindow("Video"); 
} 
1

를 사용하여 VS2008에서 나를 위해 작동 문장. 나는 그것을 시도했다. 그것은 일이 될 수 있습니다. 어떻게 든 ESC 버튼을 누르면 캡처가 해제됩니다. 시도해 볼 가치가 있습니다.

관련 문제