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.1.tar.gz (281.9 kB view details)

Uploaded Source

Built Distributions

imagedata_registration-0.2.1-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.1-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.1-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.1-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.1-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.1-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.1-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.1-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.1.tar.gz.

File metadata

  • Download URL: imagedata-registration-0.2.1.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.1.tar.gz
Algorithm Hash digest
SHA256 dbcb995a83c7ad2bb9000f35d8ae372ba1769238b17d5234ffe0d0639dd021cf
MD5 34606a8067d6ec1e8749a4e008f8af09
BLAKE2b-256 d367614afbb48afb9fd570fe53350a27218f27b03ca82f020121cd442fafbb77

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 668906a50055ecfc52d2b9dcf7d507bfe52b9e2344d6094e5f1024cd93794117
MD5 ac4d8fc4a524fb83157a585137cd5290
BLAKE2b-256 4dfdd56c467925f77a2723636c9b8c950ba36dcdaf4b0b8c32615599b113b077

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 7a28faccb2808b87475c1c9de09a05c8246891f323898cc21de62840164c2a2d
MD5 149a8ab512b363568cc5d91abfa5e91e
BLAKE2b-256 e613c826929689403bc457c988e72bca9d3d7d0d07d5a51fca8109940125de25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f0eb171103979155b638a1a7b9064df94b0a41813e843ed85f85d63e8fa0b245
MD5 864d6ef6e0779e56375a82ec551fd163
BLAKE2b-256 f7fcce7f325a3838ae43623a9449531b5b27f4828156247a9c0055c1a48d0b35

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 66d4c2e72462303744331e1e8e99d3ebeb03092e982c624005e7de059a837e87
MD5 f0ce8f230e93e78363b133630989faec
BLAKE2b-256 bb19ff65a96bb7985e7e10c9a8a089092d4cbcad035f512c1583d74cbdc5c410

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3452a538875c546f62997b9dc9b896367652aa48ecb122ce98f7bc60783cfcb6
MD5 62f7fdbc1628c3b8354df1c9b008097f
BLAKE2b-256 4c4f68d582888439f7de28357a2f655262d6d8f601d21a4121efdb54be79fc6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f203dbc65b29e9bcdd89f26084478a54b56b10646307f346252dc2b5577b53d3
MD5 1d751d9fd0ac49b4f554e0e479d0839f
BLAKE2b-256 23f81601234376668ac091fc04f0af87b2ce8485a8f55574cfa0230212d977c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b1f14b9b764d20c47ec3e30f294e0d5947fa395d08b8589e140b9722d6991e10
MD5 cdaa04a522b9344c32916aac6ad24456
BLAKE2b-256 f7dca539973857e51714c2829951613212cac75217cb0456b987835c24cd3f41

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.1-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 8119918786c0ea38fe7aac3d5128c43180fc69b64afac417ff06220bc183ed18
MD5 f8c3819ef0224af0573ce082cf67488e
BLAKE2b-256 106afdd76443604d5e22b1e3e7981e5e72906080ad2a0188fa49c22f78d4666d

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