how could i turn this into a 5 by 5 filter
    5 views (last 30 days)
  
       Show older comments
    
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 Comments
  DGM
      
      
 on 23 Jan 2022
				
      Edited: DGM
      
      
 on 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.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

