I have a noisy signal. Then using filtering techniques I got the estimated noiseless signal. I dont have the original noiseless signal. I have calculated SNR the following way: $$ \textrm{SNR}=10\log\left(\frac {\textrm{Estimated Noiseless Signal}^2} {\left(\textrm{Estimated Noiseless Signal-Noisy Signal}\right)^2}\right) $$

Is this method right?


Assuming you're calculating the $\textrm{SNR}$ in decibels, it is defined by the following equation:

$$ \textrm{SNR}_{db} = 10\log_{10}\left(\frac{P_{signal}}{P_{noise}}\right)^2 $$

You currently have (with squares consolidated), where $P$ is the noisy signal:

$$ \textrm{SNR}_{db} = 10\log_{10}\left(\frac{P_{signal}}{P_{signal}-P}\right)^2 $$

This doesn't look right because you will end up with a negative denominator since $P>P_{signal}$, where in essence $P=P_{signal}+P_{noise}$. Although it ends up being the same thing because the squaring forces it to be positive, it seems a bit of a fudge.

I think what you meant to do was to subtract the estimated signal from the noisy signal to estimate the noise power:

$$ \textrm{SNR}_{db} = 10\log_{10}\left(\frac{P_{signal}}{P-P_{signal}}\right)^2 $$

One way of obtaining your $P_{signal}$ is to understand what your transmitter is capable of putting into the medium. It would then follow that the further away your receiver was to your transmitter, the lower the $\textrm{SNR}$. Remember, a low SNR can mean two things, either your transmitter isn't loud enough, or the background noise is too great.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.