SNR estimation from single vector

9 visualizzazioni (ultimi 30 giorni)
I'm interested in estimating the SNR of a signal with a wandering mean and no defined "signal" and "noise" vector. I have the following data, call it x:
My initial thought was to run it through a high-pass filter with a really low cutoff to get a steady, zero-mean signal. Then I would take the amplitude of the signal over the variance of the entire signal:
SNR = min(x)^2/var(x)
However, I have a feeling this is overly complicated and not a very good estimation. Thoughts?
  4 Commenti
Walter Roberson
Walter Roberson il 26 Gen 2016
The data file did not get attached.
Sounds to me as if you want a low-pass filter.
Jeffrey Adolf
Jeffrey Adolf il 26 Gen 2016
Not sure why it didn't... I'll try again. You're suggesting an LPF to regain just my signal, then calculating based on that?

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 26 Gen 2016
Maybe try a Savitzky-Golay filter. Experiment around with different orders and window widths until you achieve the "look" you want. I attach a demo.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by