Scikit 图像 - 使用 Mayavi

Mayavi 是一个用于交互式科学数据可视化和 Python 3D 绘图的应用程序和库。它为 Python 3D 可视化提供了一个简单干净的脚本界面。它提供了类似于 MATLAB 或 Matplotlib 的即用型 3D 可视化功能,尤其是在使用 mlab 模块时。此模块提供了一个高级界面,可让您轻松创建各种类型的 3D 绘图和可视化。

Mayavi 还提供了一个面向对象的编程接口,让您可以更好地控制和灵活地进行 3D 可视化。而且它可以原生透明地与 numpy 数组协同工作,这使得可视化存储在 NumPy 数组中的科学数据变得非常方便,无需进行数据转换或预处理。

Scikit Image 与 Mayavi

要在 Python 脚本中使用 Mayavi 作为绘图引擎,您可以使用 mlab 脚本 API,它提供了一种简单方便的方式来使用 Mayavi 并使用 NumPy 数组或其他序列生成 TVTK 数据集。

安装 Mayavi

要设置 Mayavi 并运行代码生成的可视化效果,您需要安装 PyQt 以及 Mayavi 库。 PyQt 是一个依赖项,它提供了显示使用 Mayavi 创建的可视化效果所需的图形用户界面 (GUI) 功能。

pip install mayavi
pip install PyQt5

建议使用 pip(Python 包安装程序)从 PyPI 安装 Python 包。这将安装 PyPI 上可用的 Mayavi 最新版本。

成功安装所需的软件包后,您可以使用 − 将 Mayavi 导入 Python 脚本或交互式会话中。

from mayavi import mlab

这将从 Mayavi 导入必要的模块,以便在 Python 脚本中进行 3D 可视化和科学数据绘图。

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

示例 1

以下示例演示了如何使用 Mayavi 的 mlab.imshow() 函数显示图像。

from mayavi import mlab
from skimage import io
import numpy as np

# 读取图像
image = np.random.random((10, 10))

# 使用 Mayavi 显示蒙版图像
mlab.figure(fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
mlab.imshow(image)
mlab.show()

输出

Mayavi

示例 2

这是另一个示例,演示如何结合使用 Mayavi 和 scikit-image (skimage),使用 Mayavi 的可视化功能显示灰度图像。

from mayavi import mlab
from skimage import io

# 读取图像
image = io.imread('Images/logo-w.png', as_gray=True)

# 使用 Mayavi 显示蒙版图像
mlab.figure(fgcolor=(0, 0, 0), bgcolor=(1, 1, 1))
mlab.imshow(image)
mlab.show()

输出

Mayavi