目标

在本章中,

我们将了解图像金字塔

我们将使用图像金字塔来创建一个新的水果,“Orapple”

我们将看到这些函数:cv2.pyrUp(),cv2.pyrDown()

理论

通常,我们曾经使用一个恒定大小的图像。但在某些情况下,我们需要处理相同图像的不同分辨率的图像。

例如,在像图像中寻找某物的同时,我们不确定图像中的对象将以什么大小显示。

在这种情况下,我们将需要创建一组不同分辨率的图像,并在所有图像中搜索对象。

这些具有不同分辨率的图像被称为图像金字塔(因为当它们保持在堆叠中,最大图像在底部,最小图像在顶部看起来像金字塔)。

有两种图像金字塔。

1)高斯金字塔和2)拉普拉斯金字塔

高斯金字塔中的较高级别(低分辨率)是通过删除较低级别(较高分辨率)图像中的连续行和列来形成的。

然后,较高级别中的每个像素由基础级别中的5个像素与高斯权重的贡献形成。

通过这样做,M×N图像成为M / 2×N / 2图像。

因此,面积减少到原始面积的四分之一。

它被称为八度。

我们在金字塔上升(即分辨率降低)时,相同的模式继续下去。

类似地,在扩展时,每个层面的面积变成4倍。

我们可以使用cv2.pyrDown()和cv2.pyrUp()函数找到高斯金字塔。

使用金字塔的图像混合

金字塔的一个应用是图像混合。

例如,在图像拼接中,您需要将两个图像堆叠在一起,但由于图像之间的不连续性,它可能看起来不太好。

在这种情况下,与金字塔的图像混合可以让您无缝混合,而不会在图像中留下大量数据。

一个典型的例子就是混合了两种水果,橙子和苹果。

现在看看结果来了解我在说什么:

results matching ""

    No results matching ""