Está en la página 1de 2

Laboratorio #4

Daniel Gualteros Gualteros, Paola Ortiz Gonzalez, Brenda Sastoque Cortes


Universidad Distrital Francisco José de Caldas
Facultad de Ingeniería
Bogotá, Colombia
dagualterosg@correo.udistrital.edu.co, lportizg@correo.udistrital.edu.co, bvsastoquec@correo.udistrital.edu.co

I. OBJETIVO

Diseñar un código sobre el programa MATLAB o utilizar las aplicaciones del mismo que, basándose en el
código anterior, donde se analizaba la señal de audio ‘vozfemenina.wav’ se dividía en N número de ventanas y
para cada una de ellas se calculaba la energía y tasa de cruces por cero, permita clasificar los sonidos en
vocalizados, silencios o no vocalizados teniendo en cuenta el valor de la energía y cruces por cero en cada
instante de tiempo en el que transcurre el audio.

II. RESOLUCIÓN DEL PROBLEMA

Para resolver el problema, se escoge el Toolbox de


Fuzzy Logic, el cual nos permite crear funciones, apps
y un bloque de simulación para analizar, diseñar y
simular sistemas basados en lógica difusa, este último
será la herramienta a utilizar. Para poder diseñar el
sistema de difuso que nos permita clasificar los
sonidos, nos basamos en la gráfica de energía versus
cruces por cero, mostrada a la izquierda, teniendo en
cuenta que los vectores fueron normalizados de 0 a 1.

Con la caracterización anterior, podemos


determinar si un segmento de la señal de voz se
considera vocalizado, no vocalizado o un silencio, bajo
dos criterios de decisión: análisis de energía de la señal
y cantidad de cruces por cero. Se determina que es
vocalizado si durante su generación el flujo de aire es
alterado por las vibraciones de las cuerdas vocales del locutor lo que permite diferenciarlos de las secciones no
vocalizadas de la voz, esto se traduce, en nuestro contexto, que las componentes vocalizadas presentan un
comportamiento periódico y transportan una mayor cantidad de energía que los sonidos no vocalizados. El
segundo criterio está basado en la periodicidad de un segmento vocalizado, las frecuencias altas tienden a tener
un mayor número de cruces por cero, al tener una mayor amplitud y ser periódico, un segmento vocalizado tiene
un menor número de cruces por cero que un sonido no vocalizado.
Finalmente, para un silencio, la cantidad de energía puede ser usada para distinguirlo de los sonidos
vocalizados o no vocalizados. Sin embargo, según sea el caso es difícil localizar el inicio y final de una palabra,
ya que pueden existir diferentes efectos como nasales al final, sonidos vocálicos que se apagan al final de un
segmento de voz, entre otros. A pesar de las dificultades creadas por las situaciones anteriores, las
representaciones de energía y tasa de cruces por cero pueden ser combinadas para ser usadas como criterio,
donde la cantidad de energía es pequeña y no habría criterio específico sobre la cantidad de tasa de cruces por
cero.
Teniendo en cuenta los dos párrafos anteriores podemos pasar a definir los conjuntos de las entradas y la
salida, para estos se definen sobre conjuntos Hamming, característicos para análisis de sonido, como se muestra
a continuación:
Luego definimos las reglas, según el contexto que se ha dado al principio de este numeral:

III. RESULTADOS
Con la solución dada podemos cargar el .fis en el código, y a través de la herramienta evalfis, podemos
evaluar, según los vectores de energía y cruces por cero, el audio dado; de esta forma tenemos el siguiente
resultado

A. Código completo