ROI.cpp
上传用户:bjtznx
上传日期:2022-07-26
资源大小:1k
文件大小:1k
源码类别:

OpenCV

开发平台:

Visual C++

  1. #include <stdio.h>
  2. #include <cv.h>
  3. #include <highgui.h>
  4. #include <math.h>
  5. int main(void)
  6. {
  7.       /* load image */
  8. long current_frame = 0;
  9. while(true)
  10. {
  11.       CvCapture *input_video = cvCaptureFromFile("SAM_0826.AVI");
  12. cvSetCaptureProperty( input_video, CV_CAP_PROP_POS_FRAMES, current_frame );
  13.   IplImage *img1 = cvQueryFrame( input_video );
  14.   //cvNamedWindow( "SRC", 0 );
  15.   //cvShowImage(   "SRC", img1 );
  16.       /* sets the Region of Interest
  17.          Note that the rectangle area has to be __INSIDE__ the image */
  18.       cvSetImageROI(img1, cvRect(0, 0, 640, 187));
  19.       /* create destination image
  20.          Note that cvGetSize will return the width and the height of ROI */
  21.       IplImage *img2 = cvCreateImage(cvGetSize(img1),img1->depth,img1->nChannels);
  22.       /* copy subimage */
  23.       cvCopy(img1, img2, NULL);
  24.   IplImage *img3 = cvCreateImage(cvGetSize(img1),img1->depth,img1->nChannels );
  25.   cvConvertImage(img2, img3, CV_CVTIMG_FLIP);
  26.      /* Show the output */
  27.   cvNamedWindow( "ROI", 0 );
  28.   cvShowImage(   "ROI", img3 );
  29. cvWaitKey(10);
  30.  /* always reset the Region of Interest */
  31. cvResetImageROI(img1);
  32. current_frame++;
  33. }
  34. }