0

我有一个低分辨率图像 (sLR),它是通过在行方向的频率(k 空间)域中选择参考高分辨率图像 (sHR) 的中心部分生成的。当我在频域中对这个低分辨率图像进行零填充时,我在空间域中得到了预期的振铃伪影。我尝试通过使用 Hamming 窗口过滤图像来消除此伪影。请在下面查看我的代码。我对将 fft 和 ifft 应用于图像以及过滤过程有疑问,如果有人可以检查我的代码并确认它是正确的,我将不胜感激。

% sHR: HR reference image
n = size(sHR,1);
kspHR = fftshift(fft(sHR,n,1),1)/n; % HR image in k-space

% Generating LR image (LR in row-direction)
kspLR = kspHR((n/2)-(n/4)+1:(n/2)+(n/4),:); 
sLR = real(ifft(ifftshift(kspLR,1),n,1)))*n; 

% Zero-padding
a = floor(size(kspLR,1)/2);
kspZP = padarray(kspLR, a ,'both');
sZP = real(ifft(ifftshift(kspZP,1),n,1)))*n;% image with Ringing artifact

% Apply Hamming filter to Zero-padded kspace image (kspZP)
[r,c]=size(abs(kspZP));
w = hamming(r);
W = repmat(w,[1,c]);
kspHM = W.*kspZP
sHM = real(ifft(ifftshift(kspHM,1),n,1)))*n; % Filtered image in spatial domain

我的第二个问题是当我使用 iffft 时,输出图像通常具有负强度。对于空间域中的进一步处理,如果我以图像的最小强度为 0 的方式对图像强度进行归一化,可以吗?还是我应该使用图像的绝对值?

4

1 回答 1

2
  1. 这不是汉明窗的标准用法,但作为一种高斯形状,它可能会有所帮助。尝试应用窗口(或其他一些频率响应) ,而不是剪掉频谱的中心部分,或将其放入中心部分。否则,尖锐的截止将保留,振铃也将保留。

  2. 我建议使用 ... 将这些负值剪裁为零max(0,,因为它们代表您不想要的振铃。也许还会将意外的大值剪辑到1.

于 2017-11-07T16:28:40.600 回答