Wednesday 6 January 2016

discrete signals - What is the intuition behind convolution?



I have been using convolution for finding outputs of various systems .I know how to use it.But I still don't know what does convolution exactly means? how one can define convolution ?



Answer



No doubt there are many links and expositions on wikipedia and elsewhere about convolution, its relation to linear systems, and its link to frequency analysis, however I do not think that is what you are after.


Forget convolution for a moment. Just think of nothing but averages:


If I give you a series of say, $10$ numbers, and ask you to take the average, you can do that very easily.


Let us say that I give you another set of $10$ numbers again, and also ask you to take the average. You can again, do that very easily.



I keep giving you a set of $10$ numbers, and you keep giving me averages. What a life!


Now imagine I tell you a secret: Those sets of $10$ numbers I have been giving you, are actually from a taken from a long series of numbers. In fact I have a list of $100$ numbers. The first set of $10$ numbers I gave you were the first $10$ numbers of that list. (First sample to 10th sample). You averaged them.


The second list of $10$ numbers were actually the 2nd sample, to the 11th sample. You averaged them.


The third list of $10$ numbers I gave you were actually the 3rd sample, to the 12th sample. You averaged them.


After all this, I ask you to plot all the averages you gave me, one after the other.


Congratulations! You just showed me a convolution result!


(Disclaimer: There are some border conditions that I have skipped over, but this is basically all a convolution is).


So in summary, think of a convolution as just a sliding average.


Now, remember how I said "average" those $10$ numbers I gave you? Well you can also do a weighted average. (That is, instead of multiplying all the $10$ numbers by $1$ before averaging them, we multiply them by different numbers, before averaging them. This is a weighted average). This will still be a convolution though. We call those numbers "weights", and sometimes they are referred to as the "filter kernel".


Some advanced systems actually change their weights as they run, and they are called adaptive filters.



Eitherway, this should provide you with a solid intuition: Just remember that convolution can be thought of - is - a moving average of your data. Hope that helped!


No comments:

Post a Comment

readings - Appending 内 to a company name is read ない or うち?

For example, if I say マイクロソフト内のパートナーシップは強いです, is the 内 here read as うち or ない? Answer 「内」 in the form: 「Proper Noun + 内」 is always read 「ない...