Come "sbiancare" un segnale nel dominio del tempo?


12

Sto cercando di capire come implementare esattamente ciò che è noto come filtro "pre-sbiancamento" o semplicemente come filtro "sbiancante".

Capisco che lo scopo è quello di fargli avere un delta come funzione di autocorrelazione, ma non sono sicuro di come farlo esattamente.

Il contesto qui è il seguente: Un segnale viene ricevuto da due diversi ricevitori e viene calcolata la loro correlazione incrociata. La correlazione incrociata può apparire come un triangolo o qualche altra forma dimenticata. Per questo motivo, diventa difficile trovare il picco del segnale di correlazione incrociata. In questo caso ho sentito di dover "imbiancare" i segnali prima che venga eseguita una correlazione incrociata su di essi, in modo che la correlazione incrociata sia ora più simile a delta.

Come si fa?

Grazie!


Si noti che nel contesto dei sistemi di comunicazione, ciò che la tua domanda descritta come sbiancante svolge essenzialmente la funzione di un equalizzatore. Mi sembra lo stesso; potrebbe essere solo una nomenclatura diversa.
Jason R,

Sì, la nomenclatura mal definita rende ancora più confuso ciò che stanno cercando di fare a volte.
Spacey,

Risposte:


7

Supponiamo di avere segnali e y ( t ) la cui funzione di correlazione incrociata R x , y ( t ) non è qualcosa che ti piace; vuoi che R x , y sia simile all'impulso. Si noti che nel dominio della frequenza, F [ R x , y ] = S x , y ( f ) = X ( f ) Y ( f ) .x(t)y(t)Rx,y(t)Rx,y

F[Rx,y]=Sx,y(f)=X(f)Y(f).
Quindi si filtrano i segnali tramite filtri lineari ed h rispettivamente per ottenere x ( t ) = x * g , X ( f ) = X ( f ) G ( f ) , e y = y * h , Y ( f ) = Y ( f ) H ( f ) , e ora la loro funzione di correlazione incrociata è ghx^(t)=xgX^(f)=X(f)G(f)y^=yhY^(f)=Y(f)H(f) la cui trasformata di Fourier è F [ R x , y ] = S x , y ( f )Rx^,y^ cioè, R x , y è la correlazione incrociata diRx,ycon Rh,g. Ancora più importante, si vuole sceglieregedhin modo che ladensità di cross-spettraleG(F)
F[Rx^,y^]=Sx^,y^(f)=[X(f)G(f)][Y(f)H(f)]=[X(f)Y(f)][G(f)H(f)]=[X(f)Y(f)][G(f)H(f)],
Rx^,y^Rx,yRh,ggh di g ed h è l'inverso moltiplicativo del cross-densità spettrale di X ( f ) Y * ( f ) di x ed y , o qualcosa di simile ad esso. Se hai solo un segnale e un filtro, ottieni il risultato dato da Hilmar (con la modifica come data dal mio commento lì). In entrambi i casi, rimane ancora il problema di compensare i nulli spettrali, o in generale, le bande di frequenza in cui i segnali hanno poca energia.G(f)H(f)gh X(f)Y(f)xy

Grazie per la risposta - puoi spiegare le lunghezze qui coinvolte? Ad esempio, qual è la lunghezza della funzione di trasferimento di potenza di X, se x [n] è di lunghezza N? (Lo stesso con y ...)
Spacey,

Ok - Accetterò la risposta, ma scriverò una nuova domanda decollando questa sera questa sera e possiamo prenderla da lì. Grazie ancora.
Spacey,

7

Il pre-sbiancamento può essere effettuato filtrando con una funzione di trasferimento che è all'incirca l'inverso dello spettro di potenza del segnale. Supponiamo che tu abbia un segnale audio grosso modo rosa. Per sbiancarlo, si applica un filtro rosa inverso (la risposta in frequenza aumenta di 3 dB per ottava).

Tuttavia, non sono sicuro che questo possa aiutare con il tuo problema. Il pre-sbiancamento tende ad amplificare le parti a bassa energia nel segnale, che possono essere rumorose e quindi aumentare il rumore complessivo nel sistema. Se si sta tentando di determinare se due segnali sono allineati nel tempo (o quale sia l'allineamento temporale), nel problema c'è una certa confusione correlata alla larghezza di banda del segnale. Ciò è rappresentato esattamente nella forma del dominio del tempo della funzione di autocorrelazione. 


Grazie per la tua risposta - sì, invertendo lo spettro come hai detto probabilmente non funzionerà qui ... l'uso di "pre-sbiancanti" sembra così onnipresente che tendo a pensare che ci siano molti modi per farlo oltre a quello? ...
Spacey

2

xxx

xCij=1NxDataxixjNi,jx

Una volta che hai questa matrice di covarianza, puoi calcolare una trasformazione sbiancante sotto forma di matrice per moltiplicare i dati al fine di ottenere la versione sbiancata. La covarianza di questi nuovi dati sbiancati è la matrice dell'identità.

y=C1/2x

C1/2C=LLTy=L1xL


0

Se si tratta solo di come filtrare le parti a bassa energia nel segnale, è possibile utilizzare un filtro passa-basso? Ci sono alcune implementazioni al riguardo.

Se questo è utile: questo articolo di Karjalaien et. al riguarda il filtro sbiancante e il metodo di previsione lineare deformata, che viene utilizzato dal filtro.

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.