File Exchange

## Average Filter

version 1.6.0.0 (3.44 KB) by
Average filter performs image smoothing with integral image method.

Updated 01 Jun 2018

The advantage of this implementation in comparison to IMFILTER from Image Processing Toolbox is that the processing time is independent of window size. In practice, it means that this implementation of the mean filter is faster than IMFILTER once windows size goes beyond 7 pixels.

### Cite As

Jan Motl (2020). Average Filter (https://www.mathworks.com/matlabcentral/fileexchange/40174-average-filter), MATLAB Central File Exchange. Retrieved .

Lns K

this algorithm has it a good result in a subpixel detection , I would comapre some techniques of thresholding and their impacts in a subpixel accuracy ( centroid calculation)

Jan Motl

I fixed the error in the test file. The function should be called like:
averagefilter(image, [m n])
and not like:
averagefilter(image, m, n)

Thank you for the report!

Partho Pritom

there is an error which reports "Index exceeds matrix dimensions"

Kate Snyder

sara

Jan Motl

Hi Jan,
thank you for your feedback. The biggest gain from the vectorised version is in calculation of the integral image - cumsum accelerated the whole function by 5%. And that is good.

Jan

Although I like FOR loops, here a vectorized approach would be much more efficient, e.g.:
output = (t(1+m:rows+m, 1+n:columns+n) + t(1:rows, 1:columns) -
t(1+m:rows+m, 1:columns) - t(1:rows, 1+n:columns+n)) / winNum;

The documentation is very good: H1 line, exhaustive descritpion of inputs and outputs, "See also" line. I only miss a date and the author.
The inputs are check reliably.