Determinare il "candore" del rumore


14

Come si può quantificare quanto "bianco" sia il rumore? Esistono misure statistiche o altre misure (ad esempio FFT) in grado di quantificare quanto è vicino al rumore bianco un particolare campione?


3
Sei interessato a suggerimenti su come confrontare diverse fonti / segnali di rumore o stai cercando una metrica "standard industriale" che si applica alla quantità di "colore" in una fonte di rumore? Non sono a conoscenza di una metrica generale applicabile, ma puoi confrontare la quantità di colorazione osservando la distribuzione della potenza del rumore in un FFT o PSD (più piatto = più bianco) oppure puoi confrontare i fucitoni di autocorrelazione (più stretto = più piatto).
user2718

Se ti capisco correttamente stai cercando un calcolatore automatico di "bianchezza" in scatola nera, giusto?
Spacey,

1
+1 per calcolare la densità spettrale di potenza della sorgente. Per la cronaca, vorrei aggiungere che il rumore bianco non può essere campionato in pratica, poiché il suo PSD è piatto in -∞ <f <∞.
Serge

@Mohammad - Non necessariamente una scatola nera da calcolare. Sono solo curioso di sapere se esiste uno stimatore matematico del bianco.
Kitchi,

1
@BruceZenone - Per un vero campione di dati, come ha sottolineato Serge, il PSD non sarà mai completamente piatto, no? Ma sto ancora indovinando che più è piatto, più si avvicina all'essere un "vero" rumore bianco.
Kitchi,

Risposte:


12

È possibile formare un test statistico, basato sull'autocorrelazione della sequenza potenzialmente bianca. Il manuale di elaborazione del segnale digitale suggerisce quanto segue.

inserisci qui la descrizione dell'immagine

Questo può essere implementato in scilab come di seguito.

Eseguendo questa funzione su due sequenze di rumore: una di rumore bianco e una di rumore bianco leggermente filtrata, si ottengono i seguenti grafici. Lo script per la generazione di ogni realizzazione delle sequenze di rumore è alla fine.

inserisci qui la descrizione dell'immagine

La media della statistica per il rumore bianco è 9,79; la media della statistica per il rumore filtrato è 343.3.

Guardando un tavolo chi quadrato per 10 gradi di libertà, otteniamo:

inserisci qui la descrizione dell'immagine

e vediamo che non esiste un livello di significatività a cui 9,79 (nella tabella) che il rumore bianco non è bianco. Vediamo anche che il valore di 343.3 è molto probabilmente non bianco (confrontandolo con il valore 23.2093 nella colonna di significatività ).p=0.01


function R = whiteness_test(x,m)
    N = length(x);
    XC = xcorr(x);
    len = length(XC);
    lags = len/2+1 + [1:m];
    R = N*sum(XC(lags).^2)/XC(len/2+1).^2;
 endfunction

X = rand(1,1000,'normal');
Y = filter(1,[1 -0.5],X)
R = [R; whiteness_test(X,10)];
R2 = [R2; whiteness_test(Y,10)];

non sono un grande statistico ... Ma ho una preoccupazione per quanto riguarda la validità generale del test sopra citato per i processi di rumore bianco non gaussiano: per quanto ho capito il rumore bianco significa solo che non c'è correlazione nel tempo e quindi l'autocorrelazione è un impulso a 0 lag. Il bianco non significa necessariamente che le ampiezze siano normalmente distribuite, che è ciò che il test presuppone ... Quindi, per quanto ho capito, il test è valido per il rumore gaussiano bianco (perché la somma delle distribuzioni gaussiane al quadrato è Chi-quadrato) e non per rumore bianco generale? Ho ragione o c'è qualcosa di sbagliato
Fabian,

@Fabian: Sì e no. È corretto in quanto il test presuppone che i valori di autocorrelazione siano gaussiani. Se il rumore originale riguarda praticamente qualsiasi distribuzione, il teorema del limite centrale significa che la distribuzione delle stime di autocorrelazione sarà gaussiana. Ci sono alcuni casi patologici in cui i coefficienti di autocorrelazione non saranno gaussiani, ma questi sono generalmente pochi e lontani tra loro (e forse l'analisi di autocorrelazione non è la cosa migliore da fare in quei casi).
Peter K.

@ PeterK.Non sarebbe un test "più duro" per determinare la planarità del PSD? In questo modo, non vengono fatte ipotesi e la distribuzione dei campioni di rumore è irrilevante.
Envidia,

@Envidia: i due sono equivalenti, vero? Il PSD è solo il DFT della sequenza di autocorrelazione.
Peter K.

@PeterK. Nel tuo esempio sì, sono essenzialmente equivalenti. Tuttavia, la procedura presuppone che, come in generale, i campioni possano essere distribuiti in qualsiasi modo. Capisco che il teorema del limite centrale entra in gioco ed è valido, quindi perché uso il termine "più difficile". Forse un termine migliore sarebbe "generale".
Envidia,

5

Vorrei usare le proprietà di autocorrelazione del segnale o la planarità di PSD per determinare questo. L'autocorrelazione del rumore bianco teorico è un impulso al ritardo 0. Inoltre, il PSD della trasformata di Fourier della funzione di autocorrelazione, il PSD del rumore bianco teorico è costante.

Ognuno di questi dovrebbe darti una buona idea del candore del tuo rumore.


3

La bianchezza equivale all'indipendenza.

Puoi dare un'occhiata al irriducibile https://en.m.wikipedia.org/wiki/Diehard_tests

Il volume 2 degli algoritmi seminumerici di Knuth contiene una sezione sui genentatori di numeri casuali e sui test.

Il problema con i test basati su DFT è che c'è un po 'di dispersione spettrale che la tecnica introduce una certa correlazione, che se si rendono le trasformazioni "lunghe" possono in genere essere trascurate.

Esistono anche test per flussi di bit casuali su NIST


Hai dimenticato di dire, Stan: +1 per quei test irriducibili! Non avevo visto quella lista. :-)
Peter K.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.