【代码已开源】基于Python的全切片(WSI)染色归一化工具,实现了reinhard, macenko, vahadane共三种方法

这篇具有很好参考价值的文章主要介绍了【代码已开源】基于Python的全切片(WSI)染色归一化工具,实现了reinhard, macenko, vahadane共三种方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基于Python的全切片(WSI)染色归一化工具,实现了reinhard, macenko, vahadane共三种方法

为了应对数字病理切片受到不同中心、不同扫描设备的影响,先后有不同的研究提出了针对病理图像的染色归一化(stain normalization)方法。本仓库对三种染色归一化方式进行了封装,针对常见的病理图片处理流程实现了染色归一化工具

仓库地址

https://github.com/HaoyuCui/WSI_Normalizer

支持以下主流染色归一化方法

  1. Reinhard Reinhard, Erik, et al. “Color transfer between images.” IEEE Computer graphics and applications 21.5 (2001): 34-41.
  2. Macenko Macenko, Marc, et al. “A method for normalizing histology slides for quantitative analysis.” 2009 IEEE international symposium on biomedical imaging: from nano to macro. IEEE, 2009.
  3. Vahadane Vahadane, Abhishek, et al. “Structure-preserving color normalization and sparse stain separation for histological images.” IEEE transactions on medical imaging 35.8 (2016): 1962-1971.

安装

  1. 克隆本仓库
    git clone https://github.com/HaoyuCui/WSI_Normalizer.git
    
  2. 进入到根目录,激活虚拟环境,运行 pip install -r requirements.txt 安装依赖文件

运行

  1. 在运行前,确保在原始文件夹这样组织patch块(后缀名支持.png,.jpg和.jpeg)

    ├── data
    │   ├── slide_1
    │   │   ├── patch_1.png
    │   │   ├── patch_2.png
    │   │   ├── ...
    │   ├── slide_2
    │   │   ├── patch_1.png
    │   │   ├── patch_2.png
    │   │   ├── ...
    │   ├── ...
    │   └── slide_n
    │       ├── ...
    │       └── patch_n.png
    
  2. 然后,修改以下参数
    <TARGET FOLDER> 原始文件夹,存储了以上述树状格式组织的patch块
    <OUTPUT FOLDER> 输出文件夹
    <NORM METHOD> 染色归一化方法,请确保参数位于reinhard, macenko, vahadane
    <TARGET IMAGE> 染色参考图片(可以是数据集中的一员)

    然后运行

    python main.py --target_dir <TARGET FOLDER> --output_dir <OUTPUT FOLDER> --method <NORM METHOD> --target_img <TARGET IMAGE>
    
  3. 程序将会在<OUTPUT FOLDER>自动生成与 <TARGET FOLDER> 一致的目录结构

  4. 本仓库提供了一个示例脚本,可供直接运行:

    python main.py --target_dir eg/origin --output_dir eg/norm --method vahadane --target_img eg/standard.jpg
    
  5. 运行结果如下:
    【代码已开源】基于Python的全切片(WSI)染色归一化工具,实现了reinhard, macenko, vahadane共三种方法,医学影像,python,图像处理
    如果有问题,欢迎联系我。
    欢迎点赞和收藏,转载请注明出处,谢谢!文章来源地址https://www.toymoban.com/news/detail-781066.html

到了这里,关于【代码已开源】基于Python的全切片(WSI)染色归一化工具,实现了reinhard, macenko, vahadane共三种方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】【编程技巧】给切片命名,使代码清晰可读

    使用内置的 slice 函数创建切片,而不是硬编码下标,从而增强代码可读性,例如: https://python3-cookbook.readthedocs.io/zh_CN/latest/c01/p11_naming_slice.html

    2024年02月10日
    浏览(52)
  • 你相信光吗?开源一个能进行虚拟光渲交互的全志D1s智能家居中控

    本文所介绍产品demo是在立创开源平台的开源作品**《全志D1s智能家居中控虚拟光渲交互(86盒)》**,项目选用RISC-V核心的全志D1s作为主控进行开发,并通过家庭WIFI内网,实现设备间MQTT通信,与其它开源单片机控制项目进行充分联动, 旨在推广类似客制化键盘概念到智能家居领

    2024年02月02日
    浏览(29)
  • 边写代码边学习之批归一化(BatchNormalization)

    归一化(Normalization)是指将不同类型、不同取值范围等不同的数据按照一定的规则统一转化为相同的范围,使得数据在同一数值区间内比较、处理更加合理、有意义。归一化可以消除数据特征之间的量纲差异,使得每个特征在权重计算中起到相同的作用,同时还可以增加算法

    2024年02月14日
    浏览(25)
  • 构建基于 Ingress 的全链路灰度能力

    随着云原生技术不断普及,越来越多的业务应用开始向云原生架构转变,借助容器管理平台 Kubernetes 的不可变基础设施、弹性扩缩容和高扩展性,助力业务迅速完成数字化转型。其中,集群入口流量管理方式在云原生技术演进过程中逐步通用化、标准化,用户通过 Kubernetes 定

    2024年01月22日
    浏览(23)
  • 基于云原生网关的全链路灰度实践

    作者: 倪海峰(海迩) 随着企业规模的不断扩大,传统单体应用已很难进一步支持业务的发展,业务的迭代速度已经难以满足业务的增长,此时企业会对应用系统做微服务化的改造,降低业务的耦合度,提升开发迭代的效率,让开发更加敏捷。 系统架构微服务化的,原本的

    2024年02月15日
    浏览(33)
  • (图像分割)基于图论的归一化分割

    解释:将图像映射成图,以图为研究对象,利用图的理论知识获得图像的分割。 下面介绍:图的基本理论,基于图论的归一化分割算法 图G=(V,E,),分别是:节点、边、顶点和边的对应关系。简单记为G=(V,E)。 图的几个基本概念 1.顶点的度【无向图、有向图(入度、

    2024年02月07日
    浏览(29)
  • 超简单 华为OD机试用Python实现 -【无向图染色问题 or 红黑图】(2023-Q1 新题)

    参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD 清单查看地址:blog.csdn.net/hihell/category_12199275.html 华为OD详细说明:https://dream.blog.csdn.net/article/details/128980730 众所周知红黑树是一种平衡树,它最突出的特性就是不能有两个相邻

    2023年04月08日
    浏览(26)
  • WebSocket | 基于TCP的全双工通信网络协议

    ​🍃作者介绍:双非本科大三网络工程专业在读,阿里云专家博主,专注于Java领域学习,擅长web应用开发、数据结构和算法,初步涉猎Python人工智能开发和前端开发。 🦅主页:@逐梦苍穹 📕所属专栏:Java EE ✈ 您的一键三连,是我创作的最大动力🌹 WebSocket 是基于 TCP 的一

    2024年02月19日
    浏览(60)
  • 基线监控:基于依赖关系的全链路智能监控报警

    更多技术交流、求职机会、试用福利,欢迎关注 字节跳动数据平台微信公众号,回复【1】进入官方交流群 字节跳动数据平台开发套件数据开发团队自研了 基于依赖关系的全链路智能监控报警——基线监控, 目前已在字节跳动内部得到广泛使用,覆盖抖音、电商、广告等1

    2024年02月01日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包