Skip to main content
https://github.com/mind-inria/mri-nufft/raw/master/docs/_static/logos/mri-nufft.png

Docs PyPI JOSS Coverage CI CD Style

Doing non-Cartesian MR Imaging has never been so easy

Introduction

MRI-NUFFT is an open-source Python library that provides state-of-the-art non-Cartesian MRI tools: trajectories, data loading and fast and memory-efficient operators to be used on laptops, clusters, and MRI consoles.

In particular, it provides a unified interface for computing Non-Uniform Fast Fourier Transform (NUFFT), using the specialized backend of your choice ((cu)finufft, gpunufft, torchkbnufft, … ), and with integrated MRI-specific features such as:

MRI-nufft is a nice and polite piece of software, that will return the same type of array (e.g numpy, cupy, torch) provided at input, without extra copies for conversions.

On top of that we ship a variety of non-Cartesian trajectories commonly used by the MRI community, and even tools to helps you develop new ones.

https://github.com/mind-inria/mri-nufft/raw/master/docs/_static/mri-nufft-scheme.png

Modularity and Integration of MRI-nufft with the python computing libraries.

Usage

from scipy.datasets import face # For demo
import numpy as np
import mrinufft

# Create 2D Radial trajectories for demo
samples_loc = mrinufft.initialize_2D_radial(Nc=100, Ns=500)
# Get a 2D image for the demo (512x512)
image = np.complex64(face(gray=True)[256:768, 256:768])

## The real deal starts here ##
# Choose your NUFFT backend (installed independently from the package)
# pip install mri-nufft[finufft] will be just fine here
nufft =  mrinufft.get_operator("finufft",
    samples_loc, shape=image.shape, density="voronoi", n_coils=1
)

kspace_data = nufft.op(image)  # Image -> Kspace
image2 = nufft.adj_op(kspace_data)  # Kspace -> Image

pinv = nufft.pinv_solver(kspace_data) # get a Pseudo inverse (least square minimization)

For improved image quality, embed these steps in a more complex reconstruction pipeline (for instance using PySAP).

Want to see more ?

Installation

Regular pip install

MRI-nufft is available on PyPi and can be installed with:

pip install mri-nufft

Additionally, you will have to install at least one NUFFT computation backend. See the Documentation for more guidance. Typically we recommend:

pip install mri-nufft[finufft]
pip install mri-nufft[cufinufft] # if you have a NVIDIA GPU and CUDA>=12

Benchmark

A benchmark of NUFFT backend for MRI applications is available in https://github.com/mind-inria/mri-nufft-benchmark

Who is using MRI-NUFFT?

Here are several project that rely on MRI-NUFFT:

Add yours by opening a PR or an issue, let us know how you use MRI-nufft !

How to cite MRI-NUFFT

We published MRI-NUFFT at JOSS

Comby et al., (2025). MRI-NUFFT: Doing non-Cartesian MRI has never been easier. Journal of Open Source Software, 10(108), 7743, https://doi.org/10.21105/joss.07743
@article{Comby2025, doi = {10.21105/joss.07743},
    author = {Comby, Pierre-Antoine and Daval-Frérot, Guillaume and Pan, Caini and Tanabene, Asma and Oudjman, Léna and Cencini, Matteo and Ciuciu, Philippe and GR, Chaithya},
    title = {MRI-NUFFT: Doing non-Cartesian MRI has never been easier}, journal = {Journal of Open Source Software},
    url = {https://doi.org/10.21105/joss.07743},
    year = {2025},
    publisher = {The Open Journal},
    volume = {10},
    number = {108},
    pages = {7743},
}

Contributing

We warmly welcome contributions ! Check out our guidelines , Don’t hesitate to look for unsolved issues

Metadata

Release files for mri-nufft 1.5.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mri-nufft 1.5.1
File Size Uploaded
mri_nufft-1.5.1.tar.gz 3.7 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for mri-nufft 1.5.1
File Interpreter ABI Platform
mri_nufft-1.5.1-py3-none-any.whl Python 3 none any Details

Total release size: 3.8 MB

Release files / mri_nufft-1.5.1.tar.gz

Download URL mri_nufft-1.5.1.tar.gz
Size 3.7 MB
Tags Source
SHA-256 checksum
How to use checksums
8c7a9395dc193a3a9561563203b1f70ecf99931b55f38db664e180ccca3b9660
BLAKE2b-256 checksum
How to use checksums
5fbe479c83c5c300aa7b25fde488ad607ed596e4ea8331ee674d67ee770dfe66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 28, 2026.

Transparency log

Release files / mri_nufft-1.5.1-py3-none-any.whl

Download URL mri_nufft-1.5.1-py3-none-any.whl
Size 194.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dd6b55d28058782c25bcd77aaa2ab68918b69bbf028e0950d7bbf694fdf1dd42
BLAKE2b-256 checksum
How to use checksums
820a31975612df575945df26f424697240f516c7870b0af30d39990d3d415657
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 28, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.5.1 This release

2 release files

1.5.0

2 release files

1.4.0

2 release files

1.3.1

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.11.0

2 release files

0.10.0

2 release files

0.9.1

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page