图像金字塔

图像金字塔被广泛用于各种视觉应用中。图像金字塔是一个图像集合,集合中所有的图像都源于同一个原始图

像,而且是通过对原始图像连续降采样活得,直到达到某个中止条件才停止降采样。(当然,降为一个像素肯

是中止条件。)


有两种类型的图像金字塔常常出现在文献和应用中:高斯金字塔用来向下降采样图像,而拉普拉斯金字塔则用

来从金字塔低层图像中向上采样重建一个图像。


要从金字塔第 i 层生成第i+1 层,我们先要用高斯核对第i 层进行卷积,然后删除所有偶数行和偶数列。当

然,新得到的图像面积会变为源图像的四分之一。按上述过程对输入图像循环执行操作就可产生整个金字塔。

Opencv我们提供了从金字塔中上一级图像生成下一级图像的方法:cvPyrDown。同样,我们可以通过后面

相似的函数(但不是降采样的逆操作)将现有的图像在每个维度上都放大两倍:cvPyrUp。在这种情况下,图

像首先在每个维度上都扩大为原来的两倍,新增的行(偶数行)以0填充。然后给指定的滤波器进行卷积(实际

上是一个在每一维上都扩大为两倍的过滤器)去估计”丢失“像素的近似值。


我们之前注意到函数cvPyrUp并不是函数cvPyrDown的逆操作。之所以这样是因为cvPyrDown是一个会丢失信

息的函数。为了恢复原来(更高的分辨率)的图像,我们需要获得由降采样操作丢失的信息。


实例:

#include<cv.h>
#include<highgui.h>

int main()
{
	IplImage* src = NULL;
	IplImage* down = NULL;
	IplImage* up = NULL;
	
	src = cvLoadImage ("test.jpg", 1);
	down = cvCreateImage (cvSize(src->width/2, src->height/2), src->depth, src->nChannels);
	up = cvCreateImage (cvSize(src->width*2, src->height*2), src->depth, src->nChannels);

	cvPyrDown (src, down, IPL_GAUSSIAN_5x5);
	cvPyrUp (src, up, IPL_GAUSSIAN_5x5);

	cvNamedWindow ("src", 1);
	cvShowImage ("src", src);
	cvNamedWindow ("Down", 1);
	cvShowImage ("Down", down);
	cvNamedWindow ("Up", 1);
	cvShowImage ("Up", up);

	cvWaitKey (0);

	cvReleaseImage (&src);
	cvReleaseImage (&down);
	cvReleaseImage (&up);

	return 0;
}

结果:




  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图像金字塔是一种在图像处理中常用的技术,用于对图像进行多尺度分析和处理。它可以通过将原始图像通过不同大小的滤波器进行模糊和采样,从而获得一系列不同分辨率的图像。在Matlab中,我们可以使用pyrDown和pyrUp函数来实现图像金字塔的构建和重建。 pyrDown函数可以将图像降采样一半,通过使用高斯滤波器对图像进行平滑处理,然后取出偶数行和偶数列的像素值,从而生成一个尺寸缩小一半的图像。而pyrUp函数可以对图像进行插值操作,将图像尺寸恢复为原来的两倍,通过使用卷积核对图像进行卷积操作,从而生成一个尺寸增大一倍的图像。 通过不断重复使用pyrDown和pyrUp函数,我们可以构建出一个图像金字塔,其中每一层代表图像在不同尺度下的表示。在图像金字塔中,高层表示的是分辨率低但包含更多全局信息的图像,低层表示的是分辨率高但包含更多局部细节的图像。 利用图像金字塔,我们可以进行一些重要的操作,例如图像缩放、图像融合和图像分割等。在Matlab中,我们可以使用imresize函数来实现图像金字塔的上采样和下采样操作,使用impyramid函数来实现不同层级之间的图像融合操作,使用imsegkmeans函数来实现基于金字塔的图像分割操作等。 总之,图像金字塔是一种强大的图像处理技术,在Matlab中可以通过pyrDown和pyrUp函数来构建和重建,可用于多尺度分析和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值