首页 > 其他 > 详细

OpenCV 图像金字塔

时间:2020-01-09 13:33:25      阅读:64      评论:0      收藏:0      [点我收藏+]

 

 1 #include "opencv2/imgproc/imgproc.hpp"
 2 #include "opencv2/highgui/highgui.hpp"
 3 #include <math.h>
 4 #include <stdlib.h>
 5 #include <stdio.h>
 6 
 7 using namespace cv;
 8 
 9 /// 全局变量
10 Mat src, dst, tmp;
11 char* window_name = "Pyramids Demo";
12 
13 
14 /**
15  * @函数 main
16  */
17 int main( int argc, char** argv )
18 {
19   /// 指示说明
20   printf( "\n Zoom In-Out demo  \n " );
21   printf( "------------------ \n" );
22   printf( " * [u] -> Zoom in  \n" );
23   printf( " * [d] -> Zoom out \n" );
24   printf( " * [ESC] -> Close program \n \n" );
25 
26   /// 测试图像 - 尺寸必须能被 2^{n} 整除
27   src = imread( "../images/chicky_512.jpg" );
28   if( !src.data )
29     { printf(" No data! -- Exiting the program \n");
30       return -1; }
31 
32   tmp = src;
33   dst = tmp;
34 
35   /// 创建显示窗口
36   namedWindow( window_name, CV_WINDOW_AUTOSIZE );
37   imshow( window_name, dst );
38 
39   /// 循环
40   while( true )
41   {
42     int c;
43     c = waitKey(10);
44 
45     if( (char)c == 27 )
46       { break; }
47     if( (char)c == u )
48       { pyrUp( tmp, dst, Size( tmp.cols*2, tmp.rows*2 ) );
49         printf( "** Zoom In: Image x 2 \n" );
50       }
51     else if( (char)c == d )
52      { pyrDown( tmp, dst, Size( tmp.cols/2, tmp.rows/2 ) );
53        printf( "** Zoom Out: Image / 2 \n" );
54      }
55 
56     imshow( window_name, dst );
57     tmp = dst;
58   }
59   return 0;
60 }

OpenCV 图像金字塔

原文:https://www.cnblogs.com/ybqjymy/p/12170904.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!