【亲测免费】 开源项目教程: Prov-GigaPath 数字病理全切片基础模型
2026-01-23 04:37:01作者:田桥桑Industrious
1. 项目介绍
Prov-GigaPath 是一个源自真实世界数据的数字病理全切片基础模型。由Hanwen Xu等人共同贡献,并在Nature上发表论文,它旨在为数字病理学领域提供强大的预训练模型。该模型包括局部瓷砖编码器和滑片级编码器,支持从瓷砖级到滑片级的任务,推动了在大规模病理图像分析中的应用研究。
2. 项目快速启动
要开始使用 Prov-GigaPath,您需要一个配置良好的开发环境,特别是配备NVIDIA A100 GPU的机器。以下是简化的安装流程:
环境准备
首先,克隆仓库到本地:
git clone https://github.com/prov-gigapath/prov-gigapath
cd prov-gigapath
然后,创建并激活Conda环境:
conda env create -f environment.yaml
conda activate gigapath
安装项目依赖和模型本身:
pip install -e .
下载模型
确保您已经获取Hugging Face的只读令牌,并设置为环境变量HF_TOKEN,之后可以下载模型:
export HF_TOKEN=<您的HuggingFace读取令牌>
运行示例
以下代码展示如何进行瓷砖级别的特征提取:
import timm
from PIL import Image
from torchvision import transforms
import torch
tile_encoder = timm.create_model("hf_hub:prov-gigapath/prov-gigapath", pretrained=True)
transform = transforms.Compose([
transforms.Resize(256, interpolation=transforms.InterpolationMode.BICUBIC),
transforms.CenterCrop(224),
transforms.ToTensor(),
transforms.Normalize(mean=(0.485, 0.456, 0.406), std=(0.229, 0.224, 0.225)),
])
img_path = "path/to/your/image.png"
sample_input = transform(Image.open(img_path).convert("RGB")).unsqueeze(0)
with torch.no_grad():
output = tile_encoder(sample_input).squeeze()
3. 应用案例与最佳实践
- 嵌入可视化: 利用提供的notebook探索模型生成的瓷砖嵌入如何可视化,帮助理解模型学习到的表征。
- WSI预处理及分块: 参考官方发布的WSI文件预处理指南,了解如何为模型准备实际的病理切片数据。
- 微调示例: 使用PCam或PANDA数据集对模型进行微调,具体步骤可通过运行相应脚本(
run_pcam.sh,run_panda.sh)实现,这些脚本下载预先提取的嵌入并指导完成实验配置。
4. 典型生态项目
尽管 Prov-GigaPath 作为一个独立的项目,其典型的“生态”聚焦于数字病理学的研究和应用拓展。研究者和开发者可以将此模型集成至病理诊断辅助系统中,但需明确的是,本模型不适用于直接的临床决策,而是作为研究工具,促进疾病识别算法的发展。社区成员通过贡献案例研究、新数据集的适配或是模型性能优化,不断丰富着这个生态。
通过结合学术界与工业界的资源, Prov-GigaPath 不仅为研究人员提供了强大的工具,也为探索深度学习在医疗影像分析中的潜力开辟了新的道路。
请注意,以上操作需遵循项目许可协议,并且在涉及医疗数据和模型使用时,应严格遵守隐私保护与法规要求。
登录后查看全文
热门项目推荐
相关项目推荐
暂无数据
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
540
3.77 K
Ascend Extension for PyTorch
Python
351
415
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
889
612
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
338
185
openJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力
TSX
987
253
openGauss kernel ~ openGauss is an open source relational database management system
C++
169
233
暂无简介
Dart
778
193
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.35 K
758
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
115
141