Skip to main content

A Python toolkit for Histopathology Image Analysis

Project description

HistomicsTK is a Python package for the analysis of digital pathology images. It can function as a stand-alone library, or as a Digital Slide Archive plugin that allows users to invoke image analysis jobs through HistomicsUI. The functionality offered by HistomicsTK can be extended using slicer cli web which allows developers to integrate their image analysis algorithms into DSA for dissemination through HistomicsUI.

Whole-slide imaging captures the histologic details of tissues in large multiresolution images. Improvements in imaging technology, decreases in storage costs, and regulatory approval of digital pathology for primary diagnosis have resulted in an explosion of whole-slide imaging data. Digitization enables the application of computational image analysis and machine learning algorithms to characterize the contents of these images, and to understand the relationships between histology, clinical outcomes, and molecular data from genomic platforms. Compared to the related areas of radiology and genomics, open-source tools for the management, visualization, and analysis of digital pathology has lagged. To address this we have developed HistomicsTK in coordination with the Digital Slide Archive (DSA), a platform for managing and sharing digital pathology images in a centralized web-accessible server, and HistomicsUI, a specialized user interface for annotation and markup of whole-slide images and for running image analysis tools and for scalable visualizing of dense outputs from image analysis algorithms. HistomicsTK aims to serve the needs of both pathologists/biologists interested in using state-of-the-art algorithms to analyze their data, and algorithm researchers interested in developing new/improved algorithms and disseminate them for wider use by the community.

HistomicsTK can be used in two ways:

  • As a pure Python package: enables application of image analysis algorithms to data independent of the Digital Slide Archive (DSA). HistomicsTK provides a collection of fundamental algorithms for tasks such as color normalization, color deconvolution, nuclei segmentation, and feature extraction. Read more about these capabilities here: api-docs and examples for more information.

    Installation instructions on Linux:

    To install HistomicsTK using PyPI:

    $ python -m pip install histomicstk --find-links https://girder.github.io/large_image_wheels

    To install HistomicsTK from source:

    $ git clone https://github.com/DigitalSlideArchive/HistomicsTK/
    $ cd HistomicsTK/
    $ python -m pip install setuptools-scm "Cython>=0.25.2" "scikit-build>=0.8.1" "cmake>=0.6.0" "numpy>=1.12.1"
    $ python -m pip install -e .

    HistomicsTK uses the large_image library to read content from whole-slide and microscopy image formats. Depending on your exact system, installing the necessary libraries to support these formats can be complex. There are some non-official prebuilt libraries available for Linux that can be included as part of the installation by specifying pip install histomicstk --find-links https://girder.github.io/large_image_wheels. Note that if you previously installed HistomicsTK or large_image without these, you may need to add --force-reinstall --no-cache-dir to the pip install command to force it to use the find-links option.

    The system version of various libraries are used if the --find-links option is not specified. You will need to use your package manager to install appropriate libraries (on Ubuntu, for instance, you’ll need libopenslide-dev and libtiff-dev).

    To install from source on Windows:

    1- Run the following:

    $ pip install large-image
    $ pip install cmake
    $ git clone https://github.com/DigitalSlideArchive/HistomicsTK/
    $ cd HistomicsTK/
    $ python -m pip install setuptools-scm "Cython>=0.25.2" "scikit-build>=0.8.1" "cmake>=0.6.0" "numpy>=1.12.1"

    2- Run pip install libtiff

    3- Run pip install large-image-source-tiff to install typical tile sources. You may need other sources, which would require other libraries.

    4- Install Visual Studio 15 2017 Community Version

    5- Install C++ build tools. Under Tools > Get Tools and Features … > Desktop Development with C++, ensure that the first 8 boxes are checked.

    6- Run this:

    $ python -m pip install -e .
    $ pip install girder-client

    To install from source on OSX:

    Note: This needs to be confirmed and expanded by an OSX user. There are probably assumptions made about available libraries.

    Use homebrew to install libtiff and openslide or other libraries depending on your desired tile sources.

    Run:

    $ python -m pip install histomicstk large-image-source-tiff large-image-source-openslide
  • As a image-processing task library for HistomicsUI and the Digital Slide Archive: This allows end users to apply containerized analysis modules/pipelines over the web. See the Digital Slide Archive for installation instructions.

Refer to our website for more information.

For questions, comments, or to get in touch with the maintainers, head to our Discourse forum, or use our Gitter Chatroom.

Previous Versions

The HistomicsTK repository used to contain almost all of the Digital Slide Archive and HistomicsUI, and now container primarily code for image analysis algorithms and processing of annotation data. The deployment and installation code and instructions for DSA have moved to the Digital Slide Archive repository. The user interface and annotation functionality has moved to the HistomicsUI repository.

The deployment and UI code will eventually be removed from the master branch of this repository; any new development on those topics should be done in those locations.

Funding

This work is funded by the NIH grant U24-CA194362-01.

See Also

DSA/HistomicsTK project website: Demos | Success stories

Source repositories: Digital Slide Archive | HistomicsUI | large_image | slicer_cli_web

Discussion: Discourse forum | Gitter Chatroom

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

histomicstk-1.2.4.dev11.tar.gz (26.1 MB view details)

Uploaded Source

Built Distributions

histomicstk-1.2.4.dev11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (533.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.4.dev11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (535.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.4.dev11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (540.6 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.4.dev11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (540.0 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.4.dev11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.1 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

histomicstk-1.2.4.dev11-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.0 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

File details

Details for the file histomicstk-1.2.4.dev11.tar.gz.

File metadata

  • Download URL: histomicstk-1.2.4.dev11.tar.gz
  • Upload date:
  • Size: 26.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for histomicstk-1.2.4.dev11.tar.gz
Algorithm Hash digest
SHA256 f8aa9335810d4992fbf6a0a8365f7f0dd05135a817be42c977c04c5014f12126
MD5 e9deae0e4f502544779b20daf12d8cb4
BLAKE2b-256 45895714a11d38f682c71f908d9ed4e12c0bc6d32ef5993d8787019e2243b259

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b3d6dbe30a65ca655a183d890c5c1ab3b9b2c3f953d6c4a5d1b2411eaa90149
MD5 b3db5b93bb2d022eec2b4e1602c7cb59
BLAKE2b-256 8489c47befdafd8469dcae541a7919debe258e9025db466234dce71346881232

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 94c4a08a36c0a82c0449beaa9d17dfd2c778a996d10d850f718549ef4ea5bc89
MD5 29effcb2ea044edc99e0ffc9ff742c3b
BLAKE2b-256 701c2d215d11b669c85b41830d66da6c6a5c5f7063b598b90e73877a0b8a37aa

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7663e9df4a331403b32bfb79fda1e48ae6804a2630a3f91a85e3e551b42eca09
MD5 701221fcfc6c2174f884640662c5fd99
BLAKE2b-256 f96692e6e3e96eec33c30f5dc6e6250ffe76ac76bce6e8a18e3fd42e34c36dc4

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 63c2c9ec8e86b5d90d15f1e8be15ec2f83eb6fadbf4f834149a18ba83ee53032
MD5 e0d1eacdbc6b22e15b9c7d41b5be7b72
BLAKE2b-256 10c57c380b9d6963db99e1d2c0a635b5da9b8b172ce85c80a51b5fe5adebf8d3

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 58863295d2f9567ca95387ac27bf6617d76b828ca81d7f344acdd4fb81ef3f67
MD5 10e9bfd2b6b3696757148fd3bdbe59c6
BLAKE2b-256 48821db602cc2a874c88e13d8ddaef43c619e1e07fa9d93a914166a22f227290

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.4.dev11-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev11-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d5a6e93cc3ee452fd8206758e6176db33d3455e132b9909b28ac61e2319a392
MD5 6b612436163251aa9c93620766da5cab
BLAKE2b-256 212da69d41cf83670b77c34bf98bfd5c0458b1ff5665bca2a4395e45d6f6eb28

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page