I have an operation, that is very similar to convolution, that I don't know the name of. I'm a programmer, not a mathematician, so I'll try to describe it as best I can.

First, a description of convolution:

  1. inputs: source (2D array, roughly 2000x1000), kernel (2D array, 15x15). output will be given in an array the size of source

  2. For every element in the output, center kernel over the corresponding element in source

  3. Do elementwise multiplication between source and kernel

  4. Sum the results of step 3, divide it by a number n, and store that in output

My operation is similar, except step 4 is replaced by:

  1. Take the largest result of step 3, and store that in output
  • $\begingroup$ Is there a necessity for you to find what it is named as? $\endgroup$ – The Integrator Jul 5 '18 at 13:34
  • 1
    $\begingroup$ I want to be able to google it / find more info on it / see what properties it has. $\endgroup$ – usernumber Jul 5 '18 at 13:49
  • $\begingroup$ I don't think that this operation has attracted enough attention to deserve a name. Maybe you can do something with this property: if you raise the elements of the source and kernel to a large power (assuming positive values), then perform the ordinary convolution and take the root of the same degree, you approximately get your modified convolution (if $a^n+b^n=c^n$, $c\approx\max(a, b)$). $\endgroup$ – Yves Daoust Jul 5 '18 at 15:53

This article describes your operation as a "max-convolution".

Here it is referred to as a "multiplicative max convolution product".


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.