CoilCompression

Contents

CoilCompression#

class pulserver.recon.CoilCompression[source]#

Bases: object

Reduce the receive channels of a unit’s k-space to virtual channels.

The basis is estimated once per stream, from the first unit it is given, and applied to every unit. It consists of the eigenvectors of the channel covariance over every placed sample of the unit’s calibration k-space, or of its imaging k-space where it holds no calibration data (bartorch.tools.cc()), of which the n_virtual with the largest eigenvalues are kept: the virtual channels are uncorrelated and ordered by decreasing power. bartorch.tools.ccapply() projects the k-space of data.data and data.ref onto it. The basis is stored in context.coil_compression, and coil_maps() records it with the maps it estimates, which only units compressed by the same basis reuse: compress a unit before asking for its maps.

The returned unit holds new buffers with n_virtual channels, and shares its counters and acquisitions with the unit it was made from. bartorch is imported when a unit is compressed; the coils extra installs it.

Corresponds to Gadgetron’s GenericReconEigenChannelGadget.

Parameters:

n_virtual – Virtual channels kept, at most the number of channels of the first unit.