Skip to main content

FireANTs: Adaptive Riemannian Optimization for Multi-Scale Diffeomorphic Registration

Project description

:fire: FireANTs: Adaptive Riemannian Optimization for Multi-Scale Diffeomorphic Registration

The FireANTs library is a lightweight registration package for Riemannian diffeomorphic registration on GPUs.

Installation

To use the FireANTs package, you can either

  • Use Docker (see docker/README.md, highly recommended)
  • Clone the repository and install the package locally
  • Install the package directly from PyPI.

If you do not want to use Docker, we recommend using a fresh Anaconda/Miniconda environment to install the package.

conda create -n fireants python=3.9

To install FireANTs locally:

git clone https://github.com/rohitrango/fireants
cd fireants
pip install .
pip install ./fused_ops

By default, doing pip install . will NOT include the fused CUDA operations. I highly recommend installing the fused CUDA operations using pip install ./fused_ops.

Or install from PyPI:

pip install fireants
pip install fireants_fused_ops

Tutorial

To check out some of the tutorials, check out the tutorials/ directory for usage. Alternatively, to reproduce the results in the paper checkout the fireants/scripts/ directory.

Documentation

You can also check out the Documentation. Feel free to reach out to me for improvements in the documentation.

Datasets

In the paper, we use the datasets as following:

  • Klein's evaluation of 14 non-linear registration algorithms: here
  • EMPIRE10 lung registration challenge: here
  • Expansion Microscopy dataset: here

Contributing

Feel free to add issues or pull requests to the repository. We welcome contributions to the package.

Tests

To run the tests, run the following command:

bash run_tests.sh

Feel free to report any issues with the tests to the issues page.

License

Please refer to the LICENSE file for the license details, especially pertaining to redistribution of code and derivative works.

Citation

If you use FireANTs in your research, please cite the following paper:

@article{jena2024fireants,
  title={FireANTs: Adaptive Riemannian Optimization for Multi-Scale Diffeomorphic Registration},
  author={Jena, Rohit and Chaudhari, Pratik and Gee, James C},
  journal={arXiv preprint arXiv:2404.01249},
  year={2024}
}

If you use FireANTs-as-a-layer (Deep Implicit Optimization, code), cite the following paper:

@article{jena2025deep,
  title={Deep implicit optimization enables robust learnable features for deformable image registration},
  author={Jena, Rohit and Chaudhari, Pratik and Gee, James C},
  journal={Medical Image Analysis},
  volume={103},
  pages={103577},
  year={2025},
  publisher={Elsevier}
}

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

fireants-1.0.0.tar.gz (147.8 kB view details)

Uploaded Source

Built Distribution

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

fireants-1.0.0-py3-none-any.whl (203.5 kB view details)

Uploaded Python 3

File details

Details for the file fireants-1.0.0.tar.gz.

File metadata

  • Download URL: fireants-1.0.0.tar.gz
  • Upload date:
  • Size: 147.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.21

File hashes

Hashes for fireants-1.0.0.tar.gz
Algorithm Hash digest
SHA256 815ddcf5e5809902ac73c3f3b3d7f4ef3fc5e62a4ee90006ccc26e351c45134b
MD5 2a4c7e65f8e31269ced1a0468212c764
BLAKE2b-256 941213d5d04cc82316f907e59ef5cdc58c019460959069cb9e78555b9dd76e76

See more details on using hashes here.

File details

Details for the file fireants-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: fireants-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 203.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.21

File hashes

Hashes for fireants-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 067d3134ea8faaeac03b173cc47866027228d11077fbee4616b463d0e0fe3e8d
MD5 8fa9a2feb3d51a0cf8fbe4631f53878e
BLAKE2b-256 744e0d5143400b17dfa56b4de10eff237677893c7dd81b8b340ac952996571a2

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