Lehmer mean
In mathematics, the Lehmer mean of a tuple of positive real numbers, named after Derrick Henry Lehmer, is defined as:
The weighted Lehmer mean with respect to a tuple of positive weights is defined as:
The Lehmer mean is an alternative to power means for interpolating between minimum and maximum via arithmetic mean and harmonic mean.
Properties
The derivative of is non-negative
thus this function is monotonic and the inequality
holds.
The derivative of the weighted Lehmer mean is:
Special cases
- is the minimum of the elements of .
- is the harmonic mean.
- is the geometric mean of the two values and .
- is the arithmetic mean.
- is the contraharmonic mean.
- is the maximum of the elements of . Sketch of a proof: Without loss of generality let be the values which equal the maximum. Then
Applications
Signal processing
Like a power mean, a Lehmer mean serves a non-linear moving average which is shifted towards small signal values for small and emphasizes big signal values for big . Given an efficient implementation of a moving arithmetic mean called smooth
you can implement a moving Lehmer mean according to the following Haskell code.
lehmerSmooth :: Floating a => ([a] -> [a]) -> a -> [a] -> [a]
lehmerSmooth smooth p xs =
zipWith (/)
(smooth (map (**p) xs))
(smooth (map (**(p-1)) xs))
- For big it can serve an envelope detector on a rectified signal.
- For small it can serve an baseline detector on a mass spectrum.
Gonzalez and Woods call this a "contraharmonic mean filter" described for varying values of p (however, as above, the contraharmonic mean can refer to the specific case ). Their convention is to substitute p with the order of the filter Q:
Q=0 is the arithmetic mean. Positive Q can reduce pepper noise and negative Q can reduce salt noise.