# Wavelets - book

Other languages:
English • ‎español
Series Geophysical References Series Digital Imaging and Deconvolution: The ABCs of Seismic Exploration and Processing Enders A. Robinson and Sven Treitel 7 http://dx.doi.org/10.1190/1.9781560801610 9781560801481 SEG Online Store
A dewdrop on a baby plant
Has bent the royal oak forever
A ripple on a wavelet scant
Has turned the course of many a river

- Author unknown


Faraday (1831) investigated the water patterns produced under vibration. Transitory ripples disclosed distinct patterns. From the ripples, Faraday discerned an oscillatory condition that proved useful in his subsequent investigations on light. In the same way, geophysicists must investigate each ripple on a seismic wavelet to unravel the deep secrets of the earth.

What is a wavelet? A wavelet is a signal that has finite energy (Robinson, 1962, 1964a, 1964b). In other words, a wavelet is a waveform with the bulk of its energy confined to a finite interval on the time scale. A wavelet can be written as

 {\begin{aligned}b=\ \left({\dots ,\ }b_{-2}{\ ,\ }b_{-1}{\ ,\ }b_{0}{\ ,\ }b_{\rm {l}}{\ ,\ }b_{2}{\ ,\dots }\right),\end{aligned}} (1)

where $b_{n}$ is the coefficient at discrete time n. The present time instant n = 0 represents the critical point in the classification of a wavelet. Past times would be all the instants n < 0 before the present time, and future times would be all the instants n > 0 after the present time.

For the record, all of the digital filters that we consider (unless otherwise stated) fall under the category of linear time-invariant filters. Note that filter is called linear if it satisfies the additive property and the multiplicative property. Let a given input yield a given output. A filter is called time-invariant if the same input delayed (or advanced) by a given amount yields the same output delayed (or advanced) by the same amount (Robinson and Silvia, 1978).

Recall our discussion in Chapter 4, in which we mentioned the three types of wavelets: causal, noncausal, and purely noncausal wavelets. Now we will learn more about them. Also recall that in Chapter 5, we saw that a digital filter is represented by a sequence of numbers called its impulse response or its weighting coefficients. A digital filter is said to be causal if its present output (at time n) depends only on present and past inputs (that is, depends only on inputs at times n, n – 1, n – 2, … , and so on. Another term for a causal filter is a realizable filter. In equation 2 of Chapter 5, we saw that the most general causal filter with a finite number of delay elements has the form

$b_{0}+b_{\rm {l}}Z+b_{2}Z^{2}+b_{3}Z^{3}+\dots +b_{N}Z^{N}.$ This filter is called a causal finite-impulse-response filter or simply a causal FIR filter. The set of coefficients $\left\{b_{0}{,\ }b_{1}{\ ,\ }b_{2}{,\ }b_{3}{,\ \dots ,\ }b_{N}\right\}$ makes up the impulse-response function, which we recognize as a causal wavelet with a finite number of coefficients. In other words, the impulse-response function of a causal FIR filter is a causal wavelet with a finite number of coefficients. In general, a digital filter is causal if and only if its impulse-response function is a causal wavelet. A digital filter is noncausal if and only if its impulse-response function is a noncausal wavelet. A digital filter is purely noncausal if and only if its impulse-response function is a purely noncausal wavelet.

Every wavelet consists of two components: the causal component

 {\begin{aligned}b_{C}=\ \left({\dots ,\ 0,0,\ }b_{0}{\ ,\ }b_{1}{\ ,\ }b_{2}{\,\dots }\right),\end{aligned}} (2)

which is made up of all the coefficients for $n\geq 0$ (i.e., the present and future), and the anticausal component

 {\begin{aligned}b_{{\rm {}}AC}{\ =\ }\left({\dots ,\ }b_{-2}{\ ,\ }b_{-1}{\ ,\ 0,0,0,\ \dots }\right),\end{aligned}} (3)

which is made up of all the coefficients for n < 0 (i.e., the past). A wavelet that has nonzero coefficients in both components is said to be noncausal. A wavelet that has nonzero coefficients only in the causal component is said to be causal. A causal wavelet is one-sided on the nonnegative time scale. A wavelet that has nonzero coefficients only in the anticausal component is said to be anticausal (or purely noncausal). A noncausal wavelet with coefficients equal to zero for positive times is said to be a one-sided noncausal wavelet. In other words, a one-sided noncausal wavelet is one-sided on the nonpositive time scale.

An important subgroup of wavelets consists of those having a finite number of coefficients - that is, the subgroup consists of wavelets having finite length. A finite-length wavelet c of length M + N + 1 is given by

 {\begin{aligned}c=\ \left(c_{-M},\dots ,c_{-2}{\ ,\ }c_{-1}{\ ,\ }c_{0}{\ ,\ }c_{1}{\ ,\ }{\rm {c}}_{2}{\ ,\ }c_{N}\right),\end{aligned}} (4)

where the coefficient $c_{0}$ occurs at time index 0. The causal part is made up of the coefficients occurring from time index 0 onward, and the anticausal part is made up of the coefficients occurring before time index 0. A finite-length causal wavelet has the form

 {\begin{aligned}b=\ \left(b_{0}{,\ }b_{1}{,\ }b_{2}{,\ \dots ,\ }b_{N}\right),\end{aligned}} (5)

where the coefficient $b_{0}$ occurs at time index 0.

What is a zero-point reverse of a wavelet? It is possible to consider wavelets with complex coefficients - that is, coefficients of the form u + iv, where u, v are real numbers and $i={\sqrt {-{\rm {l}}}}$ . An example is the wavelet (i, 0.5), where i is the coefficient at time index 0 and where 0.5 is the coefficient at time index 1. Another example is the wavelet (2 + i, 1–i, i), where 2 +i is the coefficient at time index 0, where 1 – i is the coefficient at time index 1, and where i is the coefficient at time index 2.

A reverse of a wavelet is obtained by reflecting a given wavelet about a fixed time index. For a zero-point time reverse, the point of reflection is time index 0. For example, the zero-point reverse (ZPR) of the wavelet $b=\left({\dots ,\ }b_{-2}b_{-{\rm {l}}}{,\ }b_{0}{,\ }b_{\rm {l}}{,\ }b_{2,\ .\ .\ .}\right)$ is

 {\begin{aligned}b^{ZPR}=\;(...,\;b_{2}^{*},\;b_{1}^{*},\;b_{0}^{*},\;b_{-1}^{*},\;b_{-2}^{*},...),\end{aligned}} (6)

where the asterisk denotes the complex conjugate. The coefficient $b_{0}^{*}$ occurs at time index 0. The coefficients with positive indices are now anticausal, and the coefficients with nonpositive indices are now causal. The zero-point reverse of the causal finite-length wavelet $b=\left(b_{0}{,\ }b_{\rm {l}}{,\ }b_{2}{,\dots ,\ }b_{N}\right)$ is

 {\begin{aligned}b^{ZPR}=\;\{\;b_{N}^{*},...,\;b_{2}^{*},\;b_{1}^{*},\;b_{0}^{*}\},\end{aligned}} (7)

where the coefficient $b_{0}$ occurs at time index 0. The only nonzero causal coefficient in $b^{ZPR}$ is $b_{0}^{*}$ . The other nonzero coefficients are anticausal. Thus, $b^{ZPR}$ is a one-sided noncausal wavelet or is one-sided on the nonpositive time scale.

We should add an explanatory note here. An asterisk in the superscript position denotes the complex conjugate. However, an asterisk at line level denotes convolution. The convolution of two wavelets, say, a and b, is denoted by a*b. The autocorrelation of a wavelet is given by the convolution of the wavelet with its zero-point reverse; that is, the autocorrelation of wavelet a is $a*a^{ZPR}$ . The crosscorrelation of wavelet a with wavelet b is given by $a*b^{ZPR}$ . The autocorrelation and crosscorrelation as defined here are unnormalized.