PRIMER LABORATORIO DE SE ALES Y SISTEMAS
LUIS FERNANDO ÁVILA MONSALVO
JAIME ANDRÉS LOZANO MARTINEZ
ING. WINSTON PERCYBROOKS
PROFESOR
FUNDACIÓN UNIVERSIDAD DEL NORTE
BARRANQUILLA – ATLANTICO
10/02/2015
PROBLEMAS
1. (10 pts.) Defina un vector de índices de tiempo discreto -10 ≤ n ≤ 10 y un
vector x[n] para ese rango de tiempo definido como:
a) Use la función stem() para generar la gráfica dex[n].
b) Grafique también x[n – 2], x[n + 3], x[–n+1].
Desarrollo:
function [ y ]= Primerp (n)
n=-10:1:10;
y=(n==0).*(2)+(n==2).*(1)+(n==3).*(-1)+(n==4).*(3);
figure ()
stem(n,y,'black')
hold on
y=(n-2==0).*(2)+(n-2==2).*(1)+(n-2==3).*(-1)+(n-2==4).*(3);
figure ()
stem(n,y,'black')
hold on
y=(n+3==0).*(2)+(n+3==2).*(1)+(n+3==3).*(-1)+(n+3==4).*(3);
figure ()
stem(n,y,'black')
hold ony=(-n+1==0).*(2)+(-n+1==2).*(1)+(-n+1==3).*(-1)+(-n+1==4).*(3);
figure ()
stem(n,y,'black')
end
2. (30 pts.)Use la función wavread() para cargar en Matlab el archivo de audio
test.wav que pueden descargar del catálogo web y obtener tres variables,
una que contenga las muestras de audio del archivo (samples), otra la
frecuencia de muestreo (fs) y otra el número de bits por muestra (nbits). El
audiopuede reproducirse usando la función soundsc(samples, fs). Realice
entonces las siguientes operaciones:
a) Grafique samples como si fuese una señal en tiempo continuo (use plot()). El eje
x de la gráfica debe mostrar los valores correctos en segundos.
b) Genere una nueva señal de muestras diezmando sample por un factor de 2.
Grafique la nueva señal en tiempo discreto y además escuche el efectoresultante
usando soundsc(). Comente sobre los resultados.
c) Genere una nueva señal de muestras expandiendo sample por un factor de 2.
Grafique la nueva señal en tiempo discreto y además escuche el efecto resultante
usando soundsc(). Comente sobre los resultados.
d) ¿Cómo se podría realizar una expansión por un factor 3/2? Realícelo en Matlab
y muestre la gráfica correspondiente.
Bonificación: Escuchela señal generada en b) pero usando una frecuencia de
muestreo fs/2, luego escuche la señal generada en c) pero usando una frecuencia
de muestreo 2*fs, compare ambos casos con las muestras originales con frecuencia
de muestreo original. Explique sus observaciones.
Desarrollo:
clc
[s,f,n]=wavread('test');
y=0:1/f:(length(s)-1)/f;
plot(y,s);
soundsc(s,f)
hold on
s2=s(1:2:length(s));y2=0:1/f:(length(s2)-1)/f;
figure()
plot(y2,s2);
soundsc(s2,f)
hold on
Una vez diezmamos la nota en un factor de 2 esta se escucha mucho más rápida,
y esto se debe a que hemos desechado la mitad de sus muestras, y lo notamos en
su gráfica que ahora tiene la mitad de las muestras de la gráfica original.
s3=s(1:1/2:length(s));
y3=0:1/f:(length(s3)-1)/f;
figure()
plot(y3,s3);
soundsc(s3,f)
hold on
Una vezexpandimos la nota en un factor de 2 esta se escucha más lenta y grave,
y esto se debe a que hemos duplicado el número de sus muestras agregando
espacios vacíos entre las muestras originales, y lo notamos en su gráfica que ahora
tiene el doble de las muestras de la gráfica original.
s4=s(1:2/3:length(s));
y4=0:1/f:(length(s4)-1)/f;
figure()
plot(y4,s4);
soundsc(s4,f)
hold on
Cuando expandimos la notaen un factor de 3/2 esta se escucha igualmente más
lenta y grave que la nota original pero más rápida que la expandida en un factor de
2. Podemos tomar de referencia la gráfica la cual es más ancha que la gráfica
original y más corta que la expandida en un factor de 2.
Bonificación:
Diezmado
Expansión
%bonificacion
F1=f/2;
s5=s(1:2:length(s));
y5=0:1/f:(length(s5)-1)/f;
figure()
plot(y5,s5);soundsc(s5,F1)
hold on
F2=f*2;
s6=s(1:1/2:length(s));
y6=0:1/f:(length(s6)-1)/f;
figure()
plot(y6,s6);
soundsc(s6,F2)
hold on
Ambas se escuchan igual a la nota original, y esto es porque estamos modificando
no sólo el número de muestras en cada caso sino que también cambiamos la
frecuencia de muestreo para cada una, dicho de otra forma, es como si el cambio
en el número de muestras fuera...
Regístrate para leer el documento completo.