tiatoolbox

Computational Pathology Toolbox developed by TIA Centre, University of Warwick.

https://github.com/tissueimageanalytics/tiatoolbox

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
    Links to: nature.com
  • Committers with academic emails
    3 of 31 committers (9.7%) from academic institutions
  • Institutional organization owner
    Organization tissueimageanalytics has institutional domain (warwick.ac.uk)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.5%) to scientific vocabulary

Keywords

cell-classification cell-segmentation computational-pathology deep-learning digital-pathology histopathology image-analysis machine-learning medical-image-analysis python stain-normalization tissue-analysis tissue-segmentation whole-slide-imaging

Keywords from Contributors

energy-system-model optimizer parallel hydrology mesh energy-system exoplanet genomics keras pipeline-testing
Last synced: 6 months ago · JSON representation

Repository

Computational Pathology Toolbox developed by TIA Centre, University of Warwick.

Basic Info
  • Host: GitHub
  • Owner: TissueImageAnalytics
  • License: other
  • Language: Python
  • Default Branch: develop
  • Homepage: https://warwick.ac.uk/tia
  • Size: 501 MB
Statistics
  • Stars: 461
  • Watchers: 8
  • Forks: 95
  • Open Issues: 20
  • Releases: 26
Topics
cell-classification cell-segmentation computational-pathology deep-learning digital-pathology histopathology image-analysis machine-learning medical-image-analysis python stain-normalization tissue-analysis tissue-segmentation whole-slide-imaging
Created over 5 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation Authors

README.md

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Status pypi Downloads
conda-forge badge conda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passing Code Coverage Code Style black

DOI DOI

Getting Started

TIAToolbox is a computational pathology toolbox developed by the TIA Centre. It provides an end-to-end API for pathology image analysis using best practices. Based on PyTorch, a popular deep learning framework, TIAToolbox enables efficient and flexible implementation of state-of-the-art algorithms. It supports many features through a command-line interface and can integrate with standard PyTorch modules. The toolbox offers tools for data loading, pre-processing, model inference, post-processing, and visualization. Whether you are a computational, biomedical, or clinical researcher, TIAToolbox can help you get started in digital pathology with minimal effort.

All Users

This package is designed for those interested in digital pathology, including graduate students, medical staff, members of the TIA Centre and PathLAKE, and anyone who may find it useful. We will continue to improve this package, taking into account developments in pathology, microscopy, computing, and related disciplines. Please send comments and feedback to tia@dcs.warwick.ac.uk.

Developers

If you want to contribute to this repository, please first look at our Wiki and our contributor guidelines. Also, see the Prepare for development section of this document.

Useful Links

The bash shell is available on all commonly encountered platforms. Commands in this README are in bash. Windows users can use the command prompt to install conda and Python packages.

conda is a management system for software packages and virtual environments. To get conda, download Anaconda, which includes hundreds of the most useful Python packages, using 2GB of disk space. Alternatively, miniconda uses 400MB, and packages can be added as needed.

Examples Taster

  1. Click here for jupyter notebooks, hosted on the web, with demos of tiatoolbox. All necessary resources to run the notebooks are remotely provided, so you don't need to have Python installed on your computer.
  2. Click on a filename with suffix .ipynb and the notebook will open in your browser.
  3. Click on one of the two blue checkboxes in your browser window labelled either Open in Colab or Open in Kaggle: colab and kaggle are websites providing free-of-charge platforms for running jupyter notebooks.
  4. Operate the notebook in your browser, editing, inserting or deleting cells as desired.
  5. Changes you make to the notebook will last no longer than your colab or kaggle session.

Install Python package

If you wish to use our programs, perhaps without developing them further, run the command pip install tiatoolbox or pip install --ignore-installed --upgrade tiatoolbox to upgrade from an existing installation. Detailed installation instructions can be found in the documentation.

To understand better how the programs work, study the jupyter notebooks referred to under the heading Examples Taster.

Command Line

tiatoolbox supports various features through command line. For more information, please try tiatoolbox --help

Prepare for development

Prepare a computer as a convenient platform for further development of the Python package tiatoolbox and related programs as follows.

  1. Install pre-requisite software
  2. Open a terminal window

sh $ cd <future-home-of-tiatoolbox-directory>

  1. Download a complete copy of the tiatoolbox.

sh $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git

  1. Change directory to tiatoolbox

sh $ cd tiatoolbox

  1. Create virtual environment for TIAToolbox using

sh $ conda create -n tiatoolbox-dev python=3.9 # select version of your choice $ conda activate tiatoolbox-dev $ pip install -r requirements/requirements_dev.txt

or

sh $ conda env create -f requirements/requirements.dev.conda.yml # for linux/mac only. $ conda activate tiatoolbox-dev

  1. To use the packages installed in the environment, run the command:

sh $ conda activate tiatoolbox-dev

License

The source code TIAToolbox (tiatoolbox) as hosted on GitHub is released under the BSD-3-Clause license. The full text of the licence is included in LICENSE.

Models weights are dependent on the datasets that they were trained on. Please refer to the documentation for more details.

Cite this repository

If you find TIAToolbox useful or use it in your research, please consider citing our paper:

@article{ Pocock2022, author = {Pocock, Johnathan and Graham, Simon and Vu, Quoc Dang and Jahanifar, Mostafa and Deshpande, Srijay and Hadjigeorghiou, Giorgos and Shephard, Adam and Bashir, Raja Muhammad Saad and Bilal, Mohsin and Lu, Wenqi and Epstein, David and Minhas, Fayyaz and Rajpoot, Nasir M and Raza, Shan E Ahmed}, doi = {10.1038/s43856-022-00186-5}, issn = {2730-664X}, journal = {Communications Medicine}, month = {sep}, number = {1}, pages = {120}, publisher = {Springer US}, title = {{TIAToolbox as an end-to-end library for advanced tissue image analytics}}, url = {https://www.nature.com/articles/s43856-022-00186-5}, volume = {2}, year = {2022} }

Owner

  • Name: Tissue Image Analytics (TIA) Centre
  • Login: TissueImageAnalytics
  • Kind: organization
  • Location: University of Warwick

From tissue images to insights

GitHub Events

Total
  • Create event: 42
  • Release event: 1
  • Issues event: 39
  • Watch event: 72
  • Delete event: 43
  • Member event: 5
  • Issue comment event: 129
  • Push event: 539
  • Pull request event: 89
  • Pull request review event: 215
  • Pull request review comment event: 164
  • Fork event: 16
Last Year
  • Create event: 42
  • Release event: 1
  • Issues event: 39
  • Watch event: 72
  • Delete event: 43
  • Member event: 5
  • Issue comment event: 129
  • Push event: 539
  • Pull request event: 89
  • Pull request review event: 215
  • Pull request review comment event: 164
  • Fork event: 16

Committers

Last synced: about 2 years ago

All Time
  • Total Commits: 602
  • Total Committers: 31
  • Avg Commits per committer: 19.419
  • Development Distribution Score (DDS): 0.635
Past Year
  • Commits: 183
  • Committers: 13
  • Avg Commits per committer: 14.077
  • Development Distribution Score (DDS): 0.377
Top Committers
Name Email Commits
Shan E Ahmed Raza 1****d 220
John Pocock J****P 101
Shan E Ahmed Raza s****d@g****m 67
pre-commit-ci[bot] 6****] 25
Mostafa Jahanifar 7****r 21
Mark Eastwood 2****y 20
DavidBAEpstein D****n@w****k 16
John Pocock j****k@w****k 15
Ruqayya Awan 1****a 13
vqdang d****3@g****m 13
Srijay 5****b 11
Dmitry Blaginin d****n@g****m 11
Simon Graham s****m@h****k 10
vqdang 2****g 10
adamshephard 3****d 9
Simon Graham 2****m 6
shaneahmed sa 6
Jiaqi-Lv 6****v 4
DeepSource Bot b****t@d****o 4
Saad Bashir s****r@h****m 3
TIA Lab 6****b 3
Abdol a@f****m 2
Abishek a****7@g****m 2
George Hadjigeorgiou g****7@g****m 2
wenqi006 5****6 2
Rob Jewsbury 3****6 1
dependabot[bot] 4****] 1
Mark Eastwood m****7@h****m 1
Roger Trullo r****o@h****m 1
Sarthak Pati s****i@p****u 1
and 1 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 78
  • Total pull requests: 356
  • Average time to close issues: 3 months
  • Average time to close pull requests: 17 days
  • Total issue authors: 52
  • Total pull request authors: 20
  • Average comments per issue: 2.36
  • Average comments per pull request: 1.63
  • Merged pull requests: 307
  • Bot issues: 0
  • Bot pull requests: 66
Past Year
  • Issues: 11
  • Pull requests: 39
  • Average time to close issues: 28 days
  • Average time to close pull requests: 22 days
  • Issue authors: 11
  • Pull request authors: 9
  • Average comments per issue: 0.91
  • Average comments per pull request: 1.21
  • Merged pull requests: 25
  • Bot issues: 0
  • Bot pull requests: 9
Top Authors
Issue Authors
  • GeorgeBatch (7)
  • shaneahmed (6)
  • blaginin (4)
  • John-P (4)
  • mostafajahanifar (3)
  • measty (3)
  • mrahimpour (2)
  • Czzh1 (2)
  • KenAncheta (2)
  • Himanshunitrr (2)
  • FabianHoerst (2)
  • Jiaqi-Lv (2)
  • sm-ak-r33 (2)
  • alevangel (2)
  • deeplearningmaniac (2)
Pull Request Authors
  • shaneahmed (180)
  • pre-commit-ci[bot] (74)
  • measty (34)
  • Jiaqi-Lv (29)
  • blaginin (14)
  • John-P (12)
  • Abdol (7)
  • adamshephard (6)
  • mostafajahanifar (5)
  • GeorgeBatch (5)
  • AbishekRajVG (4)
  • ruqayya (3)
  • aacic (3)
  • moodyhunter (2)
  • YijieZhu15 (2)
Top Labels
Issue Labels
bug (14) stale (7) documentation (6) enhancement (6) code readability (4) dev tools (4) dependencies (4) help wanted (4) question (3) refactoring (1)
Pull Request Labels
enhancement (56) bug (47) dev tools (44) dependencies (34) code readability (31) documentation (19) release (10) refactoring (10) stale (2) invalid (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 4,813 last-month
  • Total docker downloads: 66
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 31
  • Total maintainers: 2
pypi.org: tiatoolbox

Computational pathology toolbox developed by TIA Centre.

  • Versions: 26
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 4,813 Last month
  • Docker Downloads: 66
Rankings
Stargazers count: 4.0%
Docker downloads count: 4.1%
Dependent packages count: 4.8%
Forks count: 5.5%
Downloads: 6.4%
Average: 7.7%
Dependent repos count: 21.5%
Maintainers (2)
Last synced: 6 months ago
conda-forge.org: tiatoolbox
  • Versions: 5
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Forks count: 25.9%
Stargazers count: 26.9%
Dependent repos count: 34.0%
Average: 34.5%
Dependent packages count: 51.2%
Last synced: 6 months ago

Dependencies

.github/workflows/conda-env-create.yml actions
  • actions/checkout v2 composite
  • mamba-org/provision-with-micromamba main composite
.github/workflows/docker-publish.yml actions
  • actions/checkout v3 composite
  • docker/build-push-action ad44023a93711e3deb337508980b4b5e9bcdc5dc composite
  • docker/login-action f054a8b539a109f9f41c372932f1ae047eff08c9 composite
.github/workflows/pip-install.yml actions
  • actions/setup-python v3 composite
.github/workflows/python-package.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
  • codecov/codecov-action v2 composite
  • deepsourcelabs/test-coverage-action master composite
  • pypa/gh-action-pypi-publish release/v1 composite
docker/3.10/Debian/Dockerfile docker
  • python 3.10-slim-bullseye build
docker/3.10/Ubuntu/Dockerfile docker
  • ubuntu 22.04 build
docker/3.8/Debian/Dockerfile docker
  • python 3.8-slim-bullseye build
docker/3.9/Debian/Dockerfile docker
  • python 3.9-slim-bullseye build
docker/3.9/Ubuntu/Dockerfile docker
  • ubuntu 22.04 build
docs/requirements.txt pypi
  • furo >=2022.12.7
  • myst-nb >=0.17.1
  • myst-parser >=0.18.1
  • sphinx-copybutton >=0.5.1
  • sphinx-toolbox >=3.2.0
  • sphinx_design >=0.3.0
.github/workflows/mypy-type-check.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v3 composite
pyproject.toml pypi
requirements/requirements.txt pypi
  • Click >=8.1.3
  • SimpleITK >=2.2.1
  • albumentations >=1.3.0
  • defusedxml >=0.7.1
  • filelock >=3.9.0
  • flask >=2.2.2
  • glymur >=0.12.1,
  • imagecodecs >=2022.9.26
  • joblib >=1.1.1
  • jupyterlab >=3.5.2
  • matplotlib >=3.6.2
  • numba >=0.57.0
  • numpy >=1.23.5
  • opencv-python >=4.6.0
  • openslide-python >=1.2.0
  • pandas >=2.0.0
  • pillow >=9.3.0
  • pydicom >=2.3.1
  • pyyaml >=6.0
  • requests >=2.28.1
  • scikit-image >=0.20
  • scikit-learn >=1.2.0
  • scipy >=1.8
  • shapely >=2.0.0
  • sphinx >=5.3.0
  • tifffile >=2022.10.10
  • torch >=2.1.0
  • torchvision >=0.15.0
  • tqdm >=4.64.1
  • umap-learn >=0.5.3
  • wsidicom >=0.7.0
  • zarr >=2.13.3
requirements/requirements_dev.txt pypi
  • black >=23.3.0 development
  • coverage >=7.0.0 development
  • docutils >=0.18.1 development
  • jinja2 >=3.0.3,<3.1.0 development
  • mypy >=1.6.1 development
  • pip >=22.3 development
  • poetry-bumpversion >=0.3.1 development
  • pre-commit >=2.20.0 development
  • pytest >=7.2.0 development
  • pytest-cov >=4.0.0 development
  • pytest-runner >=6.0 development
  • pytest-xdist * development
  • ruff ==0.0.286 development
  • toml >=0.10.2 development
  • twine >=4.0.1 development
  • wheel >=0.37.1 development
setup.py pypi
  • for *
  • if *
  • line *