How can we find average of matrix, considering a 7 by 7 matrix in an image????

1 Kommentar

Guillaume
Guillaume am 29 Jan. 2019
You'll have to be clearer about what you want. Providing an example of input and desired output really helps. What does considering a 7 by 7 matrix in an image mean?
Doesn't the mean function or the mean2 (requires image processing toolbox) function work for what you want? They work on any size matrix, including 7x7 ones.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Matt J
Matt J am 29 Jan. 2019
Bearbeitet: Matt J am 29 Jan. 2019

0 Stimmen

If you want a 7x7 sliding window, you would use convolution
out=conv2(yourImage,ones(7)/49,'valid');
If instead you want to decompose your image into non-overlapping 7x7 tiles, then I would recommend sepblockfun (Download).
out=sepblockfun(yourImage,[7,7],'mean');

4 Kommentare

Walter Roberson
Walter Roberson am 29 Jan. 2019
filter2 can be used instead of conv2. There are some differences in internal optimization in some cases. conv2 flips the mask compared to filter2 .
viswanath reddy
viswanath reddy am 30 Jan. 2019
i want to calculate mean for every pixel by moving the mask throughout the image starting as shown
Matt J
Matt J am 30 Jan. 2019
OK. But your question has already been answered (so please Accept-click).
Guillaume
Guillaume am 30 Jan. 2019
As Matt wrote, "If you want a 7x7 sliding window, you would use convolution" and he gave you the code.

Melden Sie sich an, um zu kommentieren.

Kategorien

Gefragt:

am 29 Jan. 2019

Kommentiert:

am 30 Jan. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by