New answers tagged


The OP's question requires further details to provide a definitive answer, but the following will give the considerations involved. If the noise is white and stationary then the answer is clear in that we can simply use a power spectral density and work with the SNR as an SNR/Hz quantity. If the noise is not white (meaning the average power across all bins ...


I was doing quite a bit wrong, but the key thing that I was missing was the fact that the SNR needs to be calculated over the whole Nyquist spectrum instead of only looking at the peaks. This article explains everything very well: Taking the Mystery out of the Infamous Formula, "SNR = 6.02N + 1.76dB," and Why You Should Care. Another issue was that ...


Some issues here: Your SNR formula only applies to full scale sine waves, your sine wave has -6dB amplitude so your SNR will be 6 dB lower The formula also implies rounding, not truncation, that's another 6 dB You use a frequency that's a small integer divider of the sample rate, that means you are just repeating the same samples over and over again and don'...


The algorithm I referenced is premised on the signal being a pure real tone, in which case it will give an exact answer. The presence of noise or other tones will distort the answer somewhat, but the formulas are actually quite robust. As long as the tones are fairly far apart (at least several bins), the distortion due to other tones is small. Aligning ...


On SNR wikipedia page, there is a section "Alternative definition". SNR = Mean^2 / Standard_deviation^2


Here is a common/straight-forward way using the discrete time domain samples. If you have the noise free signal, $x[n]$, and you created a noise signal, $w[n]$, then you can calculate the SNR by using the formula: $\frac{\sum_n |x[n]|^2}{\sum_n |w[n]|^2}$.

Top 50 recent answers are included