Documentos de Académico
Documentos de Profesional
Documentos de Cultura
lineal
Correa Juan1 , Massolo Eugenio2 , Meza Martin3 , Reibold Emanuel4
Resumen
El presente trabajo de investigación tiene como principal objetivo analizar el método de predicción “Linear Predic-
tive Coding” aplicado a señales del habla, tanto de manera teórica como práctica. Para esto se desarrolló un código en
lenguaje Python que sintetice un audio de voz humana. También se realizó un análisis de la incidencia de los parámetros
del modelo en el resultado de la sı́ntesis. Los resultados obtenidos se condicen con el marco teórico, por lo tanto se
concluye que la aplicación de este método para la sı́ntesis de audio es aplicable y efectivo. Cabe destacar que ciertos
comportamientos frecuenciales de las señales no pudieron ser explicados de la manera esperada.
1
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
La Figura 1 muestra un diagrama del modelo de Debido a que ŝpnq es el valor predicho de spnq, el
producción del habla. error de predicción epnq se define a partir de la dife-
rencia entre la señal original y la señal resultante de la
predicción lineal:
p
ÿ
epnq “ spnq ´ ŝpnq “ spnq ´ αk spn ´ kq (4)
k“1
p
ÿ Siendo N la cantidad de muestras de la señal en ca-
spnq “ Ak spn ´ kq ` Gupnq (1) da intervalo de tiempo y epnq el error de predicción.
k“1 Con el fin de minimizar el error de predicción, a
El filtro digital se define a partir de la ecuación 2: partir de derivar parcialmente la ecuación (9) e igualar-
la a cero, es posible hallar los valores de αk tal que se
SpZq G cumple dicha condición. A continuación se expresa en
HpZq “ “ p (2)
U pZq ÿ la ecuación 6, el resultado de la derivada:
1´ Ak Z ´k
k“1
p N N
Se define a U pZq como la excitación proveniente de ÿ ÿ ÿ
αk spn ´ kqsp´iq “ spnqspn ´ iq (6)
la glotis, G el parámetro de ganancia, SpZq la señal fil- n“1 n“1
k“1
trada, Ak los coeficientes que caracterizan al filtro y p
el orden del mismo. Este modelo resulta mas eficaz en i = 1, 2, 3, ... , p.
señales pertenecientes al tipo voiced speech, sin embar- La igualdad anterior puede ser expresada utilizando
go, es posible aplicarlo para todo tipo de señales si se los términos de autocorrelación como muestra la ecua-
implementa un filtro de un orden mayor a 10. ción 7:
Para obtener dichos coeficientes y ası́ construir el p
filtro que caracterice el tracto vocal, es necesario apli- ÿ
αk Rpk ´ iq “ Rpiq (7)
car un modelo de predicción lineal, cuya salida del pre- k“1
dictor se detalla en la ecuación 3:
Siendo R(i) los coeficientes de la matriz de autoco-
p
ÿ rrelación, la cual se caracteriza por ser una matriz de
ŝpnq “ αk spn ´ kq (3) Toeplitz [3]. Para obtener los coeficientes αk se utili-
k“1 za el método de Levinson-Durbin, el cual consiste en
Se considera a ŝpnq como una aproximación del au- calcular en forma recursiva la solución de una ecuación
dio original a través de la combinación lineal de los co- que involucra una matriz de Toeplitz. Dicho método po-
eficientes de predicción αk y muestras pasadas de la see la ventaja de ser computacionalmente más rápido
señal spnq. que otros.
2
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
3
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
trarrestar el efecto que produce la glotis durante el pro- resultantes, la señal de error y la señal de predicción. La
ceso del habla, y de esta manera obtener los coeficientes señal de error nos sirve para poder transmitir la señal
de predicción lineal que caractericen únicamente el fun- de una manera mas eficiente. Esta señal, al ser mas pe-
cionamiento del tracto vocal. La expresión que define al queña que la original (si se realizo una buena predic-
filtro antes mencionado, se presenta a continuación en ción) nos permite procesarla con una menor cantidad
la ecuación 9: de bits por segundo sin perder la información necesaria
para comprender el mensaje.
spre´enf pnq “ spnq ´ 0,95spn ´ 1q (9)
Entonces, podemos transmitir solamente esta señal
Siendo s(n) la señal de voz y spre´enf pnq la señal mas el conjunto de coeficientes αk y el receptor podrı́a
filtrada. Una vez aplicado el filtro, se procede a dividir reconstruir la señal original a partir de filtrar esta señal
la señal en segmentos de tiempo discreto, también de- de error mediante un filtro formado con los coeficientes
nominados frames. Estos se definen con una longitud mencionados, el cual se detalla en la ecuación 2. Luego
tal que nos permita asumir que las condiciones de for- de esto solo resta aplicar un filtro pasa-bajos (De-énfa-
ma del tracto vocal se mantienen constantes (lapsos de sis), para lograr reunir los efectos que generan el filtro
entre 10 y 20 ms). Estos segmentos se obtienen apli- del tracto vocal en conjunto con la glotis y los labios.
cando ventanas a la señal. La determinación del tipo de Dicho filtro se encuentra dado por la ecuación en dife-
ventana a utilizar repercute en el resultado final del pro- rencias 10:
ceso. En esta ocasión se evaluara el uso de una ventana
rectangular, y de una ventana Hamming.Esto se reali-
za porque nos interesa ver el efecto que se logra con la
ventana Hamming sobre los extremos de la ventana. Es
sde´enf pnq “ spnq ` 0,95sde´enf pn ´ 1q (10)
importante, ya que las primeras y las ultimas muestras
de la señal de predicción se calculan a partir de mues-
tras nulas, siendo estas muestras no nulas. Es aquı́ don-
de la ventana Hamming nos favorece atenuando la in- Siendo s(n) la señal de voz y sde´enf pnq la señal
fluencia de estos valores en contraposición a la ventana filtrada.
rectangular. Por otro lado, la señal de predicción la obtuvimos a
Posteriormente, se determinan los coeficientes del partir de combinaciones lineales de muestras anteriores
filtro digital variable en el tiempo αk para cada frame. y los coeficientes de LPC obtenidos. En esta señal pode-
Para obtenerlos, se parte de realizar la función de auto- mos observar como la calidad de la predicción aumenta
correlación de la señal en cuestión. De esta misma se conforme aumentamos el numero de coeficientes, o lo
obtienen los valores para formar la matriz de coeficien- que es equivalente, el numero de polos del filtro con el
tes de autocorrelación que se observa en la Figura 4, que modelizamos el funcionamiento del tracto vocal.
la cual por sus caracterı́sticas resulta ser una matriz de
Toeplitz (matriz cuadrada en la que los elementos de sus Por ultimo, se procede a realizar una serie de com-
diagonales son constantes)[3] . Esta matriz, junto con el paraciones gráficas y numéricas entre resultados con di-
vector de las primeras P autocorrelaciones y el vector ferentes parámetros de cálculo, para esto se implemen-
de coeficientes, conforman un sistema de ecuaciones, taron funciones como freqz, la cual devuelve la respues-
el cual se resuelve mediante el método de Levinson- ta en frecuencia de un filtro a partir de los vectores co-
Durbin. rrespondientes a sus coeficientes del numerador y de-
nominador, o la FFT para realizar la transformada dis-
creta de Fourier y ası́ analizar una señal en su espectro
frecuencial.
4
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
El primer parámetro a analizar es el tipo de ventana 4.2. Orden del filtro H(z)
que se utiliza a la hora de seccionar la señal en frag-
mentos para un análisis puntual. La ventana rectangular
ocasiona un recorte abrupto de la señal, ocasionando un Tal como se asevera en el marco teórico, un mayor
aumento del error debido a que se representan muestras detalle en la representación del filtro producido por el
no nulas a partir de muestras nulas y viceversa, en cam- tracto vocal implica una mayor cantidad de coeficientes
bio la ventana Hamming atenúa la amplitud del frame a calcular. Se logró corroborar que al incrementar el nu-
en sus extremos, produciendo una disminución de esta mero de polos del filtro (P), la respuesta en frecuencia
incertidumbre. Se puede apreciar en la Figura 6 como es del mismo resalta las formantes correspondientes a ese
la intersección entre de frames, segmentados tanto por lapso de tiempo, llegando a enfatizar los armónicos de
una ventana Hamming como rectangular. En esta se ve estas cuando se implementa un numero excesivo de co-
en la parte central del gráfico, sobre la muestra numero eficientes. La Figura 7 detalla la respuesta frecuencial
220, la unión entre dos frames. del filtro H(z) para tres ordenes distintos.
5
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
6
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales
7
Análisis y Sı́ntesis de voz humana mediante LPC Procesamiento Digital de Señales