# Convolution - book

Series | Geophysical References Series |
---|---|

Title | Digital Imaging and Deconvolution: The ABCs of Seismic Exploration and Processing |

Author | Enders A. Robinson and Sven Treitel |

Chapter | 5 |

DOI | http://dx.doi.org/10.1190/1.9781560801610 |

ISBN | ISBN 9781560801481 |

Store | SEG Online Store |

What is the *Z*-transform? The *N*th-order polynomial in *Z* given by

**(**)

is the *Z-transform* of the finite-length causal impulse-response function . Similarly, the *Z*-transform of an infinite-length causal impulse-response function is the power series in *Z* given by

**(**)

What is convolution? Let us consider the action of the *N*th-order causal FIR filter on an input given by the equally spaced sampled values . The numbers are going into the filter; that is, the input is as follows: enters at time enters at time enters at time enters at time *n* = 2, and so forth.

Coming out of the filter are the numbers , that is, the output is as follows: emerges at time *n* = –1, emerges at time emerges at time emerges at time *n* = 2, and so forth.

The output is seen to be

**(**)

This expression is the discrete representation of the linear operation commonly known as *convolution*. In the literature, one often sees this operation represented by an integral rather than by a discrete summation. That is because analog filters operate in continuous time, which calls for an integral representation of the convolution operation. Because we are dealing here with discrete-time data, we must represent the convolution process by a summation. Thus, the output of the *N*th-order causal FIR filter is obtainable by the discrete convolution of the input , with the filter’s impulse-response coefficients . A more compact notation for convolution is

**(**)

where it is understood that when *n* falls outside the range . Schematically, we have the block diagram shown in Figure 11a. Whenever we illustrate such an input-output relationship, we mean the following: The output *y* is equal to the convolution of the input *x* with the impulse-response function *b*.

What is the impulse-response function of two cascaded filters? When two filters are cascaded, or connected in tandem, we have the situation shown in Figure 11b. The output of the first filter is *a* * *x*, which is the input to the second filter. Hence, the output of the second filter is . Thus, the two filters can be replaced with one filter, the impulse-response function *h* of which is the convolution of the impulse-response functions *a* and *b* of the two filters; that is, . Therefore, the block diagram is equivalent to that shown in Figure 11c.

How is convolution carried out? Let us now describe the process of convolution. The convolution of the two signals and is obtained by holding one signal fixed and sliding the reverse of the other signal alongside it. At each position, the sum of the products is taken. The entirety of these sums gives a third signal that is the convolution of the two given signals. For example, hold *a* fixed and slide *b*. We obtain the first value

**(**)

We obtain the second value

**(**)

We obtain the third value

**(**)

The complete convolution is then

**(**)

(Note: The asterisk * used in this way - that is, as a binary operation between two time functions - denotes convolution.)

The above summation equation for convolution (but with the lower limit on the summation now being holds for the case in which the signals are noncausal. It also holds for complex valued signals. (Note that when two complex signals are convolved, the complex-conjugate of one or the other signal never is taken. In contrast, when two complex signals are crosscorrelated, the complex-conjugate of one or the other signal must be taken.)

To illustrate the use of this convolution formula, suppose that and . Each of these wavelets has two coefficients (i.e., it has length 2).

We see that the convolution is

**(**)

where

**(**)

**(**)

and

**(**)

Hence,

**(**)

We can show that convolution] is a folding operation. In fact, the German word for convolution is *faltung*, which means folding. To see how convolution can be performed by folding, let us construct the equation below (equation 19), whose entries are the products of the wavelets *a* and *b* (which are on the margins):

**(**)

Thus, we have the following table of entries (without the margins), which we are going to fold successively on the southwest-northeast diagonals:

**(**)

The element in the upper left corner, that is, , or 6, is . Now fold this entry over, thus obtaining

**(**)

The sum of the two entries of the next fold is

**(**)

which is . Now fold again, thus obtaining the lower right entry . The final result is the convolution given by

**(**)

We have defined the convolution of two finite-length signals. There is no reason, however, why this definition cannot be extended to the convolution of an arbitrary time series with a wavelet. Let the wavelet be

**(**)

and let the arbitrary time series be

**(**)

which we can think of as being infinitely long in both the positive and negative directions. Their convolution is the time series

**(**)

where *y* is given by the formula

**(**)

As is the case with the *x* time series, the *y* time series also is infinitely long in both directions.

Let us show that convolution is polynomial multiplication. Convolution also can be performed by multiplication of polynomials. Thus, we write the *Z*-transforms

**(**)

or

**(**)

These polynomials are written in terms of the variable *Z*. Multiplying the polynomial *A*(*Z*) by the polynomial *B*(*Z*), we obtain

**(**)

The resulting polynomial has coefficients that are equal to the desired convolution. Thus, multiplication of polynomials corresponds to the convolution of their coefficients.

Next we will show that convolution is commutative, associative, and distributive. Convolution is commutative (i.e., convolutions can be taken in any order) because polynomial products can be taken in any order. For example, *a* * *b* = *b* * *a* because

**(**)

By the same reasoning, we see that convolution is associative; that is,

**(**)

and convolution is distributive with respect to addition; that is,

**(**)

## Continue reading

Previous section | Next section |
---|---|

Digital filtering | Feedback filters |

Previous chapter | Next chapter |

Sampling | Frequency |

## Also in this chapter