pyrDown和pyrUp

pyrDown

函数原型:

void pyrDown(InputArray src, OutputArray dst, const Size& dstsize=Size(), int border-Type=BORDER_DEFAULT)

参数:

src-输入图像

dst-输出图像,有指定尺寸,和src类型一致

dstsize-输出图像的尺寸,默认值为Size((src.cols+1)/2,(src.rows+1)/2),但是在任何情况下需要满足以下条件:

|dstsize.width*2-src:cols| ≤2
|dstsize.height*2-src:rows| ≤2

pyrUp

void pyrUp(InputArray src, OutputArray dst, const Size& dstsize=Size(), int border-Type=BORDER_DEFAULT)

参数:

src-输入图像

dst-输出图像,由dstsize指定尺寸,和src类型相同

dstsize-输出图像的尺寸,默认值为Size(src.cols*2,src.rows*2),但是在任何情况下需要满足以下条件:

|dstsize.width-src.cols*2| ≤(dstsize.width mod2)
|dstsize.height-src.rows*2|  ≤(dstsize.height mod2)

 

示例代码:

 1 #include <opencv2/imgproc/imgproc.hpp>
 2 #include <opencv2/highgui/highgui.hpp>
 3 #include <iostream>
 4 
 5 using namespace std;
 6 using namespace cv;
 7 
 8 int main()
 9 {
10     Mat src, down, up;
11 
12     src = imread("C:/test.jpg");
13     if (!src.data)
14     {
15         cout << "NO DATA!" << endl;
16         return -1;
17     }
18 
19     namedWindow("down");
20     pyrDown(src, down, Size(src.cols/2, src.rows/2));
21     imshow("down", down);
22 
23     namedWindow("up");
24     pyrUp(src, up, Size(src.cols*2, src.rows*2));
25     imshow("up", up);
26 
27     waitKey(0);
28     return 0;
29 }
View Code

 

posted on 2013-05-29 11:15  風逍遥  阅读(451)  评论(0编辑  收藏  举报

导航