discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] White Noise detection and elimination


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] White Noise detection and elimination
Date: Mon, 18 Nov 2013 19:05:58 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0

Hi Robert,

I fear you're still off track.
First of all, "white" is a stochastic property of the signal. You can't see "whiteness" of additive noise in a single FFT; you can't see it in an average of time samples, either, because, let's assume this noise's amplitude follows a distribution that's first moment is 0, then the average amplitude addition (in time domain) is 0. Since this addition is spread over all frequencies (white), white complex noise will *not* tend to add a constant complex value - that wouldn't be white, it would have an dirac impulse on f=0! That'd just be a boring bias ;) So, really, you need to dig a little deeper into literature. I do have a strong feeling you will get to terms with these signal properties soon enough, but up until now the problem is not related to the signal being real, complex, discrete or continuous. There are a few misconceptions on stochastic here!

Your explanation of "going from complex to real" did not make much sense to me, sorry. You can't go from complex to real, the former vector space is a superset of the latter, and thus there is no reversible mapping from complex to real.

And once again, "subtracting W hat from all the coefficient and get the signal without noise" is plain wrong. Your noise is different and independent from sample to sample (that's what "white" implies!), so if you always subtract the same thing, you're bound to do something wrong. Sure, for some realizations of the random variable "noise amplitude in a sample", you might be going in the right directions, but usually, you'll be wrong half of the time, and that'd be worse than not doing your signal processing.

Hope that helps a little bit :)
Greetings,
Marcus

On 18.11.2013 18:25, Robert James wrote:
Got it: The Fourier coefficients tell you *two* things per freq:
amplitude and phase.  In real values (what I'm used to), those are two
distinct numbers.  In complex values (welcome to DSP), it's one
complex number, telling you the amplitude of the 0-degree component
(Re) and the amplitude of the -90-degree component (Img).

Going from complex to real is easy: complex r  = real amplitude,
complex theta = real phase.  But that's besides the point.  The point
is that amplitude alone is only half the story, phase is the other
half, and, without phase, you can't reconstruct the original signal.
(The FFT displays might not show the phase, and we might not alwasy
talk about it, but it's half the information, like it or not.)

So while FFT is invertible to signal, PSD isn't.

What about this approach, then: Put the Fourier coefficients of in
polar coordinates.  White noise will tend add a fixed complex value,
call it W, to each Fourier coefficient of the signal.  Assuming the
original signal has many zero Fourier coefficients (many more than
nonzero), when we add the noise, the most common coefficients will be
close to W.

If there is a complex value, call it W-hat, that is within delta of x%
of Fourier coefficients, we assume W-hat is the value of the additive
white noise.  Subtract W-hat from all the Fourier coefficients, IFTT,
and recover the signal with much of the white noise removed.

On 11/18/13, Martin Braun (CEL) <address@hidden> wrote:
On Mon, Nov 18, 2013 at 09:56:03AM -0500, Robert James wrote:
I'm eager to learn what's wrong with my concept, especially from the
experts here.
Robert, there's a lot of basics that need to be covered here. You might
have to go into the textbooks.

First of all, the FFT does *not* give you the power at a frequency. It
gives you a Fourier coefficient. It's amplitude does have something to
do with the power, but it's not the same.

Short tangent: You can estimate a PSD by using an FFT and then
mag-squaring the output. This is called a 'peridogram'.
You can get a better estimate by applying a window, and averaging
several periodograms. This is called 'Welch's method'.

Now here's the difference: You're chucking away the phase, and
squaring the amplitude. So what are you subtracting from what?

This goes on and on. Have look at the concept of 'digital filtering',
and specifically the Fourier method of designing filters. You will find
some similarities to your approach.

Also, be careful when assigning absolute powers (in Watts) to FFT bins!
I guess it's technically correct when you multiply the PSD value here
with the size of the FFT bin, but that assumes a good estimate of the
PSD, and for absolute values, that you have calibrated your system
correctly.

Even if it is *completely* wrong, I'd like to know the format of the
FFT output vector, so I can experiment myself.  What is the format?
Complex numbers (representing Fourier coefficients).

MB

--
Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin Braun
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT -- University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association

_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




reply via email to

[Prev in Thread] Current Thread [Next in Thread]