0
$\begingroup$

What is the reason for getting negative snr value when calculating Signal to noise ratio of speech signal using matlab function SNR()?

$\endgroup$
  • 2
    $\begingroup$ i guess it would be because the noise had more power (or energy) than the signal had (assuming this negative SNR was expressed in dB). $\endgroup$ – robert bristow-johnson Sep 18 '18 at 7:50
2
$\begingroup$

Signal to Noise ratio (SNR) is a ratio of powers and hence it is always greater than or equal to zero, it cannot be negative.

On the other hand, very commonly SNR is expressed in decibel (dB) notation

$$ \text{SNR}_{\text{dB}} = 10 \log_{10}\left( \frac{\sigma_x^2}{\sigma_n^2 } \right) $$

where $\sigma_x^2$ and $\sigma_n^2$ are the signal and noise powers respectively. In which case, a $0$ dB SNR means that the signal power is equal to the noise power. And when the signal power is less than the noise power, then one gets a negative SNR in dB...

$\endgroup$
  • 1
    $\begingroup$ I hope you don't mind the removal of an l on "decibell", and bigger parentheses $\endgroup$ – Laurent Duval Sep 18 '18 at 9:08
  • 1
    $\begingroup$ @LaurentDuval No of course not! But in the mean time (simultanesouly!) I was editing your post! believe it or not, and see the comment there ! $\endgroup$ – Fat32 Sep 18 '18 at 9:09
  • 1
    $\begingroup$ Funny, so can we considered a 0 dB (equal power to clean noise) memory-less system? :) $\endgroup$ – Laurent Duval Sep 18 '18 at 9:11
0
$\begingroup$

I'll write the same equation as @Fat32 did because SNR is SNR $$\text{SNR} = 10 \log_{10}\left( \frac{\sigma_S^2}{\sigma_N^2 } \right)$$

Mathematically speaking, the SNR is negative when the log is negative. We know that $$\log x < 0$$ only if $0 < x< 1$, i.e. $$\frac{\sigma_S^2}{\sigma_N^2 } < 1$$ which means that $$\sigma_S^2 < \sigma_N^2$$ So, when the power of your speech signal is less than the power of the noise, you'd get a negative SNR.

$\endgroup$
  • $\begingroup$ What could be the better ratio in db for any speech signal? Is there any to improve my negative ratio? $\endgroup$ – Deivapriya Sep 19 '18 at 6:08
  • $\begingroup$ @Deivapriya do you mean to ask if methods do exist for improving the SNR ? $\endgroup$ – Ahmad Bazzi Sep 19 '18 at 13:27
  • $\begingroup$ Yes, is there a way do improve the SNR? $\endgroup$ – Deivapriya Sep 20 '18 at 4:58

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.