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.dev14.tar.gz (26.1 MB view details)

Uploaded Source

Built Distributions

histomicstk-1.2.4.dev14-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.dev14-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.dev14-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.dev14-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.dev14-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.dev14-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.dev14.tar.gz.

File metadata

  • Download URL: histomicstk-1.2.4.dev14.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.dev14.tar.gz
Algorithm Hash digest
SHA256 ee13d491ab4572dd2a284e8081970b4c5965044cc33c5accfaeb0749b74be32d
MD5 b00e2603d0b7a3dd1cdc3404e95853a1
BLAKE2b-256 fcc926fc1c8c57b9f4ab419c829b045f4afcb7007737c55086a306db2313ac46

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c209951650198741e6cf70360cb8a23573fe9077bd37accee195de74b17ca202
MD5 1266b0c9aef88942f5401b0a97beb27f
BLAKE2b-256 84a2ec7eeceb149abe3189b5a293cd76cf03f9d09b6b5de988cfde0cb9bd31b6

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7f63a5ca4dd191e68265b7ce5388bb2ca827627ba1245d37d5fa1323a1e9f7cd
MD5 c885fa9e4d2db4cf1e58ee0927152c17
BLAKE2b-256 fc346aa59904e451842295d13b289f707f6a426cd384882345d76be15de45a3b

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8b101c7142659db91f39f0855b0d252f41d6173944e1be40fe0daf10b103c6fe
MD5 35aafca988f70c280b2dc8cc69296053
BLAKE2b-256 0ace4f0af88fdf4e1127912b7e1425deff1a0621d0cbc47c1aa4fa59cfe7ef58

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 048ff3e5c6913394a9b489442b523d3491c669fde7ed608742aca54428219e72
MD5 fa29d159706bb0062000fd33c90fb72b
BLAKE2b-256 d411fc5858c481c9d9d0c62e85c6a9b7da61164373a81b3ef0c595e5b696b7df

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e768f14c40569c09fbb8e2d587b63f026c2c2070c57e659c56a66e0ccafd2d3d
MD5 90d1abc2bba4f525889d50b6da98d11b
BLAKE2b-256 e5fe18003690a9696b071e7d7c823b5a873f8fec4fa78fb74ae3c838879b24de

See more details on using hashes here.

Provenance

File details

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

File metadata

File hashes

Hashes for histomicstk-1.2.4.dev14-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 99788f4ae06e3c347b740a76053c88ebe499580d3878f1e1b8f9a807c3fd5d48
MD5 4fdf9ffefce1ca81942f8c6738ef465c
BLAKE2b-256 383f4950acba770af59f8d2fa369b7f430948452cabaef8f595c44a938379775

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