Skip to content Skip to navigation

Connexions

You are here: Home » Content » The Wiener Filter

Navigation

Lenses

What is a lens?

Definition of a lens

Lenses

A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual Connexions member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

This content is ...

Affiliated with (What does "Affiliated with" mean?)

This content is either by members of the organizations listed or about topics related to the organizations listed. Click each link to see a list of all content affiliated with the organization.
  • Rice University ELEC 301 Projects

    This module is included inLens: Rice University ELEC 301 Project Lens
    By: Rice University ELEC 301As a part of collection:"ELEC 301 Projects Fall 2004"

    Click the "Rice University ELEC 301 Projects" link to see all content affiliated with them.

Recently Viewed

This feature requires Javascript to be enabled.

The Wiener Filter

Module by: Aditya Nag, Benjamin Weidman. E-mail the authors

User rating (How does the rating system work?)
Ratings

Ratings allow you to judge the quality of modules. If other users have ranked the module then its average rating is displayed below. Ratings are calculated on a scale from one star (Poor) to five stars (Excellent).

How to rate a module

Hover over the star that corresponds to the rating you wish to assign. Click on the star to add your rating. Your rating should be based on the quality of the content. You must have an account and be logged in to rate content.

:
(0 ratings)

Summary: Enter the Wiener filter, an adaptive filter. Derivations and applications.

Note: Your browser may not currently support MathML. See our browser support page for additional details. You can always view the correct math in the PDF version.

The wiener filter is an adaptive filter. It tailors itself to be the “best possible filter” for a given dataset. Below is a simplistic version of the derivation for the wiener formula.

Consider our standard equation to model a signal with noise:

yn=xn+nn y n x n n n (1)

We want to pass this y[n] through a filter ‘h’ such that we get back something that very closely resembles our original signal x, i.e. x.

So basically we want to design a filter that minimizes the difference between x and x. Lets start out by minimizing the least mean square error between x and x.

xx˜2 2 x x˜ (2)

But we know x is h*y (h convolved with y), so we have:

xx*y2 2 x x * y (3)

We can expand this expression known algebraic rules. Then we can take the Fourier transform of the expression to find the power spectra.

jXjHjYj2 j Xj Hj Yj 2 (4)
jXjHjXj+Nj2 j Xj Hj Xj Nj 2 (5)

We minimize this expression over H and in the end after all the simplification we get the following formula for H, our filter optimized to minimize the difference between x and x.

Hf=|Xf|2|Xf|2+|Nf|2 H f X f 2 X f 2 N f 2 (6)

Where X(f) is the power of the signal and N(f) is the power of the noise.

Just by inspection we can see that this filter will take care of the basics. For example when there is no noise, the filter response goes to just 1. When the signal is 0 the filter response goes to 0.

Notice to use this filter we will need to know the power spectrum of the actual signal. We also need to estimate the power spectrum of the noise. In real life this is done in numerous ways. Oftentimes out of convenience engineers will approximate the noise to Gaussian. This works well with varying results.

Building the Filter

One way to approximate the noise is “by inspection” or what is more commonly known as “guess and check”. In this method, you take a close look at your received signal and your pure signal.

Figure 1: Pure signal spectrum.
Figure 1 (wiener_2.gif)
Figure 2: Received signal spectrum.
Figure 2 (noise_power.jpg)

Then we try to figure out what the noise could look like based on this information. For this data set, we have traced out our “best guess” for the noise spectrum below

Figure 3: Noise trace.
Figure 3 (wiener_1.gif)

Just by looking at the noise spectrum we want, we look for patterns we could fit a mathematical formula to. In this example you can see that the function decays like a polynomial on one side and exponentially on the other.

So our general noise toggling function becomes:

(7)

And so we fix our parameters alpha, beta and gamma until we get something that resembles the function we drew in red earlier.

Note:

This function is particular to this data set. For other types of noise, you would have to fit a new appropriate noise function.

So now using the values we calculated for X(f) and N(f) we create our wiener filter.

Figure 4: Magnitude Plot of the Wiener filter.
Figure 4 (wiener_magnitude.jpg)

So lets try the filter on the data shall we?

Figure 5
(a) Unfiltered data.(b) Filtereddata.
Figure 5(a) (wiener_3.gif)Figure 5(b) (wiener_4.gif)

We see that the wiener filter does its job pretty well. It even wins over the bandpass filter in the simpler example since it even removes the excess amplitude added by the noise.

Lets take a look at the image of all the time series vectors.

Figure 6: A single unfiltered time series vector.
Figure 6 (time_series_vector.gif)
Figure 7
(a) Image of unfiltered time vectors.(b) Image of filtered time vectors.
Figure 7(a) (E_raw.gif)Figure 7(b) (E_filtered.gif)

We can see that the unfiltered image is pretty blurry with not much distinguishable from the background. On the other hand the picture of the filtered version comes out pretty well and we can see distinct values for every time series.

So that concludes the section on filtering. Hopefully you have a better understanding on how to design adaptive filters, the wiener filter in particular. Now its time to move the data to the next stage of the process: Imaging.

Content actions

Give Feedback:

E-mail the module authors | Rate module ( How does the rating system work?)

Rating system

Ratings

Ratings allow you to judge the quality of modules. If other users have ranked the module then its average rating is displayed below. Ratings are calculated on a scale from one star (Poor) to five stars (Excellent).

How to rate a module

Hover over the star that corresponds to the rating you wish to assign. Click on the star to add your rating. Your rating should be based on the quality of the content. You must have an account and be logged in to rate content.

(0 ratings)

Download:

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections directly in Connexions. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need a Connexions account to use 'My Favorites'.

| A lens (?)

Definition of a lens

Lenses

A lens is a custom view of Connexions content. You can think of it as a fancy kind of list that will let you see Connexions through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to Connexions materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual Connexions member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks