Skip to main content

Radiomics features library for python

Project description

pyradiomics v2.1.0

Build Status

Linux macOS Windows

Radiomics feature extraction in Python

This is an open-source python package for the extraction of Radiomics features from medical imaging.

With this package we aim to establish a reference standard for Radiomic Analysis, and provide a tested and maintained open-source platform for easy and reproducible Radiomic Feature extraction. By doing so, we hope to increase awareness of radiomic capabilities and expand the community.

The platform supports both the feature extraction in 2D and 3D. Not intended for clinical use.

If you publish any work which uses this package, please cite the following publication: van Griethuysen, J. J. M., Fedorov, A., Parmar, C., Hosny, A., Aucoin, N., Narayan, V., Beets-Tan, R. G. H., Fillon-Robin, J. C., Pieper, S., Aerts, H. J. W. L. (2017). Computational Radiomics System to Decode the Radiographic Phenotype. Cancer Research, 77(21), e104–e107. https://doi.org/10.1158/0008-5472.CAN-17-0339

Join the Community!

Join the PyRadiomics community on google groups here.

Feature Classes

Currently supports the following feature classes:

  • First Order Statistics
  • Shape-based
  • Gray Level Cooccurence Matrix (GLCM)
  • Gray Level Run Length Matrix (GLRLM)
  • Gray Level Size Zone Matrix (GLSZM)
  • Gray Level Dependece Matrix (GLDM)
  • Neighboring Gray Tone Difference Matrix (NGTDM)

Filter Classes

Aside from the feature classes, there are also some built-in optional filters:

  • Laplacian of Gaussian (LoG, based on SimpleITK functionality)
  • Wavelet (using the PyWavelets package)
  • Square
  • Square Root
  • Logarithm
  • Exponential
  • Gradient (Magnitude)
  • Local Binary Pattern (LBP) 2D / 3D

Supporting reproducible extraction

Aside from calculating features, the pyradiomics package includes provenance information in the output. This information contains information on used image and mask, as well as applied settings and filters, thereby enabling fully reproducible feature extraction.

Documentation

For more information, see the sphinx generated documentation available here.

Alternatively, you can generate the documentation by checking out the master branch and running from the root directory:

python setup.py build_sphinx

The documentation can then be viewed in a browser by opening PACKAGE_ROOT\build\sphinx\html\index.html.

Furthermore, an instruction video is available here.

Installation

PyRadiomics is OS independent and compatible with both Python 2.7 and Python 3.4, 3.5 and 3.6. As of version 2.0, PyRadiomics releases are also made available on PyPi. To install PyRadiomics, ensure you have python installed and run:

`python -m pip install pyradiomics`

Detailed installation instructions, as well as instructions for building PyRadiomics from source, are available in the documentation.

Docker

PyRadiomics also supports Dockers. Currently, 2 dockers are available:

The first one is a Jupyter notebook with PyRadiomics pre-installed with example Notebooks.

To get the Docker:

docker pull radiomics/pyradiomics:latest

The radiomics/notebook Docker has an exposed volume (/data) that can be mapped to the host system directory. For example, to mount the current directory:

docker run --rm -it --publish 8888:8888 -v `pwd`:/data radiomics/notebook

or for a less secure notebook, skip the randomly generated token

docker run --rm -it --publish 8888:8888 -v `pwd`:/data radiomics/notebook start-notebook.sh --NotebookApp.token=''

and open the local webpage at http://localhost:8888/ with the current directory at http://localhost:8888/tree/data.

The second is a docker which exposes the PyRadiomics CLI interface. To get the CLI-Docker:

docker pull radiomics/pyradiomics:CLI

You can then use the PyRadiomics CLI as follows:

docker run radiomics/pyradiomics:CLI --help

For more information on using docker, see here

Usage

PyRadiomics can be easily used in a Python script through the featureextractor module. Furthermore, PyRadiomics provides a commandline script, pyradiomics, for both single image extraction and batchprocessing. Finally, a convenient front-end interface is provided as the 'Radiomics' extension for 3D Slicer, available here.

3rd-party packages used in pyradiomics:

  • SimpleITK (Image loading and preprocessing)
  • numpy (Feature calculation)
  • PyWavelets (Wavelet filter)
  • pykwalify (Enabling yaml parameters file checking)
  • six (Python 3 Compatibility)
  • scipy (Only for LBP filter, install seperately to enable this filter)
  • scikit-image (Only for LBP filter, install seperately to enable this filter)
  • trimesh (Only for LBP filter, install seperately to enable this filter)

See also the requirements file.

3D Slicer

PyRadiomics is also available as an extension to 3D Slicer. Download and install the 3D slicer nightly build, the extension is then available in the extension manager under "SlicerRadiomics".

License

This package is covered by the open source 3-clause BSD License.

Developers

1Department of Radiation Oncology, Dana-Farber Cancer Institute, Brigham and Women's Hospital, Harvard Medical School, Boston, MA, 2Department of Radiology, Brigham and Women's Hospital, Harvard Medical School, Boston, MA, 3Department of Radiology, Netherlands Cancer Institute, Amsterdam, The Netherlands, 4GROW-School for Oncology and Developmental Biology, Maastricht University Medical Center, Maastricht, The Netherlands, 5Kitware, 6Isomics

Contact

We are happy to help you with any questions. Please contact us on the pyradiomics email list.

We welcome contributions to PyRadiomics. Please read the contributing guidelines on how to contribute to PyRadiomics.

This work was supported in part by the US National Cancer Institute grant 5U24CA194354, QUANTITATIVE RADIOMICS SYSTEM DECODING THE TUMOR PHENOTYPE.

Project details


Download files

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

Source Distribution

pyradiomics-2.1.0.tar.gz (34.4 MB view details)

Uploaded Source

Built Distributions

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

pyradiomics-2.1.0-cp36-cp36m-win_amd64.whl (107.2 kB view details)

Uploaded CPython 3.6mWindows x86-64

pyradiomics-2.1.0-cp36-cp36m-manylinux1_x86_64.whl (136.3 kB view details)

Uploaded CPython 3.6m

pyradiomics-2.1.0-cp36-cp36m-macosx_10_13_x86_64.whl (100.4 kB view details)

Uploaded CPython 3.6mmacOS 10.13+ x86-64

pyradiomics-2.1.0-cp35-cp35m-win_amd64.whl (107.1 kB view details)

Uploaded CPython 3.5mWindows x86-64

pyradiomics-2.1.0-cp35-cp35m-manylinux1_x86_64.whl (136.3 kB view details)

Uploaded CPython 3.5m

pyradiomics-2.1.0-cp35-cp35m-macosx_10_13_x86_64.whl (100.3 kB view details)

Uploaded CPython 3.5mmacOS 10.13+ x86-64

pyradiomics-2.1.0-cp34-cp34m-win_amd64.whl (102.0 kB view details)

Uploaded CPython 3.4mWindows x86-64

pyradiomics-2.1.0-cp34-cp34m-manylinux1_x86_64.whl (136.0 kB view details)

Uploaded CPython 3.4m

pyradiomics-2.1.0-cp34-cp34m-macosx_10_13_x86_64.whl (100.2 kB view details)

Uploaded CPython 3.4mmacOS 10.13+ x86-64

pyradiomics-2.1.0-cp27-cp27mu-manylinux1_x86_64.whl (132.4 kB view details)

Uploaded CPython 2.7mu

pyradiomics-2.1.0-cp27-cp27m-win_amd64.whl (102.3 kB view details)

Uploaded CPython 2.7mWindows x86-64

pyradiomics-2.1.0-cp27-cp27m-macosx_10_13_x86_64.whl (100.1 kB view details)

Uploaded CPython 2.7mmacOS 10.13+ x86-64

File details

Details for the file pyradiomics-2.1.0.tar.gz.

File metadata

  • Download URL: pyradiomics-2.1.0.tar.gz
  • Upload date:
  • Size: 34.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for pyradiomics-2.1.0.tar.gz
Algorithm Hash digest
SHA256 dfcfbe0ac0a1e4d3d2813b00b4b0b55a1462009990b1ea810cd54fbf1739caea
MD5 cc424d934c7bad352f9e64a9f3ea4922
BLAKE2b-256 8c099f277fbf71eae5e50c1fc17e58ba9a8a4e77b97686c737147d8b9a060868

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 107.2 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 50f83f60e5e0bc4229fb506071a14a82a7bcdf22acf48bb617914887d58843f7
MD5 1e5e5c00b394bb65116de3dc00c15e9a
BLAKE2b-256 f4d746ef54cf428788140e4afbbe34a6f621d8c8003ad407ebe860927e8209cf

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 136.3 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for pyradiomics-2.1.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 3ce7461d0ead668e60372906eadb6b0bc649f56766b999b453cb8bae118244a6
MD5 a9035cc5ac3e3d56ed88198040c3ce12
BLAKE2b-256 acf2dbc3c142a14a901f05233c1aaace9c9718326c1537943cb6dce63cf967dd

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp36-cp36m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp36-cp36m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 100.4 kB
  • Tags: CPython 3.6m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp36-cp36m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 a100f61a12e6d2ae44ccba252ae1acaa65fad37d78cc0cb620402d0f9c128bdc
MD5 207937aff58eb8e7409dec820dad936f
BLAKE2b-256 891ff7bd1c9ae876bd7176201a6e28d213086391289a32cf553508a47bd32fae

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 107.1 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 3567bd8134251b1217a16c5d836409654430129ddcfc15f6ccbd087bd54e6bb6
MD5 02bbf612a7c1d0ccfe5b02665116a7bb
BLAKE2b-256 6519ed7ca0e89a71bae962323eae5676241c3d7484aa61792e04397ee67a8517

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 136.3 kB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for pyradiomics-2.1.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 081ddd087dfcb7b58b2243deeb6793ba0f194541349d2cf8073e5b3e27e42c75
MD5 23a1ebbc418a45f19fe574fefbb6d001
BLAKE2b-256 ebb0ceda679cdaea59bfcf7b6567510b3f39ff69e26ea521784d8b0091758247

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp35-cp35m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp35-cp35m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 100.3 kB
  • Tags: CPython 3.5m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp35-cp35m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 984a399c90509e5c6392816f019865084318591dc7197a60d74c3a656cb3eefb
MD5 7b8fae7cb68f765a901d2b71e6b90012
BLAKE2b-256 2ee07088b12b95a5dc1c7e7599adce5a6ea0bc36b397558e3cf80f80949b2cc7

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp34-cp34m-win_amd64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp34-cp34m-win_amd64.whl
  • Upload date:
  • Size: 102.0 kB
  • Tags: CPython 3.4m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp34-cp34m-win_amd64.whl
Algorithm Hash digest
SHA256 0ae2394dc6bc720a477d946552e0f8b414b76453621965dddbecf34937647677
MD5 11126c86a4a9939cc77ebd5f130ea6e9
BLAKE2b-256 7ac2a6652fd4b2b2d13a6165d3986f5f9c13c8aaf33a93bcfa6e6fa1f3d2577f

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp34-cp34m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 136.0 kB
  • Tags: CPython 3.4m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for pyradiomics-2.1.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 2c38aa2300bc246ffdc84f2ce3446d632da7a11749caa890fa1a719fe52fe0b7
MD5 1cd20146cac006fd3b353784f0bf6fad
BLAKE2b-256 d4dc6d26738a4b845b38c95c490e0900505f550cfe458bc5f40e71373e9742cc

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp34-cp34m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp34-cp34m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 100.2 kB
  • Tags: CPython 3.4m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp34-cp34m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 f7a6056b1bc93c7a284b7cdc06ceab8ae076e151add0e9933d7466dc8ea2502e
MD5 48e7b3fd50bf9213c6816239cc72419c
BLAKE2b-256 f0d12e2d380607a06d6d7839e0bd5625d44cdffa4d38ede90b7e7ef2644ee9bf

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp27-cp27mu-manylinux1_x86_64.whl
  • Upload date:
  • Size: 132.4 kB
  • Tags: CPython 2.7mu
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

File hashes

Hashes for pyradiomics-2.1.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d20febab41154261d0e53d17bd84b09b3a0731046591d4896c295ba193ba6ab0
MD5 05d090070e30882181a8d2b36bbcac3d
BLAKE2b-256 a476919a6f48f396cee5ba2d2b5c38f5b3a172ef6c93eefcdfe8aef8018d8515

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp27-cp27m-win_amd64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp27-cp27m-win_amd64.whl
  • Upload date:
  • Size: 102.3 kB
  • Tags: CPython 2.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp27-cp27m-win_amd64.whl
Algorithm Hash digest
SHA256 fb780823e364f1d00906b9849c6f48ea0fc41cd78b0ba1029e9c225966e7b82a
MD5 020903aaef244c9a049cd2faeb0c768e
BLAKE2b-256 84a90c58e885e6b519df7c0ae8ffbc3724f7648ddb807c97c58207225a891d15

See more details on using hashes here.

File details

Details for the file pyradiomics-2.1.0-cp27-cp27m-macosx_10_13_x86_64.whl.

File metadata

  • Download URL: pyradiomics-2.1.0-cp27-cp27m-macosx_10_13_x86_64.whl
  • Upload date:
  • Size: 100.1 kB
  • Tags: CPython 2.7m, macOS 10.13+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/2.7.15

File hashes

Hashes for pyradiomics-2.1.0-cp27-cp27m-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 1853a8eae66cef023e86ff7e0d444dc4a20d4da7da667003abd1fc86c3a91d50
MD5 5f04ad8021164edda9955e06c47ffc60
BLAKE2b-256 55c7d2bcb8a7a72757f50870cc2cb93d737d6d38d9e44d9635ac5507dddd3431

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