ABCDEF
1
This spreadsheet is an attempt to compile the many open source ML tools available for pathology images: code, Jupyter notebooks, pretrained models, and datasets (see the tabs across the bottom).
Have you open sourced your own project? Have you used someone else's publicly accessible code or data that others might benefit from? I would greatly appreciate your help in expanding and updating this list.
Additions or corrections? This spreadsheet is editable by all. Please add new resources or correct info in existing rows.
Questions or comments? Email heather@pixelscientia.com
2
CategoryName & LinkFrameworkLicenseDescriptionComments
3
annotationQuickAnnotatorPyTorch
BSD 3-Clause Clear
Rapidly bootstrap annotation creation for digital pathology projects by helping identify images and small regions
4
annotationNuClickPyTorchCNN-based approach to speed up collecting annotations for microscopic objects requiring minimum interaction from the annotator
5
annotationHistomicsUIApache-2.0
6
annotationMONAI LabelPyTorchApache 2.0MONAI Label already implemented three different interction models for AI assited annotation: Segmentation Nuclei, DeepEdit, and NuClick
7
anomaly detectionP-CEADApache-2.0Anomaly detection using a progressive autoencoder for inpainting
8
augmentationhe-auto-augmentTensorFlowH&E tailored Randaugment: automatic data augmentation policy selection for H&E-stained histopathology.
9
augmentationStain Mix-upStain Mix-Up: Domanin Generalization for Histopathology Images as an image augmentation technique
10
augmentationstyle-transfer-for-digital-pathologyPyTorchLearning domain-agnostic visual representation for computational pathology using medically-irrelevant style transfer augmentation
11
augmentation
stain normalization
stainlibMITAugmentation & normalization of H&E images
12
cell segmentationFewShotCellSegmentationPyTorchMITFew-shot microscopy image cell segmentation
13
cell segmentationCell-DETRPyTorchMITAttention-Based Transformers for Instance Segmentation of Cells in Microstructures
14
co-registrationHistoRegFramework for registration of sequential digitized histology slices
15
co-registrationDeepHistRegPyTorchApache-2.0
16
domain adversarial training
H&E-adversarial CNNPyTorch
17
graph NNHistocartographyPyTorchAGPL-3.0graph-based computational pathology
18
graph NNPatch-GCNPyTorchGPL-3.0Context-Aware Survival Prediction using Patch-based Graph Convolutional Networks
19
graph NNDeepLIIFPyTorchDeep Learning Inferred Multiplex ImmunoFluorescence for IHC Image Quantificationhttps://deepliif.org ; AI-ready datasets, code, imageJ/Qupath plugin available on GitHub
20
MILMONAIPyTorchApache 2.0
21
MILDeepMedFastaiUse AI for prediction of any "label" directly from digitized pathology slides. Common use cases which can be reproduced by this pipeline include prediction of microsatellite instability in colorectal cancer, mutations in lung cancer, subtypes of renal cell carcinoma
22
MILSlideflowPytorch & TensorflowGPL-3.0Slideflow provides a unified API for building and testing deep learning models for digital pathology, supporting both Tensorflow and PyTorch. For MIL models, Slideflow uses CLAM (described separately below) but with a separate/optimized slide-reading & data processing framework.
23
MILCLAMPyTorchGPL-3.0Weakly-supervised method that uses attention-based learning to automatically identify sub-regions of high diagnostic value in order to accurately classify the whole slide, while also utilizing instance-level clustering over the representative regions identified to constrain and refine the feature space
24
MILSparseConvMILPyTorchAGPL-3.0Sparse Convolutional Context-Aware Multiple Instance Learning for Whole Slide Image Classification
25
MILDT-MILPyTorchApache-2.0Apache-2.0
26
MILHIAPyTorchHistopathology Image Analysis
27
MILTransMILPyTorchTransMIL: Transformer based Correlated Multiple Instance Learning for Whole Slide Image Classification
28
MILAdditive MIL: Intrinsically Interpretable MIL PyTorchA simple formulation of MIL models, which enables interpretability while maintaining similar predictive performance. Additive MIL models enable spatial credit assignment such that the contribution of each region in the image can be exactly computed and visualized.
29
MILTransPathPyTorchApache-2.0Transformer-based Unsupervised Contrastive Learning for Histopathological Image Classification
30
MIL
survival
MCATPyTorchGPL-3.0Multimodal Co-Attention Transformer for Survival Prediction in Gigapixel Whole Slide Images
31
multiplexSIMPLIPlatform agnostic pipeline for the analysis of highly multiplexed histological imaging data
32
nuclei segmentationMONAI HoVerNetPyTorchApache 2.0Nuclei segmentationa and classification based on HoVerNet, MONAI Bundle and Tutorial
33
nuclei segmentationMONAI UNetPyTorchApache 2.0Nuclei segmentationa based on UNet
34
nuclei segmentationTriple U-netPyTorchTriple U-net: Hematoxylin-aware Nuclei Segmentation with Progressive Dense Feature Aggregation
35
nuclei segmentationNucleiSegNetTensorFlowApache-2.0Robust deep learning architecture for the nuclei segmentation of liver cancer histopathology images
36
nuclei segmentation + classification
HoVer-NetPyTorchMITSimultaneous Nuclear Instance Segmentation and Classification in H&E Histology Images
37
nuclei segmentationStarDistTensorFlowBSD-3-ClauseObject Detection with Star-convex Shapes
38
nuclei segmentation + classification
SonnetTensorFlowA self-guided ordinal regression neural network for segmentation and classification of nuclei in large-scale multi-tissue histology images
39
QCHistoQC
BSD 3-Clause Clear
HistoQC is an open-source quality control tool for digital pathology slides
40
QCPathProfilerPyTorchGPL-3.0PathProfiler: Quality Assessment of Histopathology Whole-Slide Image Cohorts
41
QChistopath_failure_modesFailure Mode Analysis of Deep Learning Histopathology Models
42
QCArtifactMITGeneration of synthetic artefacts / digital pathology
43
QCHistopathology Artifact DetectionPyTorchArtifact detection in hematoxylin and eosin histopathology images using a GAN-inspired classifier
44
QCPathProfilerBSD 3-clauseIdentify and delineate artifacts; discover cohort level outliers
45
QCSlideflowPyTorch
& Tensorflow
GPL-3.0Basic QC with Gaussian blur filtering and Otsu's thresholding, also supports arbitrary boolean masks for slide-level filtering. Slide reading performed with Libvips backend.
46
Tissue segmentationDeep Multi-Magnification NetworkPyTorch
Deep Multi-Magnification Networks for multi-class breast cancer image segmentation
47
segmentationTCGA SegmentationPyTorchAGPL-3.0Software system containing an end-to-end Whole Slide Imaging pre-processing pipeline from The Cancer Genome Atlas download documents, as well as a complete implementation of deep learning tumor segmentation from WSI binary labels as detailed in "Weakly supervised multiple instance learning histopathological tumor segmentation".
48
segmentationHookNetTensorFlowMITmulti-resolution convolutional neural networks for semantic segmentation
49
semantic segmentation
HistoSegNetKerasMITSemantic Segmentation of Histological Tissue Type in Whole Slide Images
50
semantic segmentation
HookNetTensorFlowMITHookNet - multi-resolution convolutional neural networks for semantic segmentation
51
SSLSelf-Supervised-ViT-PathPyTorchGPL-3.0Self-supervised vision transformer
52
SSLself-supervisedPyTorchMITPyTorch Lightning implementation of the following self-supervised representation learning methods: MoCo, MoCo v2, SimCLR, BYOL, EqCo, VICReg
53
SSLCS-COPyTorchMITSelf-supervised visual representation learning for histopathological images
54
SSLSSL CR HistoPyTorchMITSelf-Supervised driven Consistency Training for Annotation Efficient Histopathology Image Analysis
55
SSLHISSLPyTorch, VISSLMITHISSL stands for Histology Self-supervised learning. Self-supervised learning using VISSL and DLUP. Easy efficient SSL pre-training on tiles or WSIs with common SSL methods. Includes docker image and step-by-step execution to easily reproduce DeepSMILE.
56
SSLSelf-Supervised-ViT-PathPyTorchGPL-3.0Self-supervised vision transformer for histopathology
57
stain normalizationstainTransfer using CycleGANPyTorchCycleGAN for image-to-image translation
58
stain normalizationStainGANPyTorchStainGAN implementation based on Cycle-Consistency Concept
59
stain normalizationDSCSI-GANPyTorchStain Style Transfer of Histopathology Images Via Structure-Preserved Generative Learning on histopathology images
60
stain normalizationStain-to-Stain TranslationKerasPix2Pix-based Stain-to-Stain Translation: A Solution for Robust Stain Normalization in Histopathology Images Analysis
61
stain normalizationtorchstainPyTorchMITStain normalization tools for histological analysis and computational pathologyimplements Macenko
62
stain normalizationSlideflowPyTorch
& Tensorflow
GPL-3.0End-to-end deep learning toolkit, includes PyTorch-native,Tensorflow-native, and numpy stain normalization implementations for Reinhard (Fast, Fast-Mask, Mask) and Macenko normalizers, and sklearn and SPAMS implementation of the Vahadane normalizer, with benchmark comparisons of all stain normalization methods in the documentation.
63
stain normalization
augmentation
StainToolsMITTools for tissue image stain normalisation and augmentation
64
stain separationTissue-Dependent Stain SeparationPyTorchUnsupervised Deep Learning for Stain Separation and Artifact Detection in Histopathology Images
65
validationREEToolboxPyTorchMeasuring and improving the robustness of ML models. REEToolbox uses adversarial transforms - data transforms that are adversarially optimised to fool a model - to generate challenging transformations of input data
66
WSI ProcessingMONAIPyTorchApache 2.0MONAI (Medical Open Network for Artificial Intelligence) is a framework for AI in medical imaging based on PyTorch.
67
WSI processingTIAToolboxPyTorchBSD 3-clauseCPath tools for data loading, pre-processing, model inference, post-processing and visualization
68
WSI processingHisto-fetchTensorFlowGPL-3.0Histo-fetch samples stochastic patch locations from WSI datasets actively during the network training, executing preprocessing and common data augmentation operations of this data on the CPU while the GPU simultaneously executes training operations
69
WSI processingPathMLPyTorchGPL-2.0PathML is a toolbox to facilitate machine learning workflows for high-resolution whole-slide pathology images. This includes modular pipelines for preprocessing, PyTorch DataLoaders for training and benchmarking machine learning model performance on standardized datasets, support for sharing preprocessing pipelines, pretrained models, and more.
70
WSI processingPathMLPyTorchGPL-3.0Python library for performing deep learning image analysis on whole-slide images (WSIs), including deep tissue, artefact, and background filtering, tile extraction, model inference, model evaluation and more
71
WSI ProcessingDLUP
framework-agnostic
Apache-2.0Dlup (Deep Learning Utilities for Pathology) offers a set of of utilities to ease the process of running Deep Learning algorithms on
Whole Slide Images. This includes preprocessing, masking, multiple file format backends, multiscale dataset classes, reading tiled dataset from regions of interest directly from a whole-slide image, and more.
72
WSI processingDigiPathAITensorFlowMITA software application built on top of openslide for viewing whole slide images (WSI) and performing pathological analysis
73
WSI processingSlideflowPyTorch
& Tensorflow
GPL-3.0End-to-end deep learning toolkit, including various slide-level processing functions (Otsu's thresholding, Gaussian blur filtering, arbitrary Boolean masks) and tile-level processing functions (brightness and hue filtering, stain normalization, resizing). Images can be stored as raw PNG/JPG images or in binary TFRecord format (cross-compatible with Tensorflow/PyTorch). Slide reading performed with Libvips backend.
74
WSI processingwholeslidedataAgnosticMITA package for working with whole-slide data including a fast batch iterator that can be used to train deep learning models.
75
WSI processing
augmentation
HistoCleanAGPL-3.0HistoClean is a tool for the preprocessing and augmentation of images used in deep learning models
76
MSINetPyTorchDeep learning model for the prediction of microsatellite instability in colorectal cancer
77
HistomicsTKApache-2.0A Python toolkit for pathology image analysis algorithms.
78
qupath
79
SSL SegmentationPyTorchSelf-supervised domain transfer learning model, e.g. from a public to a local dataset. Any header can be added on top, to fine-tune on a specific task (here patch-based classification for tissue segmentation). Only a small annotated dataset is needed. (Oral at MIDL2021)pre-trained models are available
80
WSI processingtia-toolboxPyTorch
81
nucleus classification
https://sites.google.com/view/nucls/home
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100