Problems with snr function
Ältere Kommentare anzeigen
I want to find the snr for signal xn and noise ns but I keep getting an error.
clear;
n = [0:1023];
omega = 0.25*pi;
xn = sin(omega*n);
count = 1024;
ns = sqrt(0.2)*randn(1,count);
r = snr(xn,ns);
plot(r);
??? Undefined function or method 'snr' for input arguments of type 'double'.
Akzeptierte Antwort
Weitere Antworten (2)
Guillaume
am 20 Sep. 2014
Sounds like you don't have the signal processing toolbox.
ver
will tell you which toolboxes you have installed.
2 Kommentare
Image Analyst
am 20 Sep. 2014
Bearbeitet: Image Analyst
am 20 Sep. 2014
Or it's an antique version. I think snr() has not always been part of the Signal Processing Toolbox, but it's simple enough to calculate manually.
Dick Rusell
am 20 Sep. 2014
Bearbeitet: Dick Rusell
am 20 Sep. 2014
Youssef Khmou
am 20 Sep. 2014
Bearbeitet: Youssef Khmou
am 20 Sep. 2014
Generally the formula is SNR=20log10(std(signal)/std(noise)) , in your case you have :
snr=20*log10(std(xn)/std(ns)) % 3.8dB
Kategorien
Mehr zu Signal Operations finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!