Sunteți pe pagina 1din 25

2.

Elemente de prelucrare numerică a semnalelor


2.1 Procesări în domeniul timp
Notaţii:
- x(t), y(t) – semnale analogice
- x(n), y(n) – semnale discrete în timp; succesiune de eşantioane
cuantizate şi codate ale semnalelor analogice considerate la
multipli ai perioadei de eşantionare kTe ; funcţii de o variabilă
întreagă
2.1.1 Corelaţie şi autocorelaţie
- pentru două semnale discrete în timp x(k), y(k) corelaţia între cele
două semnale este o funcţie discretă în timp, definită prin:

rxy ( k )   x ( n ) y ( n  k ) k  0,  1,  2 ...
n  

TPI- curs 2
• calculul funcţiei de corelaţie într-un punct presupune
următoarele etape:
- întărzierea unei secvenţe în raport cu cealaltă
- multiplicarea secvenţelor rezultate
- adunarea produselor intermediare pentru obţinerea valorii
funcţiei de corelaţie pentru o valoare k dată

Exemplu
Calculaţi funcţia de corelaţie pentru semnalele descrise prin:
x (n)  { ... 0, 0, 0, 0, 0, 0, 15, 3, 6, 9, 0, ... }
y(n)  { ... 0, 0, 0, 5, 1, 2, 3, 0, 0, 0, ... ... }

k=0 -> x(n)y(n)=00+…153+30+…. 00=45

TPI- curs 2
x (n )  { ... 0, 0, 0, 0, 0, 0, 15, 3, 6, 9, 0, ... }
k=1 -> y(n  1)  { ... 0, 0, 0, 0, 5, 1, 2, 3, 0, 0, ... ... }

30 9

rxy (1)   x (n ) y(n  1)  39
n  

k=2 -> x (n )  { ... 0, 0, 0, 0, 0, 0, 15, 3, 6, 9, 0, ... }


y(n  2)  { ... 0, 0, 0, 0, 0, 5, 1, 2, 3, 0, ... ... }
15 6 18

rxy (2)   x (n ) y(n  2)  39
n  
k=3 -> x (n )  { ... 0, 0, 0, 0, 0, 0, 15, 3, 6, 9, 0, ... }
y(n  2)  { ... 0, 0, 0, 0, 0, 0, 5, 1, 2, 3, 0 ... }
75 3 12 27
rxy (3)   x(n) y(n  3)  117
n  

TPI- curs 2
k=4 -> rxy (4)  39
k=5 -> rxy (5)  38
k=6 -> rxy (6)  45
k=7 -> rxy (7)  0
- funcţia de corelaţie între
2 semnale este o măsură a
similarităţii acestora, 140

dependentă de întârzierea relativă a


120

100

unui semnal faţă 80

60
maxim k=3
de celălat 40

20

0
1 2 3 4 5 6 7

TPI- curs 2
- permite detectarea prezenţei unui semnal într-un alt semnal
afectat de zgomot şi posibil întârziat
- permite alinierea în timp a semnalelor

TPI- curs 2
- pentru un semnal discret în timp x(n) funcţia de autocorelaţie este
definită de:

rxx ( k )   x ( n ) x ( n  k ) k  0,  1,  2 ...
n  
- pentru semnale discrete în timp periodice, de perioadă M, funcţiile
de corelaţie şi de autocorelaţie se definesc prin următoarele relaţii:
M 1
1
rxy ( k ) 
M
 x(n) y (n  k )
n0
k  0,  1,  2 ...

M 1
1
rxx ( k ) 
M
 x(n) x(n  k )
n0
k  0,  1,  2 ...

TPI- curs 2
- funcţia de autocorelaţie prezintă un maxim pronunţat în origine
(k=0); proprietatea poate fi folosită pentru detectarea periodicităţii
unor semnale reale
- fie y ( n )  x ( n )  w ( n ) un semnal afectat de zgomot (w)
M 1 M 1
1 1
ryy ( k ) 
M

n 0
y ( n ) y ( n  k ) 
M
 [ x(n)  w(n)][ x(n  k )  w(n  k )] 
n 0
M 1 M 1 M 1 M 1
1 1 1 1

M

n 0
x ( n ) x ( n  k ) 
M

n 0
x ( n ) w ( n  k ) 
M

n 0
w ( n ) x ( n  k ) 
M
 w ( n ) w( n  k )
n 0

r y y ( k )  r xx ( k )  r xw ( k )  r w x ( k )  r w w ( k )
0

TPI- curs 2
Exemple

Semnal real Functie de autocorelatie

Profil orizontal

Imagine microarray Functie de autocorelatie


TPI- curs 2
2.1.2 Convoluţie numerică
- convoluţia numerică între 2 semnale discrete x(n) şi b(n) se
defineşte pe baza relaţiei

y ( m )  ( x * b )( m )   x ( k )b ( m  k )  (b * x )( m )
k  
• calculul convoluţiei numerice între 2 semnale discrete în timp
x(.), b(. ) într-un punct m presupune următoarele etape:
- simetrizarea în timp a semnalului b(.) în raport cu originea
- deplasarea secvenţei simetrizate cu m poziţii către dreapta (m
pozitiv) sau stânga (m negativ)
- formarea produselor intermediare
- adunarea produselor intermediare pentru obţinerea valorii
produsului de convoluţie în m
• similar funcţiei de corelaţie, calculul unui produs de convoluţie
prezintă o complexitate de calcul mare; implementările eficiente
ale convoluţiei se fac în domeniul frecvenţă pe baza teoremei
convoluţiei şi a algoritmilor rapizi FFT (Fast Fourier Transform)
TPI- curs 2
x(n)  { 3, 4, 5, }
Exemplu b(n)  { 2, 1, }

 x ( k )b ( 0  k )  x ( 0 )  b ( 0 )  6
{ 0, 3, 4, 5 }
y (0) 
k  
{ 1, 2 }

 x (k )b (1  k ) x (1)b (1  1)  x (0)b (1  0)  11
{ 0, 3, 4, 5 }
y (1)  { 0, 1, 2 0 }
k  


y ( 2)   x(k )b(2  k ) x(2)b(2  2)  x(1)b(2  1)  x(0)b(2  0) 
k  

 5  2  4 1  3  0  14 { 0, 3, 4, 5 }
{ 0, 0, 1 2 }

TPI- curs 2
• relația de definiție poate fi extinsă pentru cazul imaginilor:
 
I ( m , n )  (U * h )( m, n )    U (i , j )  h ( m  i , n  j )
i   j  

• h – mască de convoluție de tipul:

2 2
I (1,1)   U (i, j )  h(1  i,1  j ) 
i 0 j 0

 U (0,0)  h(1,1)  U (1,0)  h(0,1)  U ( 2,0)  h( 1,1)


 U (0,1)  h(1,0)  U (1,1)  h(0,0)  U ( 2,1)  h( 1,0)
 U (0,2)  h(1,1)  U (1,2)  h(0,1)  U ( 2,2)  h( 1,1)

TPI- curs 2
• calculul convoluției 2D presupune simetrizarea măștii în raport cu
originea și deplasarea ferestrei glisante peste planul imaginii

I h U

• procedura de calcul este similară și pentru măsti de dimensiuni


mai mari

TPI- curs 2
2.1.3 Filtre digitale
Rolurile principale ale unui filtru:
- eliminarea zgomotului
-extragerea anumitor caracteristici din semnalul de prelucrat (o
anumită bandă de frecvenţe, contururi în cazul imaginilor etc.)
- filtrele digitale operează asupra reprezentării numerice a unui
semnal şi sunt tipic implementate pe procesoare de semnale
Filtru digital
x(n) y(n)
DSP
- clasificare:
filtre nerecursive (FIR – finite impulse response)
filtre recursive (IIR-infinte impulse response)
TPI- curs 2
Filtre FIR (Finite Impulse Response)
- fie un semnal x reprezentat prin eşantioanele sale x(n)
x(4)

- cele mai des folosite filtre FIR sunt descrise de ecuaţia diferenţială:
y ( n )  b 0 x ( n )  b1 x ( n  1)  b 2 x ( n  2 )  ...b M x ( n  M )
- un astfel de filtru se numeşte filtru cauzal de ordin M; condiţia de
cauzalitate indică faptul că valoarea filtrată y(n) nu depinde de
eşantioanele ulterioare (x(n+1),...) ci doar de cele precedente (x(n-1),...)
TPI- curs 2
- filtrele cauzale pot fi utilizate pentru aplicații în timp real
Exemplu: filtrul cauzal de mediere
1
y (n)  [ x ( n )  x ( n  1)]
2

n 0 1 2 3 4 5 >5
x(n) 2 4 6 4 2 0 0
y(n) 3 5 5 3 1 0 0

8
6
6 5
4
4 3
2
2 1
0
0 0 1 2 3 4 5 6
0 1 2 3 4 5 6

TPI- curs 2
Transformata z
- este folosită pentru analiza semnalelor discrete în timp
- pentru un semnal discret x(n), transformata în z directă se notează
simbolic cu X(z) şi se defineşte prin următoarea relaţie:
n
X (z)   x (k )z k
k 0
- z – variabilă complexă
- notaţie formală: Z ( x )  X ( z )
Exemplu:
Fie semnalul discret în timp x ( n )  1, 2 , 5 , 7 , 0 ,1
1 2 3 5
X ( z)  1  2  z  5  z  7  z  1 z

TPI- curs 2
-pentru n  [ 0 ,  ] transformata z se numeşte unilaterală iar
pentru n  [   ,  ] transformata se numeşte bilaterală
- transformata z a unui semnal întârziat este egală cu
transformata z a semnalului neîntârziat multiplicată cu z la
puterea “-” numărul intervalelor de întârziere
Z x ( n  k )   z  k X ( z )
- ecuaţia diferenţială a unui filtru FIR poate fi exprimată în
termeni de transformată z
Y ( z )  ( b 0  b 1 z  1  b 2 z  2  ...b M z  M ) X ( z )
Y (z)
- mărimea: H ( z )   b0  b1 z 1  b2 z  2  ...b M z  M
X (z)
reprezintă transformata în z a funcţiei de transfer a sistemului

TPI- curs 2
Răspunsul în frecvenţă al unui filtru FIR
-similar filtrelor analogice, proprietăţile unui filtru FIR se
analizează în domeniul transformatei Fourier
-Transformata Fourier Discretă în Timp a semnalului discret x
se defineşte pe baza relaţiei:

X ( )   x ( n ) e  j n
n  
-echivalenţa cu transformata z bilaterală este imediată,
reprezentând formal variabila complexă z prin e j

X ( z ) z  e j   x ( n )e
n 
 j n

TPI- curs 2
-domeniul Fourier permite evidenţierea comportamentului filtrului
prin prisma spectrului de amplitudine şi a spectrului de fază
X (  )  a 2 ( )  b 2 ( )
X ( )  a ( )  jb ( )  X ( ) e j  (  )  ( )  arctan [b ( ) / a ( )]
-X() este o funcţie periodică cu 2; analiza comportării filtrului în
frecvenţă este suficientă pe intervalul (- , ), utilizând o pulsaţie
normată f
  2
fe
Exemplul 1
Stabiliţi care sunt proprietăţile filtrului FIR dat prin ecuaţia
diferenţială y ( n )  x ( n )  x ( n  1)
H (z)  1  z 1 H ( z ) z  e j  H (  )  1  e  j 
TPI- curs 2
   
j j j  j2
H (  )  1  e  j  e 2 (e 2 e 2 )  2 cos( ) e
2
 H ( )
H ( )  2 cos( ) 2
2 2/ 2
 ( )    / 2 1

  
 
 2 3

 /2 -> filtru trece jos cu fază liniară


()

TPI- curs 2
Exemplul 2
Stabiliţi care sunt proprietăţile filtrului FIR dat prin ecuaţia
diferenţială: 1 1
y ( n )  x ( n )  x ( n  1) 1 1
H (z)  (1  z )
2 2 2
   
1  j 1 j2 j2 j  j2
H ( z ) z  e j  H ( )  (1  e )  e (e  e 2 )  j sin e
2 2 2
   
j  j2  j
e 2 sin e  sin e 2
2 2
H ( )
1/ 2
-> filtru trece sus cu fază liniară

/2 
TPI- curs 2
- caracteristica de fază liniară este extrem de importantă în proiectarea
unui filtru FIR; aceasta asigură ca toate componentele spectrale sunt
întârziate similar

Implementarea filtrelor FIR


- Uzual filtrele FIR sunt implementate sub forma unui filtru
transversal ce reprezintă transpunerea directă a ecuaţiei diferenţiale
prin operaţii de tip multiplicare şi acumulare

- z-1 operatorul de întârziere


TPI- curs 2
- în software, un filtru transversal poate fi simulat prin următoarea
secvenţă de cod C:

y[n] = 0.0;
for (k=0; k<=M; k++)
y[n] = y[n] + b[k] * x[n-k];

accesarea aceleiaşi operaţie matematică


locaţii de memorie necesară calculării
numărului de ordine
al eşantionului
- citirea unui eşantion presupune 5 operaţii: (1) citirea adresei sirului x; (2) încărcarea
valorii unui operand (n); (3) încărcarea valorii unui operand (k); (4) efectuarea
diferenţei n-k; (5) citirea locaţiei de memorie n-k relativ la adresa din memorie a şirului

TPI- curs 2
- o implementare mai eficientă poate fi efectuată prin utilizarea de
pointeri C…
float *y_ptr, *b_ptr, *x_ptr;
y_ptr = &y[n];
x_ptr = &x[n];
b_ptr= & b[0];
*y_ptr=0.0;
for (k=0; k<=M; k++)
*y_ptr = *y_ptr + (*b_ptr++) * (*x_ptr--);

-toate procesoarele de semnal curente pot efectua operaţiile de post
incrementare/decrementare simultan cu instrucţiunea de citire a datelor
din memorie (*x_ptr--)
-implementarea anterioară are şi un dezavantaj: presupune 4 operaţii de
citire/scriere în memorie

TPI- curs 2
- o posibilă eliminare a acestui dezavantaj constă în secvenţa de cod
următoare
...
float *y_ptr, *b_ptr, *x_ptr;
register float temp;
y_ptr = &y[n];
x_ptr = &x[n];
b_ptr= & b[0];
temp = 0;
for (k=1; k<N; k++)
temp = temp + (*b_ptr++) *( *x_ptr--);

- variabila temp este declarată ca fiind o locaţie de memorie de tip


registru; intrucţiunea depinde de tipul de procesor utilizat

TPI- curs 2

S-ar putea să vă placă și

  • Senzori Traductoare C2 PDF
    Senzori Traductoare C2 PDF
    Document26 pagini
    Senzori Traductoare C2 PDF
    Roxana Buta
    Încă nu există evaluări
  • Redresoare Monofazate
    Redresoare Monofazate
    Document23 pagini
    Redresoare Monofazate
    Roxana Buta
    Încă nu există evaluări
  • Convertorul CC-CC Inversor
    Convertorul CC-CC Inversor
    Document29 pagini
    Convertorul CC-CC Inversor
    Roxana Buta
    Încă nu există evaluări
  • Convertorul CC-CC Ridicator
    Convertorul CC-CC Ridicator
    Document23 pagini
    Convertorul CC-CC Ridicator
    Condrea George
    Încă nu există evaluări
  • Curs1 (2017)
    Curs1 (2017)
    Document28 pagini
    Curs1 (2017)
    Roxana Buta
    Încă nu există evaluări
  • Convertor CC-CC Half - Bridge
    Convertor CC-CC Half - Bridge
    Document16 pagini
    Convertor CC-CC Half - Bridge
    Roxana Buta
    Încă nu există evaluări
  • Partial TPI2
    Partial TPI2
    Document3 pagini
    Partial TPI2
    Roxana Buta
    Încă nu există evaluări
  • Tpi p1
    Tpi p1
    Document5 pagini
    Tpi p1
    Roxana Buta
    Încă nu există evaluări
  • Curs3 (2017)
    Curs3 (2017)
    Document45 pagini
    Curs3 (2017)
    Roxana Buta
    Încă nu există evaluări
  • Problema 1 PDF
    Problema 1 PDF
    Document1 pagină
    Problema 1 PDF
    Roxana Buta
    Încă nu există evaluări
  • Rezolvari Finalteorie
    Rezolvari Finalteorie
    Document3 pagini
    Rezolvari Finalteorie
    Roxana Buta
    Încă nu există evaluări
  • Bdiel3 PDF
    Bdiel3 PDF
    Document15 pagini
    Bdiel3 PDF
    Roxana Buta
    Încă nu există evaluări
  • Lab3 TCOM
    Lab3 TCOM
    Document31 pagini
    Lab3 TCOM
    Roxana Buta
    Încă nu există evaluări
  • Problema 2 PDF
    Problema 2 PDF
    Document1 pagină
    Problema 2 PDF
    Roxana Buta
    Încă nu există evaluări
  • Subiectul 15
    Subiectul 15
    Document12 pagini
    Subiectul 15
    Roxana Buta
    Încă nu există evaluări
  • Capitol 2
    Capitol 2
    Document34 pagini
    Capitol 2
    Mihai Mike
    Încă nu există evaluări
  • Capitol 2
    Capitol 2
    Document34 pagini
    Capitol 2
    Mihai Mike
    Încă nu există evaluări
  • PROIECT MySql
    PROIECT MySql
    Document12 pagini
    PROIECT MySql
    Roxana Buta
    Încă nu există evaluări
  • PROIECT MySql
    PROIECT MySql
    Document12 pagini
    PROIECT MySql
    Roxana Buta
    Încă nu există evaluări
  • PROIECT MySql
    PROIECT MySql
    Document12 pagini
    PROIECT MySql
    Roxana Buta
    Încă nu există evaluări
  • Subiectul 15
    Subiectul 15
    Document1 pagină
    Subiectul 15
    Roxana Buta
    Încă nu există evaluări
  • Subiectul 15
    Subiectul 15
    Document1 pagină
    Subiectul 15
    Roxana Buta
    Încă nu există evaluări
  • BDIEL4
    BDIEL4
    Document18 pagini
    BDIEL4
    Roxana Buta
    Încă nu există evaluări
  • L1 s2 2020 SE-OOP CPP PDF
    L1 s2 2020 SE-OOP CPP PDF
    Document33 pagini
    L1 s2 2020 SE-OOP CPP PDF
    Roxana Buta
    Încă nu există evaluări
  • L1 s2 2020 SE-OOP CPP PDF
    L1 s2 2020 SE-OOP CPP PDF
    Document33 pagini
    L1 s2 2020 SE-OOP CPP PDF
    Roxana Buta
    Încă nu există evaluări
  • BDIEL2
    BDIEL2
    Document12 pagini
    BDIEL2
    Roxana Buta
    Încă nu există evaluări
  • BDIEL1
    BDIEL1
    Document16 pagini
    BDIEL1
    Roxana Buta
    Încă nu există evaluări