Tikhonov, as part of his programme of formulating a framework of regularization methods for ill-defined and ambiguously-defined mathematical devised a regularization for the Fourier Transform. This can be found under "Tikhonov Regularization", searched on in conjunction with "Fourier Transform".
Noise removal is a natural outgrowth of the process, and the same basic approach is also applied to deconvolution, yielding the Wiener method as a special case.
Reply by Sean VN●May 5, 20152015-05-05
I think the ultimate is to use an evolutionary algorithm to fit the data set with as many a*sin(f*t+c) functions you want/need.
Yes, I know it is slow, in the 10's of seconds range. However for things like astronomical data sets it is a much better idea than using fft's that throw up all kinds of mathematical difficulties.
Reply by dbd●May 1, 20152015-05-01
On Tuesday, April 28, 2015 at 5:47:08 AM UTC-7, Rick Lyons wrote:
> Hi Bob,
> If by "vector averaging" you mean separately averaging
> the real and imaginary parts of the corresponding DFT bins
> of multiple DFTs, I thought that process is only useful
> if two conditions are satisfied:
.
> [1] The signal of interest is periodic, and
> [2] The onset of A/D conversion is synchronized
> with the periodic signal of interest.
.
> It seems to me that such a process is rarely useful
> because "typical" signals of interest are usually
> not periodic. (Except, maybe, radar signals.)
.
> [-Rick-]
Rick
I started with PSD calculated from a noise signal. It has a large error from the noise process PSD no matter how large the fft. The estimate of process PSD can be improved by averaging many PSD calculations. Synchronization does not apply.
For non-periodic or slowly varying period or unknown period signals, power spectrum has been averaged to improve signal estimates despite lack of complete knowledge or periodicity.
Where there is periodicity and an integer number of samples per period, you can average synchronized data blocks as either time samples or dft coefficients to produce signal gain against noise. This is sometimes called 'coherent integration'. Averaging in the time domain requires only a single fft calculation. The order of dft and sum can be reversed since both are linear when no power calculation is performed in between.
The synchronization problem is commonly solved in applications like roller balancing in many types of industrial mills, balancing shafts of turbine engines (stationary generators and aircraft engines) and helicopter rotor track and balancing by generation of a tach signal on the hardware itself. There really are a lot of places where synchronous machinery vibration analysis is done.
Dale B Dalrymple
Reply by Bob Masta●April 29, 20152015-04-29
On Tue, 28 Apr 2015 05:47:01 -0700, Rick Lyons
<R.Lyons@_BOGUS_ieee.org> wrote:
>On Sun, 26 Apr 2015 12:38:17 GMT, N0Spam@daqarta.com (Bob Masta)
>wrote:
>
>>On Sat, 25 Apr 2015 16:35:29 GMT, eric.jacobsen@ieee.org
>>(Eric Jacobsen) wrote:
>>
>><snip>
>>
>>>Averaging, on the other hand, adds correlated energy but not
>>>uncorrelated energy. This provides a true increase in SNR since the
>>>correlated signals will add but the noise won't. This is different
>>>than increasing N in a DFT, which just stretches the same noise out
>>>over more bins.
>>
>>I think it's important to point out that this needs to be
>>*vector* averaging, where the DFT is synchronous with the
>>desired signal of interest. That's equivalent to performing
>>synchronous waveform averaging on multiple frames, then
>>taking a single DFT of the average. Either way, you
>>typically need a sync or trigger signal.
>>
>>If you just average a bunch of (untriggered) spectra, you'll
>>find the average noise. This is often still worth doing,
>>but doesn't really provide S/N improvement.
>>
>>Best regards,
>>Bob Masta
>
>Hi Bob,
> If by "vector averaging" you mean separately averaging
>the real and imaginary parts of the corresponding DFT bins
>of multiple DFTs, I thought that process is only useful
>if two conditions are satisfied:
>
>[1] The signal of interest is periodic, and
>[2] The onset of A/D conversion is synchronized
> with the periodic signal of interest.
That's what I meant by "where the DFT is synchronous with
the desired signal of interest."
>It seems to me that such a process is rarely useful
>because "typical" signals of interest are usually
>not periodic. (Except, maybe, radar signals.)
I guess "typical" depends on your area of interest. <g>
Synchronous signals are standard for "stimulus - response"
systems (like radar). A big area is "evoked potentials" in
biological systems, for example in hearing research. You
present the subject with repeating tone bursts (typically in
one ear, at some specified frequency of interest) while
recording EEG signals from scalp electrodes. The brain's
response to that tone is totally buried in the EEG due to
all the other neural processes that are going on, but
synchronous averaging (1000s of frames) can extract it.
It's true, however, that with neural evoked potentials the
waveform is typically of more interest than the spectrum,
since the latency of each response peak indicates what part
of the system contributed it: Longer latencies are due to
processes farther up the neural chain from the ear to the
brain.
Maybe some other procedures would use the spectrum.
Something like non-destructive impact testing maybe, where
you repeatedly tap the bridge or dam or whatever with a
little solenoid hammer and look at responses from distant
sensors while the structure is still in daily use (traffic
noise, etc).
I first encountered vector averaging on a benchtop spectrum
analyzer many years ago. (I think a Stanford Research
unit.) It only showed the spectrum, not the (averaged)
waveform, which limited its utility. Dunno why they didn't
want to average the waveform before taking the FFT, but it
might have had something to do with their Zoom FFT scheme.
Best regards,
Bob Masta
DAQARTA v7.60
Data AcQuisition And Real-Time Analysis
www.daqarta.com
Scope, Spectrum, Spectrogram, Sound Level Meter
Frequency Counter, Pitch Track, Pitch-to-MIDI
FREE Signal Generator, DaqMusiq generator
Science with your sound card!
>On Sat, 25 Apr 2015 16:35:29 GMT, eric.jacobsen@ieee.org
>(Eric Jacobsen) wrote:
>
><snip>
>
>>Averaging, on the other hand, adds correlated energy but not
>>uncorrelated energy. This provides a true increase in SNR since the
>>correlated signals will add but the noise won't. This is different
>>than increasing N in a DFT, which just stretches the same noise out
>>over more bins.
>
>I think it's important to point out that this needs to be
>*vector* averaging, where the DFT is synchronous with the
>desired signal of interest. That's equivalent to performing
>synchronous waveform averaging on multiple frames, then
>taking a single DFT of the average. Either way, you
>typically need a sync or trigger signal.
>
>If you just average a bunch of (untriggered) spectra, you'll
>find the average noise. This is often still worth doing,
>but doesn't really provide S/N improvement.
>
>Best regards,
>Bob Masta
Hi Bob,
If by "vector averaging" you mean separately averaging
the real and imaginary parts of the corresponding DFT bins
of multiple DFTs, I thought that process is only useful
if two conditions are satisfied:
[1] The signal of interest is periodic, and
[2] The onset of A/D conversion is synchronized
with the periodic signal of interest.
It seems to me that such a process is rarely useful
because "typical" signals of interest are usually
not periodic. (Except, maybe, radar signals.)
[-Rick-]
Reply by robert bristow-johnson●April 27, 20152015-04-27
On 4/26/15 10:33 PM, Eric Jacobsen wrote:
> On Sun, 26 Apr 2015 12:38:17 GMT, N0Spam@daqarta.com (Bob Masta)
> wrote:
>
>> On Sat, 25 Apr 2015 16:35:29 GMT, eric.jacobsen@ieee.org
>> (Eric Jacobsen) wrote:
>>
>> <snip>
>>
>>> Averaging, on the other hand, adds correlated energy but not
>>> uncorrelated energy. This provides a true increase in SNR since the
>>> correlated signals will add but the noise won't. This is different
>>> than increasing N in a DFT, which just stretches the same noise out
>>> over more bins.
>>
>> I think it's important to point out that this needs to be
>> *vector* averaging, where the DFT is synchronous with the
>> desired signal of interest. That's equivalent to performing
>> synchronous waveform averaging on multiple frames, then
>> taking a single DFT of the average. Either way, you
>> typically need a sync or trigger signal.
and you have to assume that there is something repeating enough to infer
a sync signal.
>>
>> If you just average a bunch of (untriggered) spectra, you'll
>> find the average noise. This is often still worth doing,
>> but doesn't really provide S/N improvement.
>>
>
> You can do a pretty good job of it without an external trigger by
> phase aligning the largest bins or largest bins of interest, or
> aligning the average phase of a group, etc., prior to addition.
>
or you can do what the speech and audio and music folks do with pitch
detection and marking onsets of each period of quasi-periodic data.
line it up, window it, DFT it, average each bin with what you had
previously.
--
r b-j rbj@audioimagination.com
"Imagination is more important than knowledge."
>On Sat, 25 Apr 2015 16:35:29 GMT, eric.jacobsen@ieee.org
>(Eric Jacobsen) wrote:
>
><snip>
>
>>Averaging, on the other hand, adds correlated energy but not
>>uncorrelated energy. This provides a true increase in SNR since the
>>correlated signals will add but the noise won't. This is different
>>than increasing N in a DFT, which just stretches the same noise out
>>over more bins.
>
>I think it's important to point out that this needs to be
>*vector* averaging, where the DFT is synchronous with the
>desired signal of interest. That's equivalent to performing
>synchronous waveform averaging on multiple frames, then
>taking a single DFT of the average. Either way, you
>typically need a sync or trigger signal.
>
>If you just average a bunch of (untriggered) spectra, you'll
>find the average noise. This is often still worth doing,
>but doesn't really provide S/N improvement.
>
>Best regards,
>
>
>Bob Masta
You can do a pretty good job of it without an external trigger by
phase aligning the largest bins or largest bins of interest, or
aligning the average phase of a group, etc., prior to addition.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com
>Averaging, on the other hand, adds correlated energy but not
>uncorrelated energy. This provides a true increase in SNR since the
>correlated signals will add but the noise won't. This is different
>than increasing N in a DFT, which just stretches the same noise out
>over more bins.
I think it's important to point out that this needs to be
*vector* averaging, where the DFT is synchronous with the
desired signal of interest. That's equivalent to performing
synchronous waveform averaging on multiple frames, then
taking a single DFT of the average. Either way, you
typically need a sync or trigger signal.
If you just average a bunch of (untriggered) spectra, you'll
find the average noise. This is often still worth doing,
but doesn't really provide S/N improvement.
Best regards,
Bob Masta
DAQARTA v7.60
Data AcQuisition And Real-Time Analysis
www.daqarta.com
Scope, Spectrum, Spectrogram, Sound Level Meter
Frequency Counter, Pitch Track, Pitch-to-MIDI
FREE Signal Generator, DaqMusiq generator
Science with your sound card!
Reply by Eric Jacobsen●April 25, 20152015-04-25
On Fri, 24 Apr 2015 17:11:04 -0500, "apchar1" <105381@DSPRelated>
wrote:
>There's a statement in Smiths The Scientist and Engineer's Guide to
>Digital Signal Processing about the effect of fft length on noise. In
>arguing the virtues of averaging multiple short fft's instead of one long
>fft he says "Longer DFTs provide better frequency
>resolution, but the same noise level."
>But thats not true is it? The noise level of an fft rises with the
>sqrt(N). The signal grows with N. So the SNR rises with N/sqrt(N) =
>sqrt(N). Longer fft's do buy you noise reduction. Dont they?
>
>
>---------------------------------------
>Posted through http://www.DSPRelated.com
Think of it this way:
Parseval's theorem tells us that power is preserved across the
transform, so whatever the noise power was going in, will also be the
noise power coming out. This is to Dale's point that the PSD on the
transform output does, and should, always reflect the PSD of the noise
power that is present. This is independent of the length of the
DFT.
That is not to be confused with the fact that as the length of the DFT
increases the amount of the total noise present PER BIN decreases.
This is pretty much where the SNR gain with a DFT for tones/spurs
comes from, since the BW reduction of a bin affects the noise per bin,
but not the signal if the signal is isolated to a single bin. The
total noise power in the DFT output remains the same, and the PSD,
regardless of N. The apparent increase in SNR happens when the noise
is spread over more bins as N increases.
I hope that's not confusing, but it is an important distinction and
very important in interpreting DFT outputs.
Averaging, on the other hand, adds correlated energy but not
uncorrelated energy. This provides a true increase in SNR since the
correlated signals will add but the noise won't. This is different
than increasing N in a DFT, which just stretches the same noise out
over more bins.
Eric Jacobsen
Anchor Hill Communications
http://www.anchorhill.com
Reply by Randy Yates●April 25, 20152015-04-25
"apchar1" <105381@DSPRelated> writes:
> [...]
> But thats not true is it?
Yes, it is true. It is not intuitive.
I first learned about it in an old book from Mischa Schwartz on estimation:
@book{schwartz,
title = "Signal Processing: Discrete Spectral Analysis, Detection, and Estimation",
author = "{Mischa~Schwartz and Leonard~Shaw}",
publisher = "McGraw-Hill",
year = "1975"}
The variance of spectral estimates is not reduced by taking longer DFTs,
but by averaging multiple DFTs.
--
Randy Yates
Digital Signal Labs
http://www.digitalsignallabs.com