Удаление посторонних пространственных частот и изображения - PullRequest
0 голосов
/ 14 ноября 2018

В настоящее время я выполняю упражнение и не могу понять, как удалить пиксели румян или, как следует из вопроса, поменять их на другой цвет.

Вот вопрос, у меня есть снимок экрана, поэтому нет орфографических ошибок.

Q часть 1
Q часть 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))

График частоты

Как вы можете видеть из моего графика, рядом с центральной вершиной есть две вершины, это те, которые я должен удалить. Но в моем вопросе я не могу понять, как реализовать мою идею.

Моя идея заключается в том, что если я возьму центральное значение и две конечные точки каждого пика и найду строку и столбец, я смогу установить его на ноль и запустить его в цикле, который обнулит все элементы в пиках, проблема в том, что я не могу найти способ реализовать это в цикле или в операторе if и задаться вопросом, может ли кто-нибудь хотя бы посоветовать и направить меня.

...