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

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

histomicstk-1.2.5.dev4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (533.8 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

histomicstk-1.2.5.dev4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (535.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

histomicstk-1.2.5.dev4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (540.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

histomicstk-1.2.5.dev4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (539.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

histomicstk-1.2.5.dev4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (537.0 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

histomicstk-1.2.5.dev4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (536.9 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

File details

Details for the file histomicstk-1.2.5.dev4.tar.gz.

File metadata

  • Download URL: histomicstk-1.2.5.dev4.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.5.dev4.tar.gz
Algorithm Hash digest
SHA256 b55d2092bf897ef25a95a9efa9db7c1c0f060a179032570350289b7902ca4e76
MD5 048c9722edb68c53dc04490ac9382511
BLAKE2b-256 cb2e94a2ad6e8de2fc49e633adff024c7cf7ec3ce13798528a397bbc3fae4b2b

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 afccf9b1691fd64f37f6746f6a62b873cdc10b9438c5f792efd439e2f7cc73ca
MD5 d155f9447eaa8ad9d8cc5123f06cb8e0
BLAKE2b-256 b417555518f0142fd64184b3f783a9c2de4197ab24fdda2f38ac95d4e65a1c79

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1e282c2188feb48842bb492e8c8dac22fb7ece6fbd37beb7710a0f796e5a2edb
MD5 faa29548e9213b81915d1ef7dafa5214
BLAKE2b-256 0350e00032aa04d851eff02c4e79f58f937ac25312a4ff1e00b9c1ac68df4eae

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 347505e61806bad5299a02fdd713e86576fdde244677d8749c1dedea2c9c0ece
MD5 60e6f41aa1cfadc142b2a33eae89f108
BLAKE2b-256 1965d3127e1c18b929cbc1d5fac100d77d680303cace953c245435d4949ca39a

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ccde7d7e4ee2b14e20be72f60c12842454d6fa221103511fd1259fd7a5c55e63
MD5 ecc560bd6be5d9d2bb59b1213cb48b7b
BLAKE2b-256 5eb848a166d025711b9f657733bee01d0153fe88705b6dadf4012a8ad17f86d0

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b89d612972e48ca7e4f6c07961231a5520f0d70bbe51b95644eab5d123834f6
MD5 30c724977773a04517c550a4365f1ffb
BLAKE2b-256 222922bdac2ee3ee9e421625678443ca3ce57d8c53a35ae1734dd851db19db83

See more details on using hashes here.

File details

Details for the file histomicstk-1.2.5.dev4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for histomicstk-1.2.5.dev4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 be74e18e324c1ef3bc4787babcf5143e1dbd6cf63d1cbc812d63eada81e7fb45
MD5 90f26194aa1b85157fc5ec962e93b7fb
BLAKE2b-256 d4615db2b3ed5f38959de76e8a5800c9d44e39df957c4bddad1f979ea405aa7d

See more details on using hashes here.

Supported by

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