opencv学习笔记十:图像金字塔

图像下采样:下一层图像尺寸相对上一层缩小一半,对原图像先进行高斯模糊,再删除偶数行和列,依次下去;

图像上采样:将下一层图像先增加偶数行和列,再进行高斯模糊。

下采样:pyrDown(src, dst1, Size(src.cols / 2, src.rows / 2));

参数解释:原图像,输出图像,下采样后图像的尺寸。

上采样:pyrUp(src, dst2, Size(src.cols * 2, src.rows * 2));

参数解释:原图像,输出图像,上采样后图像的尺寸。
    

#include<opencv2/opencv.hpp>
using namespace cv;

int main(int arc, char** argv)
{   
	Mat src, dst1,dst2;
	src = imread("1.jpg");
	namedWindow("input",CV_WINDOW_AUTOSIZE);
	imshow("input", src);

    pyrDown(src, dst2, Size(src.cols / 2, src.rows / 2));//下采样	
    pyrUp(src, dst1, Size(src.cols * 2, src.rows * 2));//上采样
	
        imshow("pyrdown", dst1);
	imshow("pyrup", dst2);	
	waitKey(0);
	return 0;
}

运行结果如下:

猜你喜欢

转载自blog.csdn.net/qq_24946843/article/details/82422334