|
void | calc_samp_dens (KCOORD *kline_o, KCOORD *kline_e, short N_acq, short Nz_proc, int fill_fac, short Ny, float *samp_dens) |
|
float | eval_knoise (SCAN_INFO hdr, COMPLEX *kspace_data, KCOORD *kline_o, COMPLEX *bufspace) |
|
void | extract_ksubset (short ncoils, short nf, short nx, KCOORD *kline_full, KCOORD *kline_sub, short nl_full, short nl_sub, COMPLEX *fullmat, COMPLEX *submat) |
|
void | fil_version () |
|
int | imnum_out (short next_im, short z_anat, short Nf, short ncoils, short dump_b1maps) |
|
void | kstretch (short Nx, short Ny, short Nz_proc, short N_acq, short fill_fac, short ifr, short fr1, KCOORD *kline_o, KCOORD *kline_e, COMPLEX *data, COMPLEX *data_str) |
|
void | select_kcenter (short firsty, short lasty, short Ny, short firstz, short lastz, short Nz, float *filt) |
|
int | slice_number (int z, int Nsl, int z_first, char *application) |
|
void | weigh_kykz (short ncoils, short nf, short nz, short ny, short nx, float *weight, COMPLEX *data) |
|
float eval_knoise |
( |
SCAN_INFO |
hdr, |
|
|
COMPLEX * |
kspace_data, |
|
|
KCOORD * |
kline_o, |
|
|
COMPLEX * |
bufspace |
|
) |
| |
Evaluate the standard deviation of the noise on the k-space data. The returned value is used to set the regularization threshold in vdsense.
Get an estimate of the noise level. Look only at the corners of the kx-ky space (don't look at the central 20% part on both axes, which may contain a lot of signal). Subtract the time average to remove most of the remaining signal. Odd and even time frames are different, so use different time averages. The remaining data should be mostly noise. Find its standard deviation.
- Parameters
-
hdr | Contains scan info. |
kspace_data | k-space data (size ncoils*Nf*N_acq*Nx) |
kline_o | Sampling function, odd time frames. |
bufspace | Memory space to work in. (size:ncoils*Nf*N_acq*Nx) |
void kstretch |
( |
short |
Nx, |
|
|
short |
Ny, |
|
|
short |
Nz_proc, |
|
|
short |
N_acq, |
|
|
short |
fill_fac, |
|
|
short |
ifr, |
|
|
short |
fr1, |
|
|
KCOORD * |
kline_o, |
|
|
KCOORD * |
kline_e, |
|
|
COMPLEX * |
data, |
|
|
COMPLEX * |
data_str |
|
) |
| |
zero-pads the k-space data set, placing sub-sampled data in the full-sized data matrix with zeros at unsampled locations.
Take the compact representation of k-space, with a list of N_acq lines, each one with Nx real and imaginary values, and 'stretch' it into its normal shape, a cube having Nx by (fill_fac*Ny) by Nz_proc complex elements. (Note that due to sparse sampling and filling, fill_fac*Ny*Nz_proc is typically much greater than N_acq).
- Parameters
-
Nx | Size in kx direction. |
Ny | Size in ky direction. |
Nz_proc | Size in kz direction. |
N_acq | Number of acquired ky-kz lines. |
fill_fac | Factor by which raw data must be stretched so that all the (fractional) ky lines become integers. |
ifr | Time frame under consideration. |
fr1 | Whether 1st frame is considered even (0) or odd (1). |
kline_o | Sampling function, odd time frames. |
kline_e | Sampling function, even time frames. |
data | Data to uncompress. |
data_str | Uncompressed version of data. |