[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Constant baseline between FFTs
From: |
Fons Adriaensen |
Subject: |
Re: Constant baseline between FFTs |
Date: |
Sat, 30 Dec 2023 10:38:51 +0100 |
On Sat, Dec 30, 2023 at 08:20:28AM +0100, Dr Cdiff wrote:
> I have complex data in a file sink. I do File Source, Throttle, Stream to
> Vector, FFT, Multiply Conjugate,
So then the real part is magnitude squared. So why
> Complex to MagĀ²
which results in magnitude^4 and not "select real part" ?
> I can handle the problem by dividing by the median of every FFT.
If by 'moving baseline' you mean that the gain of the process seems to
be different in each iteration, then "dividing by median" is the *cause*
the problem. Just don't do it, and you will have constant gain.
If you mean that the low level bins of your spectrum seem random,
that is because those are probably noise. To measure this you need
to average the power over time.
If you mean that e.g. a constant level sine wave appears not to be
constant in the output, that may be because you don't window before
the FFT.
If you want some form of 'automatic gain control' then you could
use the total power (sum over the mag^2 vector) and average this
over time before dividing by it. Certainly not the median.
Ciao,
--
FA