Scikit 图像 - 使用 Matplotlib

Matplotlib 是 Python 中广泛使用的绘图库,它提供了用于创建不同类型的绘图和可视化的各种函数。它是一个功能强大的库,可以使用 Python 编程语言创建静态、动画和交互式可视化。

使用 Matplotlib 的 Scikit 图像

在图像处理环境中可视化图像时,Matplotlib 可以与 scikit-image 库结合使用,以实现各种可视化任务。通常,Scikit-image 库提供 io.imshow() 和 io.show() 等函数来显示图像,但是,我们可以使用 Matplotlib 的 imshow() 函数来显示图像,并附加注释、颜色图、轴配置等选项。

此外,在单个图中创建多个图(只有子图)以比较图像的不同版本或显示图像处理工作流程中的中间步骤也很有用。

要设置 Matplotlib 以与 scikit-image 一起使用,您需要确保两个库都已安装并正确配置。建议使用 pip 或 conda 等包管理器来安装 Matplotlib。 pip 是 Python 的默认包管理器,而 Conda 是管理 Anaconda 环境中包的流行选择。

使用 pip 安装 Matplotlib

要使用 pip 安装 Matplotlib,只需在命令提示符下运行以下命令 −

pip install Matplotlib

这将下载 Matplotlib 包。

使用 Conda 安装 Matplotlib

如果您已经在系统中使用 Anaconda 发行版,那么您可以直接使用 conda 包管理器安装 Matplotlib。以下是命令 −

conda install matplotlib

安装成功后,您可以直接导入 matplotlib.pyplot 和 skimage 库以访问 Python 脚本或笔记本中所需的功能来执行图像处理任务。

以下是一些基本的 Python 程序,演示了如何使用 Matplotlib 库和 scikit-image 有效地执行数据可视化任务。

示例 1

以下示例演示了如何使用 Matplotlib 显示 scikit-image 加载的图像。

from skimage import io
import matplotlib.pyplot as plt

# 读取图像
image_data = io.imread('Images/logo-w.png')
# 使用 Matplotlib 显示图像
plt.imshow(image_data)
plt.title('Logo', fontsize=18)

输出

执行上述程序后,您将获得以下输出 −

Matplotlib

示例 2

以下示例演示如何使用 scikit-image 将圆形蒙版应用于图像,并使用 Matplotlib 并排显示原始图像和蒙版图像。

import matplotlib.pyplot as plt
from skimage import io
import numpy as np

# 加载图像
image_path = 'Images_/Zoo.jpg'
image = io.imread(image_path)
image_copy = np.copy(image)

# 创建圆形蒙版
rows, cols, _ = image.shape
row, col = np.ogrid[:rows, :cols]
center_row, center_col = rows / 2, cols / 2
radius = min(rows, cols) / 2
outer_disk_mask = ((row - center_row)**2 + (col - center_col)**2 > radius**2)

# 将蒙版应用于图像
image[outer_disk_mask] = 0

# 使用 Matplotlib 显示原始图像和蒙版图像
fig, axes = plt.subplots(nrows=1, ncols=2, figsize=(10, 5))
axes[0].imshow(image_copy)
axes[0].set_title('Original Image')
axes[0].axis('off')
axes[1].imshow(image)
axes[1].set_title('Masked Image')
axes[1].axis('off')
plt.tight_layout()
plt.show()

输出

执行上述程序后,您将获得以下输出 −

Matplotlib