Sei sulla pagina 1di 12

TRASFORMATA DI HILBERT

La Trasformata di Hilbert una particolare rappresentazione che, contrariamente ad altre trasformate (Fourier, Laplace, Z, ) non realizza un cambiamento del dominio di definizione. In s altre parole, a partire da una funzione del tempo s(t), la trasformata di Hilbert ~ (t ) ancora una funzione del tempo. In questo, la trasformata di Hilbert simile al teorema del campionamento, che pure costituisce una rappresentazione di un segnale analogico, sotto determinate condizioni. Loperazione di trasformazione di Hilbert concettualmente, ed operativamente, molto semplice: ~ (t ) si ottiene come uscita da un filtro, appunto detto di Hilbert, caratterizzato dalla funzione di s trasferimento:
i per f > 0 H H ( f ) = 0 per f = 0 i per f < 0

(1)

in termini di parte reale e parte immaginaria, ovvero:


1 per f 0 HH ( f ) = 0 per f = 0

(2a)

2 arg{H H ( f )} = 0 2

per f > 0 per f = 0 per f < 0 (2b)

in termini di modulo e fase. Nel dominio della frequenza si ha dunque:

~ S ( f ) = H H ( f )S ( f ) ,

(3)

~ s dove S(f) la trasformata di Fourier di s(t) mentre S ( f ) la trasformata di Fourier di ~ (t ) .

s La trasformata di Hilbert ~ (t ) pu dunque essere ottenuta dapprima utilizzando la (3) e quindi antitrasformando, secondo Fourier, il risultato del prodotto, oppure direttamente nel dominio del tempo, come integrale di convoluzione tra il segnale s(t) e la risposta impulsiva hH(t) del filtro di Hilbert. Questultima si ricava facilmente e vale:
hH (t ) = 1 . t (4)

In considerazione del fatto che HH(f) una funzione puramente immaginaria e dispari, era lecito attendersi che hH(t) fosse puramente reale e dispari. Tutto ci dalle propriet della trasformata di Fourier.

ESEMPIO: La trasformata di Hilbert della funzione s(t) = Acos(2fct) vale ~ (t ) = Asin(2fct). s Infatti:

S( f ) =

A [( f f c ) + ( f + f c )] , 2

e quindi, utilizzando la (1):

A A ~ S ( f ) = [ i( f f c ) + i( f + f c )] = [( f f c ) ( f + f c )] . 2 2i s Questultima la trasformata di Fourier di ~ (t ) = Asin(2fct). ***** ESEMPIO: Vogliamo calcolare la trasformata di Hilbert del segnale: u (t ) = m(t ) cos(2f ct ) dove m(t) un segnale reale con spettro (di ampiezza e fase) compreso tra [B, B], con B < fc. Sia M(f) ta trasformata di Fourier di m(t). Per il segnale u(t) si avr allora: U( f ) = 1 [ M ( f fc ) + M ( f + fc )] 2

% La trasformata di Hilbert di u(t), indicata con u (t ) , si ottiene facendo passare u(t) attraverso il filtro di Hilbert. Di conseguenza, con ovvia notazione, si avr:
1 1 % U ( f ) = [ M ( f f c ) + M ( f + f c ) ] H H ( f ) = [ jM ( f f c ) + jM ( f + f c ) ] 2 2 avendo usato la definizione di filtro di Hilbert. A questo punto sufficiente osservare che si pu riscrivere: 1 1 % U ( f ) = M ( f ) [ j ( f f c ) + j ( f + f c ) ] = M ( f ) [ ( f f c ) ( f + f c ) ] 2 2j dove indica la convoluzione. Antitrasformando, si ottiene infine:
% u (t ) = m(t )sin(2f ct )

Nel caso sia u (t ) = m(t )sin(2f ct ) con una procedura perfettamente analoga, si dimostra che risulta:
2

% u (t ) = m(t )cos(2f ct )

***** Loperazione di trasformazione inversa di Hilbert, che consente di riottenere il segnale s(t) a partire s da ~ (t ) , richiede, in realt, una nuova trasformata di Hilbert. E immediato, infatti, verificare che:
~ ~ ~ S ( f ) = H H ( f )S ( f ) = H H ( f ) H H ( f )S ( f ) = S ( f ) . (5)

Se ne conclude che la trasformata di Hilbert della trasformata di Hilbert restituisce, a meno del segno, il segnale originale. A rigore, quindi, loperazione di antitrasformazione identica a quella di trasformazione con lintroduzione di un cambiamento di segno nel risultato. Va a questo punto precisato che quanto sopra vale per tutti i valori di f 0. In f = 0, infatti, in ragione delle (1) e (2), il valore di S(0), se diverso da zero, viene annullato, e non potr essere pi recuperato (in particolare dalloperazione di antitrasformazione (5)). Questa puntualizzazione definisce la condizione che deve essere verificata affinch un segnale s(t) sia Hilbert trasformabile: necessario che la sua trasformata di Fourier sia nulla in f = 0. Visto che

S ( 0) =

s(t )dt proporzionale al valor medio del segnale s(t), si pu concludere che la classe dei

segnali per cui applicabile la trasformata di Hilbert quella dei segnali a valor medio nullo1. Applicazioni della trasformata di Hilbert si trovano nellambito della sintesi di reti lineari, mentre un utilizzo particolarmente importante per lo studio dei sistemi di telecomunicazione riguarda la rappresentazione dei segnali in modulazione di ampiezza a banda laterale unica (SSB: Single Side Band). ***** Altri esempi di trasformate di Hilbert sono riportati nella Tabella seguente: s (t ) sin t t rect(t ) ~ (t ) s 1 cost t
1 1 2 ln 1 t+ 2 1 t t 1+ t2 t

(t )
1 1+ t2 1 t
1

(t )

In realt, la definizione qui fornita per il filtro di Hilbert ideale: le funzioni di trasferimento (1) e (2), infatti, presentano una transizione brusca per f = 0. Un filtro reale (e quindi realizzabile) potr soltanto approssimare tale definizione nellintorno dellorigine per cui, onde evitare la comparsa di distorsione nel segnale ricostruito, si dovr imporre che il segnale s(t) non solo presenti valor medio nullo ma, in aggiunta, non abbia componenti armoniche significative per un opportuno intervallo di frequenze nellintorno dellorigine. 3

In tabella, rect(t) rappresenta limpulso rettangolare di ampiezza unitaria centrato nellorigine. Il fatto che la trasformata di Hilbert dellimpulso matematico (delta di Dirac) sia uguale a 1/(t) ovvia conseguenza della (4) e della definizione di risposta impulsiva. La trasformata di Hilbert di 1/t, pure riportata in tabella, allora conseguenza della propriet di dualit.

TRASFORMATA WALSH
La Trasformata Walsh utilizza come funzioni espansione delle opportune sequenze di impulsi rettangolari (funzioni di Walsh), suscettibili di assumere i valori 1. Si tratta quindi di una tecnica di rappresentazione particolarmente semplice ed efficiente quando si lavora con lalgebra binaria. La Trasformata Walsh particolarmente indicata per descrivere segnali che presentano discontinuit; al contrario, minore la sua capacit di rappresentazione nel caso di forme donda continue. Le funzioni di Walsh dipendono dal tempo (t) e dalla sequenza (n). La variabile sequenza (sequency) prende il posto della frequenza nella Trasformata di Fourier: indicata con T la durata di una forma donda elementare, la variabile sequenza (detta anche indice del codice di Walsh) rappresenta il numero di transizioni +1/1 allinterno di T. La generica funzione di Walsh viene allora indicata con WAL(n, t). Le funzioni di Walsh WAL(0, t), WAL(1, t), .., WAL(7, t) sono rappresentate in Figura 1; nella rappresentazione, le funzioni sono ordinate in sequenza (cio con un numero di attraversamenti dello zero crescente).

Figura 1 Una funzione f(t) pu essere espressa in termini di funzioni di Walsh come segue:
f (t ) = a 0WAL(0, t ) +

a WAL(i, t )
i i =1

N 1

(6)

con

1 ai = T

f (t )WAL(i, t )dt
0

(7)

Daltro canto, le funzioni WAL(n, t) con n pari (n = 2k) vengono anche indicate con CAL(k, t), mentre le funzioni WAL(n, t) con n dispari (n = 2k + 1) vengono anche indicate con SAL(k, t), essendo k = 1, 2, .., N/2 1 (N lordine massimo considerato: N = 8 in Figura 1). Di conseguenza, la funzione f(t) pu essere espressa in termini di funzioni di Walsh pari e dispari come segue:
N / 21 N / 21

f (t ) = a0WAL(0, t ) +

[b SAL(i, t ) + c CAL( j, t )].


i j i =1 j =1

(8)

Le funzioni di Walsh sono ortogonali. Vale infatti la relazione:


T

T WAL(m, t )WAL(n, t )dt = 0 0

per n = m per n m

(9)

Le definizioni precedenti sono del tutto generali. Nondimeno, dal punto di vista pratico, il maggior utilizzo della Trasformata Walsh si ha nella rappresentazione di segnali in forma discreta. Nel qual caso, indicando con x(n) la sequenza numerica rappresentativa del segnale e con X(k) la sequenza dei coefficienti della Trasformata Walsh, si pu scrivere, per la coppia trasformata/antitrasformata:
X (k ) = 1 N

x(n)WAL(k , n)
n =0

N 1

k = 0,1,..., N 1

(10)

e
x ( n) =

X (k )WAL(k , n)
k =0

N 1

n = 0,1,..., N 1

(11)

Nelle (10) e (11) la variabile discreta n prende il posto della variabile continua t, e i valori (1) delle WAL(k, n) si ottengono per campionamento delle WAL(k, t). In Figura 1 riportato, in tratteggio, il campionamento delle funzioni di Walsh WAL(0, t) - WAL(7, t). Qui la condizione di ortogonalit (9) potr scriversi, pi chiaramente:

WAL(m, i)WAL(n, i) = 0
i =0

N 1

per n = m per n m

(12)

Le (10) e (11) lasciano chiaramente intendere che la dimensione dellinsieme di Walsh considerato eguaglia la cardinalit della sequenza numerica che costituisce il segnale originale. A meno del fattore 1/N il calcolo della trasformata formalmente identico a quello dellantitrasformata, e pu essere convenientemente gestito in termini matriciali. In effetti, posto per semplicit formale, Wkn = WAL(k, n), definita la matrice della trasformazione
6

W01 L W0, N 1 W00 W 10 , W= M M W N 1,0 W N 1,1 L W N 1, N 1

(13)

e indicati con
x0 x x= 1 M x N 1

(14)

e
X0 X 1 , X= M X N 1

(15)

rispettivamente, i vettori colonna rappresentativi della sequenza dei dati e dei coefficienti della trasformata, chiaro che risulta:

X=

1 Wx. N

(16)

dove rappresenta il prodotto (matriciale) righe per colonne. ESEMPIO: Sia data la sequenza di dati, di dimensione N = 4: 1 2 x = . 0 3 Si considera la matrice della trasformazione: 1 1 1 1 1 1 1 1 . W= 1 1 1 1 1 1 1 1 Dalla (16) allora si evince:
7

1 1 1 1 1 6 1 1 1 1 2 1 1 = 1 0 . X = Wx = N 4 1 1 1 1 0 4 2 1 1 1 1 3 4 Dunque, esplicitamente: X0 = 1.5, X1 = 0, X2 = 0.5, X3 = 1. E rimarchevole la semplicit del calcolo rispetto, ad esempio, alla valutazione di una DFT. Peraltro, alla stregua della Trasformata Discreta di Fourier, anche per la Trasformata Walsh Discreta sono state proposte in letteratura implementazioni veloci (FDWT: Fast Discrete Walsh Transform). ***** Il modo pi semplice per costruire le funzioni di Walsh, e cio per ottenere la matrice W consiste nellutilizzo del metodo di Sylvester. Il punto di partenza di tale metodo costituito dalla matrice di Hadamard di ordine 2: 1 1 H2 = . 1 1 (17)

Le righe, o equivalentemente le colonne, di tale matrice definiscono gi una coppia di funzioni di Walsh (N = 2). Le funzioni di Walsh di ordine superiore, con N = 2m, m intero ( questa la scelta che viene utilizzata sistematicamente) si ottengono utilizzando la formula ricorsiva

H N = H N /2 H2 .

(18)

il simbolo indicando il prodotto di Kronecker tra matrici. In pratica, sulla base della (18), W = HN si ottiene sostituendo ciascun elemento di HN/2 con la matrice H2 moltiplicata per il valore (1) dellelemento stesso. ESEMPIO: Volendo ottenere linsieme delle funzioni di Walsh con N = 8, si ricava dapprima H4 come: 1 1 1 1 1 1 1 1 , H4 = H2 H2 = 1 1 1 1 1 1 1 1 e quindi H8 come:

1 1 1 1 H8 = H 4 H 2 = 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1

1 1 1 1 . 1 1 1 1

***** Le funzioni di Walsh costruite con il metodo di Sylvester non sono ordinate in sequenza; per rendersene conto, basta osservare lesempio precedente, in cui la seconda riga di H8, ad esempio, rappresenta la funzione che in precedenza si indicata con WAL(7, t). Lordinamento che risulta dalluso del metodo di Sylvester si dice naturale. A dispetto del fatto che lordinamento in sequenza sembra quello pi logico ( equivalente ad ordinare secondo multipli crescenti della frequenza fondamentale le armoniche dello sviluppo in serie di Fourier) il fatto di poter ricavare direttamente le sequenze dallapplicazione del metodo di Sylvester rende lordinamento naturale particolarmente attraente nella pratica. Ad esempio, le funzioni di Walsh trovano applicazione nel sistema CDMA IS-95 (anche noto come sistema CDMAOne)2, ove a ciascun canale associata una sequenza di Walsh di lunghezza pari a 64 bit. Linsieme delle N = 64 sequenze di Walsh riportato in Figura 2, ove le sequenze sono appunto ordinate in modo naturale. Per sottolineare il fatto che le sequenze di Walsh sono ottenute utilizzando matrici di Hadamard, talora si parla anche di Trasformata di Walsh-Hadamard (WHT). Come per altre trasformate, uno dei maggiori utilizzi della Trasformata Walsh ai fini della compressione dei segnali, vale a dire della loro rappresentazione con un numero minore di dati (senza perdita di informazione o con ridotta perdita di informazione). Si definisce efficienza di compressione, , il rapporto percentuale tra la riduzione del numero dei dati della sequenza compressa e il numero dei dati della sequenza originale. In formula:

= [(no. dati seq. originale no. dati seq. trasformata)/no. dati seq. originale]100%.

(19)

Ovviamente la trasformazione tanto pi efficiente, dal punto di vista della compressione, quanto pi prossimo al 100%. Per alcuni segnali, lo spettro Walsh (vale a dire la sequenza ordinata dei coefficienti della Trasformata) ha energia rapidamente decrescente con la sequenza. Questo fatto ha implicazioni positive dal punto di vista della compressione, consentendo di trasmettere un numero limitato di coefficienti della trasformata, in luogo della sequenza originale, pur garantendo una qualit elevata. Tale circostanza stata ad esempio dimostrata per il segnale di elettrocardiogramma (ECG).

Il sistema IS-95 (Interim Standard 95), sviluppato dalla societ americana Qualcomm Inc., stato per lAmerica del Nord (Stati Uniti - Canada) lo standard pi significativo per la telefonia cellulare di seconda generazione (2G). Utilizzando la soluzione CDMA in unepoca in cui gran parte del resto del mondo propendeva piuttosto per la soluzione TDMA, eventualmente in combinazione con FDMA (come nel GSM, che invece lo standard Europeo per 2G), esso ha introdotto una serie di elementi innovativi, ed ha costituito un punto di riferimento anche per lo sviluppo dei sistemi radiomobili di terza generazione (3G - UMTS). 9

Figura 2

10

TRASFORMATA COSENO DISCRETA (DCT)


Nella Trasformata Coseno Discreta (DCT: Cosine Discrete Transform) le funzioni espansione sono cosinusoidali, con argomento discreto. Si pu pensare alla DCT come ottenuta a partire dalla DFT, considerandone la sola parte reale. Indicato con X(k) il coefficiente k-esimo della trasformata, si ha dunque3:
1 X (k ) = Re N

N 1

1 x n e i 2kn / N = N n =0

x
n =0

N 1

2kn cos , k = 0,1, L, N 1 . N

(20)

In realt, in luogo della (20), risulta pi frequente lutilizzo dellespressione seguente, il cui significato ovviamente equivalente:
X (k ) =

1 N

x
n =0

N 1

(2n + 1)k cos , k = 0,1, L , N 1 . 2N

(21)

ESEMPIO: Si consideri la sequenza dati: x0 = 1, x1 = 2, x2 = 0, x3 = 3. I coefficienti della DCT, calcolati usando la definizione (20), saranno:
1 X (0 ) = N 1 X (1) = N 1 X (2 ) = N 1 X (3) = N

x
n =0

N 1

1 (x0 + x1 + x2 + x3 ) = 1.5 4

x
n =0 N 1 n =0

N 1

2n 1 3 cos = x0 + x1 cos + x 2 cos( ) + x3 cos = 0.25 2 N 4 2 4n 1 cos = [x0 + x1 cos() + x 2 cos(2 ) + x3 cos(3)] = 1 N 4 9 3 6n 1 cos = x0 + x1 cos + x 2 cos(3 ) + x3 cos = 0.25 2 2 N 4

x x
n =0 N 1

Riprendendo la definizione di efficienza di compressione, introdotta con la (19), ove si stabilisca un criterio a soglia, in virt del quale soltanto i coefficienti in modulo maggiori di 0.375 vengano riconosciuti come significativi ai fini della rappresentazione (e dunque della ricostruzione) della sequenza trasmessa, per lesempio in questione soltanto X(0) = 1.5 e X(2) = 1 verrebbero salvati, conseguendo in tal modo un valore di = 50%.

SI noter che, rispetto alla definizione di DFT fornita in una dispensa precedente, nella trasformata stato introdotto il fattore 1/N (che allora non comparir nellantitrasformata). Come noto questa arbitrariet nel posizionamento dei fattori di normalizzazione (da distribuire nelle operazioni diretta ed inversa) assolutamente lecito e teoricamente giustificabile. 11

Una delle applicazioni pi significative della DCT si trova nella compressione delle immagini4. In questo caso, necessario considerare la trasformata bi-dimensionale. In particolare, data una sequenza bi-dimensionale x(m, n) a NN valori (nel caso delle immagini si tratter, ad esempio, della distribuzione della funzione di luminanza, che stabilisce il livello di grigio) la corrispondente DCT pu essere calcolata come segue:
X (0,0 ) = 1 N

x(k , l )
k =0 l =0

N 1 N 1

(22)

2 X (u , v ) = N

x(k , l ) cos
k =0 l =0

N 1 N 1

(2k + 1)u (2l + 1)v cos 2 N , u , v 0 . 2N

(23)

Il coefficiente X(0,0) viene denominato componente DC mentre gli altri coefficienti si indicano come componenti AC. Come gi si era sottolineato per la Trasformata Walsh, lefficienza della trasformata per lapplicazione specifica misurata dalla, relativa, semplicit del calcolo e dalle propriet di compattezza spettrale. Si verifica infatti che i coefficienti maggiormente significativi sono in numero limitato ed essenzialmente concentrati nellintorno della componente DC ( giusto dire alle basse frequenze). Questo consente di ottenere coefficienti di compressione piuttosto elevati5. Pi in dettaglio, limmagine da comprimere viene suddivisa in blocchi di dimensione 88 e la DCT viene applicata a ciascuno di questi blocchi. Se necessario, vengono aggiunte righe (o colonne) di riempimento, successivamente eliminate in fase di ricostruzione. Allapplicazione della DCT seguono le operazioni di quantizzazione e codifica (questultima realizzata con opportune tecniche di codifica di sorgente, ad esempio codifica di Huffman) per la cui descrizione si rimanda, ovviamente, a corsi pi specialistici.

In particolare, la DCT stata utilizzata nello standard JPEG (Joint Photographic Experts Group) la cui missione, gi a partire dal 1986, stata quella di definire uno standard per la memorizzazione e la trasmissione di immagini fisse. Successivamente, lo standard JPEG stato il punto di partenza per gli standard MPEG (Moving Pictures Expertes Group) and JBIG (Joint Bi-level Image Experts Group). 5 In realt, lentit della compressione ovviamente funzione del livello di qualit desiderato; in molte applicazioni, peraltro, non si richiede una risoluzione necessariamente superfine. 12

Potrebbero piacerti anche