Tail shaping and head shaping

From SEG Wiki
Jump to navigation Jump to search
ADVERTISEMENT

<languages/> <translate> </translate>

Digital Imaging and Deconvolution: The ABCs of Seismic Exploration and Processing
Series Geophysical References Series
Title Digital Imaging and Deconvolution: The ABCs of Seismic Exploration and Processing
Author Enders A. Robinson and Sven Treitel
Chapter 10
DOI http://dx.doi.org/10.1190/1.9781560801610
ISBN 9781560801481
Store SEG Online Store

<translate> The head of a wavelet consists of its first Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha values; its tail is all the rest. The filter with the minimum-phase wavelet Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b= \left(b_0{ ,\ }b_{{\rm l}}{ ,\ }b{ 2,\ }\cdots \right) as input and the tail as the desired output is called the tail-shaping filter. The filter with the minimum-phase wavelet as input and the head as the desired output is called the head-shaping filter. What do these filters look like?

If the desired output is the tail, then the crosscorrelation between desired output and input is

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} g_n= \sum_i{b_{\alpha +n+i}} b_i= r_{n+\alpha }. \end{align} (37)

This shows that the crosscorrelation is equal to the advanced autocorrelation of the minimum-phase wavelet. Because the seismic trace Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): x= b*\varepsilon (where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \varepsilon is white noise) and the wavelet b have the same theoretical autocorrelation, the normal equations are the same as before; that is, the normal equations are the same as matrix equation 9 for the prediction filter with prediction distance Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha .

If we assume the desired output to be the head Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): h= \left(b_0{ ,\ }b_{1}{ ,\ldots ,}\ b_{\alpha-1}\right) , the crosscorrelation between desired output and input is simply the autocorrelation Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \rho of the head; that is,

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} \rho_0= b^{2}_0+b^{2}_{1}+\ldots +b^{2}_{\alpha }{ \ ,\ }\rho_{1}= b_{1}b_0+b_{2}b_{1}+\ldots +b_{\alpha }b_{\alpha -1}{,\ldots ,\ }\rho_{\alpha-1 }= b_{\alpha-1 }b_0. \end{align} (38)

Thus, the right-hand side of the normal equations is

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} g= \left({\rho }_0{ ,\ }{\rho }_{{ 01}} ,\dots ,{\rho }_{\alpha-1 }{ ,\ 0,0,}\dots ,0\right) . \end{align} (39)

For the head-shaping filter, matrix equation 4 becomes

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \left[ \begin{array}{l} \,r_0 \;\;\;\;\;\;\;\;r_1 \;\;\;\;\;\,\,\, \ldots \;\;\;\;\;\,r_{\alpha - 1} \;\;\;\;r_\alpha \;\;\;\;\;r_{\alpha + 1} \,\,\,\,\, \ldots \,\,\,\,r_{\alpha + N - 1} \\ r_1 \;\;\;\;\;\;\;\;r_0 \;\;\;\;\,\,\,\,\, \ldots \;\;\;\;\;r_{\alpha - 2} \;\;\;\;r_{\alpha - 1} \;\;\;r_\alpha \;\;\;\;\;\, \ldots \;\;\;r_{\alpha + N - 2} \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\,\;\,\;\;\;\;\;\,\,\,\, \ldots \;\;\;\;\;\; \\ r_{\alpha - 1} \;\;\,\;\;r_{\alpha - 2} \;\;\;\;\;\; \ldots \;\;\;\;\;r_0 \;\;\;\;\;\;\;r_1 \,\;\;\;\;r_2 \;\;\;\;\;\,\, \ldots \;\;\;\,r_{N + 1} \\ r_\alpha \;\;\;\;\,\;\;r_{\alpha - 1} \;\;\;\;\;\;\, \ldots \;\;\;\;\;r_1 \;\;\;\;\;\;\;r_0 \;\;\;\;r_1 \;\;\;\;\;\,\,\, \ldots \;\;\;\,r_N \; \\ r_{\alpha + 1} \;\;\,\;\;r_\alpha \;\;\;\;\;\;\;\,\, \ldots \;\;\;\;r_2 \;\;\;\;\;\;\;r_1 \;\;\;\;\;r_0 \;\;\;\;\;\;\,\, \ldots \;\;\,\,r_{N - 1} \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\,\,\, \ldots \\ r_{\alpha + N - 1} \;\;r_{\alpha + N - 2} \,\,\,\, \ldots \;\;\;\;r_{N + 1} \,\,\,\,\,r_N \;\;\;\,r_{N - 1} \,\,\,\,\,\,\, \ldots \;\;\;\;r_0 \\ \end{array} \right]\left[ \begin{array}{l} f_0 \\ f_1 \\ \ldots \\ f_{\alpha - 1} \\ f_\alpha \, \\ f_{\alpha + 1} \\ \ldots \\ f_{\alpha + N - 1} \\ \end{array} \right] = \left[ \begin{array}{l} \rho _0 \\ \rho _1 \\ \ldots \\ \rho _{\alpha - 1} \\ 0 \\ 0 \\ \ldots \\ 0 \\ \end{array} \right]. (40)

Let us interpret this equation in terms of the prediction-error filter. Because the desired output is the first Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha values of the minimum-phase wavelet, the crosscorrelation is the autocorrelation of the head. Because the head is of length Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha , the crosscorrelation vanishes for lags greater than Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha-1 . The input wavelet is minimum phase. The prediction-error operator shortens this input wavelet b to its head, which is of length Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha . Because Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha is an independent variable, we are free to select whatever value we wish for Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha . Thus, we can control the desired degree of resolution or wavelet contraction. However, this use of the prediction-error filter is not a more generalized approach to deconvolution but is part of a unified whole. The set of prediction-error filters (with various prediction distances) for a given autocorrelation has the spiking filter (which has prediction distance 1) at one extreme and the do-nothing filter (with prediction distance Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \infty ) at the other extreme. All of the prediction-error filters in the set are simply related to each other.

A numerical example follows: Let the minimum-phase wavelet be Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): b={1} , -{ 0.6,0.3,-0.1} . Let the length of the prediction filter be Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): N={4} , and let the prediction distance be Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha ={2} . The tail of the wavelet is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): t= \left({0.3,\ }-{ 0.1}\right) . The one-sided minimum-phase wavelet autocorrelation is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): r= (1.46, -{ 0.81}, 0.36, -{ 0.1} . The crosscorrelation of the tail with the wavelet, which is the same as the advanced autocorrelation of the wavelet, is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): g={(0.36,}-{ 0.1}, 0,{ 0} . Normal equations (4) are then

</translate> <translate>

$ \left[{\begin{array}{l}\,\,\,1.46\;\;\;\;\;\;-0.81\;\;\;\;\;\;0.36\;\;\;\;\;\,\,-0.1\;\,\\-0.81\;\;\;\;\;\;\;\,\,1.46\;\;\;\,-\;0.81\;\;\;\;\;\;\;\,\,0.36\\\;\;0.36\;\;\;\;\;\,-1.81\;\;\;\;\;\;\,1.46\;\;\;\;\;\,\,-\,0\;.81\;\\-0.1\;\;\;\;\;\;\;\;\;\;0.36\;\;\;\;-0.81\;\;\;\;\;\;\,\;\;1.46\,\\\end{array}}\right]\left[{\begin{array}{l}\;\;\,0.2998\\\,\,\,\,0.08012\\\,-\,0.04197\\\;\;\;0.0225\,\\\end{array}}\right]=\left[{\begin{array}{l}\,\,\,0.36\\-0.1\\\,\,\,\,0\\\;\;\,0\;\;\,\\\end{array}}\right], $ (41)

where the column vector on the left is the prediction operator — namely, the solution of system 41. Equation 18 for the prediction-error operator is

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \left[ \begin{array}{l} \,\,\,1.46\;\;\;\;\;\; - 0.81\;\;\;\;\;\;0.36\;\;\;\;\;\,\, - 0.1\;\;\;\;\;\;\,\;\;\,\,\,\,0\;\;\;\;\;\;\,\,\,\,\,\,\,\,0 \\ - 0.81\;\;\;\;\;\;\;\,\,1.46\;\;\;\, - \;0.81\;\;\;\;\;\;\;\,\,0.36\;\;\;\;\,\,\, - 0.1\;\;\;\;\,\,\,\,\,\,\,0 \\ \;\;0.36\;\;\;\;\;\, - 1.81\;\;\;\;\;\;\,1.46\;\;\;\;\;\,\, - \,0\;.81\;\;\;\;\,\;\,\,\,0.36\;\;\,\, - 0.1 \\ - 0.1\;\;\;\;\;\;\;\;\;\;0.36\;\;\;\; - 0.81\;\;\;\;\;\;\,\;\;\,1.46\,\,\,\;\;\,\, - 0.81\;\;\; - 0.36 \\ \,\,\,0\;\;\;\;\;\;\;\;\;\; - 0.1\;\;\;\;\;\, - 0.36\;\;\;\;\;\; - 0.81\;\;\;\;\,\,\,\,\,\,\,1.46\;\;\; - 0.81 \\ \;\;0\;\;\;\;\;\;\;\;\;\;\;\;\,0\;\;\;\;\;\;\;\; - 0.1\;\;\;\;\;\;\;\;\;\;\;0.36\;\;\;\;\,\, - 0.81\;\;\;\;\;\;1.46 \\ \end{array} \right]\left[ \begin{array}{l} \;\;\,1 \\ \,\,\,\,0 \\ \, - \,0.2997 \\ \;\;\;0.08012 \\ \;\;\;0.04197 \\ \, - 0.0225 \\ \end{array} \right] = \left[ \begin{array}{l} \,\,\,1.36 \\ - 0.6 \\ \,\,\,\,0 \\ \;\;\,0 \\ \;\;\,0 \\ \;\;\,0 \\ \end{array} \right], (42)

where the column vector on the left is the prediction-error operator

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} f = \left({ 1,\ 0.0001957,\ }-{0.2997,\ }{ 0.08011,\ }{ 0.0225}\right) , \end{align} (43)

as given by the solution of the equations. The crosscorrelation of the head with the wavelet, which is the same as the autocorrelation of the head, is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \rho = \left({ 1.36,\ }-{ 0.6,0,0,0,0}\right) .

Equation 40 for the head-shaping operator is

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \left[ \begin{array}{l} \,\,\,\, 1.46\;\;\;\;\;\; - 0.81\;\;\;\;\;\;0.36\;\;\;\;\;\,\, - 0.1\;\;\;\;\;\;\,\;\;\,\, 0\;\;\;\;\;\;\,\,\,\,\,\,\,\,\, 0 \\ - 0.81\;\;\;\;\;\;\;\,\,\,\, 1.46\;\;\;\, - 0.81\;\;\;\;\;\;\;\;\,\, 0.36\;\;\;\;\, - 0.1\;\;\;\;\,\,\,\,\,\,\,\, 0 \\ \;\;\, 0.36\;\;\;\;\;\, - 1.81\;\;\;\;\;\;\,1.46\;\;\;\;\;\,\, - \,0\;.81\;\;\;\;\;\,\,0.36\;\;\,\, - 0.1 \\ - 0.1\;\;\;\;\;\;\;\;\;\;\, 0.36\;\;\;\; - 0.81\;\;\;\;\;\;\,\;\;\,\, 1.46\,\,\,\;\; - 0.81\;\;\; - 0.36 \\ \,\,\,\, 0\;\;\;\;\;\;\;\;\;\; - 0.1\;\;\;\;\;\, - 0.36\;\;\;\;\;\; - 0.81\;\;\;\;\,\,\,\,\,1.46\;\;\; - 0.81 \\ \;\;\, 0\;\;\;\;\;\;\;\;\;\;\;\, \,\;\,0\;\;\;\;\;\;\;\;\, - 0.1\;\;\;\;\;\;\;\;\;\;\;\, 0.36\;\;\;\; - 0.81\;\;\;\;\;\;1.46 \\ \end{array} \right]\left[ \begin{array}{l} \;\;\,1 \\ \,\,\,\,0.0001957 \\ \, - \,0.2997 \\ \;\;\;0.08011 \\ \;\;\;0.04196 \\ \;\;\;0.0225 \\ \end{array} \right] = \left[ \begin{array}{l} \,\,\,1.36 \\ - 0.6 \\ \,\,\,\,0 \\ \;\;\,0 \\ \;\;\,0 \\ \;\;\,0 \\ \end{array} \right], (44)

where the column vector on the left is the head-shaping operator

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} f = \ \left({ 1,\ 0.0001957,\ }{-0.2997,\ }{0.08011,\ }{ 0.0225}\right) , \end{align} (45)

as given by the solution of the equations. Filters 43 and 45 are the same, within the limits of the numerical approximations used.

However, the above two methods in fact need not be used to compute the prediction-error operator. Spike deconvolution and gap deconvolution are intimately related. Equation 36 states that Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): f= a*h , which says that the gap-deconvolution filter f for a given value of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha is the convolution of the spike filter a with the head h of the minimum-phase wavelet b. Because spike filter a is necessarily minimum phase, it follows that the gap filter f is minimum phase if and only if the head h is minimum phase.

Let the length of the prediction filter be N = 4, and let the prediction distance be Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha = 1 . The tail of the wavelet is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): t= \left(-{ 0.6,0.3,\ }-{ 0.1}\right) . The crosscorrelation of the tail with the wavelet, which is the same as the advanced autocorrelation of the wavelet, is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): g={(\ 0.81,0.36,-0.1,0)} . Equation 4 becomes

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \left[ \begin{array}{l} \,\,\,\,1.46\;\;\;\;\;\; - 0.81\;\;\;\;\;\;\, 0.36\;\;\;\;\;\, - 0.1 \\ - 0.81\;\;\;\;\;\;\;\,\,\,\, 1.46\;\;\;\, -0.81\;\;\;\;\;\;\;\,\,\, 0.36\;\; \\ \;\;\, 0.36\;\;\;\;\; - 1.81\;\;\;\;\;\;\,\, 1.46\;\;\;\;\;\, -0.81\;\; \\ - 0.1\;\;\;\;\;\;\;\;\;\;\, 0.36\;\;\;\; -0.81\;\;\;\;\;\;\;\;\,\, 1.46 \\ \end{array} \right]\left[ \begin{array}{l} - 0.5998 \\ - 0.06096 \\ \,\,\,\, 0.04497 \\ - 0.001103 \\ \end{array} \right] = \left[ \begin{array}{l} - 0.81 \\ - 0.36 \\ - 0.1 \\ \;\;\;0 \\ \end{array} \right], (46)

where the column vector on the left is the prediction operator, as given by the solution of the equations. Thus, the spike operator is Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): a= (1 , 0.5998, 0.06096, -{ 0.04497}, 0.001103) . The convolution of the spike operator with the head Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): h= \left({ 1\ ,\ }-{ 0.6}\right) for Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha ={2} gives the prediction-error operator

</translate> <translate>

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \begin{align} f= ({\rm 1}, -{ 0.0002227,} -{ 0.2989,} -{ 0.08154}, 0.02808, -{ 0.0006696}). \end{align} (47)

We have found the prediction-error filter in three ways, which resulted in equation 43, equation 45, and equation 47. For a prediction-error operator of a given length, the head-shaping method given by equation 45 produces the most accurate result. Equation 47, which is obtained by convolution of the spike filter with the head, gives the least accurate result.

Spiking-filter outputs cannot in general be interpreted with ease because high-frequency components are present in the deconvolved trace. Those components result from the fact that this kind of deconvolution uses inverse, or spiking, filters. One improves this condition by passing the raw deconvolved trace through suitable low-pass filters, by smoothing the autocorrelation function, or by other related means.

Use of prediction-error filters with an arbitrary prediction distance Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://en.wikipedia.org/api/rest_v1/":): \alpha leads to a deconvolution method in which the gap-deconvolved trace becomes equal to the convolution of the head of the wavelet with the spike-deconvolved trace. The head of the wavelet generally is a poor choice except in cases for which a detailed special type of convolutional model is available. More effective controls exist for the desired degree of resolution than are offered by gap deconvolution. In conclusion, gap deconvolution should not be used except when circumstances warrant it.


Continue reading

Previous section Next section
Gap deconvolution Seismic deconvolution
Previous chapter Next chapter
Wavelet Processing Fine Points

Table of Contents (book)


Also in this chapter


External links

</translate>

find literature about
Tail shaping and head shaping

<translate> </translate>