5 //this is a sample for foreground detection functions
6 int main(int argc, char** argv)
8 IplImage* tmp_frame = NULL;
13 printf("please specify video file name \n");
17 cap = cvCaptureFromFile(argv[1]);
18 tmp_frame = cvQueryFrame(cap);
21 printf("bad video \n");
25 cvNamedWindow("BG", 1);
26 cvNamedWindow("FG", 1);
29 CvBGStatModel* bg_model = cvCreateFGDStatModel( tmp_frame );
31 for( int fr = 1;tmp_frame; tmp_frame = cvQueryFrame(cap), fr++ )
33 double t = (double)cvGetTickCount();
34 cvUpdateBGStatModel( tmp_frame, bg_model );
35 t = (double)cvGetTickCount() - t;
36 printf( "%.1f\n", t/(cvGetTickFrequency()*1000.) );
37 cvShowImage("BG", bg_model->background);
38 cvShowImage("FG", bg_model->foreground);
39 char k = cvWaitKey(5);
41 //printf("frame# %d \r", fr);
45 cvReleaseBGStatModel( &bg_model );
46 cvReleaseCapture(&cap);