mrpro.algorithms.prewhiten_kspace

mrpro.algorithms.prewhiten_kspace(kdata: KData, knoise: KNoise, scale_factor: float | Tensor = 1.0) KData[source]

Calculate noise prewhitening matrix and decorrelate coils.

Steps:

  • Calculate noise correlation matrix N

  • Carry out Cholesky decomposition L L^H = N

  • Estimate noise decorrelation matrix D = inv(L)

  • Apply D to k-space data

More information can be found in [ISMa] [HAN2014] [ROE1990].

If the the data has more samples in the ‘other’-dimensions (batch/slice/…), the noise covariance matrix is calculated jointly over all samples. Thus, if the noise is not stationary, the noise covariance matrix is not accurate. In this case, the function should be called for each sample separately.

Parameters:
  • kdata – K-space data.

  • knoise – Noise measurements.

  • scale_factor – Square root is applied on the noise covariance matrix. Used to adjust for effective noise bandwidth and difference in sampling rate between noise calibration and actual measurement: scale_factor = (T_acq_dwell/T_noise_dwell)*NoiseReceiverBandwidthRatio

Return type:

Prewhitened copy of k-space data

References

[HAN2014]

Hansen M, Kellman P (2014) Image reconstruction: An overview for clinicians. JMRI 41(3) https://doi.org/10.1002/jmri.24687

[ROE1990]

Roemer P, Mueller O (1990) The NMR phased array. MRM 16(2) https://doi.org/10.1002/mrm.1910160203