个性化阅读
专注于IT技术分析

使用OpenCV实现图像金字塔示例|Python

图像金字塔是图像处理中最美丽的概念之一。通常,我们使用默认分辨率的图像,但很多时候我们需要改变分辨率(降低它)或调整原始图像的大小,在这种情况下,图像金字塔非常方便。

pyrUp()函数将大小增加到原来的两倍,而pyrDown()函数将大小减少到原来的一半。如果我们将原始图像作为基础图像,并继续在其上应用pyrDown函数,并将图像保持在垂直堆栈中,它将看起来像一个金字塔。通过pyrUp函数升级原始图像也是如此。

使用OpenCV实现图像金字塔|Python1

缩小后, 如果将其重新缩放到原始大小, 则会丢失一些信息, 并且新图像的分辨率将大大低于原始图像。

以下是图像金字塔的示例–

import cv2
import matplotlib.pyplot as plt
  
img = cv2.imread( "images/input.jpg" )
  
layer = img.copy()
  
for i in range ( 4 ):
     plt.subplot( 2 , 2 , i + 1 )
  
     # using pyrDown() function
     layer = cv2.pyrDown(layer)
  
     plt.imshow(layer)
     cv2.imshow( "str(i)" , layer)
     cv2.waitKey( 0 )
      
  
cv2.destroyAllWindows()

输出如下:

使用OpenCV实现图像金字塔|Python2

图片金字塔的优点:

  • 降低分辨率
  • 获取各种尺寸的图像
  • 图像融合
  • 边缘检测

首先, 你的面试准备可通过以下方式增强你的数据结构概念:Python DS课程。


赞(0) 打赏
未经允许不得转载:srcmini » 使用OpenCV实现图像金字塔示例|Python
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏