seewave (version 2.2.3)

sfm: Spectral Flatness Measure

Description

This function estimates the flatness of a frequency spectrum.

Usage

sfm(spec)

Value

A single value varying between 0 and 1 is returned. The value has no unit.

Arguments

spec

a data set resulting of a spectral analysis obtained with spec or meanspec (not in dB).

Author

Jerome Sueur sueur@mnhn.fr

Details

SFM is calculated as the ratio between the geometric mean and the arithmetic mean :
$$F = N\times{\frac{\sqrt[N]{\prod_{i=1}^N{y_i}}}{\sum_{i=1}^N{y_i}}}$$ with:
y = relative amplitude of the i frequency,
and N = number of frequencies.

See Also

sh, csh

Examples

Run this code
a<-synth(f=8000,d=1,cf=2000,plot=FALSE)
speca<-spec(a,f=8000,at=0.5,plot=FALSE)
sfm(speca)
# [1] 0
b<-noisew(d=1,f=8000)
specb<-spec(b,f=8000,at=0.5,plot=FALSE)
sfm(specb)
# [1] 0.8233202

Run the code above in your browser using DataLab