赞
踩
图像金字塔是图像多尺度表达的一种,是一种以多分辨率来解释图像的有效但概念简单的结构。一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低,且来源于同一张原始图的图像集合。其通过梯次向下采样获得,直到达到某个终止条件才停止采样。我们将一层一层的图像比喻成金字塔,层级越高,则图像越小,分辨率越低。如下图所示。
常用的图像金字塔有高斯金字塔(Gaussian pyramid)和拉普拉斯金字塔(Laplacian pyramid)。高斯金字塔用来向下采样,而拉普拉斯金字塔用来从金字塔低层图像重建上层未采样图像。
下采样pyrDown
下采样,也叫做降采样,这个过程中是隔行隔列删去图像中的对应行和列,这样原图中那些精细的细节边缘等地方会变得锯齿状,产生失真,因此为了缩小之后的图像看起来自然,必须进行平滑。因此pyrDown函数在降采样之前要先对图像进行高斯模糊。此时采用的高斯核如下:
代码:
- #include "stdafx.h"
- #include <opencv2/opencv.hpp>
-
-
- int main()
- {
- // 声明两个图像矩阵
- cv::Mat img1, img2;
-
- // 创建两个窗口
- cv::namedWindow("image1", cv::WINDOW_AUTOSIZE);
- cv::namedWindow("image2", cv::WINDOW_AUTOSIZE);
-
- // 读取文件,并将原始图像显示在image1窗口
- img1 = cv::imread("test.jpg");
- cv::imshow("image1", img1);
-
- // 对原始图像进行下采样和高斯滤波处理,长宽各缩小一半,并显示在imge2窗口
- cv::pyrDown(img1, img2);
- cv::imshow("image2", img2);
-
- // 等待键盘事件
- cv::waitKey(0);
- // 关闭所有窗口,并释放关联内存
- cv::destroyAllWindows();
- return 0;
- }

运行结果:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。