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

Uploaded Source

Built Distributions

histomicstk-1.2.6.dev3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (534.0 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.6.dev3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (535.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

histomicstk-1.2.6.dev3-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.6.dev3-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.6.dev3-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.6.dev3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.1 kB view details)

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

File details

Details for the file histomicstk-1.2.6.dev3.tar.gz.

File metadata

  • Download URL: histomicstk-1.2.6.dev3.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.6.dev3.tar.gz
Algorithm Hash digest
SHA256 afbfaad464930ce0ed19a69f470cd9bff0059214dc479479d39a5c8b54ea3921
MD5 86c39980fb7abc2099c0bc484104a7df
BLAKE2b-256 8df6a73acda650ef8c1417e1a2a386f13f3048f098936d4d454444bbb6c936ff

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 83096c0d5f57d4246e56e265a18bede47352cd12d20ba313aa2c601574c4f6a4
MD5 6887bab7b152e4e2d58b4cea3915d22f
BLAKE2b-256 b0cc7cd85b86d3f5426335367b94a016bb5e864b4537c1f691939b84fda86187

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d104e7a6c76070b13946b3a59fbb849e273333fd8402df6580548926f688d29a
MD5 3a5ffa0d535cf75b81dbcada5f875278
BLAKE2b-256 d977f532305dc2d43b2284333dbddaf03527177a2ffa5632d0073281d3bfffb3

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1f9abb425a903fcc4c83b5fb8f1376e3f5f4655586d81fabb26c3c594c00ad15
MD5 ff93b01f528a2dfd8e91d2e2c8469f5a
BLAKE2b-256 92e094b8f5390b376099272998395d9bbdfe0b8bedf3cf57db07d0f001915748

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b216df951e29548a61bf96633a692124e8edbdd4bc569ba6595b194f117c51e
MD5 57102104b6ea3a52758026fa29346b79
BLAKE2b-256 cf41245677950c197999c030b29bd2c99e78bb5773b99c15b6161b634b1320b2

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 df9ce710d4c506ccb5f61374246bf95b96f844cef7db2430c1bbf07a0e7b8d77
MD5 9ea9c0dc78c53cae6b534ba341189552
BLAKE2b-256 eda5d6585c46c13840e0d8d871a0745bc2d28c854143874aee6b4eab2b5df519

See more details on using hashes here.

Provenance

File details

Details for the file histomicstk-1.2.6.dev3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.6.dev3-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bbb38f760e206a371f28850aa3206e5a72bf1906eb642aeae4e388ea3e4601f8
MD5 6a865862bbbebc86414a757866101f6c
BLAKE2b-256 8ad1969cd2d45771f1e6fd72b7c5b6a1bebe3df8e4a75899fbc4cf4c784c39b5

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