Estudio y simulación de un codificador de voz basado en la recomendación G.729 de la ITU-T. Proyecto Fin de Carrera. Ingeniería de Telecomunicaciones

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Estudio y simulación de un codificador de voz basado en la recomendación G.729 de la ITU-T. Proyecto Fin de Carrera. Ingeniería de Telecomunicaciones"

Transcripción

1 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Proyecto Fin de Carrera Ingeniería de Telecomunicaciones Escuela Superior de Ingenieros Universidad de Sevilla Alberto Alonso Hernández Tutor: Sergio Cruces Álvarez 0 de Diciembre de 005

2

3 Resumen En el presente documento se estudia e implementa en Matlab un codificador de voz basado en el de la recomendación G.79 de la ITU-T, Codificación de la voz a 8 bit/s mediante predicción lineal con excitación por código algebraico de estructura conjugada, conocido como codificador CS-CELP. El codificador implementado está diseñado para trabajar con señales digitales y se basa en el modelo de codificación mediante predicción lineal con excitación por código (CELP). Opera con tramas vocales de 0 ms correspondientes a 80 muestras a una velocidad de muestreo de 8000 muestras por segundo. En cada trama de 0 ms se analiza la señal vocal para extraer los parámetros del modelo CELP (coeficientes del filtro de predicción lineal, ganancias e índices de las tablas de códigos adaptativos y fijos). Estos parámetros se codifican y se transmiten. En el decodificador, se usan los datos recibidos para recuperar los parámetros de excitación y del filtro de síntesis. Se realiza una introducción a las señales y los codificadores de voz, analizando sus características más importantes y una revisión de los conceptos teóricos en los que se basará el codificador. Se analiza el codificador propuesto en la recomendación y, por último, se detalla la estructura del codificador a implementar. Una vez implementado el codificador, se introducen diferentes señales de voz, masculinas y femeninas, analizando los resultados obtenidos. Como prueba final, se estudia su comportamiento ante una señal de audio.

4

5 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Índice Página INTRODUCCIÓN.... LA VOZ..... Propiedades de las señales de voz LOS CODIFICADORES DE VOZ Propiedades de los codificadores de voz Tasa de bit Retraso Complejidad Calidad..... Tipos de algoritmos de codificación de voz Codificadores de forma de onda Vocoders Codificadores híbridos Otros codificadores Sistemas de codificación usados en la práctica Red GSM Red UMTS Red telefónica fija Internet (voz sobre IP, VoIP)... 7 REVISIÓN TEÓRICA...9. CODIFICACIÓN DE VOZ MEDIANTE PREDICCIÓN LINEAL Introducción Desarrollo matemático.... COEFICIENTES LSF Definición y características Conversión LP -> LSF CODIFICACIÓN PREDICTIVA MEDIANTE ANÁLISIS POR SÍNTESIS Introducción Codificación AbS genérica Predictor de corto plazo Predictor de largo plazo Filtro de ponderación de error CELP Introducción Principio del CELP Tabla de códigos algebraicos RECOMENDACIÓN G.79: CS-CELP LA ITU-T DESCRIPCIÓN DE LA RECOMENDACIÓN Introducción Historia Objetivos y requerimientos de la recomendación G Características del codificador Aplicaciones Anexos... 6 I

6 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T 4 IMPLEMENTACIÓN DEL CODIFICADOR DE VOZ INTRODUCCIÓN Definición del sistema a implementar Codificador Decodificador DESCRIPCIÓN DE LAS FUNCIONES DEL CODIFICADOR Preprocesamiento Análisis y cuantización de la predicción lineal Ventanización y cálculo de la autocorrelación Algoritmo de Levinson-Durbin Conversión LP -> LSP Cuantización de los coeficientes LSP Interpolación de los coeficientes LSP Conversión de LSP a LP Ponderación perceptual Análisis de tono en bucle abierto Cálculo de la respuesta impulsiva Cálculo de la señal objetivo Búsqueda de la tabla de códigos adaptativos Generación del vector de tabla de códigos adaptativos Cálculo de la palabra de código para retardos de tabla de códigos adaptativos Cálculo de la ganancia de tabla de códigos adaptativos Tabla de códigos fijos: estructura y búsqueda Procedimiento de búsqueda de la tabla de códigos fijos Cálculo de palabra de código de la tabla de códigos fijos Cálculo de la ganancia de la tabla de códigos fijos Actualización de la memoria DESCRIPCIÓN DE LAS FUNCIONES DEL DECODIFICADOR Procedimiento de decodificación de los parámetros Decodificación del vector de tabla de códigos adaptativos Decodificación del vector de tabla de códigos fijos Decodificación de las ganancias Cálculo de la señal de voz reconstruida Postprocesamiento Postfiltro de largo plazo Postfiltro de corto plazo Compensación de la pendiente Control de ganancia adaptativo Filtrado de paso alto y escalamiento ascendente SIMULACIONES CONCLUSIONES LÍNEAS FUTURAS DE INVESTIGACIÓN...3 BIBLIOGRAFÍA.7 II

7 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Abreviaturas - ACELP.- CELP Algebraico - ADPCM.- Modulación por Código Pulsado Diferencial Adaptativa - CELP.- Codificación por predicción lineal con excitación - CS-CELP.- CELP con estructura conjugada - DSP.- Procesador Digital de Señal - GSM.- Sistema Global de Comunicaciones Móviles - IP.- Protocolo de Internet - ITU.- Unión Internacional de Telecomunicaciones - LAR.- Relaciones de Área Logarítmicas - LP.- Predicción Lineal - LPC.- Codificación por Predicción Lineal - LSP.- Pares del Espectro Lineal - LSF.- Frecuencias Espectrales de Línea - LTP.- Predictor de largo plazo ó de pitch - MIC.- Modulación por Impulsos Codificados - MIPS.- Millones de Instrucciones Por Segundo - MOS.- Mean Opinion Store - MSE.- Error Cuadrático Medio - PCM.- Modulación por Código Pulsado - RAM.- Memoria de Acceso Aleatorio - ROM.- Memoria de Solo Lectura - STP.- Predictor de corto plazo ó de predicción lineal - ToR.- Términos de Referencia - UMTS.- Sistema Universal de Telecomunicaciones Móviles - VAD.- Detector de actividad vocal - VoIP.- Voz sobre Protocolo de Internet - VQ.- Cuantización Vectorial III

8 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Glosario de las señales más importantes c ( n) palabra código de excitación ó vector de la tabla de códigos fijos d ( n) Señal de correlación entre señal objetivo y respuesta impulsiva del filtro de síntesis ponderado e ( n) señal de error (diferencia entre la señal original y la sintetizada) e w ( n) señal de error ponderada h ( n) respuesta impulsiva del filtro de síntesis ponderado r ( n) señal residuo de predicción de largo plazo R ( n) autocorrelación de corto plazo de la señal de voz s ( n) señal de voz de entrada s 0 ( n) ˆ respuesta a entrada cero del filtro de síntesis ponderado s ( n) señal de voz de entrada ventanizada ŝ ( n) señal de voz sintetizada s~ ( n) señal de voz predicha en el predictor de corto plazo s w ( n) ˆ señal de voz sintetizada ponderada sw ( n) Señal de voz ponderada u ( n) señal de excitación v ( n) Vector de tabla de códigos adaptativos w lp (n) ventana de análisis LP x ( n) Señal objetivo para la búsqueda de la tabla de códigos adaptativos x ( n) Señal objetivo actualizada y ( n) palabra de código filtrada y α ( n) ( n) convolución entre la señal de excitación y la respuesta impulsiva del filtro de síntesis ponderado φ correlación de la señal de voz n IV

9 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Glosario de símbolos más importantes A ( z) filtro inverso de predicción lineal ó filtro blanqueador  ( z) filtro inverso de predicción lineal cuantizado ó filtro blanqueador cuantizado F ( z) filtro de reacción H ( z) filtro de predicción lineal ó de corto plazo H f ( z) Postfiltro de largo plazo H h ( z) filtro de preprocesado H h ( z) Filtro de postprocesado H p ( z) Postfiltro de corto plazo H t ( z) Filtro de compensación de pendiente P l ( z) predictor de largo plazo ó de pitch P δ ( z) predictor de corto plazo ( z) P filtro de correlación de largo plazo ó filtro de síntesis de pitch W ( z) filtro de ponderación perceptual V

10 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T Glosario de constantes más importantes a â a j C c E E w f s frac G g c parámetros LP ó coeficientes del predictor lineal de corto plazo parámetros LP ó coeficientes del predictor lineal de corto plazo cuantizados estimación de los parámetros LP ó coeficientes del predictor lineal de corto plazo Palabra de código de la tabla de códigos fijos palabra código residuo de predicción de largo plazo error cuadrático medio ponderado frecuencia de muestreo Parte fraccionaria de los retardos de tono ganancia de tono de largo plazo Ganancia de la tabla de códigos fijos g p Ganancia de la tabla de códigos adaptativos H matriz triangular inferior de la respuesta impulsiva h ( n) i i i L m i o i Amplitud del impulso de la palabra de la tabla de códigos fijos Coeficientes de reflexión tamaño de la trama Posición del impulso de la palabra de la tabla de códigos fijos Coeficientes LAR de la trama actual P, P Palabra código para la tabla de códigos adaptativos de las subtramas y q i qˆ i Coeficientes LSP interpolados Coeficientes LSP interpolados cuantizados r () coeficientes de correlación de la señal enventanada r () coeficientes de correlación modificados de la señal enventanada R ( ) Correlación de la señal de voz enventanada para el retardo S Palabra de código de signo VI

11 Estudio y simulación de un codificador de voz basado en la recomendación G.79 de la ITU-T s i Signo del impulso de la palabra de la tabla de códigos fijos T, T Retardos de tono (pitch) de las subtramas y T op Retraso de bucle abierto w lag () factores de expansión del ancho de banda α β δ γ retraso del predictor de largo plazo factor de escala factor de ponderación Factor de ponderación del filtro de síntesis γ, γ Factores del filtro de ponderación perceptual ε energía del denominador de E ε energía de la palabra código Φ matriz simétrica que contiene las correlaciones de la respuesta impulsiva h ( n) ω aumento del ancho de banda VII

12

13 Introducción Introducción. La voz El lenguaje hablado o la voz es la forma más común y natural de comunicación del ser humano y, su procesamiento, ha representado una de los campos más interesantes en el análisis de señales. La investigación acerca del procesamiento de voz ha llevado a la creación de importantes aportaciones técnicas a la sociedad. El soporte fundamental de la voz es el sonido. El sonido se caracteriza por fluctuaciones de presión en un medio compresible. Dos cosas deben existir a fin de que se produzca una onda sonora: una fuente mecánica de vibración y un medio elástico a través del cual pueda propagar la perturbación. La voz se produce por la vibración de las cuerdas vocales. El aire exhalado de los pulmones es modulado y dado forma por la vibración en las cuerdas vocales y el tracto vocal. Ese sonido producido por la vibración de las cuerdas vocales es llevado al exterior por el propio aire espirado que causó la vibración. En la figura se muestra el camino que debe seguir el aire exhalado desde los pulmones hasta el exterior a través de los diferentes conductos [Miraya,00].

14 Introducción Figura.- Aparato fonatorio humano Las señales de voz, que no son más que una secuencia de símbolos acústicos elementales (conocidos como fonemas), además de servir para la comunicación de la información lingüística, llevan consigo multitud de información de otros tipos. La voz no es igual para todas las personas. Es una de las expresiones humanas en donde más se pone de manifiesto las características del individuo, englobándose en ella tanto las constitucionales, anatómicas como anímicas. Algunas de estas características son: edad, acento, intensidad, emoción, humor, el estado de salud de la persona que habla Las investigaciones que han existido en este campo estudian temas relacionados con el análisis y síntesis de voz, la creación de códigos de voz, el reconocimiento de voz, el realce de voz ó la comunicación multimodal. Los estudios sobre el procesamiento de voz y las comunicaciones fueron motivados en gran parte por el deseo de muchas personas de construir modelos mecánicos que pudieran imitar la comunicación verbal de los humanos. En 79 se creó el primer invento de este tipo que fue una imitación mecánica del aparato vocal humano [Lemmetty, 999]. Con el paso de los años otros científicos sintetizaron sonidos vocales por medio de la superposición de senoides armónicamente relacionadas y un ajuste adecuado de sus amplitudes. Estos han sido los dos principios dominantes en el procesamiento de las señales de voz: uno motivado por la física para el modelado de la fuente del tracto vocal y el otro por las matemáticas en el modelado con senoides. Diversos sistemas basados en bancos de filtros han sido la base para demostrar que una señal de voz se puede representar en términos de un paquete de parámetros. Estos parámetros pueden utilizarse posteriormente no sólo para resintetizar la señal de voz, sino para reconocer la identidad de la persona que está hablando. Además abre la posibilidad de comprimir el ancho de banda de una señal de voz, principio que actualmente se utiliza en la telefonía digital moderna.

15 Introducción Por otro lado, muchos sintetizadores de voz usan controles paramétricos, como por ejemplo, controles de articulación, frecuencias formantes y parámetros de predicción lineal. Los diferentes conjuntos de parámetros de control implican distintas estructuras para sintetizar la señal de voz... Propiedades de las señales de voz Las señales de voz se caracterizan por ser no estacionarias y con variaciones lentas en el dominio del tiempo y se procesan normalmente en segmentos de tiempo cortos, entre 5 y 30 ms. En estos segmentos la señal puede aproximarse a una señal cuasiperiódica. Cada segmento o trama puede ser clasificado como sonoro, no sonoro o silencio: - Los sonidos sonoros tienen una naturaleza cuasiperiódica en el dominio del tiempo y una estructura armónica fina en el dominio de la frecuencia, provocada por la vibración de las cuerdas vocales. Además, su espectro decae hacia altas frecuencias. Su energía es alta debido a que el aire encuentra poca obstrucción al pasar por el tracto vocal. Estas características pueden observarse en la figura. Figura. - Tramo de señal de voz sonoro en el tiempo y en la frecuencia Estos sonidos consisten en una frecuencia fundamental (frecuencia de pitch) y una serie de componentes armónicos de la misma, producidos por las cuerdas vocales. El tracto vocal modifica la señal de excitación provocando frecuencias formantes (ceros). Los formantes son las frecuencias de resonancia del espectro, es decir, los picos de la envolvente del espectro de la señal de voz que representan las frecuencias de resonancia del tracto vocal. Cada formante tiene una amplitud y un ancho de banda. La frecuencia fundamental y las frecuencias de los formantes son probablemente los conceptos más importantes para la síntesis y procesamiento de la voz. 3

16 Introducción Figura 3.- Envolvente de una señal de voz con sus 3 primeros formantes Las frecuencias a las que se producen los primeros formantes son muy importantes para reconocer o sintetizar la voz. En la figura 3 pueden verse representados los 3 primeros formantes de una señal de voz. - Los sonidos no sonoros tienen una estructura típica aleatoria, sin periodicidades marcadas en el dominio del tiempo y un espectro mucho más compensado en frecuencia (tiene un espectro de banda ancha). Su energía es mucho menor debido a la presencia de obstrucciones en el tracto vocal. Figura 4.- Tramo de señal de voz no sonoro en el tiempo y en la frecuencia - Un segmento que no es consecuencia de la actividad vocal se denomina como silencio. En telefonía, aproximadamente el 50 % del tiempo de conversación es silencio. Este hecho se utiliza en algunos sistemas celulares sin cables para 4

17 Introducción aumentar la eficiencia del ancho de banda del canal usando detectores de actividad vocal. De una forma sencilla, un sistema de producción de voz se puede modelar con un modelo de sistema-fuente, que es un sistema lineal alimentado por una fuente de excitación. En una aproximación de segundo orden, la excitación es un tren de pulsos para los segmentos sonoros y ruido blanco para los no sonoros. Periodo de pitch Generador de tren de impulsos Interruptor Sonoro/no Sonoro Filtro Señal de Salida Generador de ruido aleatorio Ganancia Figura 5.- Diagrama de bloques simplificado del modelo de producción de voz El periodo de cuasiperiodicidad de los segmentos sonoros se caracteriza por un periodo de pitch en el dominio del tiempo ó pitch ó frecuencia fundamental en el dominio de la frecuencia. Este pitch es un parámetro importante para algunos algoritmos de codificación de voz. Se puede identificar como la periodicidad de los picos de la amplitud en la forma de onda y la estructura fina del espectro. Las frecuencias de pitch de hombres y mujeres normalmente se encuentran en el rango Hz (4-0 ms) y Hz (-8,3 ms), respectivamente [Nadeu, 004]. El ancho de banda de la señal de voz rara vez excede de los 8 Hz. En codificación de voz para banda ancha, el ancho de banda está limitado a 7 Hz., y la voz es muestreada a 6 Hz. En telefonía, el ancho de banda está limitado a 4 Hz ( Hz, normalmente) y la voz es muestreada, generalmente, a 8 Hz. Como ejemplo, si se observan las figuras (en el dominio de la frecuencia) y 3, puede verse cómo los 3 primeros formantes están dentro del ancho del canal telefónico. A menos que la frecuencia fundamental quede fuera del canal telefónico el sistema de audición humano es capaz de reconstruirlo a partir de sus componentes armónicos. La calidad de la señal de voz codificada puede clasificarse, a grandes rasgos, en 4 categorías: BROADCAST calidad para comunicaciones en banda ancha, calidad TOLL o de red para señales analógicas (telefonía), de comunicación (señales degradadas pero naturales e inteligibles) y calidad sintética (señales poco naturales pero inteligibles, representadas por los codificadores lineales predictivos (LPC) o vocoders). 5

18 Introducción. Los codificadores de voz La compresión de la voz hace referencia a la representación compacta de las señales de voz. La codificación de la voz se refiere a la representación digital de las señales. Como el principal objetivo de la codificación de la voz es la compresión de la señal, es decir, reducir el número de bits necesarios para su representación, los dos términos, compresión y codificación de la voz, se pueden usar indistintamente. La codificación de las señales de voz se ha convertido en una de las áreas más importantes de la comunicación digital moderna durante las dos últimas décadas, sentando las bases para una nueva generación de servicios. Aplicaciones típicas de la codificación de la voz son la red convencional de telefonía, sistemas de comunicación personal sin cables y comunicaciones de seguridad militar. Sirva como ejemplo de esta importancia el papel que tiene en la vida de millones de personas la telefonía móvil. La transmisión y almacenamiento de señales de voz y audio ha tenido un enorme crecimiento debido a Internet y a las aplicaciones multimedia, como las videoconferencias, en las cuales tienen una importancia determinante. El desarrollo de microprocesadores y nuevos hardware para el procesamiento de señales impulsan nuevas ideas para las mejoras en el procesado de la voz. Por todas estas razones, la demanda de sistemas más rápidos, eficientes, fiables y de mejor calidad crece continuamente. Existe una gran variedad de técnicas de codificación de voz, muchas de ellas no normalizadas, que se emplean en muy diversos ámbitos. En la codificación de señales de voz el principal objetivo es lograr una alta calidad de percepción en la señal de voz reconstruida a un bajo coste. Estos costes están compuestos por varios elementos, como por ejemplo, la tasa de bit, la complejidad y la robustez frente a errores de transmisión. El peso sobre el coste final de cada uno de estos elementos depende la aplicación, aunque la tasa de bit y la tasa de compresión tienen una importancia fundamental, especialmente en la comunicación móvil. Los códecs de voz se diferencian de los de audio en que están optimizados para señales de voz. La voz humana es más sencilla de modelar que el audio genérico. Esto significa que la voz de alta calidad se puede codificar con métodos específicos mejor que el audio genérico. Por otro lado, los humanos son muy buenos detectando problemas en las señales voz de otros. Esto quiere decir que códecs de audio de calidad aceptablemente buena obtienen resultados bastante pobres con señales de voz, incluso con tasas de bit bastante elevadas. La señal de voz codificada se transmitirá o almacenará para una aplicación específica. A medida que el número de bits usados para la representación de la señal se reduce, el ancho de banda efectivo del canal de transmisión aumentará y el espacio de memoria se reducirá. Los diferentes algoritmos de codificación difieren en cómo seleccionar la señal y los parámetros para representar la voz eficientemente. Esas señales y/o parámetros elegidos son cuantizados y transmitidos al receptor para su decodificación. Dado el gran numero de aplicaciones que existen hoy en día, puede resultar complicado elegir el codificador de voz que mejor se adapte a cada una de ellas. 6

19 Introducción Aunque la mejor solución sería tener un codificador que se pudiera utilizar para cualquier tipo de aplicación, por lo general resulta más económico adaptar el codificador a la aplicación. En las comunicaciones digitales de las señales de voz, éstas están generalmente limitadas en banda por debajo de 4 Hz y muestreadas a 8 Hz. Lo más normal es que las muestras de voz se codifiquen en amplitud con un número de bits entre 8 y 6. La cuantización puede ser uniforme o no uniforme. La cuantización no uniforme puede usarse para tasas de bit bajas ya que la sensibilidad del oído humano es logarítmica. Ejemplos típicos de cuantización no uniforme son la ley A (A-law) usada en los sistemas de telecomunicaciones europeos y la ley µ (µ-law), usada en los sistemas de telecomunicaciones americano y japonés. La técnica de codificación más simple es la modulación por código pulsado (PCM). En base a ella se constituyó la primera recomendación en este campo de la ITU- T, la G.7, que especifica cuáles son las claves de 8 bits que se obtienen de la codificación logarítmica (siguiendo las leyes A y µ) de canales telefónicos digitalizados, con una frecuencia de muestreo de 8 Hz y una resolución de 8 bits por muestra. Da lugar a una tasa binaria de datos de 64 bit/s. El codificador consiste simplemente en un cuantizador de las amplitudes de las muestras. Esta técnica se introdujo en los años 70 en la red de telefonía de larga distancia [IEEE, Nov 996]. Una señal de voz codificada a 64 bit/s usando la técnica PCM logarítmica se considera que no está comprimida y a menudo se usa como referencia para comparaciones. Una técnica convencional de codificación es la ADPCM (Adaptive Differencial Pulse Code Modulation) trabajando a 3 bit/s. La calidad percibida en estos esquemas de codificación es denomina a menudo calidad toll ó calidad telefónica. Sofisticados métodos de codificación de voz que reducen la redundancia y eliminan información irrelevante de la señal han logrado alcanzar altas calidades con unas tasas de bit bajas. A tasas de bit entre 6 bit/s y 3 bit/s la codificación por predicción lineal (LPC) es la más usada para modelar la señal de voz. La codificación por predicción lineal basada en el análisis por síntesis puede usarse para aumentar la eficiencia en la cuantización de la señal de voz para tasas de codificación entre 4 bit/s y 6 bit/s. Un esquema de cuantización muy popular en la actualidad es el conocido como CELP (Code Excited Linear Prediction), basado en la codificación mediante análisis por síntesis y que fue introducido en 985. Los codificadores CELP usan tablas de códigos vectoriales para codificar la señal excitación. (El funcionamiento más detallado de este tipo de codificadores se estudiará más adelante). Uno de los factores clave de este progreso es el rápido desarrollo de las técnicas de compresión de señales. Estas técnicas pueden ser con pérdidas o sin pérdidas. En codificaciones sin pérdidas, la señal puede reconstruirse perfectamente. Sin embargo, la tasa de compresión alcanzada en este tipo de compresión es pequeña para la demanda actual. Por tanto, son las técnicas de compresión con pérdidas las que más se usan. El objetivo es minimizar la distorsión ó error entre la señal original y la señal reconstruida. La cuantificación vectorial (VQ) es uno de los métodos de codificación con pérdidas más potentes. Una de las aplicaciones más frecuentes de la cuantificación vectorial es la cuantificación del espectro de la señal. El problema ha sido muy estudiado y desarrollado durante las últimas décadas. La cuantificación vectorial se ha 7

20 Introducción demostrado como eficiente para la codificación de los parámetros LPC y, por ello, es ampliamente usada en los codificadores de voz modernos. A pesar de los progresos, la transmisión de los parámetros del espectro requiere entre y bit/s, que es una importante parte del total de la tasa de bit para codificadores con baja tasa de bit. A pesar de que los precios de procesadores, memoria, etc. han disminuido en los últimos años y la velocidad de procesado ha aumentado, la importancia de la codificación y compresión de la voz no ha disminuido debido a la continua demanda del mercado de un uso más eficiente de los recursos hardware. Por ejemplo, las señales multimedia están formadas por un conjunto de diferentes señales que pueden presentarse secuencial o simultáneamente. Por tanto, la transmisión de señales de voz codificadas para aplicaciones multimedia implica que se debe compartir el canal con otras señales, de ahí el interés por perfeccionar los métodos de codificación... Propiedades de los codificadores de voz La calidad de la voz generada a partir de un codificador está en función de la tasa de bit, la complejidad, el retraso y el ancho de banda del mismo; factores que habrá que tener muy presentes a la hora de confeccionar cualquier codificador de voz. Es importante darse cuenta de la fuerte interrelación que existe entre estos factores, siendo necesario, en muchas ocasiones, aceptar la degradación de uno o varios de ellos para conseguir la mejora de otro. Por ejemplo, los codificadores con una tasa de bit baja suelen tener un mayor retraso que los codificadores con una tasa de bit más alta. Además también suelen requerir una mayor complejidad y normalmente tienen peor calidad. Otros factores que influyen en la elección de un codificador son la disponibilidad del mismo y las condiciones de la licencia, o la manera en que está definido el estándar, ya que algunos sólo se describen como un algoritmo, mientras que otros tienen un código completo para su utilización. A continuación se verán cada uno de los factores de interés para los codificadores por separado [Cox y Kroon, 996]:... Tasa de bit Desde el momento en que los codificadores de voz comenzaron a compartir el canal con otro tipo de información, se hizo necesaria la utilización de la menor tasa de bit posible para no usar una parte excesiva del canal. Muchos codificadores trabajan a una tasa de bit fija, independientemente de las características de la señal de entrada, pero a la hora de compartir el canal con otro tipo de información es mejor hacer codificadores de tasa variable. Para aplicaciones que usan simultáneamente voz y datos se puede optar por usar un esquema de compresión de silencios como parte del estándar del código. Una solución bastante común es usar una tasa de bit fija cuando hay actividad vocal y una tasa baja para el ruido de fondo. La compresión de silencios consiste en dos algoritmos. Por una lado un detector de actividad vocal (VAD; Voice Activity Detector), que determina si la señal de entrada 8

21 Introducción es realmente voz o ruido de fondo. Si el detector determina que la señal es vocal, se codifica a la tasa de bit fija. Por el contrario, si determina que es ruido lo codifica con una tasa de bit baja. Incluso hay veces en que no se transmite ningún bit. El segundo algoritmo es un generador de ruido (CNG; Comfort Noise Generation), que se usa en el receptor para reconstruir las principales características del ruido de fondo. Se usa esta señal de ruido, denominado comfort noise debido a que los oyentes prefieren un nivel bajo de ruido que el silencio. Obviamente la actuación del detector de voz es crítica para la calidad de la transmisión.... Retraso Uno de los aspectos de diseño más importantes a la hora de implementar la voz es minimizar el retraso de extremo a extremo. El retraso es inherente a las redes de voz y es causado por el número de factores diferentes que intervienen en ellas. El retraso en un sistema de codificación de voz normalmente está formado por tres retrasos: - Retraso algorítmico.- Muchos de los codificadores de voz con una tasa de bit baja procesan las tramas una a una. Los parámetros de la señal son actualizados y transmitidos para cada trama. Además, para analizar la información correctamente, a veces es necesario analizarla más allá de los límites de la trama. Este proceso se califica como procesado hacia delante. Esto significa que antes de analizar la señal de voz, es necesario almacenar una serie de información. El retraso que se tiene como consecuencia de esto recibe el nombre de retraso algorítmico. Este retraso es la única componente del retraso total que no se puede reducir cambiando la implementación. Los demás retrasos sí dependen de la implementación. Como este retraso algorítmico es inevitable para sistemas prácticos, debe ser tenido muy en cuenta al analizar los objetivos de retraso. - Retraso debido al procesamiento.- Tiempo que emplea el codificador en analizar la señal de voz y el decodificador en reconstruirla. Depende de la velocidad del hardware con el que se implemente el codificador. - Retraso de la comunicación.- Tiempo que necesita una trama de información para transmitirse desde el codificador al decodificador. La suma de estos tres retrasos se denomina retraso del sistema en un sentido (one-way system delay). También se le conoce como latencia del códec. Valores máximos de hasta 400 ms pueden ser admisibles si no hay ecos, aunque es preferible que este retraso esté por debajo de los 00 ms. Si hay ecos, el máximo tolerable baja hasta los 5 ms. De ahí el frecuente uso de canceladores de eco. Una latencia de 500 ms para el recorrido completo es virtualmente inutilizable para una conversación de voz [Spanias, 994]. 9

22 Introducción Si se calculan las latencias para tres códecs diferentes se obtiene lo siguiente: Figura 6.- Comparación de la latencia para tres códec diferentes Se observa cómo el retraso en el códec es el que marca la diferencia entre los tres. Los códecs con tasas de bit más bajas tienden a tener latencias mayores al ser sus algoritmos más complejos. De ahí que el que menor latencia tenga (8 ms) sea el de la recomendación G.7, que emplea la modulación PCM, teniendo una tasa de bit de 64 bit/s. A continuación está el de la recomendación G.79, con una tasa de bit de 8 bit/s, con una latencia de 90 ms y, por último, el de la recomendación G.73, con una tasa de bit de 5,3 bit/s y una latencia de 0 ms [Lew, 005]. Esta comparación se ha realizado tomando como referencia una red IP, de ahí la inclusión de los retraso de cola, tiempo desde que llega la trama o paquete hasta que se procesa y el jitter, que representa el grado de variabilidad que hay en la transmisión (tráfico de la red, número de fuentes ). En muchas aplicaciones, como por ejemplo las teleconferencias, donde cada persona puede escuchar a todas las demás, es necesario decodificar cada una de las cadenas de bit, sumar las señales decodificadas y volver a codificar la señal suma. Esto hace que los retrasos se sumen, reduciendo, además, la calidad de la señal, debido a las múltiples codificaciones. En sistemas en cascada el máximo retraso tolerable para cada sistema individual es menor, ya que al unirlos, los retrasos se suman....3 Complejidad Los codificadores de voz se implementan normalmente sobre un hardware con un propósito específico, como los chips de procesamiento digital de señales (DSP; 0

23 Introducción Digital Signal Processor). Sus características se pueden medir en función de la velocidad computacional, medida en millones de instrucciones por segundo (MIPS), la memoria RAM (Random Access Memory) y la memoria ROM (Read Only Memory). A la hora de hacer un codificador de voz para cualquier aplicación, el diseñador debe decidir qué cantidad de estos recursos consume. Los codificadores que requieren menos de 5 MIPS se consideran de baja complejidad, mientras que si requieren 30 MIPS o más se consideran de complejidad alta. El requerir más o menos memoria RAM ó ROM conlleva que el chip resulte más o menos caro. Desde el punto de vista del diseñador una mayor complejidad conlleva un mayor coste y una mayor necesidad de consumo de potencia. Para aplicaciones portátiles, un mayor consumo de potencia implica la reducción del tiempo entre recargas, o el uso de baterías más grandes, lo que significaría mayor coste y peso. De aquí la importancia de la complejidad del codificador....4 Calidad Una de las cosas más importantes es ver cómo de bien se escucha la señal codificada en presencia de condiciones ideales (señal de voz limpia, sin errores de transmisión y una única codificación). En la figura 7 se representa la relación entre la tasa de bit y la calidad de una señal de voz codificada una vez y sin ruido de fondo para los tres tipos de codificadores de voz más extendidos. Figura 7.- Relación tasa de bit-calidad para los diferentes tipos de codificador En la figura puede observarse cómo a medida que se disminuye la tasa de bit del codificador, disminuye la calidad de la señal de voz, aunque en la actualidad se puede disponer de codificadores con una tasa de bit bastante baja y una calidad casi equiparable a la de otros codificadores con tasas superiores [Janssen y Slump, 00].

24 Introducción Cada códec proporciona una cierta calidad de voz. La calidad de la voz transmitida es una respuesta subjetiva del oyente. Una medida común de referencia usada para determinar la calidad del sonido producido por códecs específicos es la Mean Opinión Store (MOS). En este test, un amplio grupo de oyentes juzgan la calidad de la muestra de voz, es decir, los oyentes califican de (malo) a 5 (excelente) una frase codificada mediante un códec determinado. Los resultados son promediados para dar el valor MOS para la muestra. Un valor de 4 o superior se considera calidad perfecta o calidad toll, que viene a decir que la señal de voz reconstruida no se puede prácticamente distinguir de la señal de voz original. MOS Calidad Clasificación de la voz Mala Pobre 3 Media 4 Buena 5 Excelente Voz artificial Comunicaciones Red digital mejorada Transparente Tabla.- Medida subjetiva de la calidad de la voz A la hora de elegir codificador es fundamental adaptarlo a la finalidad para la que se va a emplear. Uno de los principales inconvenientes es la distorsión de la señal debido a las múltiples codificaciones (llamadas codificaciones tándem). Por ejemplo, cuando una señal de voz G.79 es codificada tándem 3 veces, el valor MOS baja de 3,9 (buena) a,68 (inaceptable para la comunicación)... Tipos de algoritmos de codificación de voz Los distintos algoritmos de codificación tratan de eliminar la redundancia de la señal y así poder reducir al mínimo el número de bits usados para codificar cada muestra. Un método de codificación se evalúa con las siguientes características: - Velocidad de transmisión ( bit rate ) - Calidad de la voz reconstruida. - Complejidad de la implementación - Retardo introducido - Robustez ante la aparición de errores en el canal o interferencias acústicas. Los codificadores de voz se pueden encuadrar dentro de tres grandes categorías: codificadores de forma de onda, vocoders y codificadores híbridos. Los codificadores de forma de onda intentan aproximar directamente la forma de onda de la señal original. La señal reconstruida puede o no parecerse a la señal original. Los vocoders, por su parte, intentan aproximar el sonido, por lo que la forma de onda de la señal reconstruida

25 Introducción puede o no parecerse a la original. A los codificadores que emplean propiedades de los codificadores de forma de onda y vocoders se les llama codificadores híbridos. A continuación se muestra una clasificación de los codificadores [Koo, 00]. Tipo Codificadores de forma de onda Codificadores híbridos Vocoders Algoritmo de codificación PCM (Pulse-Code Modulation), APCM (Adaptive PCM) DPCM (Differential PCM), ADPCM (Adaptive DPCM) DM (Delta Modulation), ADM (Adaptive DM) CVSD (Continuously Variable-Slope DM) APC (Adaptive Predictive Coding) SBC (Subband Coding) ATC (Adaptive Transform Coding) MPLP (Multipulse-Excited Linear Prediction) RPE (Regular Pulse-Excited linear prediction) RELP (Residual-Excited Linear Prediction) VSELP (Vector-Sum Excited Linear Prediction) CELP (Code-Excited Linear Prediction) ACELP (Algebraic CELP) CS-ACELP (Conjugated Structure ACELP) Canal, Formante, Fase, Cepstral o Homomórfico LPC (Linear Predictive Coding) MELP (Mixed-Excitation Linear Prediction) STC (Sinusoidal Transform Coding) MBE (Multiband Excitation), MBE mejorada Tabla.- Clasificación de los codificadores más importantes... Codificadores de forma de onda La base de los codificadores de forma de onda es que la envolvente de la señal reconstruida se parezca lo máximo posible a la de la señal original, sin ningún tipo de información sobre cómo se generó la señal a codificar. Por lo tanto, en teoría, este tipo de decodificadores deberían ser independientes de la señal de entrada y trabajar para todo tipo de señales, tanto vocales como no vocales. Los codificadores de forma de onda producen una buena calidad de la señal de voz con tasas de bit alrededor de 6 bit/s, presentando una degradación aceptable en presencia de ruido y errores de transmisión. Sin embargo, al disminuir la tasa de bit por debajo de 6 bit/s, la calidad de la señal se deteriora rápidamente. Para obtener la misma calidad que los vocoder necesitan trabajar con tasas de bit superiores a éstos. Hay dos tipos de codificadores de forma de onda, que son: - Codificadores en el dominio del tiempo. Existen distintas técnicas de codificación según la forma de transmisión de la información de la señal digital. Se puede transmitir en la amplitud de los pulsos (PAM, Pulse Amplitude Modulation), en la posición (PPM, Pulse Position Modulation), en la anchura (PWM, Pulse Width Modulation), etc. La técnica más ampliamente utilizada es la conocida como modulación por código pulsado, PCM (Pulse Code 3

26 Introducción Modulation), en la que se realiza un muestreo y cuantización de la señal de entrada, es decir de la señal de voz original. Otras técnicas muy usadas se basan en que existe una considerable correlación entre muestras adyacentes y lo que se transmite es la diferencia respecto a la muestra anterior. Se predice la siguiente muestra a partir de la anterior. Pueden ser DPCM (Differential Pulse Code Modulation) y ADPCM (Adaptative Differential Pulse Code Modulation). A este tipo de codificadores que emplean predictores se les denomina codificadores predictivos. - Codificación en el dominio de la frecuencia. Puede ser a su vez por sub-banda y por transformada. Para el caso de sub-banda se divide la señal en un número de componentes en frecuencias separadas y se codifican independientemente. El número de bits asignados a cada banda depende de su importancia espectral. Generalmente en el caso de la voz, se usan más bits para las frecuencias bajas con el fin de preservar el pitch y la información de los formantes. Por otra parte, la codificación de la forma de onda en el dominio de la frecuencia por transformada consiste en una transformación por bloques, de forma que se realiza una transformación a un dominio diferente y se codifican los coeficientes de la transformación. Esta forma de codificación es muy compleja, y como ejemplos se tienen las técnicas DCT (Discrete Cosine Transform) y DFT (Discrete Fourier Transform).... Vocoders Los vocoders (Voice Coders) intentan generar una señal de voz que suene igual que la original, independientemente de si la forma de onda se parece o no. En el emisor se analizan la señal de voz y se extraen los parámetros del modelo y la excitación. Estos parámetros son cuantizados y transmitidos al receptor, donde la señal de voz se reconstruye en base a ellos. Por esta razón, a los vocoders también se les llama codificadores paramétricos. Los vocoders pueden, por norma general, conseguir una mayor compresión de la voz que los codificadores de forma de onda, sin embargo, se les reconoce por la calidad artificial o innatural de la voz que generan, excepto por las recientes mejoras efectuadas en algunos, como por ejemplo el MELP. El vocoder más utilizado es el de predicción lineal LPC (Linear Predictive Code), que supone que cada muestra puede obtenerse a partir de una combinación lineal de las anteriores, aceptándose un filtro todo polo para modelar el tracto vocal. La expresión para realizar la decodificación sería la siguiente: s n = p = a s n (.) donde s n es la muestra actual, s n- son las muestras precedentes, a son los coeficientes del filtro, que se calculan para minimizar el error de la muestra actual y su predicción, y p es el orden del filtro. 4

27 Introducción El método LPC ha sido empleado desde hace mucho tiempo. La compañía Texas Instruments desarrolló un circuito integrado PMOS monolítico con un sintetizador de voz allá por el año 978 [Ozun et al., 00]. Este hecho constituyó la primera vez que el tracto vocal humano era duplicado electrónicamente en un solo chip de silicona. Este primer sintetizador de voz se basó en el análisis LPC para realizar la síntesis con éxito. Permite codificar la voz con tasas de bits bajas. Para un LPC de orden 0 la tasa de bit ronda los,4 bit/s. Aunque el método da como resultado una señal de voz que suena artificial, es inteligible. Este método tiene extensos usos en aplicaciones militares, donde una calidad alta de la voz no es tan importante como una tasa baja de bit para permitir una fuerte encriptación de la información. Sin embargo, el mercado comercial requiere una alta calidad de la señal de voz y se han buscado otras técnicas para mejorarla, que normalmente incluyen un aumento de la tasa de bit....3 Codificadores híbridos Los codificadores híbridos son una mezcla de los dos tipos anteriores, mezclando la alta capacidad de compresión de los vocoders con la gran calidad de reproducción de los codificadores de forma de onda. Producen una señal de buena calidad con tasas de bit medias o bajas. Utilizan un modelo paramétrico de producción de voz y tratan de preservar las partes más importantes, perceptualmente hablando, de la forma de onda de la señal de entrada. Existen varios tipos: - RELP (Residual Excited Linear Prediction). Cuando la señal de voz se pasa a través de un predictor lineal se elimina la correlación entre tramas. Si la predicción es bastante buena, la salida del predictor será aproximadamente ruido blanco, espectralmente plano. El residuo contiene toda la información de excitación y cualquier información que el filtro LPC no considera (fase, información de pitch, nasalidad, etc.). La idea del RELP es que una pequeña parte del residuo se transmite y a partir de él se reconstruye el residuo completo en el receptor. Aunque el concepto de codificación residual se usa también en ADPCM, RELP es diferente en el hecho de que la codificación del residuo se basa en el espectro en lugar de en la forma de onda. RELP opera en el rango de 6 a 9,6 bit/s. - MPLP (Multi_Pulse Linear Prediction). Los vocoders clasifican los sonidos en sonoros y no sonoros, pero no consideran una mezcla de ambos, por lo que su calidad es baja. Para solucionar este problema se utiliza el codificador multipulso. El período de pitch produce una correlación de retardo largo que no se elimina con el filtro LPC. Esta correlación puede hacerse desaparecer usando un segundo predictor lineal, llamado predictor de pitch o filtro de pitch, cuya expresión es la siguiente: P ( z ) = β (.) i z M i i 5

28 Introducción donde β i son los coeficientes del filtro, M es el factor que tiene en cuenta el retardo de término largo e i varía entre uno y el orden del filtro. La salida de este predictor es aproximadamente ruido gaussiano. En este codificador se pasa a los dos filtros una serie de impulsos (entre cuatro y seis) como excitación. Las posiciones y amplitudes se determinan usando un procedimiento de análisis por síntesis, consistente en elegir el conjunto de impulsos que produce el menor error entre la señal original y la reconstruida a partir de ellos. La calidad de los codificadores MPLP es muy buena a partir de tasas de bit de 9,6 bit/s. Una variación del codificador MPLP consiste en elegir como secuencia de excitación patrones de pulsos regularmente espaciados. Es el codificador llamado RPE (Regular Pulse Excitation), que es usado en GSM. Un factor típico de espaciado de los pulsos es 3-4, siendo actualizada la posición del primer pulso cada 5 ms. El número de pulsos existentes cada 5 ms es del orden de 0-3, obteniéndose sus amplitudes mediante la resolución de un conjunto de ecuaciones lineales. - CELP (Code Excited Linear Prediction). En este codificador la secuencia de excitación del filtro de pitch se elige de lo que se conoce como diccionario. El diccionario está formado por un conjunto de secuencias de ruido blanco gaussiano, cada una identificada por un índice dentro del mismo. Se realiza un proceso de análisis por síntesis para determinar la secuencia de ruido y las ganancias óptimas. Al receptor, por tanto, sólo se le envía el índice del diccionario y la ganancia. Este tipo de codificadores consigue buena calidad de voz a 4,8 bit/s, aunque presenta el inconveniente de que la búsqueda en el diccionario requiere mucha carga computacional....4 Otros codificadores Existen otros tipos de codificadores con diferentes métodos de codificación, como por ejemplo, los codificadores de subbanda, donde la señal de entrada se filtra a través de un banco de filtros sintonizados a diferente frecuencia. Este tipo de codificadores no son muy usados para codificar voz, ya que es muy difícil obtener una buena calidad de la voz con una tasa de bits relativamente baja. De ahí que sólo se emplee para aplicaciones de codificación de voz con tasas de bits medias o altas....5 Sistemas de codificación usados en la práctica Los sistemas de codificación más utilizados en la práctica para las diferentes redes existentes son [Gómez et al., 00]: 6

29 Introducción...5. Red GSM - Codificación Half Rate (5,6 bit/s). - Codificación Enhace Full Rate (, bit/s). - Codificación Full Rate (3 bit/s) Red UMTS Se utiliza la codificación Adaptative Multi Rate (AMR) (variable de, bit/s a 4,75 bit/s). Este codificador se va a usar en los servicios móviles de tercera generación denominados IMT-000 (en telecomunicaciones móviles internacionales). Dentro de este sistema se encuentra el estándar europeo denominado UMTS (Sistema Universal de Telecomunicaciones Móviles) que utiliza este codificador Red telefónica fija Codificación Ley-A para telefonía fija, norma G.7 (64 bit/s) Internet (voz sobre IP, VoIP) - Codificación G.7 (64 bit/s) - Codificación G.7 (ADPCM, 64 bit/s) - Codificación G.78 (6 bit/s) - Codificación G.79 (8 bit/s) - Codificación G.73. (5,3 bit/s y 6,3 bit/s) Por último, se presenta una tabla comparativa de los estándares y codificaciones más utilizados, comparando las características más importantes de cada uno de ellos [Wong et al., 996]: 7

30 Introducción Standard Año Tipo de código Tasa de bit (bit/s) MOS Retraso alg. (ms) ITU-G.7 97 PCM ITU-G ADPCM ITU-G VBR-ADPCM 6, 4, 3 y 40.0, 3., 4.0 y ITU-G Embedded-ADPCM 6, 4, 3 y ITU-G LD-CELP Inmarsat-B APC 9.6/6 Comunicación 0 GSM Full-rate 989 LTP-RPE GSM-EFR 995 ACELP Syphone 989 BT-MPLPC DAMPS Full-rate IS54 99 VSELP ITU-G CS-ACELP IS Qualcomm CELP,, 4 y JDC Japanese Full-rate VSELP 6.7 Comunicación 0 GSM Half-rate 994 VSELP ITU-G A/MP-MLQ CELP 5.7/6.3 Comunicación 37.5 American DOD FS CELP TETRA 994 ACELP 4.56 Comunicación 35 Inmarsat-M 990 IMBE JDC Japanese Half-rate 993 PSI-CELP 3.45 Comunicación 40 American DOD FS LPC-0.4 sintética.5 (mínimo) Tabla 3.- Comparación de estándares más usados 8

31 Revisión teórica Revisión teórica. Codificación de voz mediante predicción lineal.. Introducción Muchos de los modernos codificadores de señales de voz (entre ellos el codificador objeto de este estudio) están basados en un modelo de filtro fuente de producción de voz en los seres humanos. En dichos códigos un filtro de síntesis, que modela a grandes rasgos el tracto vocal humano, es atravesado por una señal de excitación, que esencialmente modela el flujo de aire a través de las cuerdas vocales. El filtro de síntesis se puede modelar usando predicción lineal. La tasa a la que la forma del tracto vocal cambia está limitada, y normalmente una actualización cada 50 Hz es suficiente para que el modelo dé resultados aceptables. Por ello, el análisis LP se realiza generalmente una vez cada trama de 0 ms, es decir, si se trabaja con una frecuencia de muestreo de 8000 Hz, las ventanas serían de 60 muestras. Este enventanado, necesario para el cálculo por bloques ó tramas de los parámetros LP, es el responsable del retardo que introducen estos esquemas de codificación en la transmisión de la señal de voz. Por ello, casi todos los esquemas de codificación mediante predicción lineal utilizan ventanas asimétricas que evitan el aumento de ese retardo. 9

32 Revisión teórica Figura 8.- División de una señal vocal en tramas Antes de poder extraer los parámetros de una señal de voz, es necesario tener un modelo teórico del análisis a realizar. En el procesado de voz se usa un modelo de filtro fuente de producción de voz. Un diagrama de bloques simplificado se muestra en la figura 9. En este modelo, la señal de excitación se modela, bien como un tren de pulsos, para señales sonoras, bien como ruido aleatorio, para señales no sonoras. Las contribuciones espectrales combinadas de la glotis, el tracto vocal y de la posición de los labios se representa mediante un filtro digital variante en el tiempo. Periodo de pitch Coeficientes LPC Generador de tren de impulsos Generador de ruido aleatorio Interruptor Sonoro/no Sonoro Ganancia Filtro variante en el tiempo Señal de Salida Figura 9.- Diagrama de bloques del modelo simplificado de producción de voz A continuación puede verse cómo sería todo el proceso gráficamente, tanto para una señal sonora, a partir de un tren de pulsos, (figura 0) como para una señal no sonora, a partir de una señal aleatoria (figura ): 0

33 Revisión teórica Figura 0.- Representación gráfica de una señal sonora al atravesar el diagrama de producción de voz en el espacio del tiempo y la frecuencia. En primer lugar, el tren de pulsos, después el filtro LP (variante en el tiempo) y por último el resultado de pasar el tren de pulsos por el filtro, que sería la señal de voz Figura.- Representación gráfica de una señal no sonora al atravesar el diagrama de producción de voz en el espacio del tiempo y la frecuencia. En primer lugar, una señal aleatoria, después el filtro LP (variante en el tiempo) y por último el resultado de pasar la señal aleatorias por el filtro, que sería la señal de voz

34 Revisión teórica.. Desarrollo matemático La idea básica del análisis mediante predicción lineal es que la muestra de voz actual se puede aproximar por una combinación lineal de las p muestras anteriores, esto es [Kondoz, 994]: donde s(n) y ( n) p ~ s (.) ( n) = a s( n ) = s~ son la muestra de voz original y la muestra de voz predicha en el instante de tiempo discreto n, p es el orden del análisis y a,, a p son los coeficientes de predicción lineal ó coeficientes LPC. El orden p del sistema se elige de forma que la estimación de la envolvente del espectro sea adecuada. Una regla común es permitir un par de polos para cada formante del espectro. Para una señal muestreada a 8 Hz, el valor de p suele ser 0. La función de transferencia H(z) del modelo de predicción lineal de la señal de voz se conoce como filtro de predicción lineal ó filtro todo polo de la señal, y es G H ( z) = (.) A ( z) donde G es la ganancia y el filtro A(z) se conoce como el filtro inverso ó blanqueador de H(z), definido como A p a z (.3) ( z) = = Los coeficientes LPC se pueden resolver usando, por ejemplo, el método de autocorrelación. Este método da lugar a una matriz de autocorrelación que tiene una estructura de Toeplitz y, de esta forma, los coeficientes LPC se pueden resolver a través de algoritmos computacionalmente rápidos como el de Levinson-Durbin. Se resolvería como sigue: Si se pasa la ecuación (.3) al dominio del tiempo (muestral), se obtiene una ecuación conocida como ecuación LPC diferencial: H ( z) = ~ S S ( z) ( z) ~ s ( n) = s( n) + a s ( n ) p = ~ (.4) Si se considera una estimación de los parámetros a, el error ó residuo del sistema viene dado por: e ( n) = s( n) s ( n) = s( n) a s( n j) p ~ (.5) j= donde los parámetros a j son las estimaciones de los coeficientes del filtro LPC, a. j

35 Revisión teórica Es posible determinar esas estimaciones de los coeficientes del filtro, minimizando el error cuadrático medio, que se obtiene a partir del error dado en la ecuación (.5). E = Ε p p { e ( n) } = Ε s( n) a s( n j) = s( n) a s( n j) j j= n j= j (.6) Para minimizar este error cuadrático medio se calcula la derivada parcial de E respecto a a i y se iguala a cero para valores de i desde i =,., p. E a i = Ε s p ( n) a s( n j) s( n i) = 0 para i =,..., p j= j (.7) Las representaciones de la señal de voz original y del error de predicción lineal pueden verse en las figuras y 3. Se puede apreciar cómo se ha eliminado gran parte de la redundancia de la señal, si bien todavía se aprecia una cierta periodicidad. En el dominio de la frecuencia puede verse que el espectro es más plano que el original. Figura.- Señal de voz original y error de predicción lineal en el tiempo Figura 3. Señal de voz original y error de predicción lineal en la frecuencia 3

36 Revisión teórica Esta igualdad implica que la señal error, e(n), y la señal de salida, s ( n), son ortogonales para i =,, p. Se puede rescribir la ecuación, introduciendo la correlación, φ φ n n ( i,0) = Ε[ s( n) s( n i) ] = s( n) s( n i) y ( i, j) = Ε[ s( n j) s( n i) ] = s( n j) s( n i) (.8) y, sustituyendo en la ecuación (.7) p j= ( i, j) = φ ( i,0) para i = p a j φ n n,..., (.9) Si se asume que la señal del modelo es estacionaria, lo cual viene a ser una aproximación realista para segmentos de voz pequeños, se pueden acotar los sumatorios al calcular la correlación. ( i, j) = E{ s( n i) s( n j) } = s ( m i) s ( m j), φ n n n para i =,..., p, j = 0,..., p (.0) m Para resolverlo se usará la aproximación del método de autocorrelación, anteriormente comentada, ya que es el más empleado y el que se usará a la hora de implementar el codificador. Si se toma un segmento de la señal, fuera del intervalo comprendido por el segmento que se está analizando, 0 m L-, los valores serán 0. (L es el tamaño de la trama del análisis LPC). Como se intenta predecir los valores de las muestras L m L+p, que son cero para el segmento actual, el error de predicción no será cero para esas muestras. Igualmente, el principio de la trama actual puede verse afectado, por la misma razón, por los errores en la trama anterior. Si tenemos en cuenta que lo que se quiere es predecir las tramas futuras, los límites de la ecuación (.0) pueden ponerse de la siguiente manera: L p = + ( i, j) s( n i) s( n j), i p, 0 j p φ (.) n= 0 Tomando m = n i, la ecuación se puede expresar como L ( i ) ( i, j) = s( m) s( m + i j) φ (.) m= 0 Por lo tanto, φ ( i, j) es la autocorrelación de corto plazo de ( m) ( i j). Esto es: s evaluada para donde ( i, j) = R( i j) φ (.3) 4

37 Revisión teórica 5 ( ) ( ) ( ) ( ) ( ) = = = + = j L n L j n j n s n s j n s n s j R 0 (.4) Por lo tanto, el conjunto de p ecuaciones de (.9) se puede expresar como ( ) ( ) = = = p j j p i i R j i R a,...,, (.5) La ecuación de arriba se expresa en forma matricial ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) = ) ( (3) () () p R R R R a a a a R p R p R p R p R R R R p R R R R p R R R R p M M L M O M M M L L L (.6) La matriz pxp de los valores de la autocorrelación es una matriz simétrica de Toepliz, es decir, todos los elementos de cada una de las diagonales son iguales. Esta propiedad especial puede ayudarnos a obtener un algoritmo eficiente para solucionar la ecuación (.6). La solución más eficiente es un método recursivo conocido como algoritmo de Levinson-Durbin, que es el siguiente: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) 0 0 = = = = = = = = i E i E a a a i hasta j Desde a i E j i R a i R p hasta i Desde R E i i j i i i j i j i i i i j i j i (.7) La solución final viene dada como: ( ) p j a a p j j, =,... = (.8) La cantidad ( ) i E del algoritmo es el error de predicción de un predictor de orden i. Las cantidades intermedias i se conocen como coeficientes de reflexión. Los valores de los coeficientes de reflexión están en el rango: i (.9)

38 Revisión teórica Esta condición impuesta a los coeficientes de reflexión es suficiente para que A z estén dentro del círculo unidad, garantizando de todas las raíces del polinomio ( ) esta manera la estabilidad del sistema H ( z). Existen otros métodos para la resolución de la ecuación (.4) como son: el método de la covarianza, donde se minimiza el error E de la ecuación (.6) sobre un intervalo finito; el método lattice de covarianza, que calcula los coeficientes de reflexión directamente de las muestras de la señal. La cuantificación y transmisión de los parámetros LP debe hacerse asegurando tanto la estabilidad del filtro de síntesis (para evitar generar ruidos de alta intensidad en el receptor), como la facilidad en la interpolación entre parámetros de tramas consecutivas (que permite aumentar la naturalidad de la voz decodificada). Ambas condiciones se obtienen recurriendo al uso de parámetros LP equivalentes, como son los Logaritmos de las Relaciones de Área (LAR) ó los Pares de Línea Espectrales (Line- Spectrum Frecuencias, LSF). Son estos últimos, los coeficientes LSF, los que se utilizan en todos los estándares posteriores al GSM 6.0 (Full Rate, FR), ya que aportan ventajas algorítmicas claras para ser cuantizados vectorialmente y, de esta forma, permiten reducir la tasa binaria necesaria para su transmisión, sin introducir degradaciones perceptibles en la voz decodificada. Casi todos los estándares de codificación de voz que se han aprobado en los últimos años se basan en la codificación mediante la predicción lineal, basada en el análisis por síntesis. Dentro de este tipo de codificadores podemos incluir a los de las recomendaciones de la ITU G.79 (que se ampliará más adelante), G.78 y G.73.; y todos los estándares que se emplean actualmente en la tecnología digital celular, tanto en Europa (GSM full-rate, half-rate y enhanced full-rate), Norteamérica (full-rate y enhanced full-rate para sistemas por división en el tiempo (TDMA), o por división en células (CDMA)) y Japón (full-rate y half-rate) [Gutiérrez et al.,00]. 6

39 Revisión teórica. Coeficientes LSF.. Definición y características El principal objetivo del proceso de cuantización de los coeficientes LPC es su codificación con el menor número de bits posibles sin introducir distorsión adicional en su espectro. Desde los inicios de la codificación de las señales de voz se han empleado varios métodos de cuantización para los coeficientes LP. Se han establecido una serie de características que debe cumplir una representación ideal. En primer lugar, es necesario que el filtro de predicción lineal permanezca estable después de la cuantización. Segundo, la representación debe ser reversible de forma que el filtro original se pueda recuperar de la transformación. Tercero, un pequeño error en los parámetros se debe corresponder con una pequeña desviación del espectro de potencia LP, es decir, los parámetros deben tener sensibilidad espectral propia. A lo largo de los años se han propuesto diversas representaciones desde los primeros estudios sobre representaciones alternativas para los coeficientes de predicción lineal allá por finales de los setenta. Uno de los primeros estudios, realizado por Gray et al. en 977 comparaba los coeficientes de reflexión, los coeficientes LAR (Logarithmic Area Ratio) y el arcocoseno de los coeficientes de reflexión, y demostraba que los dos últimos eran igualmente buenos para la cuantización, mientras que los coeficientes de reflexión daban resultados ligeramente más pobres. A partir de los años 80 el método de parametrización más empleado para la cuantización de los parámetros del filtro LP es la representación mediante coeficientes de pares del espectro en frecuencia (LSF) que, debido a sus propiedades, ofrece más ventajas que las representaciones anteriormente comentadas, tanto para la cuantización escalar como para la vectorial. Según diversos estudios puede llegar a reducir la tasa de bit entre un 5 y un 30 % con respecto a las demás [Zheng et al., 999]. La representación mediante pares del espectro de frecuencia (LSF), también conocida como representación mediante pares del espectro lineal (LSP), dependiendo del dominio en el que se trabaje, fue propuesta por Itaura [Itaura, 975] como una representación paramétrica alternativa de los coeficientes de predicción lineal. La representación LSF, tiene numerosas cualidades, entre las que destacan un rango limitado, un orden secuencial de los parámetros y una simple revisión de la estabilidad del filtro, lo que la hace interesante para la cuantización. Además, la representación LSF es una representación en el dominio de la frecuencia y, por lo tanto, puede usarse para explotar propiedades de los sistemas de percepción humana. Puede comprobarse que de dos a tres parámetros LSF caracterizan la frecuencia de un formante y que el ancho de banda de éste depende de la cercanía de los correspondientes parámetros LSF. Por otro lado, los parámetros LSF aislados afectan a la caída ó inclinación del espectro. Este comportamiento puede verse en la figura 4. 7

40 Revisión teórica Figura 4.- Espectro de frecuencia de un tramo de voz con la posición de los coeficientes LSF Los coeficientes LSF son 47, 735, 88, 98, 343, 70, 40, 654, 3047 y 3409 Hz Otro detalle a destacar es que durante los fonemas sonoros los parámetros LSF varían solo ligeramente, sin embargo, durante los fonemas sordos pueden variar rápidamente. Es más, durante los cambios de fonemas sordos a sonoros ó de sonoros a sordos puede haber cambios considerables en el espectro. Incluso durante los silencios entre fonemas los parámetros LSF varían considerablemente. Resumiendo, tanto el espectro de la señal de voz como los parámetros LSF tienen partes redundantes, junto con partes impredecibles y que cambian rápidamente. Este fenómeno se observa principalmente en los parámetros LSF más bajos, que se mantienen más o menos en el mismo estado durante cientos de milisegundos y de repente cambian a otros. Sin embargo, hay que tener en cuenta que estos fenómenos son claramente observables en ambientes carentes de ruido, en ambientes ruidosos no son siempre tan evidentes. Otra de las características importantes de los parámetros LSF es su sensibilidad espectral localizada, de la cual carecen otras representaciones como la representación mediante coeficientes de reflexión ó mediante logarithmic area ratios (LAR). Puede demostrarse que modificando ligeramente uno de los parámetros LSF se produce un cambio en la respuesta en magnitud solo en las frecuencias cercanas a la frecuencia del parámetro modificado. En este punto, hay que tener en cuenta que si la modificación introducida en el parámetro LSF es del orden de la distancia que lo separa de los parámetros más cercanos al mismo, toda la respuesta en magnitud sufre variaciones. 8

41 Revisión teórica Figura 5.- Efecto de la variación de los coeficientes LSF en el espectro de la señal Se ha marcado en azul la posición original de cada uno de los dos coeficientes modificados y en color verde y rojo donde quedarían esos coeficientes tras la modificación Esta propiedad de los parámetros LSF tiene diversas ventajas: - En primer lugar, la representación mediante parámetros LSF tolera pequeños errores en los mismos, es decir, pequeños errores tienen una repercusión pequeña en la respuesta en magnitud del correspondiente filtro LP. - Cada uno de los parámetros de un vector LSF puede ser cuantizado independientemente sin filtraciones de distorsión en la cuantización de una región espectral a otra. - Se pueden dar pesos diferentes a cada uno de los parámetros LSF en función de la importancia en el espectro de la señal de voz. Generalmente las áreas de los formantes, los picos, son más importante que los valles del espectro y, por ello, se le puede dar mayor peso a las frecuencias espectrales cercanas a los formantes. El oído humano no es capaz de distinguir diferencias a altas frecuencias con tanta precisión como a bajas frecuencias, lo que nos permite cuantizar los parámetros LSF en frecuencias más altas con menos precisión que los que tienen frecuencias menores. 9

42 Revisión teórica.. Conversión LP -> LSF Los coeficientes de filtro de predicción lineal (LP), a i, i =,,, se convierten para los efectos de cuantificación e interpolación en coeficientes de pares del espectro lineal (LSP). El filtro inverso A ( z) asociado con el análisis LPC de orden p satisface la siguiente relación recursiva. con ( z) n ( z) = A ( z) z A ( z ), n, p An n n n =..., (.0) A 0 = y n siendo el coeficiente de reflexión de orden n. Si extendemos el orden del filtro a p + la ecuación queda A ( p+ ) ( z) = A ( z) z A ( z ) p + p p+ p (.) Si se toman en consideración las dos condiciones límite y =, p+ = p+ que corresponden, respectivamente, a un completo cierre y a una completa apertura de la glotis, teniendo en cuenta el modelo acústico de la voz, se obtienen los polinomios: ( p+ ) ( p ) p ( p+ ) ( z) = A( z) + z A( z ) = + p z + p z + + p z + p z + z P K (.) para =, y p+ ( p+ ) ( p ) p ( p+ ) ( z) = A( z) z A( z ) = + q z + q z + q z q z z Q K (.3) para = p+. Q es antisimétrico. Puede ) y que todas las raíces de estos polinomios se encuentran dentro del círculo unidad y se alternan entre sí. P ( z) tiene una raíz z = ( ω = π ), mientras que Q ( z) tiene una raíz z = ω = 0. Esto puede apreciarse en la figura 6. El polinomio P ( z) es simétrico y el polinomio ( z) demostrarse que A ( z) es de fase mínima (lo cual implica la estabilidad de H ( z) ( ) P Q ( z) = ( + z ) ( pi z + z ) i=,3,..., p ( z) = ( z ) ( qi z + z ) i=,4,..., p (.4) Ambas raíces se eliminan al definirse dos nuevos polinomios a partir de los dos anteriores. F F ( z) = P( z) ( + z ) ( z) = Q( z) ( z ) (.5) 30

43 Revisión teórica Figura 6.- Diagrama polo-cero de los vectores P(z) y Q(z) Cada uno de estos polinomios tiene todas sus raíces (conjugadas) en el círculo unidad ( e ± jω i ), que pueden expresarse como: F F ( z) = ( pi z + z ) i=,3,..., p ( z) = ( qi z + z ) i=,4,..., p donde p = q = cos ( ω ) = cos( πf ). Los coeficientes ( f ) (.6) i i i i ω i i son las frecuencias espectrales de línea ó pares espectrales de línea (parámetros LSF) y satisfacen la propiedad de ordenación 0 < ω < ω < K < ω p < π. Los coeficientes p i = qi se definen como coeficientes LSP en el dominio coseno. Puesto que los polinomios F (z) y F (z) son simétricos, sólo es necesario calcular los primeros p/ coeficientes de cada uno. Los coeficientes de éstos polinomios se obtienen mediante las relaciones recursivas: f f ( i + ) = ai+ + a p i f( i) i = 0,..., p ( i + ) = a a + f ( i) i = 0,..., p i+ p i (.7) donde f (0) = f (0) =,0. Los coeficientes LSP se obtienen evaluando los polinomios F (z) y F (z) en 60 puntos igualmente espaciados entre 0 y π y controlando los cambios de signo. Todo cambio de signo implica la existencia de una raíz y el intervalo de cambio de signo se divide entonces cuatro veces, para permitir un mejor seguimiento de la raíz. Se utilizan los polinomios de Chebyshev para evaluar F (z) y 3

44 Revisión teórica F (z). Por este método, las raíces se obtienen directamente en el dominio coseno. Los ± jω polinomios F (z) y F (z), evaluados en z = e, pueden expresarse como: siendo F j5ω ( ω) e C( x) = (.8) ( x) T ( x) + f ( ) T ( x) + f ( ) T ( x) + f ( 3) T ( x) + f ( 4) T ( x) (5) C = + (.9) f donde T m (x) = cos(mω) es el polinomio de Chebyshev de m-ésimo orden y f(i),i =,, 5, representa los coeficientes de F (z) o F (z), calculados mediante la ecuación (.8). El polinomio C(x) se evalúa para un determinado valor de x = cos(ω) mediante la ecuación recursiva: para = de 4 a fin C b = xb ( x) = xb b f ( 5) + b + siendo los valores iniciales b 5 = y b 6 = 0. + f ( 5 ) (.30) 3

45 Revisión teórica.3 Codificación predictiva mediante análisis por síntesis.3. Introducción Los codificadores de forma de onda proporcionan gran calidad de la señal de voz, pero solo trabajando con tasas de bit por encima de los 6 bit/s. Los vocoders LPC, en cambio, operan a tasas de bit muy bajas, hasta bit/s, pero la calidad de la señal de voz sintetizada es bastante pobre. La principal limitación de los codificadores LPC es la consideración de que las señales de voz o son sonoras o son no sonoras, de ahí que la fuente de excitación de la señal de voz del filtro de síntesis de predicción lineal sea o un tren de pulsos (para señales sonoras) o un ruido aleatorio (para señales no sonoras). Esta consideración es una simplificación demasiado grande para conseguir una buena calidad de señal de voz. En 98, Atal propuso un nuevo modelo de excitación conocido como excitación por multi-pulso (MPLPC), que usa un modelo parecido al de los codificadores de forma de onda y no requiere ningún conocimiento a priori sobre si la señal de voz es sonora o no sonora. La excitación se modela por un número de pulsos (normalmente 4 ó 5) cuyas a amplitudes y posiciones son determinadas mediante un proceso de optimización en bucle cerrado (minimizando el error porcentual ponderado entre la señal original y la sintetizada), y no usando el error entre el residuo y su versión cuantizada, como se hace en los codificadores que usan bucle abierto. La irrupción de ese modelo dio paso a una nueva generación de codificadores de voz por análisis mediante síntesis capaces de producir alta calidad de señal de voz a tasas de bit sobre 0 bit/s, llegando incluso a los 4,8 bit/s. Esta nueva generación de codificadores usa el mismo filtro de síntesis todo polo (fuente del modelo de producción de voz) que usaban los vocoders LPC. Sin embargo, la señal de excitación es cuidadosamente optimizada y eficientemente codificada usando técnicas de codificación de forma de onda. Todos los codificadores que utilizan análisis mediante síntesis comparten la misma estructura básica en la cual la excitación es calculada minimizando el error porcentual ponderado entre la señal de voz original y la señal sintetizada. La diferencia estriba en la forma de modelar la excitación. El modelo tiene una serie de parámetros que se pueden variar produciendo diferentes rangos en la señal de voz sintetizada. Variando los parámetros del modelo de una forma sistemática se puede obtener un juego de los mismos que produzca una señal sintetizada que coincida con la señal original salvo un mínimo error. La complejidad de estos codificadores aumenta a medida que disminuye la tasa de bit..3. Codificación AbS genérica La estructura básica de un sistema de codificación LPC con análisis mediante síntesis se muestra en la figura 7: 33

46 Revisión teórica Señal de entrada s(n) Generación de excitación u(n) Filtro(s) de síntesis Minimización de error e w (n) Ponderación de error e(n) (a) codificador Generación de excitación u(n) Filtro(s) de síntesis Señal de salida (b) decodificador Figura 7.- Estructura de un sistema de codificación LPC con análisis mediante síntesis Como el modelo requiere una frecuente actualización de los parámetros para conseguir la mayor coincidencia posible con la señal original, el análisis se lleva a cabo en bloques, es decir, la señal de voz de entrada se divide en bloques de muestras o tramas del tamaño apropiado. La longitud y actualización de los bloques de análisis ó tramas determina la tasa de bit del esquema de codificación. El modelo consta de 3 partes: - Generador de excitación.- Produce la secuencia de excitación que se pasará por el filtro de síntesis para producir la señal reconstruida en el receptor. Como puede apreciarse en la figura 7 existe un decodificador incluido dentro del codificador. Para optimizar la excitación, el método de análisis usa la diferencia entre la señal de voz original y la sintetizada como un criterio de error, y elige la secuencia de excitación que minimiza ese error ponderado. - Filtro(s) de síntesis. Pueden ser uno ó dos, dependiendo del codificador que se trate. Son filtros de síntesis lineales variantes en el tiempo, ya que sus coeficientes se van cambiando en cada iteración del bucle. Por un lado, podemos tener, un predictor de síntesis de corto plazo (STP, Short Term Predictor), también llamado filtro de correlación de corto plazo, que modela la envolvente espectral de corto plazo de la forma de onda de la señal de voz. Por otro lado, está el predictor de largo plazo (LTP, Long term Predictor) para modelar la estructura fina del espectro de la señal de voz. 34

47 Revisión teórica - Minimizador de error.- Se minimiza la diferencia entre la señal original y la señal sintetizada. El criterio de minimización más usado es el error cuadrático medio (MSE). Generalmente se pasa el error por un filtro de ponderación perceptual que da forma al espectro del ruido haciendo que su poder se concentre en las frecuencias de los formantes del espectro de la señal de voz, por lo que el ruido queda enmascarado por la señal de voz. El procedimiento de codificación incluiría los siguientes pasos: () Se calculan los parámetros del predictor lineal de corto plazo (LPC) de una trama. (Se suelen tomar tramas de entre 0 y 30 ms). () Se determina la secuencia de excitación óptima para este filtro minimizando el error ponderado. (3) Se divide la trama en subtramas (al ser, normalmente, demasiado grandes para un análisis eficiente de la excitación) y se calcula la excitación independientemente para cada una de ellas. (4) Se extraen los parámetros de la señal de excitación (generalmente ganancia y retraso) (5) Se envían los parámetros del filtro de síntesis y la excitación cuantizados al receptor. El procedimiento de decodificación se realiza pasando la señal de excitación decodificada a través del filtro de síntesis, proceso que da como resultado la señal de voz reconstruida. Cabe destacar cómo, tanto en el codificador como en el decodificador, se genera la señal de voz sintetizada. Esto es necesario para actualizar los contenidos de memoria de los filtros de síntesis. De no ser así, habría que transmitir esos contenidos de memoria al decodificador para que todo estuviera sincronizado. A continuación se verá con un poco más de detalle cada uno de los bloques que componen este método de análisis..3.3 Predictor de corto plazo El predictor de corto plazo modela la envolvente espectral de corto plazo de la voz. La envolvente espectral de un segmento de voz de longitud L muestras se puede aproximar mediante una función de transmisión de un filtro digital todo-polo de la forma: H ( z) G G G = = = p A( z) Pδ ( z) a z = (.3) 35

48 Revisión teórica donde p ( z) = Pδ a z (.3) = es el predictor de corto plazo. Los coeficientes a son los coeficientes del predictor o los parámetros LPC. El número de coeficientes p es el orden del predictor. Este filtro de análisis LP ya se estudió en el punto Predictor de largo plazo Mientras que el predictor de corto plazo modela la envolvente espectral del segmento de voz que está siendo analizado, el predictor de largo plazo, o predictor de pitch, se usa para modelar la estructura fina de esa envolvente. El filtrado inverso de la señal de voz de entrada elimina la envolvente del espectro de la señal, es decir, elimina algo de la redundancia de la voz tomando de la muestra de voz su valor predicho usando las p muestras anteriores. A esto se le denomina predicción de corto plazo si sólo las p muestras anteriores son usadas para predecir la muestra actual. Sin embargo, el residuo de esa predicción todavía muestra considerables variaciones en su espectro, es decir, está lejos de ser blanco. Viendo el residuo de la señal en la figura 8 está claro que todavía existen correlaciones de largo plazo entre muestras de la señal, especialmente en las regiones sonoras. Por tanto, aún existe alguna periodicidad (redundancia), relacionada con el periodo de pitch de la señal de voz original, que el análisis LP no puede eliminar. De ahí la necesidad de incluir una segunda etapa de predicción. Figura 8. Error ó residuo del análisis de predicción Añadiendo un predictor de pitch al filtro inverso se elimina esa redundancia en el residuo de la señal y éste se convierte en ruido. Se le llama predictor de pitch, ya que elimina la periodicidad de la señal, ó predictor de largo plazo, ya que su retraso está comprendido entre 0 y 60 muestras. Este predictor de largo plazo es básico en los 36

49 Revisión teórica codificadores de voz con tasas de bit baja, como el CELP, donde la señal de excitación se modela con un proceso de producción Gaussiano y, por tanto, el predictor es necesario para asegurar que el residuo de la predicción sea lo más cercano posible a ruido aleatorio Gaussiano. Es importante darse cuenta de que la ganancia combinada de los dos sistemas de predicción será siempre menor que la suma de sus ganancias empleándolos por separado. Esto se debe a que en realidad el tracto vocal y la excitación están interrelacionados, no siendo completamente separables como se asume en este modelo. La forma general del filtro de correlación de largo plazo es donde P = = m ( z) P ( z) ( α + ) P l l m = m G ( + ) ( ) = α z G z = m z (.33) (.34) es el predictor de largo plazo. Para m =m =0 se tiene un predictor de un tono, y para m =m = se tiene un predictor de 3 tonos. El retraso α normalmente representa el periodo de pitch. Los parámetros α y G m se determinan minimizando el error residual cuadrático medio después de realizar las predicciones de corto y largo plazo sobre un periodo de N muestras. Para un predictor de un tono el residuo de predicción de largo plazo E viene dado por: donde ( n) ( n) = r( n) Gr( n α ) e (.35) r es la señal residuo después de la predicción de corto plazo. El residuo cuadrático medio E está dado por: N n= 0 N ( n) = [ r( n) Gr( n )] E = e α (.36) n= 0 Igualando la derivada de E respecto a G a cero y despejando su valor, G N r n= 0 = N ( n) r( n α ) [ r( n α )] n= 0 (.37) y sustituyendo G en la ecuación (.36) se obtiene 37

50 Revisión teórica E N r N = = ( ) n 0 r n N n= 0 ( n) r( n α ) [ r( n α )] n= 0 (.38) Minimizar E equivale a maximizar el segundo sumando de la ecuación, que representa la correlación normalizada entre el residuo r ( n) y su versión normalizada. Este término se calcula para todos los posibles valores de α dentro de un rango específico, y se toma el valor de α que lo maximiza. La energía ε en el denominador puede ser fácilmente actualizada desde el retraso ( α ) a α en vez de calcularlo de nuevo mediante la ecuación (.39), que requeriría mayor carga computacional. ( α ) r ( N ) ε a = ε a + r α + (.39) La estabilidad del filtro de síntesis de pitch P( z) no siempre está garantizada. Para un predictor de un tono, la condición de estabilidad es G. Por tanto, la estabilidad del filtro se puede conseguir fácilmente fijando G = cuando G >. Sin embargo, la inestabilidad de este filtro no es tan perjudicial para la calidad de la señal reconstruida. El filtro inestable permanece durante unas tramas (aumentando la energía), pero al final, se encuentran periodos con el filtro estable, por lo que la salida no continua aumentando con el tiempo. En el siguiente grupo de gráficas (figura 9), puede apreciarse como se va eliminando la parte redundante a la señal de voz original al paso por cada uno de los filtros ó predictores. Primero se representa la señal de voz original de un tramo sonoro. A continuación, el residuo LP, obtenido al pasar la señal de voz original a través del filtro de predicción lineal ó predictor de corto plazo. En él se elimina gran parte de la periodicidad (redundancia) de la señal, pero todavía puede apreciarse una cierta periodicidad. Y, por último el residuo LTP ó residuo de pitch, obtenido al pasar la señal de salida del predictor de corto plazo por el predictor de largo plazo ó predictor de pitch, que elimina casi por completo la redundancia de la señal original, quedando, prácticamente una señal de ruido aleatorio. 38

51 Revisión teórica Figura 9.- Señal de voz original, residuo LP y residuo LTP 39

52 Revisión teórica Cuando se usa el predictor de largo plazo, el esquema general del codificador queda de la siguiente manera: s(n) Generación de excitación v(n) u(n) Síntesis de pitch Síntesis LPC Minimización de error e w (n) Ponderación de error e(n) (a) Codificador Generación de excitación v(n) u(n) (b) Decodificador Figura 0.- Estructura de bloques de codificador y decodificador usando filtro LPC y filtro de síntesis de pitch, mediante análisis por síntesis Una mejora significativa se consigue cuando los parámetros LTP se optimizan dentro del bucle de análisis mediante síntesis; es la aproximación por códigos adaptativos. En el bloque de la figura 0, los parámetros LTP se podían calcular fuera del bucle de minimización del error (directamente de la señal residuo LPC). Con la aproximación por códigos adaptativos, el cálculo de los parámetros contribuye directamente al proceso de minimización del error ponderado. Tomando un predictor de largo plazo de un tono, la salida del filtro de síntesis de pitch viene dada por: ( n) = v( n) + Gu( n α ) u (.40) En la primera iteración, se asume que no hay ninguna excitación, partimos de condiciones iniciales cero, por lo que la ecuación se reduce a ( n) = Gu( n α ) u (.4) La señal de voz sintetizada ponderada será w n ( n) = u( i) h( n i) + s ( n) sˆ (.4) i= 0 ˆ0 40

53 Revisión teórica donde h ( n) es la respuesta impulsiva del filtro de síntesis ponderado A( z γ ) y ˆ ( n) es la respuesta a entrada cero del filtro de síntesis ponderado, es decir, la salida del filtro debido a las condiciones iniciales. El error ponderado entre la señal original y la sintetizada está dado por s 0 donde e w ( n) = x ( n) u( i) h( n i) n i= 0 ( n) = s ( n) sˆ ( n) x w 0 (.43) (.44) y s w ( n) es la señal de entrada ponderada. Sustituyendo la ecuación (.3.4.9) en la (.4): donde e w y j ( n) x ( n) Gy ( n) = (.45) α ( n) = u( n j) h( n) = u( i j) h( n i) n i= (.46) El error cuadrático medio ponderado será N n= 0 [ x ( n) Gy ( n) ] E = α (.47) w Haciendo la derivada de ese error con respecto a la ganancia G y despejando esa ganancia: G N x n= 0 = N ( n) y ( n) [ yα ( n) ] n= 0 Substituyendo la ecuación (.47) en la (.48) α (.48) E w = N n= 0 [ x ( n) ] N x n= 0 N n= 0 ( n) y ( n) [ y ( n) ] α α (.49) El retraso de pitch se selecciona tomando el retraso que maximiza el segundo sumando de la ecuación (.49), y G se calcula mediante la ecuación (.48). La desventaja de la solución en bucle cerrado es la carga computacional extra necesaria para calcular la convolución de la ecuación (.45) dentro del rango de retraso α. Un procedimiento rápido para calcular esta convolución y α ( n) para todos los posibles retrasos es calcularlo para el primer valor en el rango y después actualizarlo como sigue 4

54 Revisión teórica y y j j ( 0) = u( j) h( 0) ( n) = u( j) h( n) + y ( n ) n =,..., N j (.50) Esta ecuación requiere N operaciones para determinar la convolución y α ( n), mientras que se necesitaban N(N+)/ operaciones para ello usando la ecuación (.45). El término a maximizar requiere 3N+ operaciones para cada retraso. Otra aproximación (la aproximación de la autocorrelación) se puede usar para actualizar la energía en el denominador de la ecuación (.49) con menor número de instrucciones que para el caso de la aproximación mediante convolución. Esta aproximación se verá con más detenimiento cuando se estudie el CELP. u se almacena en un registro de almacenamiento adaptativo desde -L p a -, donde L p es el registro ó longitud del buffer (normalmente 47). El contenido de este buffer se actualiza cada subtrama, introduciendo N nuevas muestras y retirando las N pasadas, esto es La excitación sintetizada pasada ( n) ( n) u( n + N ) n = L,..., u (.5) El registro de almacenamiento se puede representar mediante una tabla de códigos adaptativa, donde cada palabra se obtiene moviendo la palabra anterior a la izquierda una muestra. Las palabras código se obtienen p ( n) = u( j n) c j + n = 0,..., N j = N,..., L p (.5) Para retraso de pitch inferiores a la longitud de la trama de excitación N, solo los c j n están disponibles. En la voz natural el j primeros valores de la palabra código ( ) retraso de pitch varía entre 0 y 60 muestras. Para estos retrasos menores que la longitud de la trama la palabra código se construye repitiendo los valores disponibles hasta que la palabra código está completa. Esto es, para j<n c j ( n) u = u ( j + n) ( j + n) n = 0,..., j n = j,..., j (.53) y así hasta que se completa la palabra código. El rango del retraso que normalmente se usa está entre 0 y 47 (7 bits). Para retrasos entre 0 y N- la relación de la ecuación c j n se (.50) tiene que ser modificada para esos retrasos. Para j<n la palabra código ( ) puede expresar (considerando j N ) donde c j ( ( ) ) ( n c ( n) + c ) ( n) = (.54) j j y ( j + n) c ( ) u n = 0,..., j ( n) = j 0 n = j,..., N (.55) 4

55 Revisión teórica c ( ) 0 n = 0,..., j ( n) = j u( j + n) n = j,..., N (.56) Teniendo en cuenta esto, la palabra de código filtrada será De la ecuaciones anteriores con lo cual tenemos que ( y ) j ( n) y j ( ( ) ( ) ) ( h n = y ( n) + y ) ( n) ( ( ) ) ( n c ( n) + c ) ( n) = (.57) j j ( ) ( ( n) = c ) ( n j) n = j,..., N j c j j (.58) ( ) ( ( n) = y ) ( n j) n = j,..., N y j j (.59) se puede actualizar usando la relación (.50) desde j= a 47. Para retrasos con j<n y j ( n) se calcula a partir de ( ) ( n), ( y ) j ( n) y j para n = 0,..., j ( ( ) ) ( y ( ) ) j n = y j n + y j ( n j), para n = j,..., j (.60) ( ) ( ) ( ) ( ) ( ) y n + y n j + y ( n j ) j j j, para n = j,..., N La ecuación (.59) solo se aplica cuando j<n/. Una aproximación más simple para trabajar con los retrasos menores que la longitud de la trama es extender el buffer de excitación del residuo de la predicción de corto plazo, es decir, ( n) = r( n) n = 0,..., N α min u (.6) donde α min es el mínimo valor en el rango de retrasos de pitch. En este caso, los retrasos menores que la longitud de trama no se tratan de forma diferente. La realización de la predicción de pitch se puede mejorar usando retrasos de pitch no enteros. A menudo ocurre que el pitch no coincide exactamente con el instante de la muestra. En este caso, el retraso entero más cercano al retraso de pitch real, o un múltiplo de él, sería elegido. Para encontrar un retraso más cercano al real es necesario una resolución mayor. j 43

56 Revisión teórica.3.5 Filtro de ponderación de error En este punto tratamos de elegir un criterio de error adecuado para el modelo general de codificación de voz (figura 7). Tradicionalmente los algoritmos de codificación de voz han intentado minimizar la diferencia rms entre las envolventes de las señales de voz original y codificada. Sin embargo, hoy en día se sabe que la percepción subjetiva de la distorsión de la señal no sólo se basa en el error rms. La teoría del enmascaramiento auditivo sugiere que el ruido en las regiones de los formantes puede enmascararse total o parcialmente por la señal de voz. Por eso, una parte importante del ruido percibido en el codificador proviene de las regiones de frecuencia donde el nivel de la señal es bajo. Así, para reducir el ruido percibido, su espectro ancho se modela de forma que las componentes de frecuencia de ruido alrededor de las regiones de los formantes puedan tener mayor energía que las componentes en las regiones entre formantes. El ruido de cuantización que aparece en la señal de voz reconstruida es N ( f ) = S( f ) S( f ) = ( f ) ˆ F P δ ( f ) ( f ) (.6) donde ( f ) es la potencia espectral del ruido a la salida del cuantizador, ( z) predictor de corto plazo y ( z) P δ es el F es un filtro de reacción. Atal y Schroeder describieron un método eficiente para determinar el filtro de ponderación minimizando la altura del ruido de cuantización. En el modelo general de codificador, el filtro de ponderación puede expresarse como: δ ( z) ( z) P W ( z) = = F A B ( z) ( z) (.63) Esta ecuación se deriva de la anterior donde ( f ) ( f ) P ( f ) = Sˆ δ ( f ) S( f ) = N F ( f ) W ( f ) (.64) Una elección apropiada para B ( z) fue tomar ( z) A( z γ ) B =, lo cual da como resultado W ( z) = A( z) ( z γ ) A = p = p = a z a γ z (.65) donde γ es un valor entre 0 y. El valor de γ se determina por el grado que uno desea desenfatizar las regiones de los formantes en el espectro del error. Disminuir el valor de γ aumenta el ancho de banda de los polos de W ( z). El aumento en el ancho de banda ω es: 44

57 Revisión teórica f s ( γ ) ω = ln (.66) π donde f s es la frecuencia de muestreo. La elección de γ = 0 da W ( z) = A( z). En este caso, el ruido a la salida del codificador tiene la misma envolvente que la señal original. Por otro lado, tomando γ = tenemos W ( z) = lo cual equivale a no hacer ponderación alguna. Una buena elección es tomar un valor entre 0.8 y 0,9, que corresponde a un incremento en el ancho de banda de los polos de W ( z) entre 70 y 570 Hz, aproximadamente. Usando el filtro de error ponderado dado en la ecuación (de W ), y ponderando la señal de voz original y la sintetizada separadamente antes de compararlas, se puede combinar el filtro de síntesis con el filtro de error ponderado, produciendo el filtro: W ( z) = p A ( z γ ) = = γ a z (.67) Nos referiremos a este filtro como filtro de síntesis ponderado. La estructura básica para un codificador predictivo que use análisis mediante síntesis será: Señal de entrada s(n) Filtro inverso r(n) W ( z) A(z) = A ( z γ ) s w (n) Generación de excitación v(n) u(n) W ( z) = A ( z γ ) Filtro de síntesis de pitch Filtro de síntesis ponderado e w (n) Minimización de error Figura.- Diagrama de bloques de la estructura básica de un codificador predictivo que use análisis mediante síntesis 45

58 Revisión teórica.4 CELP.4. Introducción La implementación de un predictor de largo plazo en el bucle del análisis mediante síntesis se debe a la importancia que tiene eliminar la redundancia de la señal lo máximo posible. La señal residuo después de los predictores de corto y largo plazo se convierte en una señal parecida a ruido y puede ser modelada por un proceso Gaussiano de media cero con un espectro de potencia que varía lentamente. Esto es lo que permite la implementación de codificadores estocásticos, donde la trama de excitación se cuantiza vectorialmente usando una tabla de códigos estocásticos amplia. La codificación estocástica o codificación CELP (Code-Excited Linear Prediction) fue propuesta por Atal y Schroeder en 984 [Kumar y Sundaresan, 000]. En esta codificación las tramas de la señal excitación se modelan por un vector gaussiano elegido de una tabla de códigos gaussianos minimizando el error ponderado perceptual entre la señal de voz original y la sintetizada. Sin embargo, hasta entrados los 90, el gran impedimento para la expansión de los algoritmos CELP era la gran complejidad que suponía su implementación en tiempo real, que proviene de la búsqueda en la tabla de códigos, ya que se calcula y compara con todas las posibles entradas de la tabla. En los últimos años, la investigación se ha basado en reducir la complejidad del codificador CELP y lograr su implementación en tiempo real usando la tecnología CELP actual. Se ha logrado una significativa reducción usando diferentes tabla de códigos con menos entradas o con muchas de ellas a cero. El uso de tablas de códigos algebraicos también reduce la complejidad del algoritmo. En ellos, la tabla de códigos se genera usando un código binario especial con corrección de errores..4. Principio del CELP Después de realizar la predicción de corto y largo plazo, las redundancias de la señal de voz se han eliminado casi completamente y la señal residuo tiene muy poca correlación. Un proceso Gaussiano con un espectro de potencia que varíe lentamente en el tiempo se puede usar para representar esa señal residuo, y la forma de onda de la señal de voz se genera filtrando secuencias de innovación blancas y gaussianas a través de los filtros de síntesis de corto y largo plazo. La secuencia de innovación óptima se selecciona de una tabla de códigos que contiene secuencias de gaussianas blancas aleatorias minimizando el error ponderado subjetivo entre la señal original y la sintetizada. El diagrama por bloques del modelo de síntesis del CELP quedaría: 46

59 Revisión teórica Tabla de códigos adaptativos G Filtro de síntesis Señal de voz sintetizada Retraso subtrama G Tabla de códigos fijos Figura 0.- Diagrama de bloques del modelo de síntesis del CELP El filtro de correlación de pitch del esquema general se sustituye por una tabla de códigos adaptativo de solape. La posición de la tabla de códigos seleccionada y su correspondiente ganancia (retraso de pitch y ganancia) junto con la posición seleccionada de la tabla de códigos estocásticos y su correspondiente ganancia de escala son enviadas al decodificador, que utiliza las mismas tablas de códigos (en ausencia de errores de canal) para determinar la señal de excitación a la entrada del filtro de síntesis LPC para producir la señal sintetizada. La tablado de códigos de excitación contiene L palabras de código (vectores estocásticos) de longitud N muestras (generalmente L = 04 y N = 40, que corresponde a una trama de 5 ms). La señal de excitación de una trama de voz de longitud N se elige mediante una búsqueda exhaustiva de la tabla de códigos después de escalar los vectores gaussianos por un factor de ganancia β. El filtro W ( z) es el filtro de síntesis ponderado dado por: W ( z) = p A ( z γ ) = = γ a z (.68) Una vez se han determinado los parámetros de la tabla de códigos adaptativos (retraso de pitch y ganancia) la señal de voz sintetizada ponderada es ) s ( n) βc ( n) h( n) + Gy ( n) + sˆ ( n) w = α 0 (.69) donde la convolución carece de memoria, c ( n) es la palabra código de excitación para el índice, β es el factor de escala, h ( n) es la respuesta al impulso del filtro de síntesis 47

60 Revisión teórica ˆ es la respuesta a entrada cero del filtro de síntesis ponderado, G ponderado W ( z), s 0 ( n) es la ganancia de la tabla de códigos adaptativa y y ( n) = c α ( n) h( n) estado cero del filtro de síntesis ponderado a la palabra código ( n) tabla de códigos adaptativa. El error ponderado entre la señal original y la sintetizada es: e w ( n) = s ( n) s ( n) = x( n) βc ( n) h( n) w w α es la respuesta a c α seleccionada de la ˆ (.70) donde ( n) s ( n) Gy ( n) sˆ ( n) x w 0 = α (.7) La señal x ( n) se calcula actualizando x ( n) x ( n) x ( n) Gy ( n) = (.7) α como x ( n) ha sido ya determinada en la búsqueda de la tabla de códigos adaptativos. El error cuadrático medio ponderado está dado por N n= 0 N [ ( )] [ ( ) ( ) ( )] e n = x n c n h n E = β (.73) w n= 0 Calculando la derivada de ese error respecto al factor de escala β e igualando a cero, obtenemos la expresión para β. N n= 0 = N ( n) [ c ( n) h( n) ] [ c ( n) h( n) ] n= 0 y sustituyendo β en la ecuación (.73) x β (.74) N ( )[ ( ) ( )] x n c N n h n E = x (.75) n= 0 ( n) n= 0 N n= 0 [ c ( n) h( n) ] Estas dos últimas ecuaciones se pueden escribir en forma matricial como y xh T c β = (.76) c T H T c 48

61 Revisión teórica 49 Hc T H T c Hc T x x T x Hc x = = β E (.77) donde x y c son vectores de dimensión N dados por ( ) ( ) 0 0 = = N N c c c x x x K K T T c x (.78) y H es una matriz de convolución triangular inferior de la respuesta impulsiva ( ) n h = h h h h h h h h h h N N N L M O M M M L L L H (.79) Definimos la matriz Φ como Φ = H T H. Por tanto, Φ es una matriz simétrica que contiene las correlaciones de la respuesta impulsiva ( ) n h ( ) ( ) ( ) ( ) = = =, max 0,...,,,, N j i n N j i j n h i n h j i φ (.80) Se define un vector Ψ tal que Ψ= H T x, cuyos elementos son ( ) ( ) ( ) ( ) ( ) = = = = 0,..., N i n N i i n h n x i h i x i ψ (.8) El error cuadrático medio ponderado se puede minimizar maximizando el segundo término de la ecuación (.77), que está dado por ( ) ( ) Φc T c c Ψ c T H T c c T xh T = = = C ε τ (.8) donde C es la correlación cruzada entre x y la palabra código filtrada Hc y está dada por ( ) ( ) ( ) [ ] ( ) ( ) n n c n h n c n x C N n N n = = = = 0 0 ψ (.83)

62 Revisión teórica y ε es la energía de la palabra código c N n= 0 N [ c ( n) h( n) ] = c ( n) φ( i, j) + c ( i) c ( j) φ( i, j) n= 0 N N ε = (.84) ψ ( i) y ( i, j) i= 0 j= i+ φ son calculadas fuera del bucle de optimización, y el términoτ de la ecuación (.8) se evalúa desde = 0 a L-, donde L es el tamaño de la tabla de códigos. Se elige la palabra código con índice que maximiza ese término y la ganancia escalar β se calcula a partir de la ecuación (.77). En esta aproximación, la palabra código c y la ganancia β no se optimizan conjuntamente, ya que la ganancia tiene que ser cuantizada y el término de la ecuación (.8) se deriva usando en valor de la ganancia sin cuantizar. La ganancia y el vector de excitación pueden ser optimizados como sigue: para la palabra código con índice la correlación cruzada C y la energía ε se determinan a partir de las ecuaciones (.84). La ganancia se calcula con la ecuación: C β = (.85) ε La ganancia se cuantiza para obtener el valor βˆ y este valor cuantizado se sustituye en la ecuación.73 para obtener el mínimo error E N = n= 0 T [ x( n) βc ( n) h( n) ] ˆ T β ˆ T T T = x x x Hc + β ˆ c H Hc = x x β C ˆ + β ε El término a maximizar viene ahora dado por τ ( ˆ β ) β C ε (.86) = ˆ (.87) Este término se calcula para cada palabra código y se toma el que maximiza el término con la ganancia cuantizada. Esta aproximación por unión no introduce ninguna complejidad a tener en cuenta, ya que la correlación C y la energía ε se calculan una vez por palabra código igual que cuando se calculaba la ecuación de (.77). La carga computacional extra es que la ganancia tiene que ser cuantizada para cada palabra código. El número de operaciones necesarias para evaluar la expresión en la ecuación (.87) es aproximadamente N (usando las ecuaciones (.83) y (.84)). En cambio, cuando la convolución se calcula usando filtrado recursivo, las palabras código c ( n) se filtran a través de un filtro con estado cero, donde la convolución necesita Np instrucciones, el cálculo de la energía ε requiere N y la evaluación de la correlación cruzada C otras N instrucciones, dando un total de N(p+) operaciones. Esto, para un predictor de orden 0 supone una importante reducción en el número de operaciones. 50

63 Revisión teórica.4.3 Tabla de códigos algebraicos Los códigos algebraicos se pueden usar para poblar las tablas de códigos de excitación. Algoritmos de búsqueda eficientes en la tabla de códigos se pueden obtener códigos algebraicos altamente estructurados. Inicialmente, las tablas de códigos algebraicos se obtenían usando códigos binarios de corrección de errores. A continuación veremos un código algebraico donde los vectores de excitación se derivan usando códigos de permutación interrelacionados (IPC) [Adoul et al. 994]. En los códigos de permutación interrelacionados, un vector de excitación que contiene un pequeño número de pulsos distintos de cero con un conjunto de posiciones con interrelaciones predefinidas. Los pulsos tienen sus amplitudes fijadas a ó -, y cada pulso tiene un conjunto de posiciones distintas a las de otros pulsos. Los conjuntos de posiciones están interrelacionados. El código de excitación se identifica por las posiciones de sus pulsos distintos de cero. Esto es, la búsqueda en la tabla de códigos es básicamente una búsqueda de las posiciones óptimas de los pulsos distintos de cero. 5

64 Revisión teórica 5

65 Recomendación G.79:CS-CELP 3 Recomendación G.79: CS-CELP 3. LA ITU-T La Unión Internacional de Telecomunicaciones, conocida como ITU (Internacional Telecommunications Union), es un organismo dentro de la UNESCO (United Nations Economic, Scientific and Cultural Organization). Está dividido en dos cuerpos: por un lado el Sector de estandarización de las Telecomunicaciones o ITU-T y, por otro, el sector de estandarización para la Radio o ITU-R. A pesar de llevar la palabra estándar en su nomenclatura, estas dos entidades no crean estándares, sino que generan una serie de documentos conocidos formalmente como recomendaciones. Estas recomendaciones representan un acuerdo entre un segmento de la industria de las telecomunicaciones sobre un tema determinado, pero no hay ningún tipo de ley que fuerce a su cumplimiento. De ahí el término de recomendaciones. La ITU-T se divide a su vez en secciones más pequeñas denominadas grupos de estudio. El grupo de estudio que se encarga de las recomendaciones relacionadas con el procesamiento de la voz y el video, como la codificación de voz o la telefonía por video es el 5 (SG5). Otros grupos relacionados con aspectos de la codificación de voz son el SG, que se encarga de los problemas en la red, que influyen en la calidad de la señal de voz; o el grupo de expertos para la calidad de la señal de voz (SQEG) que se encarga de realizar los experimentos y pruebas subjetivas usadas para determinar cómo de bien funciona una determinada recomendación de codificación de voz propuesta por la ITU. Las recomendaciones de la ITU están a menudo registradas como patentes. Las empresas dueñas de esas patentes se comprometen a cobrar unas tasas razonables a las demás empresas por su uso. Incluso a veces se ha llegado a un acuerdo para pagar esas tasas entre todas las empresas usuarias. Por tanto, la ITU, como entidad, no administra los derechos de la propiedad intelectual. 53

66 Recomendación G.79: CS-CELP Para establecer una recomendación lo primero es especificar una serie de requerimientos a cumplir por la misma, llamados términos de referencia (ToR; Terms of Reference). En este documento se refleja, junto con un calendario con las estimaciones de tiempo para su ejecución, los objetivos y características que debe cumplir. Además de la calidad, también especifica las demás propiedades del codificador, como son la tasa de bit, el retraso y la complejidad. Uno de los puntos destacados es la elaboración del calendario, que depende principalmente de la urgencia de la necesidad de implantar la nueva recomendación. Generalmente, se puede dividir en tres partes principales: por un lado, el tiempo empleado en determinar todos los requerimientos y objetivos que debe cumplir la recomendación (que se concluye una vez definidos los términos de referencia); por otro, el tiempo empleado para pruebas, ensayos y tests (que se culmina con la elección del codificador) y, por último, el tiempo que conlleva el diseño final de la recomendación y el seguimiento de los diferentes pasos que se requieren hasta la ratificación de la misma. El candidato inicial rara vez suele cumplir con los requerimientos fijados en los términos de referencia, por los que se debe crear un codificador optimizado y volver a realizarle todas las pruebas, con lo que esta parte del proceso es la más puede alargar el calendario. Bajo condiciones ideales, el proceso completo de pruebas y tests, entre la definición de los términos de referencia y la selección del codificador candidato, se podría completar en unos 4 meses; si bien reduciendo el número pruebas se puede realizar en menos tiempo. Ello depende de la importancia de la recomendación a realizar. Además, el uso de software para los tests ha reducido el tiempo empleado en ellos, al no tener que montar los equipos en el laboratorio para las diferentes pruebas. 3. Descripción de la recomendación 3.. Introducción La recomendación ITU-T G.79 define un algoritmo para la codificación de señales de voz a 8 bit/s, usando un CS-CELP. En este sistema, una señal de voz analógica se pasa a través de un filtro paso de banda entre 300 Hz y 3400 Hz y la señal de voz resultante es muestreada a 8000 muestras por segundo. Así se obtiene la información digital de la misma, que se convierte a una señal PCM lineal. Las muestras son cuantizadas usando una resolución de 6 bits. La tasa de bit de entrada es, por tanto, 8 bit/s. El vocoder G.79 trabaja con tramas de 0 milisegundos, con un retraso de 5 ms para el análisis de predicción lineal. El codificador toma 80 muestras de la señal de voz por trama y da como salida 80 bits de información comprimida. El decodificador toma esos 80 bits por trama y los transforma en 80 muestras de voz sintetizada descomprimida [IEEE, Marzo 998]. La comunidad científica consideró que el estándar G.79 representaba un avance significativo en el campo de la compresión digital de audio para la transmisión y almacenamiento de señales de voz y generaría productos innovadores y servicios disponibles para el público. Los beneficios de una calidad de voz buena (toll) a 8 bit/s, con un retraso y unos requerimientos de procesado moderados, hace del estándar G.79 54

67 Recomendación G.79:CS-CELP una opción muy popular para muchas aplicaciones, como la tele/videoconferencia, telefonía visual, sistemas de satélite digital, voz sobre protocolos IP, PSTN, ISDN, teléfonos móviles y otro tipo de aplicaciones inalámbricas, donde la calidad, retraso y ancho de banda son importantes. 3.. Historia El codificador CS-CELP surgió de la búsqueda de un codificador que, con una tasa de bits de 8 bit/s, consiguiera una calidad de voz equivalente a la que se obtiene con un codificador ADPCM, operando a 3 bit/s, para la mayor parte de la condiciones de trabajo. Entre estas condiciones cabe citar señales de voz, tanto limpias como ruidosas, variaciones de nivel o señales carentes de voz. Para la recomendación de la ITU G.79, uno de los términos de referencia que se fijaron fue que el codificador de voz trabajara a 8 bit/s. Esta tasa se eligió en parte porque se adecua al rango de trabajo de la primera generación de estándares digitales celulares, que va desde los 6,7 bit/s en Japón hasta los 3 bit/s en Europa, pasando por los 7,95 bit/s en Estados Unidos. Además era lo más natural dividir por dos la tasa de bit de codificadores de voz ya existentes y estandarizados (64, 3 y 6). Se propusieron dos algoritmos para la obtención de este codificador: uno desde la NTT (Nippon Telegragh and Telephone Corporation) y otro desde France Telecom CNET/Universidad de Sherbrooe. Sin embargo, a pesar que ambos eran prácticamente equivalentes al codificador ADPM a 3 bit/s en la mayor parte de las pruebas, ninguno se equiparaba a él en todas. En ese punto, los dos candidatos decidieron unirse y crear un nuevo codificador con las mejores características de los dos códigos y continuar sus investigaciones para alcanzar el objetivo común. Así, se probó una versión del codificador resultante en Enero de 995 y un mes después fue aprobada en la reunión de la ITU-T. La recomendación final fue finalmente ratificada en Noviembre de 995. El de Marzo de 998 France Telecom, Nippon Telegraph and Telephone Corporation y la Universidad de Sherbrooe (Québec, Canadá) establecieron el consorcio G.79 para simplificar el proceso de licitación para el estándar internacional de codificación y decodificación digital de audio ITU G.79 y para promover la expansión y adopción tanto del estándar G.79, como del G.79 Anexo A. El consorcio también acordó tener un único agente, Spiro LabTelecom (compañía canadiense representante comercial del Laboratorio de compresión de voz de la universidad de Sherbrooe y de su famosa tecnología ACELP desde 993). En la tabla 4 se muestra el calendario que se siguió para la consecución de la recomendación [Cox y Kroon, 996]: 55

68 Recomendación G.79: CS-CELP Actividad Discusión inicial de los ToR 7/90 Finalización de los ToR /9 Total meses 6 Reunión de codificadores candidatos 9/9 Realización de pruebas y ensayos /93 Selección del candidato /95 Total meses 39 Reunión para la determinación /95 Primer boceto de la recomendación 6/95 Se somete a decisión /95 Total meses 9 Total meses para el proceso completo 64 Tabla 4.- Calendario seguido para la aprobación de la recomendación G.79 El término de referencia para el retraso del codificador fue uno de los asuntos que más tiempo llevó concretar, alargándose la discusión más de un año. Inicialmente se propuso un retraso del codificador en un sentido máximo de 0 ms. Más tarde, se pensó fijar el tamaño de la trama en 6 ms. Finalmente el tamaño de la trama se fijó en 0 ms. Con este tamaño se obtiene un retraso hacia delante de 5 ms, un retraso de procesamiento de 0 ms y un retraso en la transmisión de otros 0 ms, con lo que el retraso total del sistema en un sentido es de 35 ms Objetivos y requerimientos de la recomendación G.79 Los objetivos más discutidos a la hora de realizar la recomendación fueron el retraso y la complejidad del codificador [3]. Se optó por aceptar un retraso que permitiera una reducción significativa de la complejidad con respecto a codificadores de otras recomendaciones existentes, como la G.78. El número de millones de instrucciones por segundo se redujo hasta 7 MIPS. Sin embargo la cantidad de memoria RAM necesaria es de 3 words, un 50 % más que en la recomendación G.78. Gran parte de este uso extra de memoria se debe a la utilización de tramas más largas. En las dos tablas presentadas a continuación se resumen los requerimientos y objetivos (términos de referencia) que se definieron a la hora de implementar el codificador para la recomendación. En la primera de ellas (tabla 5) se definen los objetivos relacionados con la tasa de bit, el retraso y la complejidad del codificador. Parámetro Tasa de bit (b/s) 8 Tamaño de la trama (ms) 0 Tamaño de la subtrama (ms) 5 Retraso algorítmico (ms) 5 MIPS (punto fijo DSP) 0 RAM (palabras de 6 bits).7 Tabla 5.- Valores de los parámetros más importantes para la recomendación G.79 56

69 Recomendación G.79:CS-CELP En la segunda (tabla 6) se definen todos los requerimientos y objetivos relacionados con la calidad de la señal de voz. La parte más difícil fue medir su comportamiento para las diferentes condiciones de ruido ambiente. Los primeros codificadores propuestos fallaron para algunas o incluso para todas estas condiciones porque el ruido codificado no sonaba igual que el original. En los tests de promediado de degradación de categoría (DRC), los sujetos apreciaban una diferencia a peor. Como consecuencia, la G.79 obtenía peores resultados que la G.76 en este test. Sin embargo, al realizar los tests de promediado de categoría absoluta (ACR), los resultados en la escala MOS de la G.79 no eran significativamente peores que los de la G.76, siendo incluso, a veces, mejores. Parámetro Requerimientos Objetivos Calidad (sin errores de bit) No peor que la G.76 a 3 bit/s Calidad (con errores de bit) Errores de bit aleatorios BER<0-3 Pérdidas de trama detectadas No peor que la G.76 No más de 0,5 MOS de degradación con respecto al ADPCM a 3 bit/s sin errores Errores no detectados Dependencia del nivel No peor que la G.76 a 3 bit/s Dependencia del hablante No peor que la G.76 a 3 bit/s Capacidad de transmitir música Capacidad de tandeming para la señal de voz Tandeming con otros estándares de ITU Tandeming con estándares regionales DMR Ruido de canal - ponderado - frecuencia simple Capacidad de transmitir tonos de señal/información códigos asíncronos con una distorsión total < 4 asíncronos G.76 a 3 bit/s < 4 asíncronos G.76 a 3 bit/s Para estudios posteriores Para estudios posteriores No peor que la G.76 a 3 b/s DTMF, CCITT Nos. 5,6 y 7, CCITT R, Q.35, Q.3, V.5 Tabla 6.- Requerimientos y objetivos para la recomendación G.79 Equivalente a la G.76 3 bit/s Tan pequeño como sea posible Para estudios posteriores Tan pequeño como sea posible No generar efectos molestos 3 códigos asíncronos con una distorsión total < 4 asíncronos G.76 a 3 bit/s Propiedad de tandeming síncrona No peor que la G.76 a 3 b/s Distorsión lo más pequeña posible El segundo requerimiento es el referente a la calidad de la señal de voz relacionado con canales ruidosos. Para una tasa de error de bit de 0-3, la calidad de la señal de voz no debía ser peor que la de la G.76 bajo las mismas condiciones. Los requerimientos para borrado de tramas fueron más complicados de determinar. 57

70 Recomendación G.79: CS-CELP Finalmente el código se probó con, 3 y 5 % de tramas borradas aleatoria o secuencialmente. El requerimiento fue que para el caso del 3 %, para ambas situaciones, no debía ser peor que el resultado obtenido en la escala MOS por el codificador de la recomendación G.76 menos 0,5 puntos. El tercero de los requerimientos relacionados con la señal de voz es que la entrada esté como mucho 0 db por encima o por debajo del nivel nominal de entrada. Para realizar las pruebas del cuarto requerimiento se necesitó un gran número de hablantes, tanto niños como adultos. La recomendación se probó en cuatro idiomas diferentes con al menos 8 hablantes por idioma. El codificador admite señales musicales, si bien la calidad que se obtiene es bastante pobre. El principal motivo de este resultado es que los codificadores basados en la predicción lineal con análisis por síntesis se basan en la predicción del pitch para lograr una codificación eficiente. La mayoría de las señales de audio carecen de una estructura con pitch y toda la carga de la codificación recae en la excitación y el predictor lineal de bajo orden. El siguiente requerimiento hace referencia a la conexión del codificador con otros codificadores, ya sea otro de sus mismas características o de otras diferentes. Para ambos casos, la unión de los dos no debe producir una distorsión mayor que la de 4 codificadores de la recomendación G.76 a 3 b/s. No se propuso ningún tipo de requerimiento para su interconexión con estándares regionales con tecnología digital celular Características del codificador El codificador CS-CELP se basa en el modelo de codificación conocido como CELP (code-excited linear prediction). En este modelo, la señal codificada se compara con la señal original y los parámetros del codificador se eligen de forma que se minimice el error cuadrático medio ponderado entre la señal original y la señal reconstruida. Como ya se ha dicho, el codificador CS-CELP está diseñado con una señal, apropiadamente limitada en banda, muestreada a Hz. Las muestras de entrada y salida se representan usando una cuantización lineal PCM de 6 bits. El codificador opera con tramas de 0 ms, usando subtramas de 5 ms para el análisis de predicción lineal (LP). El uso de subtramas permite una mejor determinación de los parámetros de pitch y ganancia y, además, reduce la complejidad de las búsquedas en la tabla de palabras código. Lo que más destaca del decodificador y lo que mayor potencial le otorga para aplicaciones sin cables es lo robusto que es frente a errores en el canal y la capacidad de detectar y recomponer tramas perdidas. Muchos codificadores usan la codificación lineal predictiva (LPC) adaptativa hacia atrás, realizando el análisis LPC sobre la señal de voz previamente cuantizada. 58

71 Recomendación G.79:CS-CELP Como la señal reconstruida está disponible tanto en el codificador como en el decodificador, no es necesario enviar al decodificador los coeficientes LPC. Sin embargo, aunque esta técnica funciona para algoritmos operando a 6 bit/s, no se consigue una calidad suficiente en algoritmos a 8 bit/s sin realizar una predicción del pitch. Los codificadores que usan el modelo de codificación CELP usan normalmente un predictor de pitch adaptativo hacia delante, para explotar una de las características más importantes de las señales de voz, su redundancia. Para conseguir esas propiedades que hacen que este decodificador sea muy bueno para diferentes aplicaciones se han usado tres nuevos esquemas en el algoritmo: - Cuantización vectorial multistage VQ de los coeficientes LSP con predicción MA entre tramas, ya que el cuantizador debe operar con señales de voz con respuesta en frecuencia diferentes. - Preselección en la búsqueda en la tabla de códigos, para reducir su complejidad. - Ganancia VQ con predicción hacia atrás para hacerlo más robusto frente a errores en el canal. La principal diferencia entre el codificador CS-CELP y otros codificadores basados en el modelo CELP es el uso de una estructura de tabla de códigos conjugada, tanto para la tabla de códigos fijos como para la de códigos adaptativos. Cuatro son las ventajas más interesantes que se desprenden del uso de esta estructura conjugada [Kataota, 00]: - Mejora la robustez del sistema - Reduce la memoria necesaria para operar - Junto con la preselección, reduce la complejidad de las búsquedas en la tabla de códigos aleatorios o adaptativos. - Permite generar una tabla de códigos aleatorios entrenada Vamos a ver un poco más en profundidad algunas de ellas por separado. Con un simple ejemplo se demostrará la efectividad de esta estructura conjugada frente a errores en el canal, comparada con la de un codificador que no la usa. Para este segundo codificador (con un solo vector) un error en el canal puede producir un vector totalmente diferente al esperado: Vector de salida Vector error error Figura.- Posible error en el canal usando una tabla de códigos única Sin embargo, para un codificador con estructura conjugada el vector de salida se genera sumando dos vectores (subvectores y ). Si uno de los dos sufre un error en el canal entonces, aunque el subvector de salida generado a partir de él pueda ser bastante 59

72 Recomendación G.79: CS-CELP diferente del esperado, el vector de salida, que no es sino la suma de los dos subvectores de salida, no será tan diferente del esperado. Vector error Sub-vector Vector de salida Sub-vector error Sub-vector Figura 3.- Posible error en el canal usando una tabla de códigos con estructura conjugada La cantidad de memoria necesaria para almacenar una tabla de códigos aleatorios depende del número de bits. La estructura conjugada usa dos subtablas. Como cada una de las subtablas es menor que la tabla de códigos, se necesita menos memoria. Si la necesidad de usar una memoria reducida no es primordial, es posible hacer tablas de códigos aleatorios entrenadas. Para mejorar la robustez del sistema se reduce el número de bits sensible a posibles errores en el canal del codificador. En la codificación convencional usando el modelo CELP, la potencia de la señal de voz de entrada para cada trama es cuantizada en primer lugar, y después el residuo de la potencia se cuantiza usando la tabla de códigos de ganancia. El índice de la información de potencia es especialmente sensible a los errores en el canal y un error en él puede provocar una distorsión de importancia (clics) en la señal de voz reconstruida. En el codificador CS-CELP la ganancia VQ con predicción hacia atrás elimina la necesidad de transmitir explícitamente la información de potencia. Por supuesto, si el índice de la tabla de códigos de ganancia sufre algún error debido al canal, la calidad de la señal de voz en el decodificador se degrada. Sin embargo, para este esquema, se producen un número pequeño de distorsiones en la amplitud para unas pocas tramas, lo cual es preferible al caso anterior Aplicaciones Muchas aplicaciones, como por ejemplo los sistemas de radio digitales celulares, requieren un algoritmo de codificación de voz que aúne una calidad elevada y robustez frente a errores por debajo de los 8 bit/s. Otras aplicaciones de estos algoritmos de codificación de voz a 8 bit/s son: - Sistemas de comunicación personal (SCP) - Sistemas digitales por satélite - VoIP (Voz sobre IP) 60

73 Recomendación G.79:CS-CELP - Otras aplicaciones como voz empaquetada y equipos con circuitos multiplexadores Las aplicaciones de comunicación sin cables requieren que el codificador sea robusto frente a los errores en el canal. Estos errores pueden ser aleatorios o secuenciales y el codificador debe de ser capaz de asimilarlos sin introducir efectos extraños en la señal. El decodificador debe recomponer tramas perdidas de la señal con una mínima pérdida en la calidad de la señal de voz Anexos El Anexo A del estándar G.79 es un modelo simplificado del G.79, que tiene una total interoperativibilidad con éste. Los codificadores G.79 y G.79A proporcionan la misma calidad de voz operando normalmente, la tasa de datos y el tamaño de las tramas es el mismo, y son totalmente interoperativos. Esto lleva a veces a confusión entre ambos porque son idénticos, a excepción de por su complejidad. El anexo B del estándar describe un detector de actividad vocal (VAD), que puede usar tanto el estándar G.79 como el G.79 A. El VAD permite la supresión de silencios (también llamadas discontinuidades en la transmisión) y generan ruido de confort. La supresión de silencios implica la detección de las partes de la señal donde no hay voz y hace discontinua la salida del codificador. El ruido confort se simula mediante ruido de fondo que suena durante la supresión de silencios para confirmar al oyente que la comunicación sigue activa. En una conversación normal la supresión de silencios reduce la cantidad de información enviada entre un 40 y un 60 %, reduciendo la tasa media de bit hasta en 4 bit/s. Por tanto, la utilización del estándar G.79 con su Anexo B reduce la demanda de ancho de banda no transmitiendo los silencios. 6

74 Recomendación G.79: CS-CELP 6

75 Implementación del codificador de voz 4 Implementación del codificador de voz 4. Introducción 4.. Definición del sistema a implementar El codificador que se va a implementar se basa en el definido en la recomendación G.79 de la ITU-T ( Codificación de la voz a 8 bit/s mediante predicción lineal con excitación por código algebraico de estructura conjugada ), con alguna pequeña modificación. Este tipo de predicción lineal se conoce genéricamente como CS-ACELP y a partir de ahora nos referiremos a ella de esta manera. El códec definido en la recomendación está diseñado para trabajar con una señal digital para efectuar primero un filtrado con la anchura de la banda telefónica de la señal analógica de entrada, seguido de un muestreo a 8000 Hz y su conversión a una modulación por impulsos codificados (MIC) lineal de 6 bits, para entrar en el codificador. La salida del decodificador se reconvierte a una señal analógica siguiendo un método similar. Este estudio se centrará exclusivamente al estudio de codificador y decodificador, dejando lo demás (paso de señales de analógico a digital y viceversa antes y después del sistema en función de la red en que trabaje, cuantización y envío de parámetros ) para próximos estudios sobre el tema. El códec CS-CELP se basa en el modelo de codificación mediante predicción lineal con excitación por código (CELP). Opera con tramas vocales de 0 ms correspondientes a 80 muestras a una velocidad de muestreo de 8000 muestras por segundo. En cada trama de 0 ms se analiza la señal vocal para extraer los parámetros del modelo CELP (coeficientes de filtro de predicción lineal, ganancias e índices de las tablas de códigos adaptativos y fijos). Los parámetros en cuestión se codifican y se transmiten. En el decodificador, dichos parámetros se usan para recuperar los parámetros de excitación y del filtro de síntesis. La voz se reconstruye filtrando la 63

76 Implementación del codificador de voz excitación a través del filtro de síntesis de corto plazo como se ve en la figura 4. El filtro de síntesis de corto plazo se basa en un filtro de predicción lineal de décimo orden. El filtro de síntesis de largo plazo o de pitch se aplica mediante el método de la llamada tabla de códigos adaptativos. Tras calcular la señal vocal reconstruida, ésta se mejora con un postfiltrado. Además, para la correcta implementación del código en Matlab se añadirán ceros al inicio de ciertas señales (para el tratamiento de las primeras tramas), evitando de esta forma la posibilidad de tener índices con valores cero o negativos, no permitidos por esta aplicación. Para ir viendo la evolución de la señal en los diferentes puntos de codificador y decodificador, se empleará una ventana de 40 muestras de la vocal a de la palabra campo. Fig. 4.- Diagrama funcional del modelo conceptual de síntesis (CELP) 4.. Codificador El principio de codificación puede observarse en la figura 5. La señal de entrada se pasa por un filtro de paso de alta y se pone a escala en el bloque de preprocesamiento. La señal preprocesada actúa como señal de entrada para todo el análisis posterior. Se efectúa un análisis de predicción lineal para cada trama de 0 ms con el fin de calcular los coeficientes del filtro LP. Éstos se convierten en pares del espectro lineal (LSP, line spectrum pair). La cuantización de estos parámetros que se ha realizado es una cuantización lineal (La cuantización de estos parámetros, al igual que la de otros que veremos más adelante, de una forma más eficiente se deja propuesta para posteriores estudios). La señal de excitación se selecciona utilizando un procedimiento de búsqueda basado en el análisis por síntesis, según el cual la diferencia entre la señal original y la reconstruida se reduce al mínimo de acuerdo con una medida de la distorsión ponderada perceptualmente. Esto se logra pasando la señal de error por un filtro de ponderación perceptual, cuyos coeficientes se derivan del filtro LP sin cuantificar. El valor de la ponderación perceptual se hace adaptativo, con el fin de mejorar la calidad para señales de entrada con una respuesta de frecuencia plana. El primer paso del proceso es analizar el retraso de pitch. Esto se hace analizando la autocorrelación de la señal de voz (ponderada para enfatizar diversas características en frecuencia), y encontrando el máximo con la menor posición, de 64

77 Implementación del codificador de voz forma que no se tomen múltiplos del retraso de pitch. A esto se le denomina análisis de pitch en bucle abierto. Se hace una búsqueda en la región alrededor del retraso de pitch en bucle abierto para encontrar el mejor retraso de pitch. El mejor retraso se define filtrando la excitación previa (retrasada la cantidad apropiada) a través del filtro de síntesis LP. El resultado es correlacionado con la señal de voz actual y dividido por la magnitud de la salida del filtro de síntesis, con lo cual se elimina la ganancia del proceso de búsqueda. Se toma el retraso que maximiza esta cantidad. La ganancia se obtiene directamente a partir de la excitación óptima. Se extrae de la señal de voz original la salida del filtro de síntesis usando el retraso óptimo y la excitación amplificada, y la diferencia, llamada señal objetivo, se usa para encontrar la segunda parte de la excitación. La excitación consiste en cuatro impulsos. Cada impulso tiene una amplitud positiva o negativa, y puede encontrarse dentro de un conjunto fijo de posiciones, que es diferente para cada impulso. Estos pulsos se filtran mediante un filtro armónico simple. La búsqueda se realiza, primero identificando las amplitudes ideales (positivas o negativas), y después las posiciones. Como antes, la búsqueda se realiza filtrando la señal de excitación a través del filtro de síntesis, y comparando el resultado con la señal objetivo. Después es dividida por la energía de la señal de salida del filtro de síntesis (eliminando de nuevo la ganancia del proceso de búsqueda). Se selecciona el conjunto de amplitudes y posiciones que maximizan esta métrica. Finalmente la ganancia se calcula directamente. Los parámetros de excitación (parámetros de tabla de códigos fijos y adaptativos) se determinan para cada subtrama de 5 ms (40 muestras). Los coeficientes cuantificados y no cuantificados del filtro LP se aplican a la segunda subtrama, mientras que para la primera subtrama se utilizan coeficientes del filtro LP interpolados (cuantificados o no). Se estima un retardo de tono ó pitch en bucle abierto por cada trama de 0 ms en base a la señal vocal ponderada perceptualmente. Luego se efectúan, para cada subtrama por separado, las siguientes operaciones: Se calcula la señal objetivo x(n) pasando el LP residual por el filtro de síntesis ponderado W ( z) Aˆ ( z). Los estados iniciales de estos filtros se actualizan filtrando la diferencia que se produce entre el residuo LP y la excitación. Ello equivale al método corriente de sustraer de la señal vocal ponderada la respuesta de entrada cero del filtro de síntesis ponderado. Se calcula la respuesta de impulso h(n) del filtro de síntesis ponderado. Se analiza el tono en bucle cerrado (para determinar el retardo y la ganancia de la tabla de códigos adaptativos) mediante la respuesta objetivo x(n) y la respuesta a los impulsos h(n), indagando en torno al valor del retardo en bucle abierto. Se utiliza un retardo fraccionario de /3 de definición. La señal objetivo x(n) se actualiza sustrayendo la contribución (filtrada) de la tabla de códigos adaptativos y se aplica este nuevo objetivo, x (n), para la búsqueda de de la tabla de códigos fijos, con el fin de obtener la excitación óptima. Se construye la tabla de códigos fijos, y 65

78 Implementación del codificador de voz Finalmente se actualizan las memorias de los filtros mediante la señal de excitación así determinada. Figura 5.- Principio de codificación del codificador 4..3 Decodificador El principio del decodificador aparece en la figura 6. Primero se extraen los índices de los parámetros a partir del tren de bits recibidos. Los índices se decodifican para obtener los parámetros del códec correspondientes a una trama de voz de 0 ms. Estos parámetros son los coeficientes LSP, los dos retardos de tono fraccionarios, los dos vectores de de la tabla de códigos fijos y las ganancias de las tablas de códigos adaptativos y fijos. Los coeficientes LSP se interpolan y se convierten en coeficientes del filtro LP de cada subtrama. A continuación, para cada subtrama de 5 ms se aplican los siguientes pasos: 66

79 Implementación del codificador de voz Se construye la excitación sumando los vectores de las tablas de los códigos adaptativos y fijos, puestos a escala por sus respectivas ganancias. Se reconstruye la señal vocal filtrando la excitación por el filtro de síntesis LP. Se hace pasar la señal vocal reconstruida a través de una fase de postprocesamiento, que incluye un postfiltro adaptativo basado en filtros de síntesis de largo y corto alcance, seguido de un filtro paso de alta y un escalamiento. Figura 6.- Principio del decodificador 4. Descripción de las funciones del codificador En este apartado se describen las diferentes funciones del codificador representadas por los bloques de la Figura 5. Se presente un flujo más detallado de las señales en la Figura 7. 67

80 Implementación del codificador de voz Figura 7.- Flujo de señales en el codificador 68

81 Implementación del codificador de voz 4.. Preprocesamiento Como ya se ha indicado anteriormente la entrada al codificador debe ser una señal MIC (modulación por impulsos codificados) de 6 bits. Antes de iniciarse la codificación se efectúan dos funciones de preprocesamiento:. escalamiento de las señales. filtrado paso de alta Para poner la señal en escala se divide la entrada por, con la finalidad de reducir los desbordamientos. El filtro paso alto es una precaución para evitar componentes indeseables de baja frecuencia. Se utiliza un filtro de polos y ceros de segundo orden con una frecuencia de corte de 40 Hz. Ambas funciones, el escalamiento y el filtrado paso alto, se combinan dividiendo los coeficientes del numerador de este filtro por. El filtro resultante está dado por la expresión: 0, ,974705z + 0, z H h ( z) = (4.), z + 0,9404z Figura 8.- Filtro de preprocesado La señal de entrada filtrada mediante H ( z h ) se define como s(n), símbolo que se utilizará de ahora en adelante en todas las demás aplicaciones del códec. 69

82 Implementación del codificador de voz 4.. Análisis y cuantización de la predicción lineal Los filtros de análisis y síntesis de predicción de corto plazo se basan en filtros de predicción lineal (LP), ya vistos con anterioridad. Para nuestro codificador emplearemos un filtro de orden 0. El filtro de síntesis LP se define por: H ( z) = = (4.) 0 Â( z) + â z = donde â, =,,,0, representa los coeficientes (cuantificados) de predicción lineal (LP). La predicción a corto plazo o predicción lineal se lleva a cabo para cada trama mediante el método de autocorrelación, con una ventana asimétrica de 30 ms. Cada 80 muestras (0 ms), se calculan los coeficientes de autocorrelación de las señales vocales ventanizadas y se convierten en coeficientes LP por medio del algoritmo de Levinson. Luego los coeficientes LP se transforman al dominio LSP, para permitir la cuantificación e interpolación. Los filtros interpolados, cuantificados o no, se reconvierten en coeficientes LP (a fin de construir los filtros de síntesis y ponderación para cada subtrama) Ventanización y cálculo de la autocorrelación La ventana de análisis LP consta de dos partes: la primera es media ventana de Hamming y la segunda un cuarto del ciclo de la función coseno. La ventana está dada por la ecuación: πn 0,54 0,46cos( ) n =,...,00 w = 399 lp ( n) (4.3) π ( n 0) cos( ) n = 0,...,

83 Implementación del codificador de voz Figura 9.- Ventana para el análisis LP Como en el análisis de predicción lineal hay un preanálisis de 5 ms, lo cual requiere 40 muestras de la trama vocal futura. La ventana del análisis LP se aplica a 0 muestras de las tramas vocales precedentes, 80 muestras de la trama vocal presente y 40 muestras de la trama futura. La ventana puede verse gráficamente en la figura 9. En ella puede verse cómo la parte que más peso va a tener es la comprendida entre el inicio de la trama actual y la mitad de la subtrama siguiente. En el siguiente diagrama (figura 30) puede verse cómo quedarían las ventanas y a qué muestras afectaría cada una si se tomara la señal vocal, dividida en tramas de 80 muestras, y se superpusiesen las ventanas. El diferente sombreado identifica las correspondientes excitación (señal vocal) y ventanas de análisis LP. Figura 30.- Procedimiento de ventanización en el análisis LP La señal vocal ventanizada se obtiene pasando la señal vocal a través de la ventana: s' ( n) = wlp ( n) s( n) n =,...,40 (4.4) Si se toma un trozo de la señal de voz y la enventanamos usando la ventana definida, se obtiene lo siguiente: Figura 3.- Tramo de señal de voz original y enventanada en el espacio muestral y en frecuencia 7

84 Implementación del codificador de voz Como puede apreciarse, en las gráficas de la figura 3, las muestras que más valor tendrán en el posterior procesamiento van a ser las de la trama actual. Si se superponen las dos señales, figura 3, se puede apreciar mejor. Al usar una ventana tan grande, abarca tres tramas de la señal vocal, se busca una mayor resolución en la frecuencia. Figura 3.- Tramo de señal de voz original y enventanada superpuestos en el espacio muestral Figura 33.- Espectros de un tramo de señal de voz original y enventanada superpuestos 7

85 Implementación del codificador de voz Esta señal ventanizada es la que se utiliza para calcular los coeficientes de autocorrelación: r( i) 40 = n= i s'( n) s'( n i) i =,..., (4.5) Con el fin de eludir problemas aritméticos para las señales de entrada de bajo nivel, se pone un límite inferior al primer coeficiente de la autocorrelación de r()=,0. Como el análisis LP puede generar filtros de síntesis con picos espectrales afilados, se expande el ancho de banda para evitar problemas. La expansión afecta especialmente a los picos de los formantes principales de la respuesta en magnitud del filtro. Normalmente esta expansión del ancho de banda se emplea para evitar sonidos sintetizados no naturales en señales de voz con un pitch elevado, cuando el análisis LP tiene problemas a la hora de estimar la envolvente del espectro. Además, la expansión aumenta la robustez del filtro frente a errores de cuantización. Una expansión del ancho de banda de 60 Hz se hace multiplicando los coeficientes de autocorrelación por los factores: w lag πf 0i ( i) = exp =,..., i f s (4.6) donde f 0 =60 Hz es la expansión de la anchura de banda y f s =8000 Hz es la frecuencia de muestreo. Se hace, además, una corrección por ruido blanco para reducir posibles problemas numéricos en el análisis LP. La voz tiene un espectro con un fuerte filtrado en baja frecuencia (-6 db/octava), por lo que presenta un rango dinámico elevado. A pesar de que la expansión del ancho de banda minimiza el rango dinámico al reducir sus picos, las componentes de alta frecuencia en el espectro de la señal de voz tienen una amplitud muy pequeña. La corrección se usa dado que el análisis LP requiere una alta precisión computacional para capturar la descripción de los elementos en el extremo final del espectro de la señal de voz. Cuando estos elementos son muy pequeños, la matriz de autocorrelación se vuelve singular, generando problemas computacionales. Añadiendo a la señal un ruido de bajo nivel, se reduce el rango dinámico del espectro y se evitan los problemas numéricos. Para introducir esta corrección se multiplica r() por un factor de corrección por ruido blanco,000, lo que equivale a añadir un umbral de ruido de -40 db a la señal. Los coeficientes de autocorrelación modificados están definidos por: r '() =,000r () r' ( i) = wlag ( i) r( i) i =,..., (4.7) Si se representa las densidades espectrales de una ventana de la señal con sus coeficientes de autocorrelación sin modificar y modificados, se observa como se suavizan los picos del espectro, afectando especialmente a los picos de los formantes principales: 73

86 Implementación del codificador de voz Figura 34.- Densidad espectral de un tramo de voz sin modificar sus coeficientes de autocorrelación y modificándolos 4... Algoritmo de Levinson-Durbin Los coeficientes de autocorrelación modificados r' ( i) se utilizan para obtener los coeficientes de filtro LP a, =,,. Esta operación se realiza tal y como se explicó en la parte teórica, resolviendo el siguiente conjunto de ecuaciones: j= a j r'( i j ) = r( i) i =,..., (4.8) que se obtienen a partir de la ecuación fundamental del modelo LPC y, donde los coeficientes a j son las estimaciones de los coeficientes a. Este conjunto de ecuaciones (4.8) se resuelve mediante el algoritmo de Levinson Durbin. Esto puede realizarse mediante la función levinson de Matlab, a la cual solo se le pasa como argumento los coeficientes de autocorrelación modificados. La solución final se expresa por j a j [ 0] a =, j =,,, con a =, 0. 74

87 Implementación del codificador de voz Conversión LP -> LSP Los coeficientes de filtro de predicción lineal (LP), a j, j =,,, se convierten para los efectos de cuantificación e interpolación en coeficientes de pares del espectro lineal (LSP). Esta conversión se efectúa tal y como se vio en la parte teórica, aunque a efecto prácticos se usará el comando de Matlab polylsf, que realiza dicha conversión Cuantización de los coeficientes LSP De una manera sencilla se utilizará una cuantización lineal de los coeficientes LSP, en lugar de la cuantización vectorial descrita en la recomendación, que se dejará para posteriores estudios Interpolación de los coeficientes LSP Los coeficientes LP cuantizados (y no cuantizados) se utilizan para la segunda subtrama. Para la primera subtrama, los coeficientes LP cuantizados (y no cuantizados) se obtienen mediante interpolación lineal de los parámetros correspondientes en las subtramas adyacentes. La interpolación tiene lugar en los coeficientes LSP del dominio coseno. Sean q i (actual) los coeficientes LSP calculados para la trama actual de 0 ms, y q i (anterior) los coeficientes LSP calculados en la trama anterior de 0 ms. Los coeficientes LSP interpolados (no cuantizados) en cada una de las dos subtramas corresponden a: () ( anterior ) ( actual ) Subtrama : q = 0,5q + 0,5q i =,..., 0 i i i () ( actual ) Subtrama : qi = 0,5qi i =,..., 0 (4.9) El mismo procedimiento de interpolación se aplica a los coeficientes LSP cuantificados, sustituyendo q i por qˆ i en la ecuación (4.9) Conversión de LSP a LP Una vez cuantificados e interpolados los coeficientes LSP, se reconvierten en coeficientes LP a. Esta conversión se realiza de la siguiente manera. Se hallan los coeficientes de F (z) y F (z) ampliando las ecuaciones.6 tras conocer los coeficientes LSP cuantificados e interpolados. Los coeficientes f (i),i =,,5, se calculan a partir de q i mediante la relación recursiva: 75

88 Implementación del codificador de voz para i = a 5 fin f ( i) = q f ( i ) + f ( i ) para j = i decreciendo hasta fin f i [ i ] [ i ( ) ] [ i ( ) ] [ i j = f j q f ( j ) + f ] ( j ) i i con valores iniciales f (0) = y f (-) = 0. Los coeficientes f (i) se calculan de manera similar, sustituyendo q i- por q i. Después de determinar los coeficientes f (i) y f (i), F z F (i) y F (i) se multiplican por el factor +z - y -z - respectivamente, obteniendo ( ) y F ( z), o sea: f f ( i) = f( i) + f( i ) i =,...,5 ( i) = f ( i) f ( i ) i =,..., 5 (4.0) Finalmente, los coeficientes LP se calculan a partir de f ( i) y ( i) ( i) + 0,5 f ( i) ( i) 0,5 f ( i) f mediante: 0,5 f i =,...,5 a i = (4.) 0,5 f i = 6,...,0 Esto se deduce directamente de la relación A ( z) ( F ( z) + F ( z) )/ hecho de que F ( z) y ( z) antisimétricos. =, así como el F son respectivamente, polinomios simétricos y 4..3 Ponderación perceptual El filtro de ponderación perceptual se basa en los coeficientes del filtro LP no cuantizados a i y viene definido por: W ( z) ( z γ ) + = ( z γ ) + 0 A γ = = 0 A i γ = a a z z (4.) Los valores deγ y γ determinan la respuesta de frecuencia del filtro W (z). Mediante un ajuste adecuado de estas variables es posible lograr una ponderación más eficaz. El método consiste en hacer deγ y γ una función de la forma espectral de la señal de entrada. Se efectúa esta adaptación una vez por trama de 0 ms, pero aplicando un procedimiento de interpolación para cada primera subtrama, a fin de suavizar el proceso de adaptación. La forma del espectro se obtiene a partir de un filtro de predicción lineal de º orden, como resultado secundario de la recursión de Levinson- Durbin. Los coeficientes de reflexión se convierten en coeficientes o i, logaritmo relacionado de zona (LAR, Log Area Ratio) mediante: 76

89 Implementación del codificador de voz (,0 + i ) (,0 ) oi = log i =, (4.3) i Los coeficientes LAR correspondientes a la trama actual de 0 ms sirven para la segunda subtrama. Los coeficientes LAR de la primera subtrama se obtienen mediante interpolación lineal de los parámetros LAR de la trama anterior. Los coeficientes LAR interpolados en cada una de ambas subtramas están dados por: Subtrama : o Subtrama : o ( ) ( anterior ) ( actual ) i = 0,5o ( ) ( actual ) i = o i i + 0,5o i i =, i =, (4.4) La envolvente del espectro se caracteriza como plana (flat = ) o inclinada (flat = 0). Para cada subtrama se logra esta caracterización aplicando a los coeficientes LAR una función umbral. Para evitar cambios bruscos, se realiza una histéresis tomando en cuenta el valor de la envolvente (flat) en la subtrama anterior m-, 0 flat = flat ( m ) si si ( m) ( m) ( m ) o <,74 y o > 0,65 y flat = ( m) ( m) ( m ) ( o >,5 obien o < 0,43) y flat en los otros casos = 0 (4.5) Cuando el espectro interpolado para una subtrama se califica de plano ( m) flat =, los factores de ponderación se establecen en γ =,94 y γ 0, 6. Cuando ( ) ( ) ( ) 0 = m el espectro se califica de inclinado flat = 0, el valor de γ se establece a 0,98 y el de γ se adapta a la intensidad de las resonancias en el filtro de síntesis LP, pero limitado entre 0,4 y 0,7. En caso de registrarse una fuerte resonancia, el valor de γ se fija más cerca del límite superior. Esta adaptación se logra en base al criterio de la distancia mínima entre dos coeficientes LSP sucesivos para la subtrama actual. La distancia mínima está dada por: d [ ω ],..., 9 ω (4.6) min = mín i+ i i = El valor de γ se calcula mediante la relación lineal: γ =,0d +,0 en el int ervalo 0,4 γ 0,7 (4.7) 6 min Si se representa la forma del filtro para cada una de estas situaciones, es decir, con γ = 0,94 y γ = 0, 6 para el caso en que el espectro resulte plano, y con unos valores cualesquiera de entre los posibles, por ejemploγ = 0,98 y γ = 0, 7, para un espectro inclinado: 77

90 Implementación del codificador de voz Figura 35.- Comparación del filtro de ponderación cuando la envolvente se considera plana y cuando se considera inclinada La señal vocal ponderada en una subtrama está dada por: 0 0 sw( n) = s( n) + aγ s( n ) aγ sw( n ) n =,...,40 (4.8) = = Figura 36.- Tramo de señal vocal sin ponderar y ponderado en el espacio muestral y en frecuencia 78

91 Implementación del codificador de voz Si se compara el mismo tramo de la señal vocal sin ponderar y una vez ponderado, se aprecia el efecto que tiene la ponderación sobre la señal vocal, que consiste principalmente en una disminución de la amplitud de los picos y valles de la señal, sin grandes cambios en la forma de onda. Figura 37.- Representación señal vocal sin ponderar frente a señal vocal ponderada en el espacio muestral Figura 38.- Representación espectro señal vocal sin ponderar frente a espectro señal vocal ponderada 79

92 Implementación del codificador de voz La señal vocal ponderada sw(n) se utiliza para estimar el retardo de tono en la trama vocal Análisis de tono en bucle abierto Con el fin de disminuir la complejidad que implica buscar el mejor retardo de la tabla de códigos adaptativos, el campo de búsqueda se limita en torno a un retardo candidato T op, que se obtiene de un análisis de tono en bucle abierto. Este análisis de tono en bucle abierto se efectúa una vez por cada trama (0 ms). La estimación de tono en bucle abierto utiliza los valores de la señal vocal ponderada sw(n) de la ecuación 4.8, y el método descrito a continuación: - como primer paso, se establecen tres máximos de la correlación 80 R( α ) = sw( n) sw( n α) (4.9) n= para los tres rangos siguientes: i = : 8,,44 i = : 4,,80 i = :,,40 - Los máximos retenidos R(t i ), i =,,3 se normalizan mediante: R( ti ) R'( ti ) = i =,...,3 (4.0) sw ( n t ) n i - El ganador de las tres correlaciones normalizadas se selecciona favoreciendo aquellos retardos que presentan valores en la gama inferior. Ello se logra ponderando las correlaciones normalizadas correspondientes a los retardos más largos. El mejor retardo de bucle abierto T op se determina de la siguiente manera: T op = t R' ( Top ) = R'( t) si R ( t ) 0,85R' ( T ) ' op R' ( T op ) = R' ( t ) T op = t fin si R ( t ) 0,85R'( T ) fin ' 3 op R' ( T op ) = R' ( t3 ) T op = t 3 80

93 Implementación del codificador de voz El recurso de dividir la gama de retardos en tres secciones para favorecer los valores menores tiene por objeto evitar la elección de los múltiplos del tono fundamental (pitch) Cálculo de la respuesta impulsiva La respuesta a impulsos h(n) del filtro de síntesis ponderado W(z)/Â(z) se necesita para indagar las tablas de códigos adaptativos y fijos. Se calcula la respuesta de impulso h(n) para cada subtrama filtrando una señal consistente en los coeficientes del filtro A(z/γ ) completado con ceros, a través de ambos filtros /Â(z) y /A(z/γ ). El filtro de síntesis y el filtro de síntesis ponderado se muestran en la figura 39. Puede observarse claramente el efecto de la ponderación: Figura 39.- Filtro de síntesis y filtro de síntesis ponderado La respuesta impulsiva de este filtro es la siguiente: Figura 40.- Respuesta impulsiva del filtro de síntesis ponderado 8

94 Implementación del codificador de voz 4..6 Cálculo de la señal objetivo La señal objetivo x(n) que se usará como referencia para la búsqueda de la tabla de códigos adaptativos suele calcularse restando la respuesta de entrada cero del filtro de síntesis ponderado W(z)/Â(z) = A(z/γ )/[ Â(z)A(z/γ )] de la señal vocal ponderada sw(n) de la ecuación 4.8. Esto se realiza para cada subtrama. Un procedimiento equivalente para calcular la señal objetivo, que será el que usaremos en este desarrollo, consiste en filtrar la señal LP residual r(n) a través de la combinación del filtro de síntesis /Â(z) y el filtro de ponderación A(z/γ )/A(z/γ ). Tras determinar la excitación correspondiente a la subtrama, los estados iniciales de dichos filtros se actualizan filtrando la diferencia entre las señales residuales y de excitación. La actualización de la memoria de estos filtros se examinará más adelante. La señal residual r(n), necesaria para determinar el vector objetivo, también se aplica a la búsqueda de la tabla de códigos adaptativos, para ampliar la memoria intermedia de la excitación anterior. El recurso simplifica el procedimiento de búsqueda de la tabla de códigos adaptativos para retardos menores que el correspondiente a una subtrama de tamaño 40, como se verá en el siguiente apartado. El residuo LP está definido por: 0 r( n) = s( n) + â s( n ) n =,,40 (4.) = Si se calcula el residuo del tramo de voz que se está empleando, se obtiene: Figura 4.- Residuo LP de un tramo de la señal de voz La señal objetivo se muestra en la figura 4. Al igual que en el residuo LP todavía se aprecia la periodicidad de la señal. 8

95 Implementación del codificador de voz Figura 4.- Señal objetivo en el tiempo y en la frecuencia 4..7 Búsqueda de la tabla de códigos adaptativos La tabla de códigos adaptativa se basa en un filtro de síntesis de pitch, que es el responsable del tratamiento de los efectos de largo plazo. La salida del filtro de pitch ó de largo plazo es simplemente la señal de excitación previa retrasada una cierta cantidad (retraso) y escalada con una cierta ganancia. Los componentes de la tabla de códigos adaptativos representan la periodicidad de la señal de excitación usando un retraso de pitch fraccionario con una resolución de /3. El índice y la ganancia de la tabla se encuentran usando una búsqueda en bucle cerrado sobre el retraso obtenido en la búsqueda en bucle abierto. La señal a ajustar será la señal objetivo. Los parámetros de la tabla de códigos adaptativos (o parámetros de tono) son, por tanto, el retardo y la ganancia. Con arreglo al método de la tabla de códigos adaptativos para aplicar el filtro de tono se repite la excitación para retardos menores que la longitud de la subtrama. En la fase de reconocimiento, la excitación se amplia mediante el residuo LP, para simplificar la búsqueda en bucle cerrado. La búsqueda de la tabla de códigos adaptativos se efectúa para cada subtrama (5 ms). Para cada subtrama, el retardo óptimo se determina mediante un análisis en bucle cerrado que minimiza el error cuadrático medio ponderado. En la primera subtrama, se determina el retardo T investigando un pequeño intervalo (seis muestras) de valores de retardo en torno al retardo en bucle abierto T op. Los límites de la búsqueda, t min y t max, se definen mediante: 83

96 Implementación del codificador de voz t min = T op 3 si t min < 0 entonces t min = 0 = t + 6 min t máx si t > 43 entonces fin máx t máx = 43 t min = t máx 6 Para la segunda subtrama, el análisis de tono en bucle cerrado se efectúa en torno al tono seleccionado para la primera subtrama, para determinar el retardo óptimo T. El intervalo de búsqueda está limitado entre t min 3 y t máx +, donde t min y t max se 3 deducen de T como sigue: t min = int( T ) 5 si t min < 0 entonces t min = 0 = t + 9 min t máx si t > 43 entonces fin máx t máx = 43 t min = t máx 9 La búsqueda de tono de bucle cerrado reduce al mínimo el error cuadrático medio ponderado entre la señal vocal original y la reconstruida. Esto se logra haciendo máximo el término: R( 40 n= α α ) = (4.) 40 n= x( n) y y α ( n) y ( n) α ( n) donde x(n) es la señal objetivo e y α (n) la excitación filtrada anterior en el retardo α (excitación anterior convolucionada con h(n)). Obsérvese que el intervalo de búsqueda está limitado en torno a un valor preseleccionado, correspondiente al tono en bucle abierto T op para la primera subtrama y T para la segunda subtrama. La convolución y α (n) se calcula para el retardo t min. Para los demás retardos enteros en el intervalo de búsqueda α=t min +,,t max, se actualiza mediante la relación recursiva: yα ( n) = yα ( n ) + u( α ) h( n) n = 40,..., (4.3) donde u(n), n = -44,,40 es la memoria intermedia de excitación e y α- (-) = 0. Nótese que, en la fase de búsqueda, las muestras u(n), n =,,40 no se conocen y se necesitan para determinar los retardos de tono inferiores a 40. Para simplificar la búsqueda, se 84

97 Implementación del codificador de voz copia el residuo LP a u(n), de modo que la relación expresada en la ecuación (4.3) sea válida para todos los retardos. Para determinar T y T cuando el retardo en bucle cerrado entero óptimo es inferior a 85, deben probarse las fracciones alrededor del retardo entero óptimo. La búsqueda de tono fraccionario se realiza interpolando la correlación normalizada de la ecuación (4.) para encontrar su valor máximo. La interpolación tiene lugar mediante un filtro FIR b basado en una función sinc de Hamming ventanizada con truncamiento a ± y completando con ceros a ± [b () = 0]. El filtro tiene una frecuencia de corte (-3 db) a 3600 Hz en el dominio de sobremuestra. Los valores interpolados de R(α) para las fracciones -⅔, -⅓, 0, ⅓ y ⅔ se obtienen aplicando la fórmula de interpolación: 3 3 R( α ) t = R( α i) b ( t + 3i) + R( α + + i) b (3 t + 3i) t = 0,, (4.4) i= 0 i= 0 donde t = 0,, corresponde a las fracciones 0, ⅓ y ⅔, respectivamente. Debe tenerse presente la necesidad de calcular los términos de correlación de la ecuación (4.) utilizando el intervalo entre t min 4 y t máx + 4, para permitir una interpolación adecuada Generación del vector de tabla de códigos adaptativos Una vez determinado el retardo de tono se calcula el vector de tabla de códigos adaptativos v(n) interpolando la señal de excitación anterior u(n) en el retardo entero dado α y la fracción t: 9 9 v( n) = u( n α + i) b30 ( t + 3i) + u( n α + + i) b30 (3 t + 3i) ; n =,...,40 ; t = 0,, i= 0 i= 0 (4.5) El filtro de interpolación b 30 se basa en una función sinc de Hamming ventanizada con truncamiento a ± 9 y completando con ceros a ± 30 [b 30 (30) = 0]. El filtro tiene una frecuencia de corte (-3 db) a 3600 Hz en el dominio de sobremuestra. 85

98 Implementación del codificador de voz Figura 43.- Filtro de interpolación Cálculo de la palabra de código para retardos de tabla de códigos adaptativos Los retardos de tono T y T no se envían directamente, sino que se codifican para enviarlos al decodificador, dos índices P y P que se obtienen a partir de los retardos fraccionarios, compuestos de su parte entera int(t) y su parte fraccionaria frac/3, frac = -, 0,. El índice de tono P se obtiene de la siguiente manera: 3( int( T) 9) ( int( T) 85) + frac si T= [9,, 85], frac = [-, 0,] P = (4.6) + 97 si T= [86,,43], frac = 0 El índice de tono T se codifica en relación con el valor de T. Aplicando la misma interpretación arriba indicada, se codifica el retardo fraccionario T, representado por su parte entera int(t) y una parte fraccionaria frac/3, frac = -, 0,, sobre la base de: ( T ) t ) + P = 3 int( min frac + (4.7) donde t min se deriva de T, igual que en el apartado Cálculo de la ganancia de tabla de códigos adaptativos Después de determinar el retardo de tabla de códigos adaptativos, se calcula la ganancia de tabla de códigos adaptativos g p según: 40 x( n) y( n) n= g p = en el intervalo 0 g 40 p, (4.8) y( n) y( n) n= 86

99 Implementación del codificador de voz donde x(n) es la señal objetivo e y(n) es el vector de la tabla de códigos adaptativos filtrado [respuesta al estado cero de W(z)/Â(z) respecto de v(n)]. Este vector se obtiene mediante convolución de v(n) con h(n): y( n) n = i= v( i) h( n i) n =,...,40 (4.9) 4..8 Tabla de códigos fijos: estructura y búsqueda La tabla de códigos fijos refleja lo que queda de la señal de voz original una vez se le ha extraído la información del tracto vocal y la del pitch (corto y largo plazo). Se basa en una estructura de tabla de códigos algebraicos mediante un diseño de permutación de impulso individual intercalado (ISPP, interleaved single-pulse permutation). En esta tabla, cada vector de la tabla de códigos contiene cuatro impulsos no cero. Cada impulso puede tener amplitudes + o - y asumir las posiciones que aparecen en el siguiente cuadro: Impulso Signo Posiciones i 0 s 0 : ± m 0 :, 6,, 6,, 6, 3, 36 i s : ± m :, 7,, 7,, 7, 3, 37 i s : ± m : 3, 8, 3, 8, 3, 8, 33, 38 i 3 s 3 : ± m : 4, 9, 4, 9, 4, 9, 34, 39 5, 0, 5, 0, 5, 30, 35, 40 Tabla 7.- Estructura de la tabla de códigos fijos El vector de tabla de códigos fijos c(n) se construye tomando un vector de dimensión 40 e introduciendo los cuatro impulsos unitarios en las posiciones encontradas, multiplicadas por su signo correspondiente: c n) = s δ ( n m ) + s δ ( n m ) + s δ ( n m ) + s δ ( n m ) n,...,40 (4.30) ( = donde δ(0) es un impulso unitario. Si se representa el vector de la tabla de códigos fijos del tramo de voz analizado, se tiene: 87

100 Implementación del codificador de voz Figura 44.- Vector de la tabla de códigos fijos, c(n) En este caso, los cuatro impulsos tienen signo negativo. Una característica especial incorporada en la tabla de códigos es que el vector de tabla de códigos seleccionado se pasa a través de un prefiltro adaptativo P(z) que amplia los componentes armónicos para mejorar la calidad de las señales vocales reconstruidas. Se utiliza para ello el filtro: T ( z ) P( z) = β (4.3) donde T es la componente entera del retardo de tono de la subtrama actual y β una ganancia de tono. El valor de β se hace adaptativo aplicando la cuantificación de la ganancia de la tabla de códigos adaptativos de la subtrama anterior, es decir: β = ˆ en el intervalo 0, β 0,8 (4.3) ( m ) g p El prefiltro adaptativo para el tramo de señal de voz a estudio, que tiene una β de 0, y una T de 5 (que equivale a una frecuencia de 53,85 Hz): Figura 45.- Prefiltro adaptativo 88

101 Implementación del codificador de voz Para retardos menores de 40, la tabla de códigos c(n) de la ecuación (4.30) se modifica con arreglo a: c( n) c( n) = c( n) + βc( n T ) n = 0,...,T - n = T,...,40 (4.33) Esta modificación se incorpora a la búsqueda de la tabla de códigos fijos modificando la respuesta a impulsos h(n) según: h( n) h( n) = h( n) + βh( n T ) n = 0,...,T - n = T,...,40 (4.34) Procedimiento de búsqueda de la tabla de códigos fijos La tabla de códigos fijos se explora para hacer mínimo el error cuadrático medio entre la señal de voz ponderada de entrada, sw(n), de la ecuación (4.8) y la señal de voz ponderada reconstruida. Se actualiza la señal objetivo utilizada para la búsqueda del tono en bucle cerrado restando la contribución de la tabla de códigos adaptativos, o sea: ( n) = x( n) g y( n) =,..., 40 x p n (4.35) donde y ( n) es el vector de la tabla de códigos adaptativos de la ecuación (4.9) y g p corresponde a la ganancia de la tabla de códigos adaptativos de la ecuación (4.8). Para el caso del tramo de la señal de voz estudiado, la ganancia de la tabla de la tabla de códigos adaptativos es cero (g p = 0), por tanto, la señal objetivo actualizada será igual a la señal objetivo original. Si se toma otro tramo donde esa ganancia no sea 0, Figura 46.- Comparación señal objetivo y señal objetivo actualizada 89

102 Implementación del codificador de voz Se aprecian pequeñas diferencias en ciertos lugares de la gráfica. Las diferencias entre una señal y otra no son muy significativas debido a que los valores que toma la ganancia de la tabla de códigos adaptativos son pequeños. La matriz H se define como la matriz inferior de convolución triangular de Toeplitz con diagonal h() y diagonales inferiores h(),, h(40). H = h h h h ( ) 0 0 ( ) h ( ) 0 ( 3) h( ) h ( ) M M O ( 40) h( 39) h( 38) L h( ) M L L L M (4.36) La matriz Ф=H t H contiene las correlaciones de h(n), mientras que los elementos de esta matriz simétrica están dados por: Φ 40 ( i, j) = h( n i) h( n j) i =,...,40 j = i,..., 40 n= j (4.37) La señal de correlación d(n) se obtiene a partir de la señal objetivo x (n) y la respuesta a los impulsos h(n) mediante: d 40 = i= n ( n) x ( i) h( i n) n =,..., 40 (4.38) Si c representa el -ésimo vector de la tabla de códigos fijos, la tabla de códigos se explora para hacer máxima la expresión: C E donde t denota transposición. 40 ( d( n) c ( n) ) n= = c Φc t (4.39) Por tanto, para calcular las posiciones y el signo de cada uno de los cuatro impulsos que conforman el vector de códigos fijos se va probando con cada una de las diferentes opciones que existen para cada uno de ellos, tomando la posición y el signo de aquel que maximice la expresión (4.39). Como ejemplo se presenta cómo se obtiene el primero de los impulsos para el tramo de voz estudiado: 90

103 Implementación del codificador de voz Figura 47.- Valores que toma la expresión (4.39) para el rango del primer impulso Viendo la gráfica, puede apreciarse que la expresión (4.39) tiene su máximo en la posición 3, dentro del rango de posibles valores para el primer impulso, y con signo negativo. Por lo tanto, el vector de códigos fijos tendrá un impulso negativo en la posición Cálculo de palabra de código de la tabla de códigos fijos Para la codificación de los impulsos se usarán dos palabras código: una para el signo y otra para la posición de los mismos. Definiendo s= cuando el signo es positivo y s=0 cuando el signo es negativo, la palabra de código de signo se obtiene de: S = s + s (4.40) + s + 4s3 8 4 y la palabra de código de la tabla de códigos fijos se obtiene de: ( m ) + 8( m 5) + 64( m 5) + 5( ( m ) jx) C = (4.4) donde jx = 0 cuando m 4 = 4, 8,, 39, y jx = cuando m 4 = 5, 0,, Cálculo de la ganancia de la tabla de códigos fijos Se calcula la ganancia de la tabla de códigos fijos a partir de las variables y vectores que se han calculado. La ganancia será equivalente a la expresión utilizada para calcular la posición y el signo de los impulsos del vector de la tabla de códigos fijos, pero sin elevar el numerador al cuadrado. La expresión de esta ganancia se obtiene en la parte teórica (apartado.4.) y es: 9

104 Implementación del codificador de voz g c 40 d = = Φc n t c ( n) c ( n) (4.4) 4..9 Actualización de la memoria Es necesario actualizar los estados de los filtros de síntesis y de ponderación para calcular la señal objetivo en la subtrama siguiente. Después de cuantificar las dos ganancias, la señal de excitación, u(n), en la subtrama actual se obtiene mediante: donde ĝ p y u ( n) = gˆ v( n) + gˆ c( n) n =,..., 40 p c (4.43) ĝ c son las ganancias cuantificadas de las tablas de códigos adaptativos y fijos respectivamente, v ( n) es el vector de tabla de códigos adaptativos (excitación anterior interpolada) y c ( n) es el vector de tabla de códigos fijos que incluye los armónicos ampliados. Si se representa la señal de excitación de una subtrama y de toda la ventana que estamos estudiando, se obtiene: Figura 48.- Señal de excitación de la subtrama y del tramo de la señal de voz 9

105 Implementación del codificador de voz 4.3 Descripción de las funciones del decodificador El principio del decodificador es el siguiente: - Se decodifican los parámetros enviados desde el codificador. - Esos parámetros se usan para calcular la señal de voz reconstruida. - La señal vocal reconstruida se mejora mediante una operación de postprocesamiento consistente en un postfiltro, un filtro paso de alta y un escalamiento ascendente Procedimiento de decodificación de los parámetros En nuestro caso, al no haberse realizado codificación de los coeficientes LSP, simplemente se realizó una cuantización lineal, solo habrá que aplicar el procedimiento de interpolación descrito en el apartado 4..5 para obtener dos conjuntos de coeficientes LSP interpolados (correspondientes a dos subtramas). Para cada subtrama los coeficientes LSP interpolados se convierten en coeficientes a del filtro LP, que se utilizan para sintetizar la señal vocal reconstruida en la subtrama. Figura 49.- Flujo de señales en el decodificador 93

106 Implementación del codificador de voz El proceso de decodificación tiene lugar en el siguiente orden (se repiten los siguientes pasos para cada subtrama): - Decodificar el vector de tabla de códigos adaptativos - Decodificar el vector de tabla de códigos fijos 3- Decodificar las ganancias de las tablas de códigos adaptativos y fijos 4- Calcular la señal vocal reconstruida Decodificación del vector de tabla de códigos adaptativos El índice P de tabla de códigos adaptativos se utiliza para determinar las partes entera y fraccionaria del retardo de tono T. La parte entera y la parte fraccionaria se obtienen a partir de T como se indica a continuación: si P < 97 de otro modo fin int ( T ) = ( P + ) / 3 = P 3int( T ) frac int ( T ) frac = 0 = P Las partes enteras y fraccionarias de T se obtienen a partir de P y t min, donde t min se deriva de T como sigue: t si t t min max si t fin = int min = t max t t ( T 5) < = 43 = t entonces t > 43 entonces max min min max 9 min = 0 Ahora se decodifica T mediante: int ( T ) = ( P + ) / 3 + tmin = P 3( ( P + ) / 3 ) frac (4.44) El vector de tabla de códigos adaptativos v(n) se encuentra interpolando la excitación anterior u(n) (en el retardo de tono) mediante la ecuación (4.5, tal y como se definió en el apartado (Generación del vector de la tabla de códigos adaptativos). 94

107 Implementación del codificador de voz 9 9 v( n) = u( n α + i) b30 ( t + 3i) + u( n α + + i) b30 (3 t + 3i) ; n =,...,40 ; t = 0,, i= 0 i= 0 (4.45) Decodificación del vector de tabla de códigos fijos El índice recibido C de tabla de códigos fijos se utiliza para extraer las posiciones de los impulsos de excitación. Los signos de los impulsos se obtienen a partir de S. Para ello se invierte el proceso descrito en el punto ( m ) + 8( m 5) + 64( m 5) + 5( ( m ) jx) C = (4.46) donde jx = 0 cuando m 4 = 4, 8,, 39, y jx = cuando m 4 = 5, 0,, 40. Se toma la palabra código y se ve si es un número entero o por el contrario es decimal. La aportación de los tres primeros impulsos del vector de la tabla de códigos fijos a la palabra código es un número cuya parte decimal es 0.8. Ahora bien, si el cuarto impulso del vector está dentro del rango 4, 9,, 39, su aportación a la palabra de código será un número con parte decimal 0. y, por tanto, la palabra de código será un número entero. Si por el contrario el cuarto impulso tomara su valor dentro del rango 5, 0,, 40, su aportación a la palabra de código sería un número entero, por lo que la palabra de código obtenida sería un número no entero y con parte decimal igual a 0.8. Resumiendo, si la palabra de código de la tabla de códigos fijos no es un número entero, entonces m 4 = 5, 0,, 40 y se despejaría su valor exacto del último término de la ecuación Si, por el contrario, el número es entero, se divide la palabra de código por 5 y se busca el número inmediatamente inferior al obtenido con parte decimal 0.8, con el cual se despejaría el valor de m 4, con m 4 = 4, 9,, 39. Se resta a la palabra de código la aportación del cuarto impulso, se divide por 64 y se busca el número inmediatamente inferior al obtenido con parte decimal 0.6, que sirve para calcular la posición exacta del tercer impulso m 3. Para el segundo impulso se realiza la misma operación que para el tercero, dividiendo por 8 y buscando un número con parte decimal igual a 0.4. Con el número resultante de restar a la palabra de código la contribución de los 3 últimos impulsos (m, m 3 y m 4 ) se calcula la posición del primer impulso. En el caso de la palabra de código de signo, que se obtenía: S = s + s (4.47) + s + 4s3 8 4 definiendo s= cuando el signo es positivo y s=0 cuando el signo es negativo. Se estudian todos y cada uno de los posibles valores de S (que se encuentran entre y 5) que hacen que el signo de cada uno de los impulsos sea positivo. 95

108 Implementación del codificador de voz Una vez decodificados los signos y las posiciones de los impulsos, se construye el vector c(n) de tabla de códigos fijos de acuerdo con la ecuación: c n) = s δ ( n m ) + s δ ( n m ) + s δ ( n m ) + s δ ( n m ) n,...,40 (4.48) ( = Si la parte entera del retardo de tono T es inferior al tamaño de la subtrama, fijado en 40, se modifica c(n) con arreglo a la ecuación: c( n) c( n) = c( n) + βc( n T ) n = 0,...,T - n = T,...,40 (4.49) Si se dibuja el vector c obtenido para la primera subtrama que se viene analizando: Figura 50.- Vector de tabla de códigos fijos de la subtrama una vez decodificado Comparando este resultado con el vector obtenido para la misma subtrama (figura 48), puede comprobarse que coinciden, teniendo los impulsos en las mismas posiciones y con los mismos signos Decodificación de las ganancias Para nuestro estudio se optó por codificar las ganancias simplemente usando una cuantificación lineal, por lo que no es necesaria la decodificación de las mismas Cálculo de la señal de voz reconstruida La excitación u(n) (véase la ecuación (4.43)) entra al filtro de síntesis LP. La señal de voz reconstruida para la subtrama está dada por: 96

109 Implementación del codificador de voz 0 = ( n ) s ˆ( n) = u( n) aˆ sˆ n =,..., 40 (4.50) donde â son los coeficientes interpolados del filtro LP para la subtrama actual. Si se representa el tramo de voz: Figura 5.- Señal de voz reconstruida y espectro de la misma en el decodificador antes de ser postprocesada Si se pone una señal frente a la otra en la misma gráfica, puede verse como las dos tienen prácticamente la misma forma de onda, aunque las amplitudes no son exactamente iguales. Este hecho se corrige, en parte, al realizar el postprocesamiento de la señal reconstruida s ˆ( n). Este postprocesamiento se describe en el siguiente apartado Postprocesamiento El postprocesamiento consta de tres funciones: postfiltrado adaptativo, filtrado de paso alto y aplicación de un escalamiento ascendente a las señales. El postfiltro adaptativo es una cascada de tres filtros: - Un postfiltro de largo plazo H p (z) - Un postfiltro de corto plazo H f (z). - Un filtro de compensación de pendiente H t (z). Todo ello seguido de un procedimiento de control de ganancia adaptativo. Los coeficientes del postfiltro se actualizan cada subtrama de 5 ms. El proceso de postfiltrado se organiza de la siguiente manera. En primer lugar, la voz reconstruida s ˆ( n) es filtrada inversamente a través de Â(z/γ n ), produciendo la señal residual r ˆ( n). Esta señal se usa para calcular el retardo T y la ganancia g t del filtro de largo plazo H p (z). La señal r ˆ( n) se filtra entonces a través del postfiltro de largo plazo H p (z) y el g Aˆ z γ. Por último, la señal de salida del filtro de síntesis [ ] filtro de síntesis ( ) f d 97

110 Implementación del codificador de voz [ g Aˆ ( z γ )] se pasa a través del filtro compensación de pendiente H t (z), para generar f d la señal vocal reconstruida postfiltrada sf(n). El control de ganancia adaptativo se aplica entonces a sf(n) para ajustar la energía de s ˆ( n). La señal resultante s f (n) pasa por un filtro de paso alto se escalona para producir la señal de salida del decodificador Postfiltro de largo plazo El postfiltro de largo plazo está dado por: H p T ( z) = ( + γ g z ) + γ g p l p l (4.5) donde T es el retardo de tono y g l el coeficiente de ganancia. Obsérvese que g l es como máximo y que su valor se fija en cero si la ganancia de predicción a largo plazo es inferior a 3 db. El factor γ p controla la cantidad de postfiltrado a largo plazo y tiene el valor γ p = 0,5. El retardo y la ganancia a largo plazo se calculan a partir de la señal residual r ˆ( n), que se obtiene al filtrar la señal vocal s ˆ( n) a través de Â(z/γ n ), numerador del postfiltrado de corto plazo (véase el apartado ). 0 = ( n ) rˆ( n) = sˆ( n) + γ aˆ sˆ (4.5) n El retardo de largo plazo se calcula en dos pasos. El primer paso selecciona el mejor entero T 0 en el intervalo [int(t )-,int(t )+], siendo int(t ) la parte entera del retardo (transmitido) de tono T en la primera subtrama. El retardo entero mejor es el que hace máxima la correlación: 40 n= ( n) rˆ ( n α ) R( α ) = rˆ (4.53) El segundo paso selecciona el mejor retardo fraccionario T con una definición de /8 en torno a T 0. Esto se obtiene buscando el retardo con la mayor correlación pseudonormalizada: donde ( n) R ( 40 rˆ n= α ( n) rˆ ( n) n= α α ) = (4.54) 40 rˆ ( n) rˆ ( n) α rˆ α es la señal residual en el retardo α. Obtenido el retardo óptimo T, la correlación correspondiente R (T) se normaliza respecto de la raíz cuadrada de la energía de rˆ ( n). El cuadrado de esta correlación normalizada se utiliza para determinar si el postfiltro de largo plazo debe desconectarse. Para ello se introduce g l = 0 cuando: 98

111 Implementación del codificador de voz 40 n= R ( T) rˆ ( n) r( n) < 0,5 (4.55) De otro modo, el valor de g l se calcula a partir de: 40 rˆ ( n) rˆ ( ) n= α n gl = en el int 40 rˆ ( n) rˆ ( n) n= α α La señal retardada no entera ( n) ervalo 0 g l,0 (4.56) rˆ α es el primer valor calculado mediante un filtro de interpolación de longitud 33. Después de seleccionar T, se calcula de nuevo ˆ n mediante un filtro de interpolación más largo, de longitud 9. La nueva señal r α ( ) reemplaza a la anterior solamente en el caso en que el filtro más largo aumente el valor de R (T). Para el caso del tramo de voz que se está analizando el coeficiente de ganancia es cero, ya que el retardo de la señal es mayor de 40, por lo que el postfiltro de largo plazo es un filtro de con valor la unidad en todo la banda. Se puede deducir que el postfiltro de largo plazo solo tendrá valor distinto de, es decir, solo será efectivo, cuando el retardo de la señal esté por debajo de 40, lo que equivale a tener una frecuencia por encima de los 00 Hz Postfiltro de corto plazo El postfiltro de corto plazo está dado por: H f ( z) g Aˆ Aˆ ( z γ ) + n = ( z γ d ) g f + = = 0 f 0 = γ aˆ z n d γ aˆ z (4.57) donde Â(z) es el filtro LP inverso cuantificado recibido (no hay análisis LP en el decodificador), mientras que los factores γ y γ controlan la cantidad de postfiltrado n de corto plazo, fijándose en γ n = 0, 55 y γ d = 0, 7. El término de ganancia g f se calcula en la respuesta a los impulsos truncada (n) Aˆ z γ Aˆ z γ y viene dado por: 0 n= ( n) d h f del filtro ( ) ( ) g = h (4.58) f f n d 99

112 Implementación del codificador de voz Figura 5.- Respuesta impulsiva truncada del filtro Aˆ ( z γ ) Aˆ ( z γ ) n d Figura 53.- Postfiltro de corto plazo para la subtrama de estudio Compensación de la pendiente El filtro H t ( z) compensa la pendiente en el postfiltrado de corto plazo ( z) viene dado por: ( z) = ( + z ) H f y H t γ t (4.59) g t donde γ es el factor de pendiente, siendo el primer coeficiente de reflexión h f n para: t calculado a partir de ( ) 00

113 Implementación del codificador de voz 0 i rh ( ) = rh ( i) = h f ( j) h f ( j + i) r ( ) h j= (4.60) El término de ganancia g = γ t compensa el efecto decreciente de g f en H f ( z). Se ha visto además que el filtro producto H f ( z) H t ( z) no suele generar ganancia. Dos valores de γ t se aplican según el signo de. Cuando es negativo, γ t = 0. 9, cuando es positivo, γ t = 0.. t Figura 54.- Filtro de compensación de la pendiente para la subtrama estudiada Control de ganancia adaptativo Se aplica el control de ganancia adaptativo para compensar las diferencias de ganancia entre la señal vocal reconstruida s ˆ( n) y la señal postfiltrada sf(n). El factor de escala de ganancia G para la subtrama actual se calcula mediante: 40 s = = ˆ n 40 n= ( n) ( n) G (4.6) sf La señal de ganancia postfiltrada a escala s f (n) está dada por: ( n) sf ( n),..., 40 sf ( n) = g n = (4.6) donde ( n) g se actualiza para cada muestra y su valor está determinado por: g ( n) ( n ) = 0,85g + 0,5G n =,...,40 (4.63) Se utiliza el valor inicial de ( 0) g se iguala a ( 0) g ( 40) g de la subtrama anterior. =,0. Seguidamente, para cada nueva subtrama, 0

114 Implementación del codificador de voz Veamos el efecto que tiene este postprocesamiento sobre la señal de voz comparando la señal antes de realizar el postprocesamiento y una vez realizado éste: Figura 55.- Comparación entre la señal de voz reconstruida en el decodificador antes y después del postprocesamiento Filtrado de paso alto y escalamiento ascendente Se aplica un filtro de paso alto con una frecuencia de corte 00 Hz a la señal de voz postfiltrada reconstruida s f (n). El filtro viene dado por: 0, , z + 0, z H h ( z) = (4.64), z + 0, z Figura 56.- Filtro paso alto 0

115 Implementación del codificador de voz La señal filtrada se multiplica por para restaurar el nivel de la señal de entrada. Por último, se compara la señal de entrada que se introdujo en el codificador y la señal de salida obtenida una vez realizada la decodificación. Figura 57.- Tramo de voz original Figura 58.- Tramo de voz una vez decodificado 03

116 Implementación del codificador de voz Las dos señales tienen una periodicidad evidente. No debe olvidarse que el tramo de voz elegido pertenece a un sonido vocálico. En la señal de voz original la periodicidad es más marcada, siendo el tramo que se repite prácticamente igual en cada repetición. En la señal decodificada también se observa esta periodicidad, si bien el tramo que se repite no es exactamente igual en cada repetición, aunque conserva los picos de la señal original en las mismas posiciones. Este hecho puede apreciarse con más detalle si se superponen las dos señales en una misma gráfica, tal y como se hace en la figura 59: Figura 59.- Comparación tramo de voz original y decodificado Si se realiza el mismo proceso para la señal en la frecuencia, poniendo en primer lugar el espectro de la señal de voz original, a continuación el de la señal de voz decodificada y, por último, superponiendo las dos señales en la misma gráfica. Puede verse cómo el espectro y la envolvente de las dos señales es prácticamente la misma teniendo magnitudes similares para cada frecuencia. Al mismo tiempo se aprecia que los picos del espectro de la señal decodificada son más finos que los de la señal original, estando situados más o menos en las mismas posiciones, lo cual queda de manifiesto en la figura 6. 04

117 Implementación del codificador de voz Figura 60.- Espectro señal de voz original Figura 6.- Espectro de la señal reconstruida (salida decodificador) 05

118 Implementación del codificador de voz Figura 6.- Comparación espectros de señal de voz original y señal de voz reconstruida a la salida del decodificador 06

119 Simulaciones 5 Simulaciones Una buena parte de las simulaciones se ha ido realizando a medida que se iba implementando el codificador, verificando en cada punto la evolución de la señal de voz, así como los diferentes filtros y señales que intervienen en cada uno de los puntos del procesado de la señal de voz. Para comprobar cómo de bien actúa el codificador que se ha implementado ante diferentes hablantes (con diferentes frecuencias de pitch) se tomarán dos frases: la primera de una voz masculina y la segunda de una femenina, y se estudiarán los resultados obtenidos en el espacio muestral, así como los espectrogramas y el pitch para cada una de ellas. Por último, se ha probado a introducir en el codificador una señal de audio para ver cómo de bien son codificadas este tipo de señales. En primer lugar se analizará la frase Tengo una casa en el campo, pronunciada por un hombre. En las siguientes figuras se muestran las representaciones de la señal de entrada al codificador y de salida del decodificador en el espacio muestral. Puede apreciarse cómo la señal de entrada al codificador (figura 63) y la señal de salida del decodificador (figura 64) son bastante similares, Con lo cual se puede decir que la forma de onda de las señales se ha modelado correctamente. Ahora bien, esto no es demasiado significativo, ya que a veces, aunque las señales no se parezcan en el tiempo, sí tienen las mismas características y, por lo tanto, suenan parecidas. Para analizar más detenidamente las características de las señales se usará el espectrograma de las mismas, que permitirá conocer si tienen las mismas características en la frecuencia. La representación de los espectrogramas de las señales de entrada al codificador (señal de voz original) y la de salida del decodificador se muestran en las figuras 65 y 66. Comparando los dos espectrogramas de las señales puede verse cómo la forma de onda en los dos casos es prácticamente la misma, confirmando lo 07

120 Simulaciones anteriormente avanzado en el análisis muestral de las señales. Con esto, se puede concluir que el tracto vocal se ha modelado correctamente. Figura 63.- Señal de entrada de voz masculina en el espacio muestral Figura 64.- Señal de salida de voz masculina en el espacio muestral 08

121 Simulaciones Figura 65.- Espectrograma de la señal de voz masculina original Figura 66.- Espectrograma de la señal de voz masculina a la salida del decodificador 09

122 Simulaciones Figura 67.- Señal de voz masculina de entrada: contorno de pitch, espectrograma y representación temporal Figura 68.- Señal de voz masculina de salida: contorno de pitch, espectrograma y representación temporal 0

123 Simulaciones Si en estas representaciones se estudia el pitch de la señal, se comprueba que éste se aprecia mucho mejor en la señal original, apareciendo de una manera menos clara en la señal decodificada, con lo que no puede asegurarse que sea igual en las dos señales. A continuación se realizará un estudio del pitch de la señal para comprobar que realmente la señal obtenida tras la decodificación conserva el mismo pitch que la señal original, es decir, que esta información no se ha perdido en el proceso de codificación y decodificación. Esto se comprobará utilizando el programa wavesurf v.0.9.5, que permite analizar el pitch de la señal. Si se toma la señal de entrada y se analiza mediante el programa mencionado y se representa el contorno del pitch de la señal, su espectrograma y su representación temporal se obtienen las gráficas de la figura 67. Realizando el mismo proceso para la señal de salida se obtienen las representaciones de la figura 68. Para apreciar mejor las modificaciones que haya podido sufrir el pitch de la señal tomaremos las representaciones del contorno de pitch de las dos señales y las compararemos. Observando las figuras 69 y 70 puede verse que, a pesar de que existen pequeñas variaciones en el contorno de pitch de la salida respecto del de la entrada, ambas siguen más o menos la misma trayectoria y con unas frecuencias de pitch similares, por lo que se podría decir que el pitch de la señal de entrada se mantiene tras la decodificación, si bien el codificador no consigue extraerlo con total precisión, perdiéndose de vez en cuando. Figura 69.- Contorno de pitch de la señal de voz masculina de entrada Figura 70.- Contorno de pitch de la señal de voz femenina de salida A continuación se realizará el mismo proceso (se representarán las señales de voz original y una vez decodificada en el espacio muestral, sus espectrogramas y se analizará el pitch mediante el programa wavesurfer v.0.9.5) con otra señal de voz, esta vez pronunciada por una mujer, para corroborar los datos obtenidos en estas simulaciones. En esta ocasión se utilizará la señal de voz Mi casa es muy bonita.

124 Simulaciones Figura 7.- Señal de voz femenina de entrada en el espacio muestral Figura 7.- Señal de voz femenina de salida en el espacio muestral

125 Simulaciones Figura 73.- Espectrograma de la señal de voz femenina original Figura 74.- Espectrograma de la señal de voz femenina a la salida del decodificador 3

126 Simulaciones Figura 75.- Señal de voz femenina de entrada: contorno de pitch, espectrograma y representación temporal Figura 76.- Señal de voz femenina de salida: contorno de pitch, espectrograma y representación temporal 4

127 Simulaciones Se puede observar como para una voz femenina el análisis de los resultados obtenidos es prácticamente el mismo que para la voz masculina. Al igual que se hizo con esta última se representará el pitch de cada una por separado para poder hacer una mejor comparación. Figura 77.- Contorno de pitch de la señal de voz femenina de entrada Figura 78.- Contorno de pitch de la señal de voz femenina de salida Como ocurría para el caso de una voz masculina, el pitch de la señal de salida se asemeja bastante, salvo ciertas desviaciones, al de la señal original, manteniendo prácticamente niveles de frecuencia similares. Además, si se comparan los resultados obtenidos para el pitch en los dos casos, se ve que para la voz masculina la frecuencia de pitch ronda los 50 Hz y en la femenina está más o menos por los 50 Hz, muy por encima de la del hombre, como generalmente suele ocurrir. Por último, vamos a introducir una señal de audio en el codificador para ver cómo se comporta el mismo ante este tipo de señales. En las figuras 79 y 80 se representan las señales de entrada y salida del sistema en el espacio muestral. En las figuras 8 y 8 se hace lo propio con los espectrogramas de las dos señales. 5

128 Simulaciones Figura 79.- Señal de audio de entrada en el espacio muestral Figura 80.- Señal de audio de salida en el espacio muestral 6

129 Simulaciones Figura 8.- Espectrograma de la señal de audio original Figura 8.- Espectrograma de la señal de audio a la salida del decodificador 7

130 Simulaciones Puede observarse cómo, al igual que ocurría con las señales de voz anteriormente analizadas, tampoco en las señales de audio se aprecia si se mantiene o no el pitch de la señal original, por lo que es necesario realizar el estudio del contorno de pitch para poder asegurar que se mantiene (figuras 83 y 84). Figura 83.- Contorno de pitch de la señal de audio de entrada Figura 84.- Contorno de pitch de la señal de voz audio de salida Prácticamente se puede apreciar lo mismo que para las señales de voz. El pitch de la señal de audio de salida toma valores de frecuencia en el mismo rango que la señal de entrada, existiendo variaciones más notables que para las observadas para las señales de voz. Si se escucha la señal a la salida, ésta se encuentra muy distorsionada con respecto a la original y que, si bien sigue siendo inteligible, tiene mucho ruido e interferencias. Con esto podemos concluir que el codificador implementado está específicamente diseñado para trabajar con señales de voz y aunque puede trabajar con señales de voz, la calidad obtenida es muy pobre. 8

Modelo de producción de la voz

Modelo de producción de la voz Modelo de producción de la voz Fonética y fonémica Fonema: Unidad teórica básica para describir cómo la voz transporta un significado lingüístico. Sonido: Realización práctica de un fonema Fonémica: Estudio

Más detalles

VOZ CODIFICADA DIGITALMENTE EN EL SERVICIO MÓVIL TERRESTRE

VOZ CODIFICADA DIGITALMENTE EN EL SERVICIO MÓVIL TERRESTRE Rec. UIT-R M.1309 1 RECOMENDACIÓN UIT-R M.1309* Rec. UIT-R M.1309 VOZ CODIFICADA DIGITALMENTE EN EL SERVICIO MÓVIL TERRESTRE (Cuestión UIT-R 101/8) (1997) Resumen Se ha desarrollado una gran cantidad de

Más detalles

TECNOLOGIAS DE LA VOZ

TECNOLOGIAS DE LA VOZ DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA Y COMUNICACIONES CENTRO POLITÉCNICO SUPERIOR UNIVERSIDAD DE ZARAGOZA TECNOLOGIAS DE LA VOZ 5000 0-5000 señal original 200 250 300 350 Señal sintetizada 10000 5000

Más detalles

TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN

TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN TEMA 2. CODIFICACIÓN DE LA INFORMACIÓN 1. INTRODUCCIÓN. SISTEMAS DE NUMERACIÓN EN. Sistema binario. Sistema octal. Sistema hexadecimal. 2. REPRESENTACIÓN DE TEXTOS.. Números naturales. Números enteros.

Más detalles

Tema 4. Codificación de la voz

Tema 4. Codificación de la voz Tema 4. Codificación de la voz 4.1.- Historia de los codificadores de voz 4.2.- Muestreo y cuantificación 4.3.- Clasificación de los codificadores de voz 4.4.- Introducción a los codificadores de forma

Más detalles

Comunicaciones I. Capítulo 4 CODIFICACIÓN Y MODULACIÓN

Comunicaciones I. Capítulo 4 CODIFICACIÓN Y MODULACIÓN Comunicaciones I Capítulo 4 CODIFICACIÓN Y MODULACIÓN 1 Resumen de lo visto en el Capítulo 4 Se analizó la diferencia entre datos analógicos y digitales, y entre señales analógicas y digitales. A partir

Más detalles

Procesamiento digital de voz

Procesamiento digital de voz Procesamiento digital de voz Seminario de Audio 2005 Ernesto López Martín Rocamora Producción del habla Aparato fonador Corte transversal de la laringe Sonidos sonoros y sordos Sonidos sonoros Forma de

Más detalles

CEDEHP Profesor: Agustín Solís M. CUESTIONARIO NRO. 2

CEDEHP Profesor: Agustín Solís M. CUESTIONARIO NRO. 2 CUESTIONARIO NRO. 2 1.- Represente esquemáticamente en la siguiente figura cada elemento esencial en el proceso de comunicación. 2.- Defina Brevemente Fuente de información. La información o inteligencia

Más detalles

3 SISTEMAS DE PROCESAMIENTO DIGITAL DE SEÑALES. ha desarrollado durante los últimos 30 años gracias a los avances tecnológicos de

3 SISTEMAS DE PROCESAMIENTO DIGITAL DE SEÑALES. ha desarrollado durante los últimos 30 años gracias a los avances tecnológicos de 3 SISTEMAS DE PROCESAMIENTO DIGITAL DE SEÑALES 3.1 Introducción al procesamiento digital de señales Una alternativa para el procesado analógico de señales es el procesado digital. Esta área se ha desarrollado

Más detalles

Compresión de Datos Multimedia

Compresión de Datos Multimedia Tema 3 Compresión de Datos Multimedia Introducción La compresión es una manipulación o transformación de la información de entrada, que se realiza antes de transmitirla. El objetivo es enviar la información

Más detalles

Introducción al procesamiento digital de señales en tiempo real

Introducción al procesamiento digital de señales en tiempo real Introducción al procesamiento digital de señales en tiempo real ELO 385 Laboratorio de Procesamiento Digital de Señales Segundo semestre - 2011 Matías Zañartu, Ph.D. Departamento de Electrónica Universidad

Más detalles

Laboratorio de Procesamiento Digital de Voz Practica 4 CUANTIZACION ESCALAR, LOGARITMICA, (A)DM y (A)DPCM

Laboratorio de Procesamiento Digital de Voz Practica 4 CUANTIZACION ESCALAR, LOGARITMICA, (A)DM y (A)DPCM Laboratorio de Procesamiento Digital de Voz Practica 4 CUANTIZACION ESCALAR, LOGARITMICA, (A)DM y (A)DPCM Objetivos: Manejar los conceptos de cuantización escalar, logarítmica y manejo de cuantizadores

Más detalles

No tienen componente en continua: Lo que implica todas las ventajas mencionadas anteriormente.

No tienen componente en continua: Lo que implica todas las ventajas mencionadas anteriormente. No tienen componente en continua: Lo que implica todas las ventajas mencionadas anteriormente. Detección de errores: Se pueden detectar errores si se observa una ausencia de transición esperada en mitad

Más detalles

Fundamentos de audio digital

Fundamentos de audio digital Fundamentos de audio digital Seminario de Audio 2005 Ernesto López Martín Rocamora Sistemas de audio digital Pilares de la digitalización: Muestreo Cuantización Tipos fundamentales de distorsión: Presencia

Más detalles

Universidad de Alcalá

Universidad de Alcalá Universidad de Alcalá Departamento de Electrónica CONVERSORES ANALÓGICO-DIGITALES Y DIGITALES-ANALÓGICOS Tecnología de Computadores Ingeniería en Informática Sira Palazuelos Manuel Ureña Mayo 2009 Índice

Más detalles

Trabajo opcional tema 3: modulación lineal

Trabajo opcional tema 3: modulación lineal Trabajo opcional tema 3: modulación lineal Alberto Mateos Checa I. Telecomunicación 2 Trabajo opcional tema 3: modulación lineal ÍNDICE DE CONTENIDOS: 1. Introducción.... 3 2. Diseño.... 3 2.1. Sistema

Más detalles

II Unidad Diagramas en bloque de transmisores /receptores

II Unidad Diagramas en bloque de transmisores /receptores 1 Diagramas en bloque de transmisores /receptores 10-04-2015 2 Amplitud modulada AM Frecuencia modulada FM Diagramas en bloque de transmisores /receptores Amplitud modulada AM En la modulación de amplitud

Más detalles

PROGRAMA DE ESTUDIO. Práctica. Práctica ( ) Semestre recomendado: 8º. Requisitos curriculares: Sistemas Digitales 2

PROGRAMA DE ESTUDIO. Práctica. Práctica ( ) Semestre recomendado: 8º. Requisitos curriculares: Sistemas Digitales 2 PROGRAMA DE ESTUDIO Nombre de la asignatura: PROCESAMIENTO DIGITAL DE SEÑALES Clave: IEE25 Fecha de elaboración: marzo 2015 Horas Semestre Horas semana Horas de Teoría Ciclo Formativo: Básico ( ) Profesional

Más detalles

Teoría de Comunicaciones

Teoría de Comunicaciones Teoría de Comunicaciones Ing. Jose Pastor Castillo. Jose.pastor@fiei.unfv.edu.pe Transmisión de Datos Un Modelo para las comunicaciones. Modelo de Comunicaciones Fuente: Dispositivo que genera los datos

Más detalles

Trabajo opcional tema 4: modulación

Trabajo opcional tema 4: modulación Trabajo opcional tema 4: modulación Alberto Mateos Checa I. Telecomunicación 2 Trabajo opcional tema 4: modulación angular ÍNDICE DE CONTENIDOS: 1. Introducción.... 3 2. Diseño.... 3 2.1. Sistema completo....

Más detalles

1. Introducción a las comunicaciones

1. Introducción a las comunicaciones 1. Introducción a las comunicaciones Introducción 1.1. Conceptos básicos de transmisión de datos 1.2. Medios de Transmisión. Capacidad de un canal 1.3 Técnicas de transmisión 1.4 Distribución de ancho

Más detalles

Redes y Comunicaciones

Redes y Comunicaciones Departamento de Sistemas de Comunicación y Control Redes y Comunicaciones Solucionario Tema 3: Datos y señales Tema 3: Datos y señales Resumen La información se debe transformar en señales electromagnéticas

Más detalles

Introducción a los Sistemas Digitales. Tema 1

Introducción a los Sistemas Digitales. Tema 1 Introducción a los Sistemas Digitales Tema 1 Qué sabrás al final del tema? Diferencia entre analógico y digital Cómo se usan niveles de tensión para representar magnitudes digitales Parámetros de una señal

Más detalles

Tema: Codificación de canal

Tema: Codificación de canal Tema: Codificación de canal Adriana Dapena Janeiro (adriana@udc.es) Facultad de Informática Universidade da Coruña Campus de Elviña s/n 15071. A Coruña Codificación de canal.- Adriana Dapena p. 1 Objetivos

Más detalles

Clasificación de los Convertidores DAC

Clasificación de los Convertidores DAC Clasificación de los Convertidores DAC Sistemas de Adquisición de datos () Según las características de la señal de entrada digital Codificación: Código: Binario Natural BCD Formato: Serie Paralelo Almacenamiento

Más detalles

Taller de Filtros Digitales 2016 Práctica 1

Taller de Filtros Digitales 2016 Práctica 1 Taller de Filtros Digitales 2016 Práctica 1 1. Objetivo El objetivo de esta práctica es la familiarización con el tratamiento digital de señales: Generación y visualización de señales digitales. Convolución

Más detalles

ELECTIVA I PROGRAMA DE FISICA Departamento de Física y Geología Universidad de Pamplona Marzo de 2010 NESTOR A. ARIAS HERNANDEZ - UNIPAMPLONA

ELECTIVA I PROGRAMA DE FISICA Departamento de Física y Geología Universidad de Pamplona Marzo de 2010 NESTOR A. ARIAS HERNANDEZ - UNIPAMPLONA ELECTIVA I PROGRAMA DE FISICA Departamento de Física y Geología Universidad de Pamplona Marzo de 2010 PDS Señal Analoga Señal Digital Estabilidad y Repetibilidad condiciones externa) Inmunidad al ruido

Más detalles

Capítulo 7 Modulación de Pulsos

Capítulo 7 Modulación de Pulsos 237 Capítulo 7 Modulación de Pulsos Introducción Las modulaciones de amplitud, frecuencia y fase tratadas en los capítulos anteriores se designan genéricamente como modulaciones de onda continua, en que

Más detalles

EL4005 Principios de Comunicaciones Clase No.3: Modelos de Canales y Modulación de Amplitud I

EL4005 Principios de Comunicaciones Clase No.3: Modelos de Canales y Modulación de Amplitud I EL4005 Principios de Comunicaciones Clase No.3: Modelos de Canales y Modulación de Amplitud I Patricio Parada Departamento de Ingeniería Eléctrica Universidad de Chile 18 de Agosto de 2010 1 of 25 Contenidos

Más detalles

RECOMENDACIÓN UIT-R BS *,** Medición del nivel de tensión del ruido de audiofrecuencia en radiodifusión sonora

RECOMENDACIÓN UIT-R BS *,** Medición del nivel de tensión del ruido de audiofrecuencia en radiodifusión sonora Rec. UIT-R BS.468-4 1 RECOMENDACIÓN UIT-R BS.468-4 *,** Medición del nivel de tensión del ruido de audiofrecuencia en radiodifusión sonora La Asamblea de Radiocomunicaciones de la UIT, (1970-1974-1978-1982-1986)

Más detalles

Teoria de las Telecomunicaciones. TEMA 2 Tècnicas de modulacion. Luis Lujan

Teoria de las Telecomunicaciones. TEMA 2 Tècnicas de modulacion. Luis Lujan Teoria de las Telecomunicaciones TEMA 2 Tècnicas de modulacion Luis Lujan 1 Índice Técnicas de codificación: Datos digitales: Señales digitales. Señales analógicas. Datos analógicos: Señales digitales.

Más detalles

UIT-T R.20 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT

UIT-T R.20 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT UNIÓN INTERNACIONAL DE TELECOMUNICACIONES UIT-T R.20 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT TELEGRAFÍA TRANSMISIÓN TELEGRÁFICA MÓDEM TELEGRÁFICO PARA LÍNEAS DE ABONADO Recomendación

Más detalles

El por qué del procesado de 64 bits

El por qué del procesado de 64 bits El por qué del procesado de 64 bits El ARTA64 es una versión experimental de ARTA que usa un formato de datos de coma flotante de 64 bits para el procesado de la Transformada de Fourier rápida (FFT). La

Más detalles

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN

ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES I CAPÍTULO III ARITMÉTICA Y CODIFICACIÓN TEMA 3. Aritmética y codificación 3.1 Aritmética binaria 3.2 Formatos de los números y su representación 3.3 Definiciones

Más detalles

6 Emisor Receptor AM. 6.1 Objetivo de la práctica. 6.2 Introducción teórica.

6 Emisor Receptor AM. 6.1 Objetivo de la práctica. 6.2 Introducción teórica. 6 Emisor Receptor AM 6.1 Objetivo de la práctica El objetivo de esta práctica es que el alumno utilice los dispositivos electrónicos estudiados a lo largo de la asignatura para la realización de circuitos

Más detalles

VoIP: Una Puerta hacia la Convergencia. Page 1

VoIP: Una Puerta hacia la Convergencia. Page 1 VoIP: Una Puerta hacia la Convergencia Page 1 Introducción a VoIP La Voz sobre IP, es el envío, en tiempo real, de voz entre dos o más participantes a través de redes, usando protocolos estándares de Internet,

Más detalles

EL4005 Principios de Comunicaciones Clase No.22: Señalización Ortogonal

EL4005 Principios de Comunicaciones Clase No.22: Señalización Ortogonal EL4005 Principios de Comunicaciones Clase No.22: Señalización Ortogonal Patricio Parada Departamento de Ingeniería Eléctrica Universidad de Chile 29 de Octubre de 2010 1 of 34 Contenidos de la Clase (1)

Más detalles

Última modificación: 1 de julio de

Última modificación: 1 de julio de Contenido SEÑALES DIGITALES Y CAPACIDAD DE CANAL 1.- Señales digitales de 2 y más niveles. 2.- Tasa de bit e intervalo de bit. 3.- Ancho de banda de una señal digital. 4.- Límites en la tasa de transmisión.

Más detalles

Conversión Analógica a Digital

Conversión Analógica a Digital Índice Conversión analógica a digital Señales básicas de tiempo discreto Relación Exponencial Discreta con sinusoides Relación Exponencial discreta con sinusoides Propiedades exponenciales complejas continuas

Más detalles

PRINCIPIOS BASICOS DE AUDIO COMO ESCUCHA EL SER HUMANO

PRINCIPIOS BASICOS DE AUDIO COMO ESCUCHA EL SER HUMANO PRINCIPIOS BASICOS DE AUDIO COMO ESCUCHA EL SER HUMANO Septiembre de 2012 PRESENTACION PERSONAL 2007 2006-2008 PRESENTACION PERSONAL 2008 -actual www.lacitaav.com 2008 -actual DEFINICIONES Sonido: ondas

Más detalles

1. Modelos Matemáticos y Experimentales 1

1. Modelos Matemáticos y Experimentales 1 . Modelos Matemáticos y Experimentales. Modelos Matemáticos y Experimentales.. Definición.. Tipos de Procesos.3. Tipos de Modelos 3.4. Transformada de Laplace 4.5. Función de Transferencia 7.6. Función

Más detalles

TEMA 1: SISTEMAS MODELADOS POR ECUACIONES DIFERENCIALES EN INGENIERÍA QUÍMICA. CLASIFICACIÓN. GENERALIDADES.

TEMA 1: SISTEMAS MODELADOS POR ECUACIONES DIFERENCIALES EN INGENIERÍA QUÍMICA. CLASIFICACIÓN. GENERALIDADES. TEMA 1: SISTEMAS MODELADOS POR ECUACIONES DIFERENCIALES EN INGENIERÍA QUÍMICA. CLASIFICACIÓN. GENERALIDADES. 1. INTRODUCCIÓN. PLANTEAMIENTO DE PROBLEMAS EN INGENIERÍA QUÍMICA 2. PROBLEMAS EXPRESADOS MEDIANTE

Más detalles

Conclusiones y Futuras Líneas de Investigación

Conclusiones y Futuras Líneas de Investigación Capítulo 8 Conclusiones y Futuras Líneas de Investigación Resumen En este capítulo se presentan las conclusiones de la tesis presentada, las principales aportaciones realizadas y algunas de las futuras

Más detalles

PRÁCTICA 1 ANÁLISIS DE SEÑALES EN EL DOMINIO DE LA FRECUENCIA: EL ANALIZADOR DE ESPECTROS

PRÁCTICA 1 ANÁLISIS DE SEÑALES EN EL DOMINIO DE LA FRECUENCIA: EL ANALIZADOR DE ESPECTROS PRÁCTICA 1 ANÁLISIS DE SEÑALES EN EL DOMINIO DE LA FRECUENCIA: EL ANALIZADOR DE ESPECTROS 1 Espectro de una señal GSM Las señales radiadas son susceptibles de ser interceptadas y analizadas. EJ. Monitorización

Más detalles

MONITOREO REMOTO MODULACIÓN Y DEMODULACION FM. INTRODUCCIÓN.

MONITOREO REMOTO MODULACIÓN Y DEMODULACION FM. INTRODUCCIÓN. MONITOREO REMOTO MODULACIÓN Y DEMODULACION FM. INTRODUCCIÓN. El importante desarrollo y avance de las telecomunicaciones ha tenido varios factores influyentes en su progreso, una de las principales ayudas

Más detalles

Tema 9. SISTEMAS COMBINACIONALES PROGRAMABLES SISTEMAS COMBINACIONALES PROGRAMABLES NO UNIVERSALES

Tema 9. SISTEMAS COMBINACIONALES PROGRAMABLES SISTEMAS COMBINACIONALES PROGRAMABLES NO UNIVERSALES Fundamentos de Computadores. Sistemas Combinacionales Programables. T9-1 Tema 9. SISTEMAS COMBINACIONALES PROGRAMABLES INDICE: INTRODUCCIÓN CLASIFICACION DE LOS SCP SISTEMAS COMBINACIONALES PROGRAMABLES

Más detalles

Definiciones. Ruido: Sonido no deseado, desagradable o molesto

Definiciones. Ruido: Sonido no deseado, desagradable o molesto Definiciones Ruido: Sonido no deseado, desagradable o molesto Sonido: Vibración mecánica transmitida por ondas en un medio elástico, que es capaz de ser percibida por órgano auditivo. Presión P 0 Distancia

Más detalles

CAPITULO 1 INTRODUCCION AL PROYECTO

CAPITULO 1 INTRODUCCION AL PROYECTO CAPITULO 1 INTRODUCCION AL PROYECTO 1 INTRODUCCION AL PROYECTO 1.1 Marco Teórico Los procesadores digitales de señales ganaron popularidad en los años sesentas con la introducción de la tecnología de estado

Más detalles

Procesamiento de Señales Digitales

Procesamiento de Señales Digitales Procesamiento de Señales Digitales La IEEE* Transactions on Signal Processing establece que el término señal incluye audio, video, voz, imagen, comunicación, geofísica, sonar, radar, médica y señales musicales.

Más detalles

Fibra óptica (Calculos) Ing. Waldo Panozo

Fibra óptica (Calculos) Ing. Waldo Panozo Fibra óptica (Calculos) Ing. Waldo Panozo Cálculos de enlace - Requerimientos Ancho de banda: La fibra óptica proporciona un ancho de banda significativamente mayor que los cables de pares (UTP / STP)

Más detalles

51 Int. CI.: G01R 23/02 ( ) G01R 19/25 ( ) H02H 3/46 ( ) TRADUCCIÓN DE PATENTE EUROPEA. 72 Inventor/es: 74 Agente/Representante:

51 Int. CI.: G01R 23/02 ( ) G01R 19/25 ( ) H02H 3/46 ( ) TRADUCCIÓN DE PATENTE EUROPEA. 72 Inventor/es: 74 Agente/Representante: 19 OFICINA ESPAÑOLA DE PATENTES Y MARCAS ESPAÑA 11 Número de publicación: 2 42 792 1 Int. CI.: G01R 23/02 (06.01) G01R 19/2 (06.01) H02H 3/46 (06.01) 12 TRADUCCIÓN DE PATENTE EUROPEA T3 96 Fecha de presentación

Más detalles

2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO. Una señal puede ser definida como una portadora física de información. Por ejemplo,

2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO. Una señal puede ser definida como una portadora física de información. Por ejemplo, 2. SEÑALES Y SISTEMAS DISCRETOS EN EL TIEMPO Una señal puede ser definida como una portadora física de información. Por ejemplo, las señales de audio son variaciones en la presión del aire llevando consigo

Más detalles

Juegos Interactivos para la Rehabilitación Fonatoria

Juegos Interactivos para la Rehabilitación Fonatoria Juegos Interactivos para la Rehabilitación Fonatoria Autores: Ing. Eduardo González Moreira MSc.. Carlos Ariel Ferrer Riesgo Dra. María E. Hernández Díaz-Huici Ing. Eric Lisandro Acao Centro de Estudios

Más detalles

ESTUDIO COMPARATIVO SOBRE DISTINTOS TIPOS DE FILTROS FIR IMPLEMENTADOS EN UN DSPIC

ESTUDIO COMPARATIVO SOBRE DISTINTOS TIPOS DE FILTROS FIR IMPLEMENTADOS EN UN DSPIC ESTUDIO COMPARATIVO SOBRE DISTINTOS TIPOS DE FILTROS FIR IMPLEMENTADOS EN UN DSPIC Autores: Matías L. Martini, Gastón Oviedo Tutor: Ing. Franco M. Salvático (fmsalvatico@hotmail.com) Departamento de Ingeniería

Más detalles

Digitalización y compresión de vídeo

Digitalización y compresión de vídeo VdoDig 1 Digitalización y compresión de vídeo Principales normas Algoritmos de compresión Formatos de vídeo VdoDig 2 Normas de vídeo digital H-261.- Videoconferencia Formato de poca resolución y pocas

Más detalles

Aplicaciones del análisis acústico en los estudios de la voz humana

Aplicaciones del análisis acústico en los estudios de la voz humana Seminario Internacional de Aplicaciones del análisis acústico en los estudios de la voz humana Matías Zañartu Salas Unidad de Acústica - Escuela de Fonoaudiología Universidad Mayor Av. Libertador Bdo.

Más detalles

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna AUTOMATIZACION GUIA DE TRABAJO 3 DOCENTE: VICTOR HUGO BERNAL UNIDAD No. 3 OBJETIVO GENERAL Realizar una introducción a los controladores lógicos programables OBJETIVOS ESPECIFICOS: Reconocer la arquitectura

Más detalles

Sistemas de Medida Electronicos: Medicion de Variables Mecanicas y Fisico-Quimicas

Sistemas de Medida Electronicos: Medicion de Variables Mecanicas y Fisico-Quimicas Sistemas de Medida Electronicos: Medicion de Variables Mecanicas y Fisico-Quimicas Universidad Tecnológica de Pereira Pereira, 15 de Diciembre de 2010 Juan David Vasquez Jaramillo. Ingeniero Electronico,

Más detalles

Tratamiento de imágenes Adquisición y Digitalización

Tratamiento de imágenes Adquisición y Digitalización Tratamiento de imágenes Adquisición y Digitalización hamontesv@uaemex.mx http://scfi.uaemex.mx/hamontes Advertencia No use estas diapositivas como referencia única de estudio durante este curso. La información

Más detalles

Electrónica para Sistemas de Comunicación.

Electrónica para Sistemas de Comunicación. Electrónica para Sistemas de Comunicación. Profesor: Dr. Hildeberto Jardón Aguilar. OBJETIVOS. Los objetivos del curso son capacitar a los estudiantes de maestría en resolver una serie de tareas que se

Más detalles

Introducción general a la compresión de datos multimedia

Introducción general a la compresión de datos multimedia Introducción general a la compresión de datos multimedia Necesidad de la compresión La mayoría de las aplicaciones multimedia requieren volúmenes importantes de almacenamiento y transmisión. CD-ROM 640

Más detalles

ÍNDICE DE CONTENIDOS

ÍNDICE DE CONTENIDOS ÍNDICE DE CONTENIDOS CAPÍTULO 1. INTRODUCCIÓN A LAS FUENTES DE ENERGÍA ELÉCTRICA... 7 1.1. INTRODUCCIÓN... 9 1.2. LA RED DE SUMINISTRO ELÉCTRICO... 10 1.3. ENERGÍA ELECTROQUÍMICA... 11 1.4. ENERGÍA SOLAR

Más detalles

Capitulo 01. Introducción. Índice

Capitulo 01. Introducción. Índice Capitulo 01 Introducción Índice Tema 1 Procesamiento digital de señales 2 Arquitecturas de procesadores 3 Concepción conjuntista de funciones 4 Sobre las funciones de tiempo continuo 5 Herramientas matemáticas

Más detalles

Carrera: Ingeniería Electrónica ECC Participantes Representante de las academias de ingeniería electrónica de los Institutos Tecnológicos.

Carrera: Ingeniería Electrónica ECC Participantes Representante de las academias de ingeniería electrónica de los Institutos Tecnológicos. .- DATOS DE LA ASIGNATURA Nombre de la asignatura: Carrera: Clave de la asignatura: Horas teoría-horas práctica-créditos Introducción a las Telecomunicaciones Ingeniería Electrónica ECC-044 4 0.- HISTORIA

Más detalles

Transmisión de Datos en Formato Digital

Transmisión de Datos en Formato Digital Transmisión de Datos en Formato Digital Omar X. Avelar & J. Daniel Mayoral SISTEMAS DE COMUNICACIÓN & TRANSMISIÓN DE DATOS (ESI 043A) Instituto Tecnológico y de Estudios Superiores de Occidente (ITESO)

Más detalles

INTRODUCCIÓN Videoconferencia sobre Frame Relay

INTRODUCCIÓN Videoconferencia sobre Frame Relay INTRODUCCIÓN Videoconferencia sobre Frame Relay Homero Andrango María Fernanda Jerez Patricia Yacelga Se denomina videoconferencia al sistema que permite a un grupo de personas ubicadas en lugares distantes

Más detalles

EL OSCILOSCOPIO Introducción

EL OSCILOSCOPIO Introducción EL OSCILOSCOPIO Introducción Qué es un osciloscopio? El osciloscopio es basicamente un dispositivo de visualización gráfica que muestra señales electricas variables en el tiempo. El eje vertical, a partir

Más detalles

SIMULACIÓN DE LA MODULACIÓN POR AMPLITUD DE PULSOS (PAM) EN MATLAB

SIMULACIÓN DE LA MODULACIÓN POR AMPLITUD DE PULSOS (PAM) EN MATLAB SIMULACIÓN DE LA MODULACIÓN POR AMPLITUD DE PULSOS (PAM) EN MATLAB 1. OBJETIVOS: General: o Implementar en simulink un sistema de bloques que permita simular Modulación por Amplitud de Pulsos (PAM), a

Más detalles

Tema 4. Reducción del ruido

Tema 4. Reducción del ruido Div. Ingeniería de Sistemas y Automática Universidad Miguel Hernández GRUPO DE TECNOLOGÍA INDUSTRIAL Tabla de Contenidos Definición Filtros Lineales Filtros Temporales Realce Espacial Definición Ruido:

Más detalles

1. Diseño de un compensador de adelanto de fase

1. Diseño de un compensador de adelanto de fase COMPENSADORES DE ADELANTO Y RETARDO 1 1. Diseño de un compensador de adelanto de fase El compensador de adelanto de fase persigue el aumento del margen de fase mediante la superposición de la curva de

Más detalles

TRANSMISION DIGITAL. PCM, Modulación por Codificación de Pulsos

TRANSMISION DIGITAL. PCM, Modulación por Codificación de Pulsos MODULACIÓN TRANSMISION DIGITAL La amplia naturaleza de las señales analógicas es evidente, cualquier forma de onda está disponible con toda seguridad en el ámbito analógico, nos encontramos con una onda

Más detalles

Introducción a la Teoría del Procesamiento Digital de Señales de Audio

Introducción a la Teoría del Procesamiento Digital de Señales de Audio Introducción a la Teoría del Procesamiento Digital de Señales de Audio Aplicaciones de la Transformada de Fourier al análisis y síntesis de sonido Resumen Técnicas de análisis y síntesis de sonido Phase

Más detalles

Asignatura: SISTEMAS LINEALES. Horas/Semana:4 Teoría + 0 Laboratorio. Objetivos. Programa

Asignatura: SISTEMAS LINEALES. Horas/Semana:4 Teoría + 0 Laboratorio. Objetivos. Programa Asignatura: SISTEMAS LINEALES Curso académico: 2012/2013 Código: 590000628 Créditos: 6 Curso: 2 Horas/Semana:4 Teoría + 0 Laboratorio Departamento: ICS Objetivos 1() Para todas las titulaciones OBJETIVOS

Más detalles

Implementación de efectos acústicos

Implementación de efectos acústicos Práctica 3: Implementación de efectos acústicos 3.0.- Objetivos Al finalizar esta práctica, el alumno debe ser capaz de: Grabar una señal de voz procesarla en Matlab. Añadir un eco, con diferente amplitud

Más detalles

RECOMENDACIÓN UIT-R P.1145 DATOS DE PROPAGACIÓN PARA EL SERVICIO MÓVIL TERRESTRE TERRENAL EN LAS BANDAS DE ONDAS MÉTRICAS Y DECIMÉTRICAS

RECOMENDACIÓN UIT-R P.1145 DATOS DE PROPAGACIÓN PARA EL SERVICIO MÓVIL TERRESTRE TERRENAL EN LAS BANDAS DE ONDAS MÉTRICAS Y DECIMÉTRICAS Rec. UIT-R P.1145 1 RECOMENDACIÓN UIT-R P.1145 DATOS DE PROPAGACIÓN PARA EL SERVICIO MÓVIL TERRESTRE TERRENAL EN LAS BANDAS DE ONDAS MÉTRICAS Y DECIMÉTRICAS (Cuestión UIT-R 203/3) (1995) Rec. UIT-R P.1145

Más detalles

Una señal es una magnitud física de interés que habitualmente es una función del tiempo.

Una señal es una magnitud física de interés que habitualmente es una función del tiempo. 1.- Introducción al Procesado Digital de Señales. 1.1.- Introducción. Podemos decir que cuando realizamos cualquier proceso digital para modificar la representación digital de una señal estamos haciendo

Más detalles

INDICE Capitulo 1. Variables del Circuito Eléctrico Capitulo 2. Elementos del Circuito Capitulo 3. Circuitos Resistivos

INDICE Capitulo 1. Variables del Circuito Eléctrico Capitulo 2. Elementos del Circuito Capitulo 3. Circuitos Resistivos INDICE Capitulo 1. Variables del Circuito Eléctrico 1 1.1. Albores de la ciencia eléctrica 2 1.2. Circuitos eléctricos y flujo de corriente 10 1.3. Sistemas de unidades 16 1.4. Voltaje 18 1.5. Potencia

Más detalles

SONIDO - ANEXOS ANEXO 1:

SONIDO - ANEXOS ANEXO 1: MULTIMEDIA. INTRODUCCIÓN SONIDO - ANEXOS ANEXO 1: Buscar recursos de audio Abre tu navegador y teclea la siguiente dirección: http://www.aliara.org/. Grupo de música tradicional con interés para nuestro

Más detalles

Introducción al Diseño de Filtros Digitales

Introducción al Diseño de Filtros Digitales Introducción al Diseño de Filtros Digitales Diego Milone Procesamiento Digital de Señales Ingeniería Informática FICH-UNL 3 de mayo de 2012 Organización de la clase Introducción Concepto y clasificación

Más detalles

5 PULSO MULTIPLE REFERENCIA SENOIDAL MODIFICADA 6 PARAMETROS DE EFICIENCIA

5 PULSO MULTIPLE REFERENCIA SENOIDAL MODIFICADA 6 PARAMETROS DE EFICIENCIA Control de Máquinas Eléctricas Primavera 2009 INTRODUCCION 1 CIRCUITOS DE CONTROL 2 PULSO UNICO 3 PULSO MULTIPLE REFERENCIA CONSTANTE 4 PULSO MULTIPLE REFERENCIA SENOIDAL 5 PULSO MULTIPLE REFERENCIA SENOIDAL

Más detalles

» Ecuación del movimiento libre de un grado de libertad amortiguado: ED lineal de 2º orden homogénea cuya solución es de la forma:

» Ecuación del movimiento libre de un grado de libertad amortiguado: ED lineal de 2º orden homogénea cuya solución es de la forma: 1.3. Oscilador armónico amortiguado 1» Ecuación del movimiento libre de un grado de libertad amortiguado: ED lineal de 2º orden homogénea cuya solución es de la forma: Si introducimos esta solución en

Más detalles

UIT-T P.30 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT

UIT-T P.30 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT UNIÓN INTERNACIONAL DE TELECOMUNICACIONES UIT-T P.30 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT CALIDAD DE TRANSMISIÓN TELEFÓNICA LÍNEAS Y APARATOS DE ABONADO CARACTERÍSTICAS DE TRANSMISIÓN

Más detalles

Herramientas software para la docencia de la señal de voz en Ingeniería Técnica de Telecomunicaciones

Herramientas software para la docencia de la señal de voz en Ingeniería Técnica de Telecomunicaciones Herramientas software para la docencia de la señal de voz en Ingeniería Técnica de Telecomunicaciones S. Bleda (1,2) ; J. Francés (1,2) ; S. Marini (1,2) ; J.J. Martínez (1) (1) Departamento de Física

Más detalles

Redes (9359). Curso 2010-11 Ingeniería Técnica en Informática de Sistemas (plan 2001)

Redes (9359). Curso 2010-11 Ingeniería Técnica en Informática de Sistemas (plan 2001) La fuente original de gran parte de las imágenes presentadas en esta lección son cortesía del texto docente Redes y Transmisión de Datos P. Gil, J. Pomares, F. Candelas. Servicio de Publicaciones Universidad

Más detalles

Normas ISO de codificación de contenidos audiovisuales. -MPEG 1, MPEG-2, MPEG-4, MPEG 7 y MPEG 21-

Normas ISO de codificación de contenidos audiovisuales. -MPEG 1, MPEG-2, MPEG-4, MPEG 7 y MPEG 21- Normas ISO de codificación de contenidos audiovisuales -MPEG 1, MPEG-2, MPEG-4, MPEG 7 y MPEG 21-1 La familia MPEG MPEG 1 (1992): codificación digital de audio y vídeo hasta 1.5 Mbit/s para almacenamiento

Más detalles

Asignatura: SISTEMAS LINEALES. Horas/Semana:4 Teoría + 0 Laboratorio. Objetivos

Asignatura: SISTEMAS LINEALES. Horas/Semana:4 Teoría + 0 Laboratorio. Objetivos Asignatura: SISTEMAS LINEALES Curso académico: 2007/2008 Código: 590000804 Créditos: 6 Curso: 2 Horas/Semana:4 Teoría + 0 Laboratorio Departamento: ICS Objetivos 1() Para todas las titulaciones OBJETIVOS

Más detalles

circuitos digitales números binario.

circuitos digitales números binario. CIRCUITOS DIGITALES Vamos a volver a los circuitos digitales. Recordemos que son circuitos electrónicos que trabajan con números, y que con la tecnología con la que están realizados, estos números están

Más detalles

Sistemas Lineales e Invariantes PRÁCTICA 2

Sistemas Lineales e Invariantes PRÁCTICA 2 Sistemas Lineales e Invariantes PRÁCTICA 2 (1 sesión) Laboratorio de Señales y Comunicaciones PRÁCTICA 2 Sistemas Lineales e Invariantes 1. Objetivo Los objetivos de esta práctica son: Revisar los sistemas

Más detalles

REDES INALÁMBRICAS Y MÓVILES 6 Asignatura Clave Semestre Créditos

REDES INALÁMBRICAS Y MÓVILES 6 Asignatura Clave Semestre Créditos UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA PROGRAMA DE ESTUDIO REDES INALÁMBRICAS Y MÓVILES 6 Asignatura Clave Semestre Créditos DIE TELECOMUNICACIONES TELECOMUNICACIONES División Departamento

Más detalles

Nueva Técnica para Control de Calidad de Rodaduras de Engranajes y Rodamientos. Autores: Ing O. García Peyrano - Ing. H. Damiani

Nueva Técnica para Control de Calidad de Rodaduras de Engranajes y Rodamientos. Autores: Ing O. García Peyrano - Ing. H. Damiani Nueva Técnica para Control de Calidad de Rodaduras de Engranajes y Rodamientos Autores: Ing O. García Peyrano - Ing. H. Damiani Laboratorio de Vibraciones Centro Atómico Bariloche S. C. de Bariloche, octubre

Más detalles

EL PAPEL DE LA ESTADISTICA EN O Y M. Objetivo: Identificar índices estadísticos, y métodos más convenientes, para aplicarlos en el estudio de O y M.

EL PAPEL DE LA ESTADISTICA EN O Y M. Objetivo: Identificar índices estadísticos, y métodos más convenientes, para aplicarlos en el estudio de O y M. EL PAPEL DE LA ESTADISTICA EN O Y M Objetivo: Identificar índices estadísticos, y métodos más convenientes, para aplicarlos en el estudio de O y M. O y M necesita apoyarse en la estadística que en casos

Más detalles

ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA

ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA ASÍ FUNCIONA LA CONVERSIÓN ANALÓGICO- DIGITAL DIGITALIZACIÓN DE LA SEÑAL ANALÓGICA En una señal eléctrica analógica, los valores de tensión positivos y negativos pueden mantenerse con un valor constante,

Más detalles

Filtros Digitales II Lic. Matías Romero Costas

Filtros Digitales II Lic. Matías Romero Costas Filtros Digitales II Lic. Matías Romero Costas Respuesta en frecuencia: las características de un filtro pueden determinarse a partir de su respuesta en frecuencia, constituida por la respuesta en amplitud

Más detalles

Resumen de CONVERSORES ANALÓGICO DIGITALES Y DIGITALES ANALÓGICOS

Resumen de CONVERSORES ANALÓGICO DIGITALES Y DIGITALES ANALÓGICOS Universidad De Alcalá Departamento de Electrónica Resumen de CONVERSORES ANALÓGICO DIGITALES Y DIGITALES ANALÓGICOS Tecnología de Computadores Almudena López José Luis Martín Sira Palazuelos Manuel Ureña

Más detalles

Conversores ADC y DAC. Introducción n a los Sistemas Lógicos y Digitales 2008

Conversores ADC y DAC. Introducción n a los Sistemas Lógicos y Digitales 2008 Conversores ADC y DAC Introducción n a los Sistemas Lógicos y Digitales 2008 Conversores Digital-analógicos (DAC) Clasificación de DAC: Formato Serie. Paralelo. Tecnología Resistencias pesadas (obsoleto).

Más detalles

Comunicaciones en Audio y Vídeo. Laboratorio. Práctica 3: Modulaciones Digitales Multinivel. Curso 2008/2009

Comunicaciones en Audio y Vídeo. Laboratorio. Práctica 3: Modulaciones Digitales Multinivel. Curso 2008/2009 Comunicaciones en Audio y Vídeo Laboratorio Práctica 3: Modulaciones Digitales Multinivel Curso 2008/2009 Práctica 3. MODULACIONES DIGITALES MULTINIVEL 1 de 10 1 ESQUEMA DE UN SISTEMA DE TRANSMISIÓN DIGITAL

Más detalles

ε = = d σ (2) I. INTRODUCCIÓN

ε = = d σ (2) I. INTRODUCCIÓN Estudio del comportamiento de un material piezoeléctrico en un campo eléctrico alterno. Eduardo Misael Honoré, Pablo Daniel Mininni Laboratorio - Dpto. de Física -FCEyN- UBA-996. Un material piezoeléctrico

Más detalles

Contenido 1.- El canal paso banda. 2.- Modulación digital.

Contenido 1.- El canal paso banda. 2.- Modulación digital. Contenido 1.- El canal paso banda. 2.- Modulación digital. TRANSMISIÓN DIGITAL PASO BANDA Objetivo.- Al finalizar, el lector será capaz de describir los tipos de modulación digital y calcular la tasa de

Más detalles

Última modificación: 1 de mayo de 2010. www.coimbraweb.com

Última modificación: 1 de mayo de 2010. www.coimbraweb.com TELEFONÍA IP Contenido 1.- Introducción. 2.- Telefonía tradicional. 3.- Codificación de voz. 4.- Telefonía sobre IP. 5.- Equipamiento VoIP. 6.- Calidad de servicio en VoIP. Última modificación: ió 1 de

Más detalles

Seleccionadoras Electrónicas de Granos y Semillas por Color Delta Modelo i-iq-ccd/tcs (Total Color Sorter)

Seleccionadoras Electrónicas de Granos y Semillas por Color Delta Modelo i-iq-ccd/tcs (Total Color Sorter) Seleccionadoras Electrónicas de Granos y Semillas por Color Delta Modelo i-iq-ccd/tcs (Total Color Sorter) 15 Razones para que su próxima seleccionadora por color sea la nueva Delta i-iq-ccd/tcs 1. HARDWARE

Más detalles