Scikit-image - 使用 Napari



Scikit-image 与 Napari

Napari 是一个强大的 Python 库,用于 n 维图像的可视化、注释和分析。它为处理图像数据提供了一个灵活且交互式的环境。以下是 Napari 的一些关键特性和功能:

  • 查看和探索 - Napari 允许您在画布上查看和探索 n 维数组。它支持 2D、3D 和更高维度的 数据,提供响应迅速且交互式的可视化体验。
  • 覆盖派生数据 - Napari 使您能够覆盖派生数据,例如点、多边形、分割、标签等。
  • 注释和编辑 - Napari 提供了用于注释和编辑派生数据集的工具。您可以使用各种工具交互式地添加、修改或删除注释。Napari 集成了 NumPy 或 Zarr 数组等标准数据结构,从而实现了高效的注释和分析工作流程。

它是一个快速、交互式的 Python 多维图像查看器。此外,它还提供了一个用户友好的界面、广泛的自定义选项以及与其他科学 Python 库集成的能力。

Napari 的安装

要使用 Napari,您需要满足以下要求:

  • Python > = 3.8 - Napari 需要 Python 3.8 或更高版本。请确保您的系统上安装了兼容的版本。
  • 能够安装 Python 包 - 您应该能够使用 pip 或 conda-forge 安装 Python 包。这些是包管理器,允许您轻松安装和管理 Python 库和依赖项。

此外,建议您拥有:

环境管理器(如 Conda) - 虽然不是严格要求,但拥有像 Conda 这样的环境管理器会很有帮助。Conda 允许您创建隔离的 Python 环境。它提供了一种方便的方式来管理您的 Python 环境并确保与其他库和工具的兼容性。

使用 pip 安装 Napari

要使用 pip 安装 Napari,只需在命令提示符中运行以下命令:

python -m pip install "napari[all]"

使用 Conda-Forge 安装 Napari

如果您已经在系统中使用 Anaconda 发行版,那么您可以直接从 conda-forge 通道安装 napari。以下是命令:

conda install -c conda-forge napari

安装 Napari 后,您可以在 Python 脚本中使用它。以下是一些基本的 Python 程序,演示了如何有效地将 Napari 库与 scikit-image 结合使用以执行数据可视化任务。

示例 1

以下示例演示了如何使用 Napari 库中的 Viewer() 方法显示图像。

import napari
from skimage import io

# Read an image
image = io.imread('Images/logo-w.png')

# Display the image using Napari
viewer = napari.Viewer()
viewer.add_image(image, name='Tutorialspoint')

输出

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

Napari

示例 2

以下示例演示了如何使用 scikit-image 对图像应用圆形遮罩,并使用 Napari 库显示原始图像和遮罩图像。

import napari
from skimage import io

# Load the image
image_path = 'Images_/Zoo.jpg'
image = io.imread(image_path)
image_copy = np.copy(image)

# Create circular mask
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) 

# Apply mask to image
image[outer_disk_mask] = 0

# Display the image using Napari
viewer = napari.Viewer()
viewer.add_image(image_copy, name='Input Image')
viewer.add_image(image, name='Output masked Image')

输出

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

Napari
广告