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

Uploaded Source

Built Distributions

histomicstk-1.2.8.dev5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (533.3 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.8.dev5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (534.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.8.dev5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (539.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.8.dev5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (539.3 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.8.dev5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (536.4 kB view details)

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

histomicstk-1.2.8.dev5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (536.4 kB view details)

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

File details

Details for the file histomicstk-1.2.8.dev5.tar.gz.

File metadata

  • Download URL: histomicstk-1.2.8.dev5.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.8.dev5.tar.gz
Algorithm Hash digest
SHA256 bf5be7db75c6647043299825f9da8f17ed633716aa4483f3a05a2da17685eed4
MD5 8877a540899d475a146b9b318f4acbac
BLAKE2b-256 a12ffc782fc92d9a94157eee2c0d4cbd9d8805d6301bc1b31b2373788e4df27a

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 506ed0028295c84dd6154ad9500255a90f468f2ab0d8343f01273379ce94eec3
MD5 bf195a1272761a9f6201dbf027cdfae3
BLAKE2b-256 e35e223aac82e47bfc7a41565cb46ac47b402b4cc604b42110895f813a9acf81

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 97a40a956719e22507b63e4a8e5947199e47c948360c309b4e094d8fe7088dce
MD5 aaf2d558d0ae8d70f930a0919e407e4e
BLAKE2b-256 3b766994abc0b0c1f495216fc044137bba457ccca3681cc2d91f2228dce598dc

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 50336b29bcab019dde4bbc6d516bdd9c78edf671bfc517d7026af0fad1ca6787
MD5 4c7ac9fd79d455d2d22c069f1f1ff086
BLAKE2b-256 e61ba947f140323ce94e05ad509234f7329c5bead57014404b1c190d397ced64

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8a188c7d590a02520012f5a20ef440f976aedd7722eeecaf93618da08e9c118f
MD5 a5fb53ffe1f7488ad343c2a9a6600ffd
BLAKE2b-256 c9c2f4ccb6590906208cc733fd1357d2c28a0a93c1fea348d974c0a033f71e4f

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e6025115b9d5c71e32d5b1bac44313c49880e5f467bada5a75a50a647056e6c3
MD5 d5841d97d51903b1715cd62786ce7703
BLAKE2b-256 010b5415410eee6b6e5580908df325490fd7e045a05324b6a10b5009131afae3

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.8.dev5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.8.dev5-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d760f8f535db117efead0d5897096ae326d33b5ec9bb83adbea8811ff018ed3b
MD5 97c3004ccd0a2aeacf4ce2c9a28da388
BLAKE2b-256 a46a5e65876c6c8ac30254ecadd81007b45d9259c97e634380453e6f20cf1839

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