Funzioni > Elaborazione dei segnali > Segnali e sistemi > Esempio: generatori di rumore
Esempio: generatori di rumore
Utilizzare le funzioni whiten, gaussn e onefn per simulare rispettivamente i rumori bianco, gaussiano e 1/f.
Rumore bianco
La funzione whiten simula il rumore prodotto da N sorgenti indipendenti, ognuna delle quali ha un output casuale che segue una distribuzione uniforme compresa tra -0.5 e 0.5.
1. Utilizzare la whiten funzione per valutare la funzione di rumore bianco per sei sorgenti di rumore indipendenti.
Fare clic per copiare questa espressione
La valutazione ripetuta della funzione whiten produce un insieme diverso di elementi dei vettori.
2. Considerare un vettore di output più grande.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Tracciare il grafico della funzione relativa al rumore bianco.
Fare clic per copiare questa espressione
4. Utilizzare le funzioni mean e stdev per calcolare la media e la deviazione standard del vettore di rumore bianco.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Mostrare il valore teorico della media, quindi utilizzare la funzione var per calcolare la deviazione standard.
Il grafico mostra che il segnale wn ha una media teorica pari a 0.
La deviazione standard è la radice quadrata della varianza.
Fare clic per copiare questa espressione
6. Confrontare i valori della deviazione media e di quella standard calcolati con i relativi valori teorici e verificare che non vi sia una deviazione significativa tra di essi.
Rumore gaussiano
La funzione gaussn simula un numero x di sorgenti di rumore indipendenti, ognuna delle quali segue una distribuzione di probabilità gaussiana con deviazione media 0 e deviazione standard 1.
1. Valutare la funzione gaussian relativa al rumore per sei sorgenti di rumore indipendenti.
Fare clic per copiare questa espressione
Gli elementi del vettore possono essere costituiti teoricamente da qualsiasi valore reale, ma sono in genere compresi tra -3 e +3. È possibile verificare quanto sopra premendo F5 per ricalcolare la funzione.
2. Tracciare il grafico di una sequenza campione gaussiana.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Preparare i dati gaussiani per un istogramma a campana raggruppando i valori in 20 barre larghe 0.05.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
4. Definire il vettore che contiene i bordi delle barre e impostare il limite destro.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Utilizzare la funzione hist per creare l'istogramma, quindi tracciarne il grafico come grafico a barre.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Confrontare la deviazione media e quella standard del campione con i valori previsti di 0 e 1.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Rumore 1/f
La funzione onefn calcola un'approssimazione del rumore 1/f utilizzando una routine basata su un algoritmo sviluppato da Richard Voss (vedere l'articolo di Martin Gardner in Scientific American di aprile 1978).
1. Utilizzare la funzione onefn per generare un vettore 1/f di 1000 punti.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Regolare a una media 0.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Tracciare il grafico dei dati del vettore.
Fare clic per copiare questa espressione
Il rumore 1/f è tipico di numerosi fenomeni naturali e di provenienza umana, ad esempio musica, segnali cerebrali, fenomeni atmosferici, movimenti del mercato azionario e altri sistemi gerarchici che prevedono un'interazione. Se ad esempio si dovessero digitalizzare campioni di musica di stili diversi (rock, jazz, classica), si noterebbe che i relativi spettri di potenza hanno una distribuzione molto vicina al rumore 1/f.
4. Utilizzare la funzione lcorr per confrontare la struttura statistica di questo rumore con il rumore bianco generato in precedenza calcolandone le autocorrelazioni.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
A differenza del rumore bianco, il rumore generato da onefn è correlato e la correlazione decade man mano che aumenta il lag.
Confronto di segnali di rumore tramite spettri di potenza
Un altro metodo per analizzare le differenze tra il rumore bianco e il rumore 1/f consiste nel confrontare i relativi spettri di potenza.
1. Si presuppongano 50 barre di gruppi di frequenza di 20.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare le funzioni mag e dft per calcolare la grandezza al quadrato degli spettri di frequenza per ogni segnale.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Eseguire lo smoothing del risultato calcolando la media dei gruppi di frequenza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
4. Tracciare il grafico dello spettro del rumore bianco.
Fare clic per copiare questa espressione
Come previsto, lo spettro del rumore bianco è essenzialmente piatto. Lo spettro di grandezza dell'approssimazione 1/f diminuisce rapidamente con l'aumentare della frequenza.
5. Utilizzare la funzione log per calcolare il log più informativo della grandezza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Esperimento
Come esperimento, provare a costruire uno spettro di potenza 1/f con fasi causali e utilizzare la trasformata inversa per ottenere il vettore di rumore.
1. Definire la larghezza dello spettro.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare la funzione exp per costruire la prima metà della trasformata. Uno spettro di potenza 1/f corrisponde a uno spettro di grandezza 1/sqrt(f).
Fare clic per copiare questa espressione
3. Calcolare la seconda metà della trasformata. Per un segnale reale, la seconda metà è simmetrica coniugata intorno al punto medio.
Fare clic per copiare questa espressione
4. Impostare la media del rumore su zero.
Fare clic per copiare questa espressione
5. Utilizzare la funzione idft per ottenere la trasformata inversa di Fourier (trasformata nel dominio del tempo).
Fare clic per copiare questa espressione
6. Tracciare il grafico dei valori reali della trasformata inversa.
Fare clic per copiare questa espressione
7. Utilizzare la funzione lcorr per calcolare la curva di autocorrelazione.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il comportamento dell'autocorrelazione è simile per l'output generato da onefn, con una correlazione di 1.0 a 0 e gradi di correlazione variabili in altri punti.
È stato utile?