Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

FSL Python library

Project description

https://img.shields.io/pypi/v/fslpy.svg https://anaconda.org/conda-forge/fslpy/badges/version.svg https://zenodo.org/badge/DOI/10.5281/zenodo.1470750.svg https://git.fmrib.ox.ac.uk/fsl/fslpy/badges/master/coverage.svg

The fslpy project is a FSL programming library written in Python. It is used by FSLeyes.

fslpy is tested against Python versions 3.5, 3.6 and 3.7.

Installation

Install fslpy and its core dependencies via pip:

pip install fslpy

fslpy is also available on conda-forge:

conda install -c conda-forge fslpy

Dependencies

All of the core dependencies of fslpy are listed in the requirements.txt file.

Some extra dependencies are listed in requirements-extra.txt which provide addditional functionality:

  • wxPython: The fsl.utils.idle module has functionality to schedule functions on the wx idle loop.
  • indexed_gzip: The fsl.data.image.Image class can use indexed_gzip to keep large compressed images on disk instead of decompressing and loading them into memory..
  • trimesh/rtree: The fsl.data.mesh.TriangleMesh class has some methods which use trimesh to perform geometric queries on the mesh.
  • Pillow: The fsl.data.bitmap.Bitmap class uses Pillow to load image files.

If you are using Linux, you need to install wxPython first, as binaries are not available on PyPI. Install wxPython like so, changing the URL for your specific platform:

pip install -f https://extras.wxpython.org/wxPython4/extras/linux/gtk2/ubuntu-16.04/ wxpython

Once wxPython has been installed, you can type the following to install the rest of the extra dependencies:

pip install fslpy[extras]

Dependencies for testing and documentation are listed in the requirements-dev.txt file.

Non-Python dependencies

The fsl.data.dicom module requires the presence of Chris Rorden’s dcm2niix program.

The rtree library assumes that libspatialindex is installed on your system.

The fsl.transform.x5 module uses h5py, which requires libhdf5.

Documentation

fslpy is documented using sphinx. You can build the API documentation by running:

pip install -r requirements-dev.txt
python setup.py doc

The HTML documentation will be generated and saved in the doc/html/ directory.

Tests

Run the test suite via:

pip install -r requirements-dev.txt
python setup.py test

A test report will be generated at report.html, and a code coverage report will be generated in htmlcov/.

Contributing

If you are interested in contributing to fslpy, check out the contributing guide.

Credits

The fsl.data.dicom module is little more than a thin wrapper around Chris Rorden’s dcm2niix program.

The example.mgz file, used for testing, originates from the nibabel test data set.

Project details


Download files

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

Files for fslpy, version 2.7.0
Filename, size File type Python version Upload date Hashes
Filename, size fslpy-02.7.0-py2.py3-none-any.whl (244.3 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size fslpy-2.7.0.tar.gz (4.6 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page