MATLAB rumore bianco
-
Genera il rumore bianco usando la funzione
wgn()in MATLAB -
Genera il rumore bianco usando la funzione
awgn()in MATLAB
Questo tutorial discuterà come generare il rumore bianco usando le funzioni awgn() e wgn() in MATLAB.
Genera il rumore bianco usando la funzione wgn() in MATLAB
Se vuoi aggiungere rumore bianco al tuo segnale, puoi usare la funzione wgn(), che genera i campioni di rumore gaussiano bianco in volt. Il primo e il secondo argomento di questa funzione sono la matrice m per n del rumore bianco e il terzo argomento è la potenza del rumore e il terzo argomento è l’impedenza del carico in ohm e così via. Ad esempio, generiamo una matrice 101 per 1 di rumore gaussiano bianco con una potenza di carico di -20 dbW e aggiungiamola a un’onda sinusoidale. Vedi il codice qui sotto.
t = 1:0.01:2;
x = sin(2*pi*t);
figure
plot(t,x)
w_noise = wgn(1,101,-20);
hold on
plot(t,(x+w_noise))
legend('Sine Wave','Sine Wave with Noise')
Produzione:

Nel codice sopra, abbiamo generato rumore bianco e l’abbiamo aggiunto a un’onda sinusoidale, e il risultato è mostrato nella figura sopra. Si noti che il numero di campioni di rumore bianco dovrebbe essere uguale al numero di campioni del segnale in cui viene aggiunto il rumore; altrimenti, ci sarà un errore. È possibile modificare l’intensità del rumore modificando la potenza in dbW. Controlla questo link per maggiori dettagli sulla funzione wgn().
Genera il rumore bianco usando la funzione awgn() in MATLAB
Se vuoi aggiungere rumore bianco al tuo segnale, puoi usare la funzione awgn(), che aggiunge il rumore gaussiano bianco al segnale in ingresso. Il primo argomento di questa funzione è il segnale di ingresso, il secondo argomento è il rapporto segnale/rumore e il terzo argomento è la potenza del segnale di ingresso e così via. Ad esempio, aggiungiamo rumore bianco con rapporto segnale/rumore di 2 e potenza del segnale di -2 dbW a un’onda sinusoidale. Vedi il codice qui sotto.
t = 1:0.01:2;
x = sin(2*pi*t);
figure
plot(t,x)
w_noise = awgn(x,2,-20);
hold on
plot(t,(x+w_noise))
legend('Sine Wave','Sine Wave with Noise')
Produzione:

Nel codice sopra, abbiamo aggiunto il rumore bianco a un’onda sinusoidale e il risultato è mostrato nella figura sopra. È possibile modificare l’intensità del rumore modificando la potenza in dbW e il rapporto segnale/rumore. Controlla questo link per maggiori dettagli sulla funzione awgn().
