12.747 Lecture 7: Section 1:

Sequence Analysis II: Optimal Filtering and Spectral Analysis

File last modified 9 October 1996


7.1 Optimal (and Other) Filtering

This lecture is a continuation of Lecture 6. We will conclude the topic of filtering and discus issues associated with the venerable field of spectral analysis.

7.1.1 The Weiner (Optimal) Filter

Picture a situation where you have an uncontaminated signal, "u(t)" which is being measured by an instrument with a response function "r(t)". The output of this instrument will be the convolution of the two functions, which we'll call "s(t)", defined by

We've treated this part of the problem before. Now, as is inevitable, noise "n(t)" is introduced into the process, which must be added to "s(t)", which gives us what we finally measure:

This process can be viewed as such:

Now what we would like to do is to design an Optimal Filter which can be used to extract the original, uncontaminated signal from the mess that we actually saw in "c(t)". Well, let's take stock of what we "know". We know "r(t)", and we've measured "c(t)". If we somehow could guess at "n(t)", we could actually solve the problem. It turns out (and we're jumping the gun a bit here) you can use spectral analysis. What we will do is to take advantage of the fact that "real" signals that come out of instruments are bandwidth limited, that is to say they don't have much high frequency power. This may be because of limitations in the instrument's electronics, response time of electrodes, ion transport in solution, etc. On the other hand, noise is generally not bandwidth limited, and has a significant power at high frequencies. Quite often, the noise power is distributed relatively uniform across the spectrum (it is referred to as "white noise"). Thus if you look at the spectrum of your data, which is a plot of the square of the fourier transforms, you would see something like this:

Note that the labels are deliberately upper case, since they are the fourier transforms of the time domain signals. The red line is what you measure, and the green dashed line is what you extrapolate from the high frequency (noise) behavior. What is left is the S signal, the blue dotted line, which you infer by subtracting the extrapolated noise. This seems a very approximated process, but it turns out that the precision of your estimates need not be tremendous to make marked improvements in your determination of "u(t)". What you intend to do is construct an optimal filter "PHI(f)" which in combination with the response function transform "R(f)" can give you a best estimate of the uncontaminated signal. That is

We won't use the rigorous derivation for PHI, but will argue that since "C(f)" is the vector sum of "N(f)" and "S(f)", and since they are uncorrelated (true noise is uncorrelated with anything), then we can argue that getting at S(f) would require dividing C(f) by some sum of "N(f)" and "S(f)". This amounts to having

Now this expression for PHI(f) is a kind of least-squares minimization. This means that errors in our estimate of PHI(f) due to inaccuracies in our guesstimates of "S(f)" and "N(f)" are second order. Thus the crudeness whereby we estimated them is forgivable. Refining this estimate is almost always an activity of greatly diminishing returns, so the first stroke is the best.

7.1.2 Other Filters

There are other numerical filters that can be applied to data to improve the signal and reduce the noise. Often the choice is dictated by what one considers noise. There are "low pass" filters which eliminate high frequencies in your data. There are also "high pass" filters which reject slow variations in the data. A "band pass" filter is a combination filter which rejects all but a certain frequency range. A "notch filter" does the opposite: it rejects a certain (usually narrow) range of filters. For example, if your data is contaminated with 60 Hz electrical noise, you might pass it through a notch filter set to 60 Hz.

We won't go further into this area, because it is a rather large and complex area, but we wanted to let you know that it existed and where to go for further information. Of particular utility is Recipes chapter 12, section 9; and the tutorial section of the MATLAB Signal Processing Toolbox Manual.


GoTo Next Section
GoTo Lecture TOC
GoTo 12.747 TOC


The text, graphics, and other materials contained in this webpage and attached documents are intended solely for scholarly use by the scientific and academic community. No reproduction, re-transmission or linking of this page to any other page without the author's expressed written permission is permitted.
© 1998, 2000 -- David M. Glover, WHOI --