Matlab - stosunek sygnał szum

0

Witam,

Mam taki, banalny pewnie problem.

Otoz mam w wygenerowany w matlabie sygnał zmodulowany częstotliwościowo:

y = chirp(T,f0,t2,f1,'quadratic'); 

Nastepnie do sygnału jest dodawany szum w taki sposob:

szum = randn(size(y));
y = y + k*szum; 

Mam teraz policzyc stosunek sygnał - szum, czyli SNR (stosunek mocy szygnału do mocy szumu).

Podpowie ktos jak najprosciej to teraz wykonac w Matlabie?</wiki>

0

Hmm jeżeli chodzi Ci o to jak, to tu masz wzór:
user image
A - to wartość RMS sygnału/szumu.

0

Nie no, znam definicje, tylko chodzi mi o to jak w matlabie ta moc policzyc, czyli jakiej funkjcji moge użyc.

Mam sobie y, ktory jest sygnałem zmodulowanym, w tym wypadku sygnał nieokresowy z kwadratowo narastajaca czestotliwoscia z dodanym szumem gaussowskim o odchyleniu standardowym k i wartosci oczekiwanej 0.

No i teraz, jakiej funkcji użyc zeby policzyc: moc sygnału i moc szumu... Wiem ze banalne pewnie, ale jestem juz tak skolowany ze sam nie wiem :|

[edit]
Sklecilem cos takiego:

rms = norm(y)/sqrt(length(y));
  rms_szum = norm(szum)/sqrt(length(szum));
 SNR = 20*log10(rms/rms_szum)

Tyle, ze cos mi tu nie pasuje, to chyba nie tak ma byc :/

0
othello napisał(a)

Tyle, ze cos mi tu nie pasuje, to chyba nie tak ma byc :/

A co jest nie tak?

0

Hmm za kazdym razem otrzymuje inny wynik, niby szum jest losowy, ale skoro daje taka sama wariancje szumu to chyba i SNR nie powinien sie zmieniac?

0

No to zależy jakiego rzędu są to różnice. Jeżeli szum za każdym pomiarem jest od nowa generowany to oczywistym jest, że i wynik będzie inny (w pewnych granicach).

PS. czy przypadkiem sygnał y nie powinien być czysty - niezaszumiony?

0

PS. czy przypadkiem sygnał y nie powinien być czysty - niezaszumiony?

Racja, glupote walnalem.

Mam teraz tak:

yn = chirp(T,f0,t2,f1,'quadratic');
szum = randn(size(yn));
y = yn + k*szum;

rms = norm(yn)/sqrt(length(yn));
rms_szum = norm(szum)/sqrt(length(szum));
SNR = 20*log10(rms/rms_szum)

Otrzymuje za kazdym razem troche rozniace sie wartosci w granicach -2.3... - 2.6 dla k=0.8.

Czy taki rzad wartosci jest ok?

0

Czy taki rzad wartosci jest ok?

Rząd wartości jest od -oo do +oo, no ale różnice całkiem prawdopodobne :) Zresztą k=0.8 więc szum jest o ~-2dB cichszy...

0

Ok...... wprawdzie byloby to bardziej elegancko gdybym policzyl moc, ale jezeli wynik dobry to w sumie niewazne.

0

wprawdzie byloby to bardziej elegancko gdybym policzyl moc

Hmm jak rozumiesz pojęcie moc w sygnale cyfrowym??? ;)

0

Ja to mam traktowac jako sygnał analogowy, a nie cyfrowy. Po prostu, mam zmodulowany czestotliwosciowo sygnał i już.

Tylko reprezentacja w Matlabie jest dyskretna, bo musi byc.

0

Ja to mam traktowac jako sygnał analogowy, a nie cyfrowy. Po prostu, mam zmodulowany czestotliwosciowo sygnał i już.

No tak, tyle, że moc w elektronice/elektryce to (w najprostszej formie) iloczyn napiecia i natężenia prądu. No a jeżeli pojawiają się te dwie wielkości więc musi pojawić się też pojęcie rezystancji. W twoich obliczeniach nie ma tych trzech wartości więc... Takim substytutem mocy jest właśnie wartość RMS.

0

Hmm to chodzi o co innego. Mam policzyc SNR teoretyczne. Wiec musze obliczyc moc cosinusa z definicji i moc szumu.

Nie wiem czy dobrze mi sie wydaje, ale moc szumu to w moim wypadku bedzie wlasnie te k, a na moc cosinusa jest tez chyba jakas definicja - zdaje sie ze z jakas calka za okres, czy cos takiego...

0

Wiec musze obliczyc moc cosinusa z definicji i moc szumu

No to chyba jest dobrze.

Nie wiem czy dobrze mi sie wydaje, ale moc szumu to w moim wypadku bedzie wlasnie te k

No jak dla mnie, to k jest wzmocnieniem szumu - dla k=0.8 wzm= ~-2dB. Tą wartością ustawiasz stosunek SNR.

[...] a na moc cosinusa jest tez chyba jakas definicja - zdaje sie ze z jakas calka za okres, czy cos takiego...

Pewnie o tym mówisz:
user image

0

No to chyba jest dobrze.

Wlasnie nie za bardzo to jest dobrze. Chodzi o to, ze tak jak teraz to robie - obliczam to tak, jakbym nic nie wiedzial o tym jaki jest szum, ani tez jaki jest sygał.

Po prostu mam szum i sygnał licze stosunek sygnał szum, czyli nie jest to teoretyczny wspolczynnik, ale jakby wyznaczony "doswiadczalnie". Tak bym mogl robic, gdybym nie wiedzial nic o tym jaki jest poziom szumow ani z jakim sygnałem mam do czynienia (czyli nie mialbym wzoru, jakim jest okreslony i nie mialbym wariancji szumu k).

Ja musze obliczyc to calkowicie teoretycznie - znam dokladnie parametry sygnału i parametry szumu i mam z tego obliczyc stosunek sygnał szum, czyli musze skorzystac a pierwszej definicji, a nie za bardzo wiem jak mam to zrobic :/

Wtedy wynik bedzie tylko jeden, bo SNR bedzie wprost wynikac z k...

0

Rozumiem. Trochę zmylił mnie początek tego wątku ;)

Można wiedzieć do czego to ma być???

0

Do mojej pracy mgr, niestety czas nagli :/

0

A próbowałeś na innych forach matematycznych/fizycznych etc.???

0

Hmm moc cosinusa to amplituda/sqrt(2) - co zreszta łatwo sprawdzic, nawet ze wzoru ktory podales..

Pozostaje jeszcze moc szumu, czy rzeczywiscie jest to moje k? Hmm....

0

To przeglądałeś? ---> DSPRelated.com

0

Ok, wiem juz jak ma byc: moc cosinusa to 0.5 - wzor jak na RMS, tyle ze bez pierwiastka i za okres, a moc szumu to wariancja szumu, czyli k^2...

Dziwne ze nikt nie wiedzial..

1 użytkowników online, w tym zalogowanych: 0, gości: 1