Você está na página 1de 4

Correlacin En esta prctica se estudiar el uso de la autocorrelacin y de la correlacin cruzada.

Estas operaciones se van a utilizar principalmente para el reconocimiento de determinados patrones dentro de una seal, para la identificacin de pautas y para la determinacin de la relacin existente entre sucesivas muestras. Aplicacin 1 La primera aplicacin de la autocorrelacin de una seal es determinar las posibles repeticiones de patrones en la seal. Para comprobar este punto se va a generar una sinusoide de frecuencia igual a 100 Hz con amplitud uno y muestreada a 1 kHZ (consideremos una secuencia de 100 puntos). Determine la autocorrelacin de esta seal normalizada a uno y represntela junto a la secuencia, Qu conclusiones pueden sacar? El programa en Matlab que implementa lo que nos piden es:
%Generacin de la seal n = 0:99; x = cos(2*pi*n*0.1); %Clculo de la autocorrelacin normalizada y = xcorr(x,'coeff'); %Representacin de las dos seales subplot(221), stem(x,'k'), title('(a)') subplot(222), plot(x,'k'), title('(b)') subplot(223), stem(y,'k'),title('(c)') subplot(224), plot(y,'k'), title('(d)')

La grfica obtenida al emplear este cdigo se muestra en la figura siguiente. Podemos apreciar que la autocorrelacin tiene una longitud doble a la seal temporal. Este hecho se debe a que los desplazamientos, a la hora de calcular la autocorrelacin, pueden ser positivos o negativos. El ndice central se corresponde con un desplazamiento cero y, se corresponde, lgicamente, con el valor mximo de dicha correlacin.

Aplicacin 2 Una segunda aplicacin relacionada con la anterior es la determinacin del desfase entre dos seales. Se pide generar dos sinusoides de frecuencia 50 Hz (Fm = 1 kHz), amplitud uno y desfasados 90o y determinar la correlacin cruzada de ellas. Cmo se podra determinar el desfase entre estas seales? Realice una grfica donde aparezcan las matrices de autocorrelacin y correlacin cruzada Qu conclusiones se pueden sacar? Para entender este apartado de forma sencilla consideremos las sinusoides dadas por x(n) = cos(2fn +1), y(n) = cos(2fn +2) Donde se puede definir = 1 - 2 como el desfase entre las dos seales. Se puede calcular el desfase comprobando cundo las dos seales vuelven a estar en fase. Para n = 0 se tiene: x(0) = cos(1), y(0) = cos(2). Si ahora se desplaza una de las seales, por ejemplo x(n), hasta que las dos estn en fase de nuevo, se tiene que x(N) = cos(2fN +1) = y(0) = cos(2). De la igualdad anterior se desprende que: 2fN +1 = 2, de modo que el desfase vendr dado por: = 1 - 2 = 2fN, siendo f la frecuencia digital de la seal.

Podemos emplear la correlacin cruzada para determinar cundo las seales estarn en fase, lo cual ocurrir en los mximos de dicha correlacin. Como en los clculos realizados se ha considerado como punto inicial n = 0, se deben determinar los mximos a partir del punto central de la correlacin cruzada que, recordemos, es el punto de la correlacin correspondiente a un desplazamiento cero. El programa de Matlab que implementa esto es el siguiente:

%Generacin de las seales n = 0:99; x = cos(2*pi*n*(50/1000)); y = cos(2*pi*n*(50/1000)+ pi/2); %Determinacin de la correlacin cruzada [z lag1] = xcorr(x,'coeff'); % autocorrelacin [zz lag2] = xcorr(x,y,'coeff'); %correlacion cruzada %Representacin de las seales

plot(lag1,z,'Color','g') hold on grid on plot(lag2, zz,'Color','k')

Enlace de inters http://books.google.com.ec/books?id=jkhyWjmJBGUC&pg=PA73&lpg=PA73&dq=autocorrelaci on+normalizada+%2B+matlab&source=bl&ots=RlRrdW6bnp&sig=b0svy_EYvH3Ii9LWnM9mrM TO0DU&hl=es&ei=iByLSqyuFIqwMOyh4cYP&sa=X&oi=book_result&ct=result&resnum=4#v=on epage&q=&f=false

Você também pode gostar