File Exchange

image thumbnail

1/N-Octave Smoothing

version (715 KB) by Christopher Hummersone
Apply 1/NOCT-octave smoothing to a magnitude spectrum.


Updated 05 May 2018

GitHub view license on GitHub

NOTE: this function is now available from the IoSR Matlab Toolbox as iosr.dsp.smoothSpectrum.
X_OCT = SMOOTH_SPECTRUM(X,F,NOCT) applies 1/NOCT-octave smoothing to the magnitude-frequency spectrum contained in vector X sampled at frequencies in vector F.

Cite As

Christopher Hummersone (2020). 1/N-Octave Smoothing (, GitHub. Retrieved .

Comments and Ratings (7)

Works as intented, but is way too slow to be useful...

Thanks for this great function! It takes quite some time for large datasets though, probably because it uses all the other points to calculate each smoothed point. Maybe you could implement that the window support only is a few (like 4 or 5) standard deviations around the center, because further away the window function is so small that you can neglect it and save a lot of processing time.


My email is


Very good function but take too long time

Hi Michael. Thanks for the rating. Could you please provide some more feedback so that I might improve the code? Thanks.


Updated description.

Migrated to GitHub.

Amended help and example.

Added image.

MATLAB Release Compatibility
Created with R2015b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Inspired by: Short time FFT with octave smooth