Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}
, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

TIA Toolbox

Computational Pathology Toolbox developed at the TIA Centre

PyPI Statuspypi Downloads
conda-forge badgeconda-forge downloads
Documentation Status
GitHub license

Supported Python versions
GitHub Workflow passingCode CoverageCode Style black

DOIDOI

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@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
 $ cd<future-home-of-tiatoolbox-directory>
  1. Download a complete copy of the tiatoolbox.
 $ git clone https://github.com/TissueImageAnalytics/tiatoolbox.git
  1. Change directory to tiatoolbox
 $ cd tiatoolbox
  1. Create a virtual environment and install dependencies.
 $ conda create -n tiatoolbox-dev python=3.12
$ conda activate tiatoolbox-dev
$ conda install -c conda-forge openjpeg sqlite
$ pip install -e ".[dev]"
  1. To re-enter the environment in a new terminal:
 $ 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}
}