Token导航 LogoToken导航TokenDH.com
Pathview (Pa Bannier) logo
运维云端stdio官方级别未说明来源级核验

Pathview (Pa Bannier)

MCP Server

PathView是一款高性能数字病理学切片图像查看器,支持GPU加速渲染、细胞分割可视化、组织分类热图及AI代理集成。

工具数

22

提示词数

0

GitHub Stars

4

资源数

0
C++Docker云端部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

PABannier

提供方

PABannier

最后核验

2026/5/17 20:22

运行时

Docker

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

docker run -p 3000:3000 \

详细介绍

PathView

![CICD](https://github.com/PABannier/PathView/actions/workflows/CICD.yml)

用于数字病理学的高性能全幻灯片图像(WSI)查看器。PathView通过模型上下文协议(MCP)将GPU加速的平铺渲染与多边形覆盖相结合,用于细胞分割可视化、组织分类热图和AI代理集成。

PathView preview

______________________________________________________________________

目录

______________________________________________________________________

特性

特性描述
高性能渲染通过多分辨率金字塔图块加载和LRU缓存实现平滑平移/缩放
远程流通过WSIStreamer磁贴服务器从S3兼容存储流式传输幻灯片
多边形叠加使用Protocol Buffers中的基于类的样式渲染细胞分割数据
组织热图可视化GPU加速的基于图块的组织分类热图,具有空间索引功能,用于实时可视化
AI代理控制通过MCP进行完全程序化控制,使用27个工具进行导航、快照和ROI分析
概览小地图单击以使用实时视口指示器跳转导航
交叉平台的原生支持macOS和Linux

______________________________________________________________________

快速开始

# Clone the repository
git clone https://github.com/PABannier/PathView.git
cd PathView

# Build (macOS with Homebrew vcpkg)
export VCPKG_TARGET_TRIPLET=arm64-osx
cmake -B build -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_TOOLCHAIN_FILE=$(brew --prefix vcpkg)/scripts/buildsystems/vcpkg.cmake
cmake --build build -j$(nproc)

# Run
./build/pathview

______________________________________________________________________

安装

先决条件

依赖关系描述安装
CMake 3.16+构建系统brew install cmakeapt install cmake
C++17编译器GCC 8+、Clang 10+或Apple ClangXcode CLI工具或 apt install g++
OpenSlideWSI I/O库brew install openslideapt install libopenslide-dev
vcpkg包管理器brew install vcpkg从源代码安装

从源代码构建

macOS

# Set triplet for your architecture
export VCPKG_TARGET_TRIPLET=arm64-osx   # Apple Silicon
# export VCPKG_TARGET_TRIPLET=x64-osx   # Intel

# Configure and build
cmake -B build \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_TOOLCHAIN_FILE=$(brew --prefix vcpkg)/scripts/buildsystems/vcpkg.cmake

cmake --build build -j$(nproc)

Linux

export VCPKG_TARGET_TRIPLET=x64-linux

cmake -B build \
  -DCMAKE_BUILD_TYPE=Release \
  -DCMAKE_TOOLCHAIN_FILE=~/vcpkg/scripts/buildsystems/vcpkg.cmake

cmake --build build -j$(nproc)

验证安装

./build/pathview --version

______________________________________________________________________

用法

打开幻灯片

动作方法
打开本地幻灯片File → Open Slide...Ctrl+O
连接到服务器File → Connect to ServerCtrl+Shift+O

导航

动作输入
平移鼠标左键拖动
缩放鼠标滚轮或触控板捏住
跳转到区域点击小地图
重置视图View → Reset View

加载多边形覆盖

从协议缓冲区文件中加载单元分段数据:

File → Load Polygons...

多边形使用基于类的着色和细节级别优化进行渲染。

组织热图可视化

PathView在协议缓冲区文件中可用时自动加载组织分类热图。组织图提供像素级组织分类叠加,渲染为彩色热图。

特征:

  • 多层瓷砖:支持与载玻片分辨率级别匹配的金字塔结构组织图
  • 基于类别的着色:每个组织类别都用不同的颜色渲染
  • 空间索引:O(k)使用二维网格空间索引进行视口查询,以实现高效渲染
  • 每班能见度:在侧边栏中打开/关闭单个纸巾类
  • 不透明度控制:将叠加透明度从0%调整到100%
  • GPU加速:瓷砖被缓存为SDL纹理,以实现平滑渲染

控制:

  • View → “图层”面板→ 组织图谱部分
  • 使用复选框切换可见性
  • 使用滑块调整不透明度
  • 启用/禁用单个组织类别
  • 颜色指示器显示每个类的指定颜色

窗口标题会动态更新,以显示当前加载的幻灯片文件名(对于本地幻灯片)或幻灯片ID(对于远程幻灯片),从而可以轻松跟踪您正在查看的幻灯片。

______________________________________________________________________

远程幻灯片

PathView通过以下方式从S3兼容存储流式传输幻灯片 WSIStreamer,无需本地下载即可查看大型幻灯片。

快速演示

# Requires Docker, docker-compose, and MinIO client (mc)
./scripts/demo_remote_slide.sh ~/Downloads/sample.svs

此脚本:

  1. 启动本地MinIO+WSIStreamer实例
  2. 将幻灯片上传到本地S3存储桶
  3. 启动连接到服务器的PathView

连接到服务器

  1. 打开 File → Connect to Server (Ctrl+Shift+O)
  2. 输入服务器URL(例如。, http://localhost:3000)
  3. 如果需要,请输入身份验证密钥
  4. 从服务器浏览并选择幻灯片

生产部署

对于生产环境,请将WSIStreamer与您的S3兼容存储一起部署:

docker run -p 3000:3000 \
  -e WSI_S3_BUCKET=my-slides-bucket \
  -e AWS_ACCESS_KEY_ID= \
  -e AWS_SECRET_ACCESS_KEY= \
  -e AWS_REGION=us-east-1 \
  wsistreamer/wsi-streamer

WSIStreamer文档 用于配置选项,包括身份验证、缓存和CORS。

______________________________________________________________________

AI代理集成

PathView提供了一个MCP(模型上下文协议)服务器,用于AI代理的程序控制。API可实现自动化组织分析工作流程,包括导航、屏幕截图捕获和基于ROI的细胞计数。

建筑

┌─────────────┐     MCP/JSON-RPC      ┌─────────────────┐      IPC       ┌─────────────┐
│  AI Agent   │ ◄──────────────────►  │  MCP Server     │ ◄────────────► │  PathView   │
│             │     HTTP + SSE        │  (port 9000)    │    TCP/JSON    │  GUI        │
└─────────────┘                       └─────────────────┘                └─────────────┘
                                              │
                                              ▼
                                      ┌─────────────────┐
                                      │  HTTP Server    │
                                      │  (port 8080)    │
                                      └─────────────────┘

启动MCP服务器

# Terminal 1: Start PathView GUI
./build/pathview

# Terminal 2: Start MCP server
./build/pathview-mcp

端点

服务URL描述
MCP服务器http://127.0.0.1:9000MCP API(基于HTTP+SSE的JSON-RPC)
HTTP服务器http://127.0.0.1:8080快照检索和MJPEG流

可用工具

MCP服务器公开了7个类别的27个工具:

类别工具描述
会话agent_hello注册代理并获取会话信息
滑动load_slide, get_slide_info加载和检查WSI文件
导航nav_lock, nav_unlock, nav_lock_status, pan, zoom, zoom_at_point, center_on, reset_view, move_camera, await_move带动画的视口控制
快照capture_snapshot将视口捕获为PNG
多边形load_polygons, query_polygons, set_polygon_visibility细胞分割覆盖
注释create_annotation, list_annotations, get_annotation, delete_annotation, compute_roi_metricsROI创建和细胞计数

工作流示例

# 1. Connect and register
session = await client.call_tool("agent_hello", {
    "agent_name": "pathology-analyzer",
    "agent_version": "1.0.0"
})

# 2. Load resources
await client.call_tool("load_slide", {"path": "/data/slide.svs"})
await client.call_tool("load_polygons", {"path": "/data/cells.pb"})

# 3. Acquire navigation lock
await client.call_tool("nav_lock", {
    "owner_uuid": "agent-12345",
    "ttl_seconds": 300
})

# 4. Navigate to region of interest
move = await client.call_tool("move_camera", {
    "center_x": 50000, "center_y": 30000,
    "zoom": 2.0, "duration_ms": 500
})

# 5. Wait for animation and capture
while not (await client.call_tool("await_move", {"token": move["token"]}))["completed"]:
    await asyncio.sleep(0.05)
snapshot = await client.call_tool("capture_snapshot", {})

# 6. Analyze region
annotation = await client.call_tool("create_annotation", {
    "vertices": [[48000, 28000], [52000, 28000], [52000, 32000], [48000, 32000]],
    "name": "Tumor ROI"
})
print(f"Cell count: {annotation['cell_counts']['total']}")

# 7. Release lock
await client.call_tool("nav_unlock", {"owner_uuid": "agent-12345"})

API文档

关于完整的API参考,包括所有参数、响应模式和错误代码:

______________________________________________________________________

数据格式

整张幻灯片图像

PathView支持由识别的所有格式 OpenSlide 对于本地幻灯片:

供应商扩展
Aperio.svs, .tif
滨松.vms, .vmu, .ndpi
徕卡.scn
米拉克斯.mrxs
飞利浦.tiff
樱花.svslide
支架.tif
文塔纳.bif, .tif
通用平铺TIFF

对于来自S3存储桶的流媒体,PathView支持以下格式: WSI 流媒体:

供应商扩展
Aperio.svs, .tif

细胞分割和组织图谱

PathView使用协议缓冲区文件(.pb, .protobuf)用于存储细胞多边形覆盖和组织分类热图。该格式支持:

细胞多边形:

  • 使用多边形坐标进行每细胞分割
  • 细胞类型分类和置信度评分
  • 每个单元格的质心坐标

组织热图:

  • 在多个分辨率级别上基于平铺的组织分割
  • 每像素组织分类(uint8类ID)
  • 可选zlib压缩,实现紧凑型存储
  • 类ID到组织类型名称映射

数据结构:

message SlideSegmentationData {
    required string slide_id;
    required int32 max_level;
    repeated TileSegmentationData tiles;
    map tissue_class_mapping;
}

message TileSegmentationData {
    required int32 level;
    required float x, y;           // Tile position in slide coordinates
    required int32 width, height;
    repeated SegmentationPolygon masks;     // Cell polygons
    required TissueSegmentationMap tissue_segmentation_map;  // Tissue heatmap
}

两个覆盖层都是从单个文件同时加载的,组织图为细胞级分析提供了背景。

______________________________________________________________________

文档

文档描述
API 规范完整的MCP API参考,包括类型、参数和示例
AI代理指南AI代理开发人员集成指南
架构指南内部架构和开发模式

______________________________________________________________________

贡献

欢迎捐款。请遵循以下指南:

  1. 问题:包括平台详细信息、PathView版本和复制步骤
  2. 拉取请求:遵循现有的代码风格,在适用的情况下包括测试
  3. 功能请求:在实施之前打开一个问题进行讨论

开发版本

cmake -B build-debug \
  -DCMAKE_BUILD_TYPE=Debug \
  -DCMAKE_TOOLCHAIN_FILE=$(brew --prefix vcpkg)/scripts/buildsystems/vcpkg.cmake

cmake --build build-debug

运行测试

./build/test/unit_tests

______________________________________________________________________

许可证

MIT许可证。看 许可证 了解详情。

______________________________________________________________________

Built for digital pathology research and AI-assisted tissue analysis.

目录标签

目录标签

C++Docker云端部署本地部署数字病理学GPU加速细胞分割组织热图AI集成

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

token

运行时(runtime,运行环境)

Docker

工具数量(toolCount,工具数)

22

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiotoken部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP