首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Hamming滤波器减少图像中的振铃伪影

Hamming滤波器减少图像中的振铃伪影
EN

Stack Overflow用户
提问于 2017-11-07 15:36:17
回答 1查看 826关注 0票数 0

我有一个低分辨率图像(sLR),这是由选择中心部分的参考高分辨率图像(sHR)在频率(k-空间)域中的行方向。当我在频域上对这幅低分辨率图像进行零点处理时,我得到了空域上的振铃伪影。我试图通过使用Hamming窗口过滤图像来删除这个工件。请看下面的代码。我对将fft和ifft应用于图像和过滤过程有疑问,如果有人能检查我的代码并确认它是正确的,我将非常感激。

代码语言:javascript
复制
% 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的方式对图像强度进行规范化,可以吗?或者我应该使用图像的绝对值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-11-07 16:28:40

  1. 这不是汉明窗口的标准用法,但作为一种高斯形状可能会有所帮助。尝试应用窗口(或其他一些频率响应),而不是剪出频谱的中心部分,或将其安装到中心部分。从逻辑上讲,尖锐的截止将继续存在,而响声也会保持不变。
  2. 我建议使用max(0,将这些负值裁剪为零,因为它们代表你不想要的振铃。可能还会将意外的大值剪辑到1
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47161785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档