Skip to main content

A robust, easy-to-deploy non-uniform Fast Fourier Transform in TensorFlow.

Project description

TF KB-NUFFT

GitHub | Build Status

Simple installation from pypi:

pip install tfkbnufft

About

This package is a verly early-stage and modest adaptation to TensorFlow of the torchkbnufft package written by Matthew Muckley for PyTorch. Please cite his work appropriately if you use this package.

Computation speed

The computation speeds are given in seconds, for a 256x256 image with a spokelength of 512 and 405 spokes. These numbers are not to be directly compared to those of torchkbnufft, since the computation is not the same. They are just to give a sense of the time required for computation.

Operation CPU GPU
Forward NUFFT 0.1676 0.0626
Adjoint NUFFT 0.7005 0.0635

To obtain these numbers for your machine, run the following commands, after installing this package:

pip install scikit-image Pillow
python profile_tfkbnufft.py

These numbers were obtained with a Quadro P5000.

Gradients

w.r.t trajectory

This is experimental currently and is WIP. Please be cautious. Currently this is tested in CI against results from NDFT, but clear mathematical backing to some aspects are still being understood for applying the chain rule.

References

  1. Fessler, J. A., & Sutton, B. P. (2003). Nonuniform fast Fourier transforms using min-max interpolation. IEEE transactions on signal processing, 51(2), 560-574.

  2. Beatty, P. J., Nishimura, D. G., & Pauly, J. M. (2005). Rapid gridding reconstruction with a minimal oversampling ratio. IEEE transactions on medical imaging, 24(6), 799-808.

  3. Feichtinger, H. G., Gr, K., & Strohmer, T. (1995). Efficient numerical methods in non-uniform sampling theory. Numerische Mathematik, 69(4), 423-440.

Citation

If you want to cite the package, you can use any of the following:

@conference{muckley:20:tah,
  author = {M. J. Muckley and R. Stern and T. Murrell and F. Knoll},
  title = {{TorchKbNufft}: A High-Level, Hardware-Agnostic Non-Uniform Fast Fourier Transform},
  booktitle = {ISMRM Workshop on Data Sampling \& Image Reconstruction},
  year = 2020
}

@misc{Muckley2019,
  author = {Muckley, M.J. et al.},
  title = {Torch KB-NUFFT},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/mmuckley/torchkbnufft}}
}

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

tfkbnufft-0.2.5.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

tfkbnufft-0.2.5-py3-none-any.whl (24.4 kB view details)

Uploaded Python 3

File details

Details for the file tfkbnufft-0.2.5.tar.gz.

File metadata

  • Download URL: tfkbnufft-0.2.5.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for tfkbnufft-0.2.5.tar.gz
Algorithm Hash digest
SHA256 6e2c94424323185ed40d686906e4bbe0575f18fb4f18021dc046d7ee902377c4
MD5 251fb44af6385db641fbc837a7618f30
BLAKE2b-256 6bb53e3f9505d3620c7757d762e4fc472d2d2cff4ce3b8cb3f82746c77a51a04

See more details on using hashes here.

File details

Details for the file tfkbnufft-0.2.5-py3-none-any.whl.

File metadata

  • Download URL: tfkbnufft-0.2.5-py3-none-any.whl
  • Upload date:
  • Size: 24.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.2

File hashes

Hashes for tfkbnufft-0.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 131b13663f9bf7345093a5d1ac36ea63b44751e67abef3fc92f825942d32f4d4
MD5 c9a02b938e3ce154860de3e13b72cf9b
BLAKE2b-256 ba8c1248dc9d03b233ce0a0e3973948aa722f6e0cde7265747286c63623faeae

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