Python Wand 库

2025 年 1 月 12 日 | 5 分钟阅读

ImageMagick 是一个用于图像格式转换的实用工具。该工具因支持各种图像格式以及精确、直接的执行而得到了广大社区的支持。我们可以从 PDF 格式文件中获取图像。

在下面的教程中,我们将讨论 ImageMagick 为 Python 开发的一个绑定,称为 wand。我们将通过不同的示例来理解 Python 编程语言中 Wand 库的功能和用途。

那么,让我们开始吧。

理解 Python 中的 Wand 库

wand 是为 Python 编程语言开发的 ImageMagick 库。该库支持 Python 2.6、2.7、3.3+ 和 PyPy 版本中的 ImageMagickImagick API 的功能。wand 用于打开和操作图像。该库不仅支持图像处理,还借助 NumPy 库为机器学习代码提供了有价值的功能。wand 提供了大量的函数来操作图像。下面展示了 Python wand 库的一些用途

Python Wand 库的用途

  1. wand 库用于读取/写入各种格式的图像,也用于将图像从一种格式转换为另一种格式。
  2. 它还支持图像缩放和裁剪。
  3. 该库为图像添加简单的效果。
  4. 该库还为图像添加特殊效果。
  5. 它也用于转换图像。
  6. 它还支持其他色彩增强。

现在,让我们安装 Python wand 库。

如何安装 wand 库?

我们可以使用 pip 安装程序通过以下命令安装 wand 模块

语法

该模块将以 Python 和 pip 的版本安装到系统中。

正如我们所讨论的,wand 库是一个 Imagick API,因此,我们还必须包含 Imagick 依赖项。Imagick 依赖项的安装过程因操作系统而异。

适用于 Ubuntu/Debian

语法

适用于 Mac (使用 Brew 安装程序)

语法

MacPort 安装

语法

注意:如果 Python 不是使用 MacPort 安装的,我们必须像下面这样导出 MAGICK_HOME

语法

适用于 Windows

我们可以自己构建 ImageMagick;但是,这需要 Visual Studio 等构建工具链才能对其进行编译。一个简单的方法是下载 ImageMagick 预构建的二进制文件(适用于 win32 或 win64)

我们可以从以下链接下载
https://imagemagick.org.cn/download/binaries/

验证安装

为了检查模块是否已正确安装到系统中,我们可以尝试导入模块并执行程序。

安装完成后,创建一个新的 Python 文件并在其中输入以下语法。

示例

现在,保存文件并在命令提示符下使用以下命令运行该文件。

语法

如果程序运行没有出现任何导入错误,则表示模块已正确安装。否则,建议重新安装模块并参考其官方文档。

现在,让我们开始使用 wand 库。

使用 Python Wand 读取图像

Python wandimage 库允许程序员使用其 Image 模块导入图像文件。然后,我们可以使用 heightwidth 等不同属性来读取图像。

让我们来看一个相同的示例。

示例

输入图像

Python Wand library

输出

Height of the image: 33
Width of the image: 150

说明

在上面的代码片段中,我们从 wand.image 库导入了 Image 模块。然后,我们使用了 Image() 函数从目录中导入图像。然后,我们使用了不同的属性来读取输入图像的尺寸。结果,程序向用户返回了图像的尺寸(高度和宽度)。

使用 Python Wand 模糊图像

wand 库允许程序员使用 blur() 函数模糊图像,并使用 save() 函数将其保存。

让我们考虑以下示例来理解这一点。

示例

输入图像

Python Wand library

输出

Python Wand library

说明

在上面的代码片段中,我们从 wand.image 库导入了 Image 模块。然后,我们从目录中导入了所需的图像,并使用了 blur() 函数,将 radius 参数指定为 0,将 sigma 参数指定为 3。最后,我们使用 save() 函数将文件保存,并为图像文件指定了新的文件名。

结果,提供的图像以半径 0 和 sigma 3 被模糊,并保存为指定的文件名。

使用 Python Wand 转换图像

我们还可以使用 wand 库的几个函数来转换图像。让我们看一个相同的示例。

示例

输入图像

Python Wand library

输出

Python Wand library

说明

在上面的代码片段中,我们从 wand.image 库导入了 Image 模块。然后,我们再次从目录中导入了图像文件,并使用 clone() 函数创建了图像副本。然后,我们在克隆的图像上使用了 flip() 函数,并使用 save() 函数将结果图像保存到文件中。

结果,输入图像已成功转换。

使用 Python Wand 绘制不同图形

Python wand 库还为我们提供了不同的函数,允许我们绘制不同的图形。

让我们考虑以下示例来理解这一点。

示例

输出

Python Wand library

说明

在上面的代码片段中,我们从 wand 库导入了所需的模块。然后,我们使用了 Drawing() 函数来绘制一个圆。然后,我们使用了指定尺寸、颜色和轮廓颜色的不同属性。然后,我们使用了指定高度、宽度和背景颜色的 Image() 函数,并使用 save() 函数将结果图像保存给用户。