《学习 OpenCV》第二章 26页练习

1670阅读 0评论2011-03-13 duanlin
分类:Delphi

    #include "stdafx.h"
    #include "cv.h"
    #include "highgui.h"
    int g_slider_position = 0;
    CvCapture *g_capture  = NULL;
    void onTrackbarSlide(int);
    int APIENTRY _tWinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPTSTR    lpCmdLine,
                         int       nCmdShow)
    {
  1. cvNamedWindow("Example3",CV_WINDOW_AUTOSIZE);
  2.     g_capture = cvCreateFileCapture("d:\\cv.avi");
  3.     int frames = (int) cvGetCaptureProperty(g_capture,CV_CAP_PROP_FRAME_COUNT);

  4.     if(frames != 0)
  5.     {
  6.         cvCreateTrackbar("Position","Example3",&g_slider_position,frames,onTrackbarSlide);
  7.     }
  8.     IplImage *frame;
  9.     while(1)
  10.     {
  11.         frame = cvQueryFrame(g_capture);

  12.         if(!frame) break;

  13.         cvShowImage("Example3",frame);
  14.         cvSetTrackbarPos("Position","Example3", ++g_slider_position);
  15.         char c = cvWaitKey(33);
  16.         if(c == 27) break;
  17.     }

  18.     cvReleaseCapture(&g_capture);
  19.     cvDestroyWindow("Example3");
  20.     return 0;
  21. }

  22. void onTrackbarSlide(int pos)
  23. {
  24.     cvSetCaptureProperty(g_capture,CV_CAP_PROP_POS_FRAMES,pos);
  25. }
上一篇:2.6.36 移植至 S3C2440
下一篇:《学习 OpenCV》第三章 104页练习