how could i turn this into a 5 by 5 filter

3 Ansichten (letzte 30 Tage)
Lewis Laurence
Lewis Laurence am 23 Jan. 2022
Kommentiert: Lewis Laurence am 23 Jan. 2022
I= imread('peppers.png');
I2=I;
[r, c,]=size(I);
for i = 2:r-1
for j = 2: c-1
uint8=[I(i-1,j-1),I(i-1,j),I(i-1,j+1),I(i,j-1),I(i,j),I(i,j+1),...
I(i+1,j-1),I(i+1,j),I(i+1,j+1)];
uint8=sort(uint8);
I2(i,j)= uint8(5);
end
end
figure;
imshow(I);
title('peppers noisy');
figure;
imshow(I2);
title('peppers');
  2 Kommentare
DGM
DGM am 23 Jan. 2022
Bearbeitet: DGM am 23 Jan. 2022
The last comment I left on your other question implements a 5x5 median filter. The filter size is adjustable.
I also included a link to a second example of an adjustable (example shows 5x5) size median filter using a slightly different approach.
Note that in this version of your code, you're shadowing the built-in function uint8() by using that as a variable name.
Lewis Laurence
Lewis Laurence am 23 Jan. 2022
thank you for your comments. Im just struggling on how I would implement this.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Matt J
Matt J am 23 Jan. 2022
Bearbeitet: Matt J am 23 Jan. 2022
I2=medfilt2(I,[5,5]);

Kategorien

Mehr zu Visual Exploration finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by