You are on page 1of 9

DSP II Correlaci on

Ing. Ricardo Piraj an Cantillo, M.Sc. vison.maq.ud@gmail.com

18 de Febrero de 2009

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

1/9

Correlaci on
La correlaci on se utilizaci on para medir el grado de similaridad entre dos se nales. Sean las se nales discretas x (n) y y (n) con energ a nita. La correlaci on cruzada de x (n) y y (n) es la secuencia rxy (l ), denida como:

rxy (l ) =
n=

x (n)y (n l ),

l = 0, 1, 2, 3,

o, equivalente;

rxy (l ) =
n=

x (n + l )y (n),

l = 0, 1, 2, 3,

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

2/9

Correlaci on

rxy (l ) = ryx (l ), Es decir ryx (l ) es la versi on reejada de rxy (l ) donde la reexi on es hecha respecto a l = 0.

ryx (l ) =
n=

y (n)x (n l ),

l = 0, 1, 2, 3,

ryx (l ) =
n=

y (n + l )x (n),

l = 0, 1, 2, 3,

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

3/9

Correlaci on

Excepto por la reexi on, la correlaci on es igual a la convoluci on, por lo tanto: rxy (l ) = x (l ) y (l ) La ausencia de reexi on hace que la correlaci on cruzada no sea una operaci on conmutativa.

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

4/9

Correlaci on
Utilizaci on de MatLab

>> x=[2,-1,3,7,1,2,-3];nx=[-4:2]; >> y=[1,-1,2,-2,4,1,-2,5];ny=[-4:3]; >> y=fliplr(y); >> ny=-fliplr(ny); >> nr_xy_b=nx(1)+ny(1); >> nr_xy_e=nx(length(x)) + ny(length(y)); >> r_xy =conv(x,y) r_xy = 10 -9 19 36 -14 33 0 7 13 -18 16 -7 >> nr_xy=[nr_xy_b:nr_xy_e] nr_xy = -7 -6 -5 -4 -3 -2 -1 0 1 2 3

-3

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

5/9

Correlaci on
Utilizando Matlab

>>stem(nr_xy,r_xy);title(Secuencia de Ejemplo) >> xlabel(n);ylabel(r_{xy}(n)) >> grid on


Secuencia de Ejemplo 40

30

20 r (n)

xy

10

10

20 8

2 n

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

6/9

Autocorrelaci on

En el caso especial donde y (n) = x (n), tenemos la autocorrelaci on de x (n), la cual es denida por la secuencia:

rxx (l ) =
n=

x (n)x (n l )

o rxx (l ) =

x (n + l )x (n)
n=

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

7/9

Autocorrelaci on
Autocorrelaci on con MatLab

>> x=[2,-1,3,7,1,2,-3]; >> r_xx=xcorr(x,x) r_xx = -6 7 -9 -2 13 19 77 19 13 -2 -9 7 -6 >> nr_xx=[(-length(x)+1):(length(x)-1)] nr_xx = -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

8/9

Autocorrelaci on
Autocorrelaci on con MatLab

>>stem(nr_xx,r_xx);title(Secuencia del ejercicio) >> xlabel(n);ylabel(r_{xx}(n)); >> grid on


Secuencia del ejercicio 80 70 60 50 r (n) 40 30 20 10 0 10 6

xx

0 n

Ing. Ricardo Piraj an C. M.Sc. ()

DSP II Correlaci on

18 de Febrero de 2009

9/9