# how to estimate the noise of a signal?

please can someone help me to define a method that allows me to estimate the power of noise in any signal? the signal is received by usrp and the problem that it is variable all the time in the FM band so the noise is variable also with frequency and time

thanks in advance for any help

## 2 Answers

Noise floor estimation is usually done after applying an FFT to windowed data segments. By tracking the noise floor in each frequency band, the frequency dependence of the noise is taken into account. If the noise is non-stationary, its time dependence can be tracked by regularly updating the noise floor estimate in each frequency band. This usually requires the noise to vary more slowly than the desired signal. Have a look at this paper to get an idea of how it can work, and also look at the references therein. Search the web for "noise floor estimation" and "noise floor tracking" to find many more papers on the subject.

• Yes i did the dft for N samples and i want to estimate the noise power in every bin where the signal is equal to : s = x+n with n : noise. In fact, the signal is close to chi_2 distribution – Mkachakh Madridsita May 6 '15 at 12:32
• @MkachakhMadridsita: Yes, that's what's normally done. Have a look at the paper I linked to in my answer on how to proceed. – Matt L. May 6 '15 at 13:41
• thank you but it is so complicated ! I look for a simple algorithm to estimate approximately the noise in any frequency bin. – Mkachakh Madridsita May 6 '15 at 15:42

I'm not sure what you mean by "noise" and "power" in your specific case. A very general way of determining how noisy a signal is can be calculating the variance (square of the standard deviation, power is usually proportional to a square) within a window moving along the signal. This method works for signals where the noise has a distribution close to a Gaussian one. The length of the window depends on what time resolution you need, but a very short one may fail to approximate the variance well enough.