从图像和图像中删除流氓空间频率

时间:2018-11-14 20:54:32

标签: matlab image-processing matlab-figure

我目前正在练习中,不知道如何去除胭脂像素,或者这个问题暗示我将其更改为我相信的另一种颜色。

这里是问题,我有屏幕截图,所以不会拼错。

  

Q part 1
  Q part 2

这是到目前为止的代码

    A=imread('coins.png');
x=1:size(A,2); y=1:size(A,1); [X,Y]=meshgrid(x,y);
noise= 30.*cos(2.*pi.*X./15 + 2.*pi.*Y./20);
B=double(A) + noise;
%subplot(1,2,1), imshow(A)
%subplot(1,2,2), imagesc(B); axis image; axis image;

D = fftshift(fft2(B));

E=imagesc(log(abs(D)));colormap gray

plot(abs(D))

Plot of frequency

从我的图中可以看到,中心峰旁边有两个峰,这些峰是我必须除去的峰。但是我的问题我找不到解决方法。

我的想法是,如果我获取每个峰的中心值和两个端点并找到行和列,则可以将其设置为零并在循环中运行,这将使峰中的所有元素归零,问题是我无法找到一种方法来循环执行此操作,或者无法确定是否想知道是否有人可以为我提供建议和指导。

0 个答案:

没有答案