How can I make a Loop (!) over the image using a 5×5 pixel window

2 vues (au cours des 30 derniers jours)
Nadeen Bahnam
Nadeen Bahnam le 14 Nov 2019
Commenté : Nadeen Bahnam le 20 Nov 2019
Loop (!) over the image using a 5×5 pixel window. For each such window, compute the average pixel value and store the result in a new image. Treat borders in some controlled way and make sure the result has the same size in pixels as the original image. You will need at least two nested for-loops, to scan rows and columns in your image.
  4 commentaires
Nadeen Bahnam
Nadeen Bahnam le 14 Nov 2019
Is there some other way to solve this if loops are not be used ?
Walter Roberson
Walter Roberson le 14 Nov 2019
nlfilt(), blockproc(), conv2()

Connectez-vous pour commenter.

Réponse acceptée

Mahesh Taparia
Mahesh Taparia le 20 Nov 2019
Hi Nadeen,
It seems you want to do average filtering of an image with the kernal size of 5x5. It can be done using imfilter command. Consider the code below:
window_size = 5;
filter_type=fspecial('average', window_size);
filtered_image = imfilter(I,filter_type, 'replicate'); %%% I = image
For more details refer to the documentation page of imfilter using the link given below:

Plus de réponses (0)

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by