美文网首页
OpenCV(iOS)图像金字塔(13)

OpenCV(iOS)图像金字塔(13)

作者: 傻傻小萝卜 | 来源:发表于2017-05-11 10:17 被阅读134次

图像金字塔

图像金字塔是图像中多尺寸表达的一种,最主要的是用于图像的分割。是一种以多分辨率来解释图像的有效但概念简单的结构。

一幅图像的金字塔式一系列以金字塔形状排列的,分辨率逐步降低且来源于统一张原始图的图像集合,其通过梯次向下采样获得,直到达到某个终止条件才停止采样。

金字塔的底部是待处理图像的高分辨率表示,而顶部是低分辨率的近似。

我们将一层一层的图像比喻成金字塔,层级越高,则图像越小,分辨率越低。如图

一般有两种类型的图像金字塔,分别为

(1)高斯金字塔——用来向下采样,主要的图像金字塔

(2)拉普拉斯金字塔——用来从金字塔底层图像重建上层未采样的图像,在数字图像处理中即是预测残差,可以对图像进行最大程度的还原,配合高斯金字塔一起使用。

两者的主要区别是高斯金字塔是用向下降采样图像,而拉普拉斯金字塔式用金字塔底层图像中采样,重建一个图像。

当图像金字塔的上层移动时,尺寸和分辨率会降低。

OpenCV 中

对图像向上采样——pyrUp()

对图像向下采样 ——pyrDown()

这两个函数操作是不可逆的,pryUp()不是降低采样的你操作,这种情况,图像首先在每个维度上扩大为原来的两倍,新增加的行(偶数行)以0填充,然后给指定的滤波器进行卷积(实际上是一个在每一个维度都扩大为原来两倍的过滤器)去估计“丢失”像素的近似值。

pyrDown()是一个会丢失信息的函数,为了恢复原来更高的分辨率的图像,我们要获得由降低操作丢失的信息,这些数据和拉普拉斯金字塔就有关了。

高斯金字塔

高斯金字塔是通过高斯平滑和亚采样获得一些列下采样图像,也就是说第K层高斯金字塔通过平滑,亚采样就可以获得K+1层高斯图像

另外,每一层都按从下到上的次序编号,层级i+1尺寸小于i层

1.对图像的向下取样

为了获取层级i+1的金字塔图像,我们采用如下方法

(1)对图像进行高斯内核卷积

(2)将所有的偶数行和列去掉

得到的图像为i+1的图像,图像为原来图像的四分之一,缩小了图像

2.对图像的向上取样

如果想放大图像,我们需要向上取样,具体的操作

(1)将图像在每个方向扩大为原来的两倍,新增的行和列以0填充

(2)使用先前同样的内核(乘以4)与放大后的图像卷积,获得‘新增像素‘的近似值

得到的图像即为放大后的图像,与原来相比会比较模糊

拉普拉斯金字塔

下式是拉普拉斯金字塔第i层的数学定义

式中的Gi表示第i层的图像。而UP()操作是将源图像中位置(x,y)的像素映射到目标图像的(2x+1,2y+1)位置

因此可以直接用OpenCV进行拉普拉斯运算

整个拉普拉斯金字塔是通过源图像减去先缩小后再放大的图像的一系列构成。整个拉普拉斯金字塔运算如图

另一个,图像金字塔非常重要的一个应用是图像分割

相关文章

  • OpenCV 之ios 图像金字塔

    OpenCV 之ios 图像金字塔 目标 本文档尝试解答如下问题: 如何使用OpenCV函数 pyrUp 和 py...

  • iOS OpenCV 图像灰度处理

    iOS OpenCV 图像灰度处理 iOS OpenCV 图像灰度处理

  • OpenCV(iOS)图像金字塔(13)

    图像金字塔 图像金字塔是图像中多尺寸表达的一种,最主要的是用于图像的分割。是一种以多分辨率来解释图像的有效但概念简...

  • 图像金字塔

    概述 图像金字塔其实说白了就是披着金字塔外衣的图像缩放,在OpenCV中,有关图像金字塔的操作有pyrup()和p...

  • 【图像处理】如何对一幅图像进行放大放小

    【图像处理】OpenCV系列十五 --- 对一幅图像进行放大、放小 上一篇我们学习了图像金字塔,图像金字塔有两种实...

  • OpenCV Python实现图像金字塔

    图像金字塔一文中,已经详细介绍了图像金字塔的MATLAB实现,这里贴上OpenCV Python的实现以做补充。在...

  • OpenCV 之ios 图像平滑处理

    OpenCV 之ios 图像平滑处理 目标 本教程教您怎样使用各种线性滤波器对图像进行平滑处理,相关OpenCV函...

  • 图像金字塔

    图像金字塔与图像尺寸变化(放大,缩小)是不同的.一般对图像进行放大或缩小,可以使用opencv resize 函数...

  • OpenCV 之ios 轮廓矩

    OpenCV 之ios 轮廓矩 目标 在这节教程中您将学到: 使用OpenCV函数 moments 计算图像所有的...

  • OpenCV 之ios 给图像添加边界

    OpenCV 之ios 给图像添加边界 目标 本文档尝试解答如下问题: 如何使用OpenCV函数 copyMak...

网友评论

      本文标题:OpenCV(iOS)图像金字塔(13)

      本文链接:https://www.haomeiwen.com/subject/geontxtx.html