MRIfinufft#
- class mrinufft.operators.interfaces.finufft.MRIfinufft(samples, shape, density=False, n_coils=1, n_batchs=1, n_trans=1, smaps=None, squeeze_dims=True, **kwargs)[source]#
Bases:
FourierOperatorCPUMRI Transform Operator using finufft.
- Parameters:
samples (array) – The samples location of shape
Nsamples x N_dimensions. It should be C-contiguous.shape (tuple) – Shape of the image space.
n_coils (int) – Number of coils.
n_batchs (int) – Number of batchs .
n_trans (int) – Number of parallel transform
density (bool or array) –
- Density compensation support.
If a Tensor, it will be used for the density.
If True, the density compensation will be automatically estimated, using the fixed point method.
If False, density compensation will not be used.
smaps (array) – Sensitivity maps of shape
N_coils x *shape.squeeze_dims (bool) – If True, the dimensions of size 1 for the coil and batch dimension will be squeezed.
Methods
__init__adj_opNon Cartesian MRI adjoint operator.
cgConjugate Gradient method to solve the inverse problem.
check_shapeValidate the shapes of the image or k-space data against operator shapes.
compute_densityCompute the density compensation weights and set it.
compute_smapsCompute the sensitivity maps and set it.
data_consistencyCompute the gradient data consistency.
get_lipschitz_cstReturn the Lipschitz constant of the operator.
make_autogradMake a new Operator with autodiff support.
opNon Cartesian MRI forward operator.
Compute the density compensation weights for a given set of kspace locations.
Toggle between the gradient trajectory and the plan for type 1 transform.
with_autogradReturn a Fourier operator with autograd capabilities.
with_off_resonance_correctionReturn a new operator with Off Resonnance Correction.
Attributes
autograd_availableavailablebackendcpx_dtypeReturn complex floating precision of the operator.
densityDensity compensation of the operator.
dtypeReturn floating precision of the operator.
interfacesn_batchsNumber of coils for the operator.
n_coilsNumber of coils for the operator.
n_samplesReturn the number of samples used by the operator.
ndimNumber of dimensions in image space of the operator.
norm_factorNormalization factor of the operator.
Return the samples used by the operator.
shapeShape of the image space of the operator.
smapsSensitivity maps of the operator.
uses_densityReturn True if the operator uses density compensation.
uses_senseReturn True if the operator uses sensitivity maps.
Examples using
mrinufft.operators.interfaces.finufft.MRIfinufft#- property samples#
Return the samples used by the operator.
- toggle_grad_traj()[source]#
Toggle between the gradient trajectory and the plan for type 1 transform.
- classmethod pipe(kspace_loc, volume_shape, num_iterations=10, osf=2, normalize=True, **kwargs)[source]#
Compute the density compensation weights for a given set of kspace locations.
- Parameters:
kspace_loc (np.ndarray) – the kspace locations
volume_shape (np.ndarray) – the volume shape
num_iterations (int default 10) – the number of iterations for density estimation
osf (float or int) – The oversampling factor the volume shape
normalize (bool) – Whether to normalize the density compensation. We normalize such that the energy of PSF = 1