Skip to main content

Image registration routines for Imagedata

Project description

#################################
Image registration with imagedata
#################################

|Docs Badge| |buildstatus| |coverage| |pypi|


Helper modules to do
image registration for `Imagedata` **Series** objects.

Available modules
#################

NPreg
-----

`NPreg` by Erlend Hodneland is implemented in Python,
and available as a self-supported PyPi package.
There are three implementations of `NPreg`:

* Pure Python/NumPy code. Source code will run on any Python platform.
* Cython code. Binary code compiled for supported platforms.
* CuPy/CUDA code. Source code which will run on platforms with a working `CuPy` and CUDA Toolkit.

FSL
---

`FSL`
(https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/FSL)
has several methods for image registration.
Using `FSL` image registration from Python requires the `FSL` interface from
nipype, as well as a the `FSL` executables.
Each `FSL` method may have different requirements.
The common factor is that `FSL` methods will read and write NIfTI image files.

A function `register_fsl` is provided here.
This function will register a moving Series to a fixed Series.
The default registration method is fsl.MCFLIRT.
The function will accept other registration methods.

ITK Elastix
-----------

The popular `Elastix` GUI is based on the C++ `ITK` image registration routines.
Like the `FSL` methods, there are numerous `Elastix` methods available, all with
different requirements.
The `SimpleElastix`
(https://simpleelastix.readthedocs.io/index.html)
Python library is one particular interface to the `Elastix/ITK` routines.

Rather than providing an interface between `Imagedata` and `SimpleElastix`,
a skeleton program is suggested.

Prerequisites
#############

NPreg on CUDA GPU
-----------------

imagedata-registration will benefit from a CUDA GPU. If this is available,
install `CuPy` (https://docs.cupy.dev).

* First, install the `CUDA Toolkit`: see https://developer.nvidia.com/cuda-toolkit.

* There are different options for installing `CuPy`. See:
https://docs.cupy.dev/en/stable/install.html

FSL
---

The imagedata-registration FSL module is a wrapper around the official FSL tools.
A native FSL installation is required on the host computer.

SimpleElastix
-------------

SimpleElastix must be installed separately:

.. code-block::

pip install SimpleITK-SimpleElastix

Installation
############

.. code-block::

pip install imagedata-registration

Examples
########

`NPreg examples <docs/NPreg.rst>`_

`FSL examples <docs/FSL.rst>`_

`SimpleElastix examples <docs/SimpleElastix.rst>`_


.. |Docs Badge| image:: https://readthedocs.org/projects/imagedata_registration/badge/
:alt: Documentation Status
:scale: 100%
:target: https://imagedata_registration.readthedocs.io

.. |buildstatus| image:: https://github.com/erling6232/imagedata_registration/actions/workflows/build_wheels.yml/badge.svg
:target: https://github.com/erling6232/imagedata_registration/actions?query=branch%3Amain
:alt: Build Status

.. _buildstatus: https://github.com/erling6232/imagedata_registration/actions

.. |coverage| image:: https://codecov.io/gh/erling6232/imagedata_registration/branch/main/graph/badge.svg?token=1OPGNXJ8Z3
:alt: Coverage
:target: https://codecov.io/gh/erling6232/imagedata_registration

.. |pypi| image:: https://img.shields.io/pypi/v/imagedata-registration.svg
:target: https://pypi.python.org/pypi/imagedata-registration
:alt: PyPI Version

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

imagedata-registration-0.2.0.tar.gz (281.9 kB view details)

Uploaded Source

Built Distributions

imagedata_registration-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl (511.3 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

imagedata_registration-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl (919.2 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

imagedata_registration-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl (919.7 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

imagedata_registration-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl (919.5 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file imagedata-registration-0.2.0.tar.gz.

File metadata

  • Download URL: imagedata-registration-0.2.0.tar.gz
  • Upload date:
  • Size: 281.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for imagedata-registration-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b49b1be48699063fa089d54c189fab8277fce0b6edbe425d20b8ae7feebab710
MD5 37726ef46567468fd69f8c5d3894fa0e
BLAKE2b-256 bd6220b253599eae1cbb4fe49ead4f9d78d2c80607e3a842f2da5ae58deaed44

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9e46d99884ae3cabbc0a4d7767e3f9b43dd5e5bf59040aba5176a6d908ffa372
MD5 a16b06d8e2a4796f9be94d7e3ae70963
BLAKE2b-256 0c5c6eb3073277a0cf23ce3274648ff77760ca47a50060082b50f84c59579fdc

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 43a48785c087d21d68bb8c00541d9f891d93a75fb391eb6652a7890f08895746
MD5 990b25b4ce6ea064103320e3a998071e
BLAKE2b-256 ce293a1fa33735c8bd3344c142b98ac280853a20e9be0b5d5c105126c69a942f

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0ff1702cca72edcca0beecca002b03b807710caf56fc8e6c417ef329bd47bf15
MD5 3ae8c5b6e05133a5ba8c5b42368311d8
BLAKE2b-256 95ca0a9a1a7d7826b8470fe63defc9f973f2b76c5cbc7aa600f4bb9739741eff

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4200da9b9bb3229254504acd01dbe01b1a420435952fadeb28354ae435292d35
MD5 c82421ecb8de03ff0ae0900b40e3259b
BLAKE2b-256 a9e1524276939ab244bb8d81008263a9057cd4541b7edebe08c9ddea6e27d4e9

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 234ce459776a8b50257f50fa8a5f902c37252861a3c9ba882c9a53554ba52b07
MD5 d109e4dc7f32ae646e436ac32ba70127
BLAKE2b-256 9b2558cd17c3fe1a2e2bfe31f4bcb699a0de6c29cbe34e13591812a159970ec3

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8673bac7ef8442ddd3732c4e3969284e7084227310b77ae60a802390d4951194
MD5 c4b7e721607f2e9b62e1208e9af31655
BLAKE2b-256 dc7f258d5bae8b32d449c254d7618b57f96cbd74488362e6218f231ba635eddb

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 69fc7c1bc0296350ca44463d8b076cf51a5704c70ecbf90551d9600fd6a514c7
MD5 22d18d58f35a397e3849b0a5ed2a9d08
BLAKE2b-256 a28f0e94718dde6b7391c4f651de0c48888968b455ec55fb28bd4ba3267f005f

See more details on using hashes here.

File details

Details for the file imagedata_registration-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for imagedata_registration-0.2.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 bb4d22fefe03ffe18c1b7dd9f7e14410b4779d7f5a09d2209fb741239e144c82
MD5 24fed3079a0e35d35d34603a69ad2d43
BLAKE2b-256 00e2dfbe1953c9927a75ad7279ee0bac6a701e99d09e4738d545ba1e3e4bb89a

See more details on using hashes here.

Supported by

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