резкость изображения после удаления муарового узора - PullRequest
0 голосов
/ 26 марта 2019

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

Я пытался применить фильтр к изображению, чтобы размыть изображение и удалить рисунок шахматной доски, однако я не могу вернуть изображение к исходному качеству без шахматной доски.

imageFiles = {'radiograph_01.jpg', 'radiograph_02.jpg'};
medWinSize = [7 11];
notchCenters{1} = [269 80; 261 123; 245 216; 238 258];
sigmas{1} = [45 20 20 45];
notchCenters{2} = [277 442; 209 450];
sigmas{2} = [20 20];
for nImage = 1:length(imageFiles)
% Load image
 [pathStr, name, ext] = fileparts(imageFiles{nImage});
 img = imread(imageFiles{nImage});
 img = im2double(img);
 [height, width] = size(img);
 figure(1); clf;
 subplot(1,3,1);
 imshow(img);

 % Median filter
 imgMed = medfilt2(img, medWinSize(nImage)*[1 1]);
 subplot(1,3,2);
 imshow(imgMed);
 imwrite(imgMed, [name '-med-filtered.jpg']);

 % Compute DFT of original image
 imgDFT = fftshift(fft2(img));
 imgDFTMag = abs(imgDFT);
 figure(2); clf;
 subplot(1,3,1);
 imshow(log(imgDFTMag), [0 10]); colorbar;

 % Apply notch filter
 [omega_x, omega_y] = meshgrid(1:width, 1:height);
 filterDFT = ones(size(omega_x));
 for n = 1:size(notchCenters{nImage},1)
 rSq = (omega_x - notchCenters{nImage}(n,1)).^2 + ...
 (omega_y - notchCenters{nImage}(n,2)).^2;
 filterDFT = filterDFT .* (1 - exp(-rSq / sigmas{nImage}(n)^2));
 end % n
 imgFiltDFT = imgDFT .* filterDFT;
 imgFiltDFTMag = abs(imgFiltDFT);
 subplot(1,3,2);
 imshow(filterDFT, [0 1]); colorbar;
 subplot(1,3,3);
 imshow(log(imgFiltDFTMag), [0 10]); colorbar;
 % Reconstruct image
 imgFilt = real(ifft2(ifftshift(imgFiltDFT)));
 imgFilt = max(0, min(1, imgFilt));
 figure(1);
 subplot(1,3,3);
 imshow(imgFilt);
 imwrite(imgFilt, [name '-notch-filtered.jpg']);
end % nImage

Original Image

С этим текущим кодом загружается изображение, применяется фильтр, и изображение возвращается без муарового рисунка, но все равно оказывает на него размытое влияние. Я пытаюсь повысить резкость этого изображения и вернуть его к исходному качеству после удаления этого шаблона.

1 Ответ

0 голосов
/ 27 марта 2019

, но по-прежнему имеет размытый эффект.

Это потому, что вы удалили высокие частоты с помощью фильтра Notch.

Я пытаюсь заострить это изображение и вернуть его к исходному качество

Невозможно вернуть изображение к исходному качеству муара. Хотя, возможно, вы сможете добиться лучших результатов, если будете более тщательно проектировать фильтр Notch.

Муар уже уничтожил информацию, а удаление этих мешающих частот с помощью фильтра Notch уничтожило еще больше.

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

Существуют и другие методы, кроме использования фильтров Notch, которые во многих случаях работают лучше.

Чтение Новый метод удаления рисунка муара из Изображения например. Они используют медианные фильтры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...