Você está na página 1de 6

TRABAJO COLABORATIVO N 1

PROCESAMIENTO DIGITAL DE SEALES







ANA ISABEL BOLAOS
TUTORA





JUAN CLIMACO PINILLA OSPITIA
CODIGO 299004_28


UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
TECNOLOGIA EN ELECTRONICA
CEAD ACACIAS
2013
INTRODUCCION


La correlacin es una operacin bsica del procesamiento de imgenes
digitales. La correlacin es la operacin bsica en los procesos de
bsqueda de patrones por emparejamiento. Por tanto, disponer de
algoritmos que calculen de una forma eficiente estas operaciones es del
mayor inters.
















Investigar en la red sobre ejemplos de aplicacin de la correlacin
usando Matlab. Luego ejecute el cdigo consultado y observe los
resultados. Es necesario adjuntar el cdigo .m generado.
1. Para ver las dems imgenes que se ocultan en la imagen por
defecto:
Cdigo generado en Matlab
defImage = pow2(get(0,'DefaultImageCData'),47);
imgCell = repmat({zeros(size(defImage))},8,7);
for shift = 0:52
imgCell{shift+1} = bitshift(defImage,shift);
end;
allImages = cell2mat(imgCell.');
imshow(allImages,[min(allImages(:)) max(allImages(:))]);
%fin del script
plot(lag1,z,'Color','g')
hold on
grid on
plot(lag2, zz,'Color','k')


2. Generar una sinusoide de frecuencia igual a 100 Hz con amplitud
uno y muestreada a 1 kHz. Determine la auto correlacin 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
0 20 40 60 80 100
-1
-0.5
0
0.5
1
(a)
0 20 40 60 80 100
-1
-0.5
0
0.5
1
(b)
0 50 100 150 200
-1
-0.5
0
0.5
1
(c)
0 50 100 150 200
-1
-0.5
0
0.5
1
(d)
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.

3. Generar dos sinusoides de frecuencia 50 Hz (Fm = 1 kHz),
amplitud uno y desfasados 90
o
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')







0 20 40 60 80 100
-1
-0.5
0
0.5
1
(a)
0 20 40 60 80 100
-1
-0.5
0
0.5
1
(b)
0 50 100 150 200
-1
-0.5
0
0.5
1
(c)
-100 -50 0 50 100
-1
-0.5
0
0.5
1