Python Pillow 简明教程

Python Pillow - Enhancing Edges

增强边缘是图像处理和计算机视觉中常用的技术,用于改进图像的解释和分析。它指的是强调或突出图像中不同对象或区域之间的边界的过程。它的目的是提高边缘的可见性,使其更加明显和突出。

Python Pillow 库提供 ImageFilter 模块,其中包含一组预定义的过滤器,可以通过 Image.filter() 方法将其应用于图像。该库的当前版本提供了两种预定义的图像增强滤镜,即 EDGE_ENHANCE 和 EDGE_ENHANCE_MORE,用于增强图像中的边缘。

Enhancing Edges using the ImageFilter.EDGE_ENHANCE Kernel

此 ImageFilter.EDGE_ENHANCE 核滤镜旨在增强图像中的边缘。

以下是增强图像中边缘的步骤:

  1. 使用 Image.open() 函数加载输入图像。

  2. 将 filter() 函数应用于 loaded Image 对象,并将 ImageFilter.EDGE_ENHANCE 作为参数提供给 Image.filter() 函数,然后它将返回具有增强边缘的 PIL.Image.Image 对象。

Example

以下是一个展示如何使用 ImageFilter.EDGE_ENHANCE 滤镜核增强图像中边缘的示例。

from PIL import Image, ImageFilter

# Open the input image
image = Image.open('Images/Flower1.jpg')

# Apply edge enhancement filter
enhanced_image = image.filter(ImageFilter.EDGE_ENHANCE)

# Display the original and enhanced images
image.show()
enhanced_image.show()
zinnia flower

具有增强边缘的输出图像:

imagefilter edge enhance

Enhancing Edges using the EDGE_ENHANCE_MORE Kernel

此方法与 EDGE_ENHANCE 滤镜类似,但它对边缘应用更强的增强。

Example

以下是一个展示如何使用 EDGE_ENHANCE_MORE 滤镜核以更激进的方式增强图像中边缘的示例。

from PIL import Image, ImageFilter

# Open the input image
image = Image.open('Images/Flower1.jpg')

# Apply the EDGE_ENHANCE_MORE filter to the image
enhanced_image = image.filter(ImageFilter.EDGE_ENHANCE_MORE)

# Display the original and enhanced images
image.show()
enhanced_image.show()
zinnia flower

将 EDGE_ENHANCE_MORE 滤镜应用到输入图像之后的输出图像:

edge enhance more