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

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 you can implement a moving Lehmer mean according to the following Haskell code.

lehmerSmooth :: Floating a => -> a -> ->
lehmerSmooth smooth p xs =
zipWith

)

Gonzalez and Woods call this a "contraharmonic mean filter" described for varying values of p. 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.