Skip to main content

Automated software for analysing clinical spinal MRI scans.

Project description

DISCLAIMER: SpineNet is not a diagnostics tool nor a medical device. It should only be used for research.

Introduction

SpineNet is automated software for analysing clinical spinal MRI scans. Current functionality includes:

  1. Detecting and labelling vertebral bodies in sagittally-sliced MRI scan across a range of common sequences (e.g. T1, T2, STIR etc.) and fields of view (lumbar, cervical, whole spine).
  2. Performing radiological grading at each intervertebral disc level in T2 lumbar scans from T12/L1 to L5/S1 for a range of common degenerative changes.

As well as using SpineNet for detecting and labelling vertebral bodies and the existing radiological gradings, you can also use the codebase for finetuning the model to perform additional gradings. For example, we have previously adapted it to detect vertebral fractures, cauda equina, ankylosing spondylitis and other diseases.

Please note that by using SpineNet you agree to our terms of access. Amongst other things, this prohibits the use of SpineNet for commercial purposes. If you wish to acquire a more permissive licence of SpineNet, please contact us.

Getting Started

SpineNet's documentation is available here

Install enviroments

A minimal python environment for running SpineNet can be found in requirements.txt and can be installed used

$ python -m venv spinenet-venv
$ source spinenet-venv/bin/activate
$ pip install -r requirements.txt

Running The Code

Clone the repository and add the root directory to your PYTHONPATH, e.g. via

$ export PYTHONPATH=$PYTHONPATH:/path/to/SpineNet

When using SpineNet for the first time, you first must download weights from the VGG public server, by calling the function

spinenet.download_weights(verbose=True)

or to re-download them:

spinenet.download_weights(verbose=True,force=True)

For a guide on using SpineNet, see the 01-quickstart.ipynb tutorial notebook.

Citation

If you use SpineNet in your research, please cite our technical report, which can be found on arxiv here

"SpineNetV2: Automated Detection, Labelling and Radiological Grading Of Clinical MR Scans" (2022), Rhydian Windsor, Amir Jamaludin, Timor Kadir, Andrew Zisserman, Technical Report

You may also wish to cite our other works in this area:

"A Convolutional Approach to Vertebrae Detection and Labelling in Whole Spine MRI" (2020), Rhydian Windsor, Amir Jamaludin, Timor Kadir, Andrew Zisserman, Medical Image Computing and Computer Aided Intervention (MICCAI) 2020. Springer, ArXiv

"Context-Aware Transformers For Spinal Cancer Detection and Radiological Grading" (2022), Rhydian Windsor, Amir Jamaludin, Timor Kadir, Andrew Zisserman, Medical Image Computing and Computer Aided Intervention (MICCAI) 2022. ArXiv

"SpineNet: Automated classification and evidence visualization in spinal MRIs" (2017), Amir Jamaludin, Timor Kadir, Andrew Zisserman, Medical Image Analysis 41, p 63-73.

"ISSLS PRIZE IN BIOENGINEERING SCIENCE 2017: Automation of reading of radiological features from magnetic resonance images (MRIs) of the lumbar spine without human intervention is comparable with an expert radiologist", (2017) Amir Jamaludin, Meelis Lootus, Timor Kadir, Andrew Zisserman, Jill Urban, Michele C. Battié, Jeremy Fairbank, Iain McCall & The Genodisc Consortium, European Spine Journal 26, p 1374–1383

Example Scan Attribution

We are grateful to the providers of the example scans used in the tutorials (originally from radiopedia.org).

Coming Soon

  • Documentation
  • Pip installation
  • In-depth tutorials on finetuning SpineNet's grading network

We are always looking to extend SpineNet to make it a more useful tool. If you have a request for features please get in touch with us.

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

spinenet-2.0.2.tar.gz (1.9 MB view details)

Uploaded Source

Built Distribution

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

spinenet-2.0.2-py3-none-any.whl (45.8 kB view details)

Uploaded Python 3

File details

Details for the file spinenet-2.0.2.tar.gz.

File metadata

  • Download URL: spinenet-2.0.2.tar.gz
  • Upload date:
  • Size: 1.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.31

File hashes

Hashes for spinenet-2.0.2.tar.gz
Algorithm Hash digest
SHA256 153954de10a7027370c4ee348eab2a0a07c873b5b0317ed769f195adddd1333f
MD5 5a81c97d1d3d77756211dc733ae70f0b
BLAKE2b-256 3f2e39097551bd1f2314a2545245a8c37bfbdaf759b6f27d771d2fea9b5a5719

See more details on using hashes here.

File details

Details for the file spinenet-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: spinenet-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 45.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.31

File hashes

Hashes for spinenet-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 338065341e2ee52a453b56e4929501af24166146735c03075f963d9bce67297d
MD5 6a3464f3d65efa80e507ac92574c9856
BLAKE2b-256 c80e37f1c4de086e2113d7abd6e9d7adfd19a051474f3fd66a34c5a6296797eb

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