美文网首页
12.2 有限采样,图像重建和离散傅里叶变换

12.2 有限采样,图像重建和离散傅里叶变换

作者: 十年磨剑_莫回首 | 来源:发表于2021-05-12 22:25 被阅读0次

    12.2.1 有限采样

    数据截断(truncation) 或者加窗,可以通过将采样得到数据与窗函数相乘。窗函数的边界的设计必须要格外小心,这样可以使得采样函数和窗函数的乘积缩减为标准MRI 采样方法,标准采样方法的表达式如下:

    这样,最后得到的信号分布或者实际测量得到的数据,是连续无穷函数,无穷采样函数,窗函数这三个函数的乘积,其表达式如下:

    这里,我们发现离散的有限delta函数的加和,其系数是采样得到数据s(p△k)

    这里可以看出来,标准采样函数采集数据样本长度为2n,而不是2n+1或者2n-1。

    根据标准采样式子,我们可以看出在k-space的采样是有一些不对称的,从-n 到n-1,并不是关于k=0对称的。当然了,如果n足够大的话,标准采样几乎可以认为就是对称采样,可以得到一个很好地数值逼近。选择2n作为采样的长度,主要原因是可以使用FFT算法,从而加快处理计算速度。(FFT本身是一个计算信号傅里叶变换特别高效的算法)

    在标准采样式子中,我们可以看到,窗函数有一个1/2△k的位移,这个地方的道理咱们细细道来。

    如果没有这样一个位移,那么窗函数就是一个关于原点对称的函数,采样间隔依旧是△k,但是此时窗函数里面一共有2n+1个点。其中位于两边的点会落在边界上面。而如果我们通过微小的向左偏移,窗函数里面就只有2n个数据点,覆盖的范围是[-n,n-1]。

    Nyquist定理可以保证数据的充分采样,但是如果数据并没有在假定的位置上采样得到,这样产生的影响,该定理无法解决。在MRI中,采样点的偏移是很常见的,可能源于实验设计或者就是设备物理本身。举个栗子来说,一个均匀的k-space 偏移会导致重建图像的相位偏移(根据傅里叶逆变换),这样的一个相位偏移是关于位置的线性函数。这样的偏移造成的一个显著后果就是相位混叠,造成重建图像的实部的伪迹。一般对于这样的问题,会采用求重建图像的幅度谱来规避相位的问题。当然了除此之外,由于这种偏移,在数据采样和截断过程中,还会有其他的错误产生。

    12.2.2 重建图像(spin density)'p(x)

    有限采样数据重建得到的图像记作`p(x) ,可以由有限采样的数据的逆傅里叶变换得到,计算式如下:

    该重建的函数也具有周期性,周期为FOV L所以Nyquist准则同样适用于截断的数据。

    我们这里使用的窗函数(sinc rect/boxcar) 不是理想的delta函数,通常会存在旁瓣泄露,导致图像模糊的后果。当然了,如果rect/boxcar 窗函数的窗宽比较大,那么在频域的采样函数可以逼近delta函数,这里分别给出了sinc窗函数和窗函数rect的simulation结果,都不同程度上存在旁瓣泄露的负面影响。

    clc;clear;

    %% sinc fucntion

    t=-10:0.1:10; % time domain

    Fs=10; % sampling rate

    y=sinc(t);

    figure(1)

    subplot(121)

    plot(t,y)

    title('sinc fucntion time domain')

    f_point=linspace(-Fs/2,Fs/2,length(t)); % frequnecy axis

    f=fft(y);

    f_center=fftshift(f);

    subplot(122)

    plot(f_point,abs(f_center))

    title('sinc fucntion frequency domain')

    %% rect fucntion

    x=-10:0.1:10;

    f=5.*(x<=1&x>=-1);

    Fs=10;

    figure()

    subplot(221)

    plot(x,f)

    title('rect width=10 time domain')

    f_point=linspace(-Fs/2,Fs/2,length(x)); % frequnecy axis

    f_center=fftshift(fft(f));

    subplot(222)

    plot(f_point,abs(f_center))

    title('rect width=10 frequency domain')

    f=5.*(x<=4&x>=-4);

    subplot(223)

    plot(x,f)

    title('rect width=10 time domain')

    f_point=linspace(-Fs/2,Fs/2,length(x)); % frequnecy axis

    f_center=fftshift(fft(f));

    subplot(224)

    plot(f_point,abs(f_center))

    title('rect width=10 frequency domain')

    相关文章

      网友评论

          本文标题:12.2 有限采样,图像重建和离散傅里叶变换

          本文链接:https://www.haomeiwen.com/subject/jvoadltx.html