Skip to main content

Build Status

WORC v2.1.0

Workflow for Optimal Radiomics Classification

WORC is an open-source python package for the easy execution of full Radiomics pipelines.

We aim to establish a general Radiomics platform supporting easy integration of other tools. With our modular build and support of different software languages (python, MATLAB, ruby, java etc.), we want to facilitate and stimulate collaboration, standardisation and comparison of different Radiomics approaches. By combining this in a single framework, we hope to find a universal Radiomics strategy that can address various problems.

Disclaimer

This package is still under development. We try to thoroughly test and evaluate every new build and function, but bugs can off course still occur. Please contact us through the channels below if you find any and we will try to fix them as soon as possible, or create an issue on this Github.

Tutorial

The WORC tutorial is hosted in a separate repository.

Documentation

For more information, see our the Wiki on this Github.

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.

Installation

WORC currently only supports Unix with Python 2 (>2.7.6) systems. Windows is not supported, although WORC can still work under windows.

The package can be installed by running the setup file:

python setup.py install

Make sure you install the requirements first:

pip install -r requirements.txt

Several tools have some (mandatory) prerequisites which are listed below. We highly recommend you to install these to maximally profit from our toolbox.

Fastr Configuration

The installation will create a FASTR configuration file in the $HOME/.fastr/config.d folder. This file is used for configuring fastr, the pipeline execution toolbox we use. More information can be found at the FASTR website. In this file, so called mounts are defined, which are used to locate the WORC tools and your inputs and outputs. Please inspect the mounts and change them if neccesary.

Only if you are using FASTR < 1.3.0, you need to manually add the WORC tools, datatypes and mounts to your FASTR configuration ($HOME/.fastr/config.py). This concerns the following additions:

# Add the WORC FASTR tools and type paths
packagedir = site.getsitepackages()[0]
tools_path = [os.path.join(packagedir, 'WORC', 'resources', 'fastr_tools')] + tools_path
types_path = [os.path.join(packagedir, 'WORC', 'resources', 'fastr_types')] + types_path

# Mounts accessible to fastr virtual file system
mounts['worc_example_data'] = os.path.join(packagedir, 'WORC', 'exampledata')
mounts['apps'] = os.path.expanduser(os.path.join('~', 'apps'))
mounts['output'] = os.path.expanduser(os.path.join('~', 'WORC', 'output'))
mounts['test'] = os.path.join(packagedir, 'WORC', 'resources', 'fastr_tests')

Note that the Python site package does not work properly in virtual environments. You must then manually locate the packagedir.

Optional: Elastix

Image registration is included in WORC through elastix and transformix. In order to use elastix, please download the binaries and place them in your fastr.config.mounts[‘apps’] path. Check the elastix tool description for the correct subdirectory structure. For example, on Linux, the binaries and libraries should be in “../apps/elastix/4.8/install/” and “../apps/elastix/4.8/install/lib” respectively.

Note: optionally, you can tell WORC to copy the metadata from the image file to the segmentation file before applying the deformation field. This requires ITK and ITKTools: see the Install_ITK file for installation instructions. More info on using the copying of metadata can be found on our Github Wiki.

Optional: XNAT

We use the XNATpy package to connect the toolbox to the XNAT online database platforms. You will only need this when you want to download or upload data from or to XNAT. We advise you to specify your account settings in a .netrc file when using this feature, such that you do not need to input them on every request:

echo "machine images.xnat.org
>     login admin
>     password admin" > ~/.netrc
chmod 600 ~/.netrc

3rd-party packages used in WORC:

  • FASTR (Workflow design and building)

  • xnat (Collecting data from XNAT)

  • SimpleITK (Image loading and preprocessing)

  • Pyradiomics

  • Our in-house package PREDICT

See for other requirements the requirements file.

Start

We suggest you start with the WORC Tutorial. Besides a Jupter notebook with instructions, we provide there also an example script for you to get started with. Make sure you input your own data as the sources. Also, check out the unit tests of several tools in the WORC/resources/fastr_tests directory. The example is explained in more detail in the Wiki on this Github.

WIP

  • We are working on improving the documentation.

  • We are working on organizing clinically relevant datasets for examples and unit tests.

  • We will merge to Python 3 support in the coming months (summer 2018), as soon as FASTR moves to Python 3.

License

This package is covered by the open source APACHE 2.0 License.

Contact

We are happy to help you with any questions. Please contact us on the WORC google group.

We welcome contributions to WORC. We will soon make some guidelines. For the moment, converting your toolbox into a FASTR tool will be satisfactory.

Download files

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

Source Distribution

WORC-2.1.0_2.tar.gz (551.6 kB view details)

Uploaded Source

File details

Details for the file WORC-2.1.0_2.tar.gz.

File metadata

  • Download URL: WORC-2.1.0_2.tar.gz
  • Upload date:
  • Size: 551.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.9.1 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.5.2

File hashes

Hashes for WORC-2.1.0_2.tar.gz
Algorithm Hash digest
SHA256 fbee02a1058d2e3e7fe62236a7cfc20260d66f14c4ca4e6b47fde15a9aa08bba
MD5 129825cfa02e3c7175a175775d062cb9
BLAKE2b-256 fbc0fb3ee89289dd4e46d7724fd3b9b4b373d3e148abda90c607d802004f3adc

See more details on using hashes here.

Release history Release notifications | RSS feed

3.7.0

2 files

3.6.3

1 file

3.6.2

1 file

3.6.1

1 file

3.6.0

1 file

3.5.0

1 file

3.4.5

1 file

3.4.4

1 file

3.4.3

1 file

3.4.2

1 file

3.4.1

1 file

3.4.0

1 file

3.3.5

1 file

3.3.4

1 file

3.3.3

1 file

3.3.2

1 file

3.3.1

1 file

3.3.0

1 file

3.2.2

1 file

3.2.1

1 file

3.2.0

1 file

3.1.4

1 file

3.1.3

1 file

3.1.2

1 file

3.1.1

1 file

3.1.0

1 file

3.0.0

1 file

2.1.3

1 file

2.1.2

1 file

2.1.1

1 file

This release

2.1.0 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page