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

Uploaded Source

Built Distribution

tfkbnufft-0.2.2-py3-none-any.whl (23.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: tfkbnufft-0.2.2.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.5.0.1 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.8

File hashes

Hashes for tfkbnufft-0.2.2.tar.gz
Algorithm Hash digest
SHA256 c9d7f80a8eb188cc86a7cc05164e8a4921d1d3713831f31cdc70116b0263ff13
MD5 e516bce46de6d4ef28d6802408d5066b
BLAKE2b-256 3992a1141ec529c237f83d3e1a9cc03fe9035707a6e0ede68cb55ae0287bf576

See more details on using hashes here.

File details

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

File metadata

  • Download URL: tfkbnufft-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 23.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.5.0.1 requests/2.23.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.6.8

File hashes

Hashes for tfkbnufft-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f9ba7bea1e90adbe51fe722f760c0e556c8f5d535b26f46994cb80cd6c81e69b
MD5 f5f187a861d1a8169a694b7bb75bd694
BLAKE2b-256 7ddd5f9859f42566902b98db67e36f18178bbeb2e194959699e7ff07aa267c5e

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