Can we combine convolution and higher powers for locally maximising a function?

39 Views Asked by At

Can we somehow find local maximum function value (for strictly positive functions) using a convolution?

My idea is based on the result that $$ \lim_{p\to \infty}\left[\frac{1}{N}\sum_{k=1}^N {(a_k)} ^p\right]^{\frac 1 p} = \max(a_k)$$

Similarly we might be able to use the result that

$$ \min(a_k) = \max(a_k)-\max(\max(a_k)-a_k)$$

Could we perhaps use this for building envelope detection? It seems theoretically sound to me, but would it be practically feasible?

1

There are 1 best solutions below

2
On BEST ANSWER

Yes, we can do this.

If we consider the function $$f(t)=\cases{\frac 1 {2N}\phantom{0},|t|<N\\0\phantom{\frac 1 {2N}},|t|\geq N}$$

We can with the convolution

  1. If we are in continuous time:

$$(g*f)(t)=\int_{-\infty}^\infty g(\tau)\cdot f(t-\tau) d\tau$$

  1. If we are in discrete time: $$(g*f)(t)=\sum_{\tau=-\infty}^\infty g(\tau)\cdot f(t-\tau)$$

Define the non-linear operation $$O(g,p) = (g^p*f)(t)^{1/p}$$ Where exponent means multiplicative power.

For example: if $g(t) = \sin(t), O(g,4) = ((\sin(x)^4*f))(t)^{1/4}$

In practice we usually want much higher $p$ exponents, maybe 32 or 1024.

We now investigate the test-function

$$g(t) = \sin(60t^2)^2\cdot (\sin(16t)^2 + \cos(8t)^2)$$

The square is to get same level of minimum values: 0. If we analyze $g(t)$, we can see that we have a chirp function modulated by a slower wave. This is to investigate behaviors for different frequencies.

enter image description here

We see that for higher frequencies we get reasonable envelope behavior. It is also possible to observe that as we change parameter $N$ above, which frequency range we can calculate maxima for are affected - but also the rectangular shape of local maxima will grow. We may need to smooth these out somehow. But how to do so is outside scope of question.