/******************************************************
测试程序 【图像金字塔】
时间:2016年8月25日
******************************************************/
//【全局变量】
Mat src, dst, tmp;
const char* window_name = "Pyramids Demo";
int main( void )
{
//【总体功能描述】
printf( "\n Zoom In-Out demo \n " );
printf( "------------------ \n" );
printf( " * [u] -> Zoom in \n" );
printf( " * [d] -> Zoom out \n" );
printf( " * [ESC] -> Close program \n \n" );
//【测试图片,扩展为2^n】
src = imread( "YY01.jpg" );
if( !src.data )
{ printf(" No data! -- Exiting the program \n");
return -1; }
tmp = src;
dst = tmp;
//【1、创建显示】
namedWindow( window_name, WINDOW_AUTOSIZE );
imshow( window_name, dst );
//【2、循环等待】
for(;;)
{
int c;
c = waitKey(10);
if( (char)c == 27 )
{ break; }
if( (char)c == 'u' ) //上采样
{
//参数:当前image,目标image,目标size
pyrUp( tmp, dst, Size( tmp.cols*2, tmp.rows*2 ) ); //扩大图像空间
printf( "** Zoom In: Image x 2 \n" ); //输出命令行显示
}
else if( (char)c == 'd' ) //下采样
{
pyrDown( tmp, dst, Size( tmp.cols/2, tmp.rows/2 ) );
printf( "** Zoom Out: Image / 2 \n" );
}
imshow( window_name, dst );
tmp = dst; //使用当前显示图片更新tmp
}
return 0;
}
【opencv练习17 - 图像金字塔】
最新推荐文章于 2022-05-24 10:57:47 发布