deepmr.recon.EncodingOp

Contents

deepmr.recon.EncodingOp#

deepmr.recon.EncodingOp(data, mask=None, traj=None, dcf=None, shape=None, nsets=1, basis=None, device=None, cal_data=None, toeplitz=False)[source]#

Prepare MR encoding operator for Cartesian / Non-Cartesian imaging.

Parameters:
  • data (np.ndarray | torch.Tensor) – Input k-space data of shape (nslices, ncoils, ncontrasts, nviews, nsamples).

  • mask (np.ndarray | torch.Tensor, optional) – Sampling mask for Cartesian imaging. Expected shape is (ncontrasts, nviews, nsamples). The default is None.

  • traj (np.ndarray | torch.Tensor, optional) – K-space trajectory for Non Cartesian imaging. Expected shape is (ncontrasts, nviews, nsamples, ndims). The default is None.

  • dcf (np.ndarray | torch.Tensor, optional) – K-space density compensation. Expected shape is (ncontrasts, nviews, nsamples). The default is None.

  • shape (Iterable[int], optional) – Cartesian grid size of shape (nz, ny, nx). The default is None.

  • nsets (int, optional) – Number of coil sensitivity sets of maps. The default is ``1.

  • basis (np.ndarray | torch.Tensor, optional) – Low rank subspace basis of shape (ncontrasts, ncoeffs). The default is None.

  • device (str, optional) – Computational device. The default is None (same as data).

  • cal_data (np.ndarray | torch.Tensor, optional) – Calibration dataset for coil sensitivity estimation. The default is None (use center region of data).

  • toeplitz (bool, optional) – Use Toeplitz approach for normal equation. The default is False.

Returns:

  • E (deepmr.linops.Linop) – MR encoding operator (i.e., ksp = E(img)).

  • EHE (deepmr.linops.NormalLinop) – MR normal operator (i.e., img_n = EHE(img_n-1)).