2012-12-22 3 views
0

나는 Learning OpenCV (O'Reilly, Bradsky and Kaehler)을 공부하고 있습니다.분할 된 후 OpenCV 창이 사라집니다.

예제 2-3을 컴파일하고 실행 한 후 cvNamedWindow (비디오를 저장/표시하기로되어 있음)으로 생성 된 창이 1 초 간격으로 나타납니다. 그런 다음 사라집니다. 여기

내 코드입니다 :

#include "cv.h" 
#include "highgui.h" 
int g_slider_position = 0; 
CvCapture* g_capture = NULL; 
void onTrackbarSlide(int pos) { 
    cvSetCaptureProperty(
         g_capture, 
         CV_CAP_PROP_POS_FRAMES, 
         pos 
         ); 
} 
int main(int argc, char** argv) { 
    cvNamedWindow("Example3", CV_WINDOW_AUTOSIZE); 
    g_capture = cvCreateFileCapture(argv[1]); 
    int frames = (int) cvGetCaptureProperty(
              g_capture, 
              CV_CAP_PROP_FRAME_COUNT 
              ); 
    if(frames != 0) { 
     cvCreateTrackbar(
         “Position”, 
         “Example3”, 
         &g_slider_position, 
         frames, 
         onTrackbarSlide 
         ); 
    } 
    IplImage* frame; 

    // While loop (as in Example 2) capture & show video 
    // Release memory and destroy window 

    return(0); 
} 

나는 윈도우 7, OpenCV의 2.4.3 및 VS 2010 사용하고 있습니다; 커맨드 라인에서 코드를 실행하고 있습니다.

무엇 때문에 창을 그렇게 빨리 닫을까요?

+0

Welcome to Stackoverflow! 나는 대화식/프로그래밍 영어 편집을했다. 다행히도 diffs는 당신에게 유용 할 것입니다 ... http://stackoverflow.com/posts/14000577/revisions – HostileFork

답변

0

예제 2와 같이 비디오를 캡처하고 표시하려면 while 루프를 사용해야합니다.이 릴리스 이후에 메모리 및 파괴 창이 열립니다. ;)

+1

HEHEHE 저의 포스트 직후에이 주석을 발견했습니다. 나는이 운동을 마치고 서서히 진행했지만, 나는이 포스트를보고 너무 불쌍해 보인다. 이제는 VB2010에 그것을 붙이거나 loool을 컴파일하는 것보다 더 신중하게 예제 코드를 공부해야한다. 니가 언제나 자기야. –

관련 문제