Skip to main content

PyTorch-based ESPIRiT coil sensitivity calibration for MRI

Project description

ESPIRiT

PyTorch-based ESPIRiT coil sensitivity calibration for MRI.

Single codebase that runs on CPU, CUDA GPU, and Apple Silicon (MPS) — no separate code paths needed.

Notice

This package contains a PyTorch translation of the ESPIRiT implementation from the BART (Berkeley Advanced Reconstruction Toolbox), © 2013–2026 The Regents of the University of California and BART Developer Team. BART is licensed under the BSD 3-Clause License. See https://codeberg.org/mrirecon/bart.

Usage

1) CLI

uvx espirit kspace.npy

2) Python

uv add espirit
import numpy as np
import torch
from espirit import espirit

# NumPy
kspace_np = np.load("kspace.npy")
csm_np = espirit(kspace_np)

# PyTorch 
kspace_pt = torch.randn(8, 24, 24, 24, dtype=torch.complex64)
csm_pt = espirit(kspace_pt)

Options

csm = espirit(
    kspace,             # (n_coils, *spatial_dims)
    calib_size=24,      # calibration region size
    kernel_size=6,      # sliding-window kernel size
    threshold=0.001,     # singular-value threshold
    mask_threshold=0.8, # eigenvalue mask threshold
    normalize=True,     # RSS=1 normalization
    rotphase=True,      # remove phase ambiguity
    device=None         # cuda, mps, or cpu (auto-detect when None)
)

Device support

Device Backend Notes
cpu NumPy/MKL Always available
cuda NVIDIA GPU Requires CUDA toolkit
mps Apple Metal macOS with Apple Silicon

The same code runs on all devices — PyTorch handles dispatch automatically.

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

espirit-0.1.3.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

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

espirit-0.1.3-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file espirit-0.1.3.tar.gz.

File metadata

  • Download URL: espirit-0.1.3.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for espirit-0.1.3.tar.gz
Algorithm Hash digest
SHA256 579cb8db9621653c8ae98f1c012677930ea68b8317d00327d1b069047ac9bdb8
MD5 f1cdfc2e0d09abed2f327e80717179a2
BLAKE2b-256 ca3395369b6095d4f048aacb3acb7b558bad3150aa4f4ff446c5b5297f7c50ef

See more details on using hashes here.

Provenance

The following attestation bundles were made for espirit-0.1.3.tar.gz:

Publisher: python-publish.yml on oscarvanderheide/espirit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file espirit-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: espirit-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for espirit-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2e32e777e27228eba25de95a5867c86c53f37738afd9890eea5997c5a3aa107b
MD5 ea53ce982bdd331f31ac54568c66bc98
BLAKE2b-256 d8048f14cadfed60141b31ad08df132e7a143b580bb149d8cfd0dbbfc2b77f83

See more details on using hashes here.

Provenance

The following attestation bundles were made for espirit-0.1.3-py3-none-any.whl:

Publisher: python-publish.yml on oscarvanderheide/espirit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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