Convolution in the One Dimensional Domain
Convolution is a widely used mathematical operator that processes an image by computing—for each pixel—a weighted sum of the values of that pixel and its neighbors. Depending on the choice of weights, a wide variety of image processing operations can be implemented. Convolution and correlation are the two fundamental mathematical operations involved in linear neighborhood-oriented image processing algorithms. The two operations differ in a very subtle way.
Convolution in the One-Dimensional Domain
The convolution between two discrete one-dimensional (1D) arrays A(x) and B(x), denoted by A ∗ B, is mathematically described by the equation :
Example
Step 1 :
In the following example A is the sample matrix on which operation is to be performed and B is the convolution matrix which is used to perform operation on matrix A.
We have to calculate A*B. Now in order to cover all matrix elements we need to shift our convolution matrix (B) one to the left side. And the calculation will be as :
Step 2 (after shifting convolution to the one step right)
Step 3 (continue shifting convolution to the one step right)
Step 4 (continue shifting convolution to the one step right)
Step 5 (continue shifting convolution to the one step right)
Step 6 (continue shifting convolution to the one step right)
Step 7 (continue shifting convolution to the one step right and one step out of the range of sample matrix)
The final result of the convolution operation is the array [4 7 11 15 13 7 2]