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.

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

Uploaded Source

Built Distributions

imagedata_registration-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.3-cp311-cp311-macosx_10_9_x86_64.whl (289.5 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

imagedata_registration-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.3-cp310-cp310-macosx_10_9_x86_64.whl (289.0 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

imagedata_registration-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.3-cp39-cp39-macosx_10_9_x86_64.whl (289.6 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

imagedata_registration-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

imagedata_registration-0.2.3-cp38-cp38-macosx_10_9_x86_64.whl (289.3 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

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

File metadata

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

File hashes

Hashes for imagedata-registration-0.2.3.tar.gz
Algorithm Hash digest
SHA256 350c4abbc1b64ae470f26ba0e7c754fa259c80dcf0627fe551150bd7e418776f
MD5 cef43df88d31d588fee8f969a67af9da
BLAKE2b-256 c9c9e3d3451909040ac544ebd8392098978c577618f0b1b839a899ed2e8044fb

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 219fc63e601ce6a54e78cfea65b7dee6b67509a7d1918e93d859d7d6e809e783
MD5 b843220a38a74d03cf07262a21699c09
BLAKE2b-256 7e477f05e42427812774a02ef1961e0970bce28c8e88b8c99e04616ee8f15fbd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 67266ff558ae687d434edbc38a91dcfd43b00e1b26bcab18ddc1721e5cc00c0c
MD5 8cf68d26a39aa1e0d53abeb044da388f
BLAKE2b-256 b0ac958d7b083604dcdc0bc1e0133db1e589a9593cbcad4bfc8064caf55703b1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e2b589fc5f9b7f6c20427cd57261548071d0260411187f18e7f234b3a93593c5
MD5 56a125d3f203008a615f992f9f8c897a
BLAKE2b-256 5f5fb195bcfb37022b229d85010545071677ac335d0d6e13863a995b7fadfcc5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 024733a95061bb6e5d92e64bbd05bd94e3514e649241107b2431f3e2acdda4ed
MD5 12c830f2a154d4a70db5b0a2f38da920
BLAKE2b-256 eaf3cb18fd6a6a0e3d9ca699815c20377fedd4f49e4168dd73fab811305fa72c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 829966532ca67611d51aeac05aa6d574f929f2f787baa0d1c94b327e24aa8578
MD5 2a738bd0f5d0c1fc4165964aa78fbc75
BLAKE2b-256 3d62a0896bc87b4fd6436dda7647abe18ba71aec0912a462c070cd038a3c0158

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4f8b7b020b2359c9e340bba602c32c31e66c5eb9185231a89be4367695a05fed
MD5 637e7cc77aabca07f0457f434b00798a
BLAKE2b-256 3960ee30569b91340df33b31d59c59a7370ba4dc032721373abf29bdd02824ba

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 851d21e20b0d84dcdef31d1111015e53770c2adabe9644019c6d257051272468
MD5 551f3d9ef4ad4779af2cf6486e37fb46
BLAKE2b-256 8e05cdb9251ede67f046529f517ad42096b6e8a0e6e00d25371c289c06cf1b68

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for imagedata_registration-0.2.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1b00b415f5779590cb7951c34e5a55da379000f6c6626c2f86b04ba496bf545c
MD5 a67a5d561834f5a98421a6b799073bdb
BLAKE2b-256 d5319c3e7865df5316a41e6df6bfc9d50fe9ae6a4f2a06c7646ad4c0965404d8

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