• OpenCV 图像金字塔


     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( "
     Zoom In-Out demo  
     " );
    21   printf( "------------------ 
    " );
    22   printf( " * [u] -> Zoom in  
    " );
    23   printf( " * [d] -> Zoom out 
    " );
    24   printf( " * [ESC] -> Close program 
     
    " );
    25 
    26   /// 测试图像 - 尺寸必须能被 2^{n} 整除
    27   src = imread( "../images/chicky_512.jpg" );
    28   if( !src.data )
    29     { printf(" No data! -- Exiting the program 
    ");
    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 
    " );
    50       }
    51     else if( (char)c == 'd' )
    52      { pyrDown( tmp, dst, Size( tmp.cols/2, tmp.rows/2 ) );
    53        printf( "** Zoom Out: Image / 2 
    " );
    54      }
    55 
    56     imshow( window_name, dst );
    57     tmp = dst;
    58   }
    59   return 0;
    60 }
  • 相关阅读:
    spring 包的依赖关系
    菜鸟程序猿之IDEA快捷键
    eclipse的svn插件
    SVN使用教程总结
    Oracle 11g安装步骤详谈
    C3P0连接池的配置与使用
    Java课程设计
    201621123057 《Java程序设计》第14周学习总结
    201621123057 《Java程序设计》第13周学习总结
    201621123057 《Java程序设计》第12周学习总结
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/12170904.html
Copyright © 2020-2023  润新知