I understand the principle of image convolution. Maybe. I think it is this:

You use a small matrix with numbers in it,

Then take a sample of an image with as many pixels as you have numbers in your matrix,

Then do a dot product, then add up all the terms and

then use the result as the new value for the pixel located in the center of your image sample.

Now, my question is this:

Does it make sense to think about an image kernel for convolution whose values actually depend on the image? For example, consider a 'sharpen' kernel:

  • 0 1 0
  • 1 4 1
  • 0 1 0

I want to change the value in the center to be a number between 1 and 5 depending on the brightness of the pixel which is two places to the left.

The reason I ask this is because I've noticed that when I look at an image, I actually look at 'neighborhoods'. not just individual pixels. While bright spots might catch my attention. I recognize parts of an image before it 'clicks'. So if I am using some parts of an image to inform me about the 'neighborhood' that part lives in, I am wondering if this sort of 'dynamic kernel' could produce a matrix that informs us more meaningfully about the image. Obviously I am naive and know very little about image processing but a lot of papers on image convolution get technical very fast and then I'm lost. I am afraid to ask this on stack overflow because there is no specific code I am asking about..

EDIT: The link you posted does not have any mention of the signal processing site. As the question has no specific coding it is therefore not a question for stack overflow. Whether it belongs in math, signal processing or other section is not immediately obvious to a neophyte. I appreciate the recommendation to post on signal processing.


It's essentially an image processing question cf. convolution. I believe it should be on-topic for Signal Processing, under the image-processing tag, whose excerpt is:

In general, image processing is any form of signal processing for which the input is an image, such as a photograph or video frame.

Do read through their on-topic page and ask on their meta if you're still unsure.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .