napari:Python 多维图像查看器

napari 是一个基于 Python 的快速交互式多维图像查看工具,目前收获了 2,665 Star。

正文顶部截图

README区域截图

napari 的设计目标是浏览、标注和分析大型多维图像数据。它底层依赖 Qt 构建界面,使用 vispy 做 GPU 渲染,与 numpy、scipy 等科学计算库配合工作。

这个工具支持六种核心图层类型:Image、Labels、Points、Vectors、Shapes 和 Surface。每种图层对应不同的数据结构和交互方式。用户可以在同一个视图中叠加多个不同类型的图层,分别调整属性。

所有图层都原生支持 n 维数据。用户可以在 2D 切片和 3D 体积之间快速切换浏览,这对处理显微镜图像、医学影像等数据很有用。

napari 的另一特点是支持查看器与 Python 内核的双向通信。从 Jupyter notebook 启动时,这种通信能力可以让用户在交互式环境中加载、保存数据,用代码控制查看器的各项功能。内置的控制台也提供了同样的交互体验。

用户还可以通过自定义快捷键、键位绑定和鼠标操作来扩展 napari 的行为。

快速上手

安装 uv 后,在终端执行以下命令即可启动:

uvx "napari[all]"

启动后在 File 菜单中选择 Open Sample,打开示例图像即可开始体验。

完整安装

推荐在虚拟环境中安装:

conda create -y -n napari-env -c conda-forge python=3.11
conda activate napari-env
python -m pip install "napari[all]"

如果使用 conda,也可以将最后一行替换为:

conda install -c conda-forge napari pyqt6

代码示例

从 IPython 中启动交互式查看器:

from skimage import data
import napari

viewer, layers = napari.imshow(data.cells3d(), channel_axis=1, ndisplay=3)

在脚本中使用则需要手动启动事件循环:

from skimage import data
import napari

viewer, layers = napari.imshow(data.cells3d(), channel_axis=1, ndisplay=3)
napari.run()

napari 的插件生态系统是其长期规划的一部分。开发团队公开维护项目路线图,并持续更新教程文档。该项目由 NumFOCUS 支持,遵循开源社区治理模式运作。

统是其长期规划的一部分。开发团队公开维护项目路线图,并持续更新教程文档。该项目由 NumFOCUS 支持,遵循开源社区治理模式运作。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐