demo_ESPIRiT_maps - praveenivp/ESPIRIT GitHub Wiki

Kernel calculation(dat2kernel)

A Matrix is constructed with sliding kernel across the calibration region. The matrix size will be of size (#sliding_kernel x KernelsizeXKernel SizeY#coil). Then eigen decompostion is performed with svd. The eigen vector matrix contains eigen vector of all sliding kernel. It is of size (KernelsizeXKernelSizeY#coil x KernelsizeXKernel SizeY#coil). Then, the kernel matrix is reshaped from the vector of size (kernelsize X kernelSizeY x #coils x (KernelsizeXKernelSizeY#coil). The last dim is the dimension of the eigen vector.

cropping the kernel

Based on the singular values, some eigen vector dimensions are cropped. In this case, all the dimensions with singular value less than 2% of the first singular value is cropped. Thereby reducing the complexity of the kernel.

kernel eigen decomposition in imspace (kernelEig)

Initially, The cropped input kerenel is sorted according to the variance in the coil dimension. This is performed by projecting the data along eigen vectors with decreasing eigen value. Then coil senstivities in image domain is calvulated by taking 2d-fft of the zero-padded kernel according to the input image size. The sensitivies are scaled by size of kernel (sqrt(prod(KernelSize))).