Está en la página 1de 4

Procesamiento de Voz Gua 2: anlisis en tiempo y frecuencia

PROCESAMIENTO DE VOZ
Gua 2: anlisis en tiempo y frecuencia
1.Escrbir en Matlab una funcin que permita calcular la energa de una seal. Debe recibir
como argumentos, la seal, la ventana, y la cantidad de muestras entre ventana (cantidad de
muestras sin solapamiento).
shorttime_energy(signal, window, step_size)
Se pide:
a)Generar una seal de ruido blanco gausiano, con una frecuencia de muestreo de 8kHz y
4 s. de duracin. Graficar la seal temporal y su espectro.
b)Calcular su energa, usando una ventana Blackman de L=100 muestras, y un paso de 1
muestra. Graficar la seal de energa en el tiempo, y su espectro.
c)En base a los resultados obtenidos en b), calcular el overlap apropiado. Calcular la
energa de la seal usando dicho overlap. Graficar la seal de energa en el tiempo, y su
espectro.
d)Explicar qu sucede si se toma un overlap menor al calculado en c).
e)Repetir los incisos b) y c) usando diferentes ventanas, y diferentes L. Obtener
conclusiones.
f)Si en lugar de tratarse de una seal de ruido blanco, se tratase de una seal de voz,
indicar cmo elegira el tamao de ventana y el overlap en base a lo analizado.
2.Usando el algoritmo implementado en el ejercicio 1, implementar un control automtico de
ganancia para la seal cuatrocientas.wav que se encuentra en el sitio de la materia.
a)Cmo influye el ancho de la ventana en el efecto percibido? Cmo influye el
solapamiento?
b)Qu efecto se percibe en las zonas donde hay silencios? Cmo se pueden evitar?
3.Escribir en Matlab una funcin que permita calcular la tasa de cruces por cero de una seal.
Debe cumplir con el mismo prototipo que la funcin para calcular energas. Se pide:
a)Generar una seal chirp, que barra las frecuencias de 100 a 500 Hz, con una frecuencia y
duracin adecuados. Graficar el espectrograma de la misma.
b)Que diferencia existe entre la ventana aplicada para calcular la energa, y la aplicada para
calcular la tasa de cruces por cero?
c)Medir los cruces por cero de la seal generada, usando ventana rectangular, hamming y
blackman. Obtener conclusiones.
Pgina 1
Procesamiento de Voz Gua 2: anlisis en tiempo y frecuencia
4.Usando las funciones implementadas en los ejercicios 1 y 3, y el archivo numeros.wav que
se encuentra en el sitio de la materia, se pide:
a)Estimar el umbral de energa que permita diferenciar voz, de silencio.
b)Estimar el umbral de cruces por cero que permita diferenciar voz sonante de voz no
sonante.
c)En base a lo realizado, implementar un algoritmo que diferencie entre voz sonante, voz
no sonante, y silencio.
5.Implementar una funcin en Matlab que permita graficar la autocorrelacin, y la AMDF de
una seal.
a)Usando la seal chirp del ejercicio 3, estimar la frecuencia de la misma en funcin del
tiempo usando la autocorrelacin, y la AMDF. Qu diferencias existen entre la
autocorrelacin y la AMDF?
b)Cmo influyen el ancho de la ventana y el solapamiento?
c)Qu resolucin en frecuencia presentan estos algoritmos?
d)Repetir el inciso a) para una seal de voz. Qu dificultades encuentra? Obtener
conclusiones.
6.Implementar una funcin en Matlab que permita modificar y reconstruir una seal mediante
el mtodo OLA. La funcin debe recibir como argumento, la seal, la funcin que procesa el
espectro (investigar los function_handle en Matlab), la ventana de anlisis, el overlap, y la
ventana de sntesis. La funcin que modifica el espectro debe recibir el tiempo en que
comienza la ventana, la frecuencia de muestreo y el vector con el espectro.
ola(signal, process_func, analysis_win, step_size, synthesis_win)
process(t, fs, spectrum)
Usando el archivo sonia.wav que se encuentra en el sitio de la materia, se pide:
a)Calcular la overlap ptimo si se usan las ventanas: rectangular, hamming y bartlett.
b)Reconstruir la seal usando para el anlisis una ventana rectangular con solapamiento de
50%, sin realizarle ninguna modificacin.
Repetir usando para el anlisis las ventanas: hann, hamming, blackman y chebyshev. Para
la sntesis usar ventana rectangular. Repetir con diferentes solapamientos.
Qu ventana se recomienda para un solapamiento del 50%? Qu sucede cuando el
solapamiento es L - 1 (donde L es el tamao de ventana)?
c)Reconstruir la seal usando tanto para el anlisis como para la sntesis la misma ventana.
Probar qu sucede con las ventanas: rectangular, hann, hamming, raiz cuadrada de
hamming, y raiz cuadrada de hann.
Pgina 2
Procesamiento de Voz Gua 2: anlisis en tiempo y frecuencia
Qu condicin debe cumplir una ventana para que la seal resintetizada sea identica a la
seal original si se usa la misma ventana para el anlisis y la sntesis?
d)Procesar la seal para eliminar una banda de frecuencias. Las frecuencias eliminadas
deben comenzar entre 3000 y 3300 Hz, y finalizar entre 2200 y 2500 Hz. Graficar el
espectrograma de la seal.
e)Filtrar la seal de forma que se eliminen todos los armnicos del cuarto en adelante. La
seal reconstruida resulta inteligible? Cuntos armnicos son necesarios para que resulte
inteligible?
f)Procesar la seal, conservando las duraciones pero duplicando el pitch. Qu problemas
ocurren?. Cmo se pueden solucionar?
7.Los espectros de la Figura 1 muestran la STFT de cinco seales de voz en difrerentes
momentos, con diferentes ventanas.
Figura 1. Espectros de diferentes porciones de seales de voz.
Analizando la Figura 1, se pide:
a)Qu espectros corresponden a fragmentos de voz sonante? Explicar.
b)Qu espectros corresponden a fragmentos de voz no sonante? Explicar.
Pgina 3
Procesamiento de Voz Gua 2: anlisis en tiempo y frecuencia
c)Qu espectros fueron computados con la ventana ms larga? Explicar.
d)Qu espectros fueron computados con la ventana ms corta? Explicar.
e)Estimar la frecuencia fundamental de la seal A. Explicar cmo realizar la estimacin con
la mayor precisin posible.
Pgina 4