deepmr.recon.espirit_cal#
- deepmr.recon.espirit_cal(data, coord=None, dcf=None, shape=None, k=6, r=24, t=0.02, c=0.0, nsets=1)[source]#
Derives the ESPIRiT [1] operator.
- Parameters:
data (np.ndarray | torch.Tensor) – Multi channel k-space data.
coord (np.ndarray | torch.Tensor, optional) – K-space trajectory of
shape = (ncontrasts, nviews, nsamples, ndim)
. The default isNone
(Cartesian acquisition).dcf (np.ndarray | torch.Tensor, optional) – K-space density compensation of
shape = (ncontrasts, nviews, nsamples)
. The default isNone
(no compensation).shape (Iterable[int] | optional) – Shape of the k-space after gridding. If not provided, estimate from input data (assumed on a Cartesian grid already). The default is
None
(Cartesian acquisition).k (int, optional) – k-space kernel size. The default is
6
.r (int, optional) – Calibration region size. The default is
24
.t (float, optional) – Rank of the auto-calibration matrix (A). The default is
0.02
.c (float, optional) – Crop threshold that determines eigenvalues “=1”. The defaults is
0.95
.nsets (int, optional) – Number of set of maps to be returned. The default is
1
(conventional SENSE recon).
- Returns:
maps – Output coil sensitivity maps.
- Return type:
np.ndarray | torch.Tensor
Notes
The input k-space
data
tensor is assumed to have the following shape:2Dcart:
(nslices, ncoils, ..., ny, nx)
.2Dnoncart:
(nslices, ncoils, ..., nviews, nsamples)
.3Dcart:
(nx, ncoils, ..., nz, ny)
.3Dnoncart:
(ncoils, ..., nviews, nsamples)
.
For multi-contrast acquisitions, calibration is obtained by averaging over contrast dimensions.
The output sensitivity maps are assumed to have the following shape:
2Dcart:
(nsets, nslices, ncoils, ny, nx)
.2Dnoncart:
(nsets, nslices, ncoils, ny, nx)
.3Dcart:
(nsets, nx, ncoils, nz, ny)
.3Dnoncart:
(nsets, ncoils, nz, ny, nx)
.
References