5.
1 MUESTREO
Las señales digitales presentan grandes ventajas a la hora de ser transmitidas y/o
procesadas: mayor inmunidad al ruido, mayor facilidad de procesamiento y facilidad
de multiplexaje son las mas resaltantes. Es por esto que existe interés en convertir
señales analógicas (tiempo y amplitud continuos) en señales digitales (tiempo y
amplitud discretos). El primer paso consistirá en discretizar la señal en tiempo. Este
proceso se llama muestreo, Analizaremos diversas formas de muestreo.
2. Muestreo Ideal: Teorema del muestreo
Suponga una señal x(t) cuya transformada X(f) tiene la siguiente forma:
Por ejemplo las señales de voz para telefonía básica tienen fmax=4KHz, la voz en
general puede alcanzar fmax=20KHz, para audio se toma fmax=30KHz y para las
señales de video fmax=6MHz.
Se pueden tomar muestras de la señal multiplicándola por un tren de impulsos
periódicos de periodo ts, tal y como se muestra en la figura. A esto se le llama
muestreo ideal.
Es decir:
xs(t) = x(t) . δs(t)
En el dominio de la frecuencia se tendrá que:
Por lo tanto, llamando fs al inverso de ts, se tendrá que:
La convolución de una función cualquiera con una delta reproduce a la función
en el punto donde ocurre la delta y así
de manera que el espectro de la señal muestreada será el siguiente:
El espectro de la señal original se repite cada fs. Si quisiéramos rescatar la señal
original, bastaría utilizar un filtro pasabajo (LPF) ideal pero esto siempre y
cuando
f s − f max ≥ f max
o sea que
f s ≥ 2f max
La frecuencia mínima de muestreo sería fs = 2fmax muestras por segundo, y se
conoce como la frecuencia de Nyquist. Si se muestrea a una frecuencia inferior a
la de Nyquist los espectros de la señal muestreada se solaparán y no se podrá
recuperar el mensaje original. Este efecto se le llama "aliasing". Cuando la señal
tiene impulsos en los extremos de su espectro, es necesario muestrear a una
frecuencia superior a 2fmax. (Demuéstrelo).
El mensaje original puede recuperarse mediante un filtro pasabajo ideal cuya
frecuencia de corte sea fmax. La salida de este filtro, en el dominio de la
frecuencia, será:
Y(f) = Xs(f) . KΠ(f/2fmax)= Kfs X(f)
En el dominio del tiempo el producto se cambia por la convolución:
∞ ∞
y( t ) = h ( t ) * ∑ x (nt s )δ(t − nt s ) = ∑ x (nt s )h (t − nt s )
n = −∞ n = −∞
La respuesta al impulso de un filtro pasabajo ideal como el descrito sería
h(t) = 2Kfmax Sinc(2fmaxt)
Por lo tanto
Cuando fs = 2fmax
Es decir, se suman infinitos Sinc’s con pesos iguales a cada muestra x(nts) y esto
reproduce a la señal x(t). Esta es la llamada fórmula de interpolación. Observe
que se necesitan todas las muestras para obtener x(t). En la práctica solo se tendrá
un número finito de muestras, por lo tanto existirá un error llamado error de
truncamiento.
En la práctica no se puede realizar este tipo de muestreo ideal ya que es
imposible "fabricar" un tren de impulsos periódicos. Una solución sería usar
cualquier señal periódica de forma que la señal muestreada xM(t) vendría dada
por:
Donde se ha sustituido la expresión de la señal periódica por la de su serie de
Fourier. En el dominio de la frecuencia, la señal periódica se representa por un
tren de impulsos con peso Cn, de manera que el espectro de la señal muestreada
será la repetición del espectro de X(f) cada fs multiplicado por Cn.
Cuando la señal periódica es un tren de pulsos el muestreo se le llama muestreo
natural. La señal en tiempo luciría como sigue:
El espectro en cambio seria
En este caso la señal x(t), al igual que en muestreo ideal, se puede recuperar con
un filtro pasabajo.
En la práctica se prefiere otro tipo de muestreo, el llamado muestreo tope plano
en el cual se toma una muestra de la señal cada ts y se mantiene durante un
tiempo τ. La señal luciría como sigue:
Sus ventajas son las siguientes:
Es mas fácil de realizar con circuitos llamados Sample&Hold
Es mas inmune al ruido
No importa la forma de los pulsos
La desventaja más resaltante es que el espectro de la señal muestreada esta
conformado por repeticiones distorsionadas del espectro de la señal original, tal y
como demostraremos a continuación.
La señal muestreada tope-plano puede expresarse de la siguiente forma:
Se observa que se introduce distorsión. Para disminuirla se debería disminuir el
valor de τ, pero esto también disminuye la amplitud de la señal. Lo que se estila
es usar un τ intermedio y luego en el receptor se compensa con una red de
respuesta en frecuencia inversa en la banda de la señal original.
MUESTREO DE SEÑALES PASABANDA
Suponga x(t) tal que X(f) sea:
Definamos
Siempre que B(ancho de banda de la señal) sea menor que fL, es posible
muestrear a una frecuencia menor que la que impondría Nyquist siempre que se
garantice que las repeticiones espectrales no se superponen con el espectro X(f),
es decir:
Para que no exista solapamiento, de forma que x(t) pueda ser rescatado con un
filtro pasabanda, se debe cumplir que:
La situación entonces es la siguiente:
Dado el espectro X(f), se obtiene fL y fM, y por ende B y k. Con esto se definen
los posibles valores de N y finalmente esto delimita los posibles valores de la
frecuencia de muestreo.
Ejemplo:
Suponga que X(f) es tiene la forma pasabanda ilustrada antes con
fL=3000 Hz
fM =4000 Hz
Por lo tanto B=1000 Hz
De esta forma k=4 y N puede tomar los siguientes valores 1,2,3 y 4
Al aplicar la ecuación que define el rango de valores de fs
por lo tanto en este caso se puede muestrear a 2KHz (que es menor que Nyquist
que es 8KHz))y recuperar la señal con un filtro pasabanda.
Observe que mientras quepan mas repeticiones entre 0 y fL es posible bajar cada
vez más la frecuencia de muestreo.
5.2. CUANTIFICACION
Luego de muestrear la señal analógica, con lo cual hemos discretizado la señal en
tiempo, es necesario discretizar la señal en amplitud; este proceso se llama
cuantificación. Básicamente esto se lleva a cabo de la siguiente manera: Se divide el
rango total de la señal en M franjas de tamaño a. M es el numero de niveles de
cuantificación y a es llamado el paso del cuantificador. En cada intervalo de tiempo se
observa en que rango de voltaje se encuentra la señal y en función de esto se le asigna
un nivel de voltaje a la salida tal y como se ilustra a continuación:
A la salida se tiene una señal con un numero de amplitudes diferentes limitadas
(M amplitudes diferentes)
La característica de un cuantificador se representa por medio de una curva
entrada-salida que podría ser como sigue:
En particular el cuantificador mostrado en la figura es uniforme debido a que los
pasos del mismo son todos del mismo tamaño. Existen también los no-uniformes.
Otra forma de clasificarlos es si la característica es fija o cambia en el
tiempo(cuantificadores fijos y adaptativos); también se clasifican en simétricos y
no simétricos respecto al cero.
Los niveles de cuantificación se eligen en función de la aplicación y del receptor.
Si por ejemplo la señal es de voz, para lograr inteligibilidad basta usar 256
niveles de cuantificación.
El siguiente paso en muchos casos es convertir la señal en binaria con lo cual
M=2n. Es decir por cada muestra que se toma cada ts, se deben transmitir n bits;
por lo tanto esto equivale a tener una frecuencia de muestreo más rápida (nfs) y
por consiguiente un mayor ancho de banda.
El proceso de cuantificación genera una diferencia entre la señal original x(nts) y
la cuantificada xq(nts). La medida de esta diferencia se llama error o ruido de
cuantificación
Por eso se acostumbra calcular una relación señal a ruido de cuantificación dada
por:
Donde
E[x2]=Potencia de Señal
E[ε2]=Potencia del error o potencia de ruido de cuantificación.
La potencia de ruido de cuantificación se podría calcular como:
Sin embargo la fdp del ruido no se conoce, por lo que podemos referirla a la
distribución probabilistica de la señal o mensaje x(t).Para facilitar el calculo se
dividirá la integral en M intervalos resultando:
Si se ha elegido M suficientemente grande, se puede considerar que px(x) es
constante dentro de cada subintervalo y por ende se puede sacar fuera de la
integral. Además se hace en cada una el siguiente cambio de variable x(nts)-xk=y
Por lo tanto la relación señal a ruido de cuantificación resulta:
Se observa que si M crece (a disminuye) la relación señal a ruido crece
Ejemplo1: Determine la relación señal a ruido de cuantificación para un mensaje
uniformemente distribuido entre –A y A.
En primer lugar un mensaje uniformemente distribuido entre –A y A, tiene
px(x) =1/2A
Por otra parte para un cuantificador uniforme de M niveles se cumpliría que
Si se codifica en binario M=2n
Por ejemplo cada bit adicional que se use producirá 6 dB de ganancia en relación
señal a ruido.
Cuantificación no uniforme
Cuando la distribución probabilistica de x(t) no es uniforme sino que tiene mas
bien preferencia por una cierta zona de voltaje, como el caso de las señales de
voz, conviene usar cuantificadores no uniformes, es decir uno que tenga pasos
mas estrechos en aquellas zonas de voltaje mas frecuentes y pasos mas grandes
en zonas menos probables. Gráficamente:
Por ejemplo, el cuantificador mostrado convendría usarlo cuando la señal tiene
preferencia de ocurrencia en los voltajes alrededor de cero.
En el caso de señales de voz esto es en efecto lo que ocurre.
Para estudiar el efecto que sobre la relación señal a ruido tiene el uso de un
cuantificador no-uniforme, conviene modelarlo como un circuito no lineal que
modifica las características de la señal seguido de un cuantificador uniforme:
Por supuesto que en el receptor hay que proveer de un sistema que haga el efecto
inverso a la de c(t) vs. x(t)
Una curva c(t) versus x(t) podría ser:
Observe que esta curva expande los valores de bajo voltaje y comprime los de
alto voltaje. Por esta razón se le llama compansor(compresor y expansor)
Veamos si esto mejora la relación señal a ruido. Para esto veremos el efecto
sobre la potencia del ruido de cuantificación.
Habíamos encontrado que para cuantificación uniforme:
Pero ahora la señal se divide en intervalos que se llaman ∆x
Si se usan suficientes niveles de cuantificación:
En el límite ∆x tiende a dx y la sumatoria se convierte en integral:
Donde CI es el factor de perfeccionamiento de la compansión. Se desea que este
sea mayor que la unidad de forma que su inverso reduzca la potencia del ruido.
Observe que si uno quiere maximizar ese factor (o minimizar su inverso), habrá
que buscar una característica c(x) que dependerá de px(x)
Con este factor definido podemos ver que la relación señal a ruido con
compansión resulta:
En telefonía persiguen además el objetivo de mantener el valor de relación señal
a ruido para todos los rangos de voltaje de x mas o menos constante. En ese caso
se deben hacer proporcionales los argumentos de ambas integrales
Esto ultimo además garantiza que cuando x=1 c=1
Como esta relación tiene discontinuidades en el origen, en la práctica se usan
aproximaciones de ella. Existen las llamadas ley de compansión µ (USA) y ley
A(Europa) definidas como sigue:
Ley µ:
La ley A en cambio: (A=87.6)
Ax 1
c( x ) = 0≤ x ≤
1 + log A A
1 + log(A x ) 1
c( x ) = ≤ x ≤1
1 + log A A
5.3.1- DPCM ( Differential Pulse Code Modulation)
INTRODUCCCIÓN:
Siempre existe y existirá un interés por transmitir información utilizando un
menor número de elementos, bien sea para almacenarlas, transmitirlas,
almacenarlas en una página web o para ser procesadas.
Para tener una idea de las cantidades típicas requeridas tomemos varios
ejemplos:
Señal de TV a color de 512x512 pixels. Ocupa (512x512pixels)*8bits/píxel*3
colores o sea aproximadamente 6Mbits. Una radiografía puede tener una
dimensión de 5000x6000 pixels a 12 bits/píxel produce 360 Mbits.
Por esto interesa estudiar los métodos de compresión de datos para: enviar
mas datos en el mismo ancho de banda, la misma cantidad de datos en menos
ancho de banda, o tener mas usuarios en el mismo ancho de banda.
Existen sistemas de compresión con pérdidas y sin pérdidas. Los sistemas
de compresión sin pérdidas o lossless trabajan solo con fuentes digitales y, en
principio, permiten recuperar los datos sin errores.
Basándose en las probabilidades de los símbolos a transmitir se pueden
asignar códigos mas largos a símbolos menos probables. Un ejemplo es el código
Morse; otro es el código Huffman (utilizado en UNIX, 1952), Run-Length code
popularizados por Golomb en los 60s y utilizado en el sistema de compresión
JPEG, Lempel-Ziv(Welch) codes usados en los 70s en rutinas de compresión
como diskdouble, stuffit,PKzip,etc., Adobe Acrobat. Con estos se puede alcanzar
una compresión máxima de 4:1 dependiendo en mucho del tipo de datos.
Por otra parte los sistemas de compresión con pérdidas (o lossy) tienen la
posibilidad de que si se usa un número razonable de bits la pérdida no se nota
(aquí se consideran las debilidades del posible receptor como el ojo o el oído).
Entre estos se encuentran DPCM, ADPCM, uso de transformadas, JPEG, MPEG,
etc.
ESQUEMA DPCM :
Cuando cada muestra PCM tiene una alta correlación con sus vecinas (por
ejemplo en voz e imágenes), resulta conveniente cuantificar no la señal PCM
directamente, sino la diferencia entre la muestra presente y una predicción de la
misma basada en muestras anteriores. Esta diferencia debe ser pequeña y por
tanto los mismos niveles de cuantificación arrojarán un paso de cuantificación
menor y así la señal se parecerá mas a la original. Por supuesto esto involucra
una mayor circutería que la requerida para PCM. La recompensa será una mayor
relación señal a ruido para una misma cantidad de bits, o una reducción en el
número de bits para la misma calidad o relación señal a ruido.
A continuación se presenta un codificador (a) y decodificador (b) DPCM.
Como se observa la cuantificación se realiza sobre la diferencia entre la muestra
de señal actual y una predicción de la misma. Lo que se transmite es el error de
predicción cuantificado.
El predictor realiza una combinación lineal de muestras anteriores pesadas
apropiadamente. Dichos pesos deben calcularse en base a la estadística de la
señal; específicamente se debe usar la función de autocorrelación para el cálculo
de los coeficientes, tal y como se desarrolla a continuación.
DISEÑO DE UN PREDICTOR : Típicamente el predictor se basa en
combinaciones “pesadas” de las muestras pasadas de la señal
El error de predicción es la diferencia entre la señal original y la predicción de la
misma
Los coeficientes Ci se calculan minimizando la potencia de un error e(n):
Potencia de e(n) se calcula como
Se quiere minimizarla, por tanto
En definitiva queda el siguiente sistema
O lo que es lo mismo, hay que resolver el siguiente sistema
Una vez diseñado el predictor, el sistema DPCM arrojará el siguiente error global
de reconstrucción:
q(n)=e(n)-eq(n)
Por lo tanto la relación señal a ruido para DPCM será:
Se observa que, si el predictor está bien diseñado, la potencia de ruido de
cuantificación disminuye ya que la potencia del error de cuantificación es menor.
Por otra parte, para una misma S/N se necesitarían menos bits en DPCM que en
PCM.
Para un mensaje x(n) con un rango de voltaje entre -V y V, la potencia ha de ser
proporcional a V2 (Sx proporcional a V2)
Ahora hay que cuantificar el error entre la señal y su predicción. El rango de
voltaje del error estará entre -αV y αV. Por lo tanto, así como la potencia de la
señal x(n) es proporcional a V2, la potencia del error de predicción es proporcional
a α2 V2. En la ecuación anterior se observa que α2 es igual a :
y, en definitiva
ADPCM:En ADPCM se usa la misma estructura de DPCM pero los coeficientes
del filtro de predicción son modificados en el tiempo siempre buscando minimizar
el error de predicción. El estándar G.721 de la ITU ha adoptado a ADPCM como
un estándar para pasar una señal PCM de 64Kbps, a una de 32kbps con casi la
misma calidad. A continuación se presentan el codificador y decodificador ADPCM
definido por ese estándar. Para probabilidades de error superiores a 10-4, ADPCM
resulta mejor, desde el punto de vista subjetivo, que DPCM. La figura ilustra un
transmisor que usa ADPCM.
5.3. 2.-MODULACION DELTA
Esta modulación es una versión simplificada de DPCM, donde la predicción es el
valor de la señal en el intervalo de muestreo previo
La señal transmitida es 1 solo bit que representa un escalón ± ∆. El esquema es el
siguiente:
Si x(n) es mayor que el valor anterior x(n-1) entonces se transmite ∆. Si x(n) es
menor que el valor anterior x(n-1) entonces se transmite -∆.
Ventajas:
Esta modulación permite seguir señales de cualquier amplitud. Además el equipo
transmisor y el receptor son muy sencillos. No se requiere sincronismo de palabra.
Desventajas:
Presenta ruido granular, sobrecarga de pendiente, transitoria. Además necesita
una frecuencia de muestreo varias veces superior a la de Nyquist. Esto es para
que la predicción del valor anterior sea apropiada. Por último, si se realiza TDM,
cada canal requerirá un receptor separado.
Parte de los problemas se resuelven aumentando considerablemente la frecuencia
de muestreo, pero si lo que se desea es reducir el ruido granular también conviene
disminuir el paso del escalón. Para reducir la sobrecarga de pendiente conviene
mas bien aumentar el paso del escalón. En la práctica se prefiere usar modulación
delta adaptiva.
La gráfica a continuación muestra la señal transmitida y la señal reconstruída para
una señal arbitraria x(t). También se observa el efecto del ruido granular en la
zona donde la señal es constante.
Restricciones en la frecuencia de muestreo
Sin duda que si elegimos un paso pequeño y una frecuencia alta el ruido granular
se disminuye considerablemente, ya que en definitiva la señal cuadrada periódica
de las zonas de ruido granular será filtrada por el filtro de recepción. La
sobrependiente debe cuidarse evitando que la señal tenga pendientes mayores a
lo que puede ofrecer el sistema delta, esto es:
Por ejemplo si x(t)=Acosωt, la máxima pendiente es Aω. Por lo tanto se debe
cumplir que:
O sea 20π veces mayor que Nyquist.
Cálculo de la relación señal a ruido para modulación Delta
Supongamos que el error oscila entre ±∆ y que está distribuido uniformemente
entre estos dos valores. En ese caso la potencia del error sería igual a 0.333∆2.
Se ha comprobado que la DEP del error es mas o menos constante entre -fs y fs.
Recordando que fs ha debido seleccionarse muy superior a Nyquist, el LPF del
receptor limitará la DEP del ruido al rango de la DEP del mensaje original (-fmax,
fmax). Por lo tanto a la salida solo se tendrá una fracción de la potencia del error
dada por
Por ejemplo, si tomamos una sinusoide de frecuencia f0, y recordando que para
evitar sobrependiente debiera cumplirse que
2πAfo>=fs∆ , tomando la igualdad
Por tanto la relación señal a ruido resultará:
Se observa que si se incrementa la tasa de muestreo la relación señal a ruido
crece fuertemente.
Por otra parte a continuación se presenta una gráfica de cómo varía la relación
señal a ruido al variar la relación entre el tamaño del escalón(∆) y el voltaje r.m.s
de la señal(σ). Si el paso es pequeño comparado con la excursión pico de la
señal, entonces se observará el efecto de sobrependiente; en cambio si el paso se
hace crecer se mejorará el efecto de sobrependiente y empeorará el ruido granular
. También se puede observar que hay un punto óptimo del tamaño del paso. Este
punto dependerá de la relación de la frecuencia de muestreo tomada y la máxima
componente de frecuencia de la señal.
Finalmente, a continuación se muestra el efecto de recibir una señal DM con
algunos errores debido a la transmisión:
DELTA ADAPTATIVO O ADAPTIVO
Para mejorar el comportamiento del modulador delta se puede adaptar el
tamaño del escalón en el tiempo. El esquema sería el siguiente:
Si eq(n)=eq (n-1) esto implica un problema de sobrependiente; en ese caso
g(n)=kg(n-1).
Si, en cambio, eq (n) es diferente a eq (n-1), entonces esto implica ruido granular;
en ese caso g(n)=g(n-1)/k
Tomando k valores entre 1 y 2.
Por lo tanto si hay tendencia a una sobrependiente el escalón va creciendo en
potencias de k. Por otra parte, si se sospecha de una zona con ruido granular, se
hace decrecer el escalón progresivamente. Esto puede mejorar en mas de 8dB la
relación señal a ruido.
La señal luciría así:
Comparación entre PCM y DPCM para voz:
fs(KHz) bits/muestra Tasa de
bits(Kbps)
DM 64-128 1 64-128
PCM 8 7-8 56-64
ADM 48-64 1 48-64
DPCM 8 4-6 32-48
ADPCM 8 3-4 24-32
El comportamiento de DPCM es como PCM mejorado por un factor que es función
del grado de correlación de la señal modulada. Por ejemplo en voz se logra de 5 a
10 dB de ganancia. En imágenes altamente correlacionadas se ganan hasta 12
dB.
En ADPCM se puede adaptar el cuantificador, el predictor , o los dos.
5.4.- Técnicas de Compresión de Datos:
La técnica más simple de codificar es PCM. Con ella se logra transmitir voz digital
a una velocidad de 64Kbps (8bits/muestra, 8000 muestras/segundo). En algunas
aplicaciones, como la transmisión de voz en sistemas celulares es necesario tratar de reducir
el número de bits que produce el codificador. Así comienzan a desarrollarse técnicas
llamadas de compresión para lograr este propósito. Entre ellas DPCM y DM que acabamos
de estudiar. Para tener una visión mas amplia de otras técnicas de compresión de datos, a
continuación se muestra un árbol de clasificación de las mismas.
En el curso de Comunicaciones I conocimos Run-length, Huffman, Lempel-Ziv-
Welch las cuales se enmarcan en el grupo de métodos que comprimen y permiten una
recuperación sin pérdidas. También se presentaron PCM, DPCM y PCM las cuales se
conocen como técnicas basadas en la codificación de la forma de onda temporal. Queremos
concluir este curso con una revisión de algunas otras técnicas a fin de tener una visión mas
completa. En la mayoría de los casos estas técnicas se aplican a voz por lo que
comenzaremos revisando algunos conceptos básicos sobre la generación de la voz humana
y sus características mas relevantes.
Modelo de desarrollo de la voz
La voz humana se produce cuando se exige al aire salir desde los pulmones, a través
de las cuerdas vocales y a lo largo del tracto vocal. Simultáneamente, las cuerdas vocales
vibran produciendo energía que se convierte en voz. La voz es una señal no-estacionaria y
puede ser considerada como cuasi-estacionaria en segmentos de entre 5 y 20ms. La señal
de voz se puede clasificar en: en voiced (sonoras), unvoiced (fricativas , no sonoras o
sordas como algunas consonantes por ejemplo la s y la f) y mixtas. Las vocalizadas son
cuasiperiódicas mientras que las no vocalizadas lucen bastante aleatorias. A continuación
puede verse un ejemplo:
Además la energía de los segmentos vocalizados es generalmente superior a los no
vocalizados. Los sonidos vocalizados se producen por la vibración de las cuerdas vocales;
en los no vocalizados no se presenta vibración de las cuerdas vocales sino que mas bien se
deben al aire que sale de los pulmones y luego es moderado por los dientes y los labios.
Cuantificación vectorial:
Una variación sobre la señal PCM para lograr reducir el número de bits a transmitir
es cambiar el cuantificador que se ha visto hasta ahora el cual toma cada muestra de la
señal y las cuantifica uniforme o no uniformemente. Esto se llama cuantificación escalar.
La teoría demuestra que esta no es la forma más eficiente de cuantificar ya que se
desperdicia la conexión que pueden tener bloques de muestras. Por ejemplo si se reúnen
bloques de N muestras, se les puede asignar un bloque de salida dependiendo de su
ubicación en un espacio N-dimensional.
Por ejemplo, si N=2, tendríamos un espacio bidimensional como el que se ilustra a
continuación. La idea es la siguiente: se divide el plano en diversas zonas, equivalentes a lo
que eran los niveles de cuantificación escalares; una vez ubicado el bloque o vector de
entrada en una determinada zona, se sustituye su valor por lo que se conoce como el
centroide. Este valor representará todos los vectores que caigan en esa zona
La cuantificación vectorial ofrece mejores resultados que la cuantificación escalar,
sin embargo, es más sensible a los errores de transmisión y lleva consigo una mayor
complejidad computacional.
Clasificación de los codificadores de voz
Los codificadores de voz se clasifican en tres grandes grupos, a saber:
1. Codificadores de la forma de onda: Tratan de reproducir la señal en el dominio de
la frecuencia o en el dominio del tiempo. Ofrecen una alta calidad de voz a tasas
medias, (del orden de 32 kb/s). Sin embargo, no son útiles cuando se quiere
codificar a tasas bajas. Entre los codificadores de forma de onda temporal se
encuentran PCM, DPCM y DM. Por otra parte existen los codificadores de forma de
onda en el dominio de la frecuencia. Estos codificadores dividen la señal en bandas
de frecuencia y las codifican de manera independiente. Esto permite asignar
diferente número de bits a cada banda de frecuencia. Por ejemplo, el esquema
siguiente presenta un caso de codificación por subbandas: Se separa la señal en
bandas, se realiza una decimación (eliminación de muestras) y luego se codifica el
contenido de cada banda usando algún sistema de codificación como los de tiempo.
Se puede, por ejemplo asignar mas bits a zonas de frecuencia mas importante y
menos bits a las menos importantes. El ruido de cuantificación producido queda
confinado a cada una de las bandas. Una aplicación de esto es en teleconferencias.
También existe la codificación por transformada siendo la Transformada Coseno
Discreta (relacionada con la transformada de Fourier) la mas usada porque produce
una gran compactación espectral. Se realiza la transformada Coseno de la señal y
luego se codifican los coeficientes resultantes en el dominio de la frecuencia. En el
receptor se antitransforman estos coeficientes produciendo una señal muy parecida a
la original.
La transformada Coseno de una secuencia discreta se calcula como:
Esto se usa en estándares de compresión de audio e imágenes (MPEG)
2. Vocoders: Se basan en modelos de generación de la voz; en el transmisor se analiza
la voz, se extraen los parámetros del modelo y esto es lo que se almacena o envía y
en el receptor, en base a estos parámetros, se reconstruye la señal de voz. Producen
inteligibilidad a bajas tasas pero la voz no suena natural. Los Vocoder usan el
siguiente modelo para representar la generación de la voz:
El sistema se compone de un filtro variable en el tiempo, un generador de ruido
aleatorio y de un generador de impulsos. Los parámetros del filtro varían en función de la
acción consciente que se realiza al pronunciar una palabra. El modelo tiene dos entradas,
que dependen del tipo de señal. Para señales sonoras (vocales) la excitación es un tren de
impulsos de frecuencia controlada, mientras que para las señales no sonoras (consonantes)
la excitación es ruido aleatorio.
El Vocoder por predicción lineal modela los parámetros del tracto vocal como un filtro
de puros polos que se le conoce como filtro LPC (Linear Predictive Coding); este nombre
se debe a que un filtro como el mostrado supone que cada muestra es una combinación
lineal de las muestras pasadas.
s(n ) = ∑ a k s(n − k ) + Ge(n )
σ
H(z ) = p
1 + ∑ a k z −k
k =1
Los coeficientes del filtro se calculan de forma de minimizar la potencia del error entre la
muestra actual y su predicción.
Este modelo aplica en cortos intervalos de la voz donde se asume estacionaridad de
la señal de voz. Los parámetros se obtienen, como se dijo anteriormente, al minimizar la
potencia del error de predicción. Una vez obtenido los parámetros, estos son enviados
previamente cuantificados junto con el tipo de excitación que aplica, la ganancia, etc. En el
receptor se aplica el modelo para regenerar la señal de voz original. Este vocoder permite
obtener tasa del orden de 2.4Kbps.
3. Codificadores Híbridos: En este grupo se ubican codificadores que combinan
técnicas de los dos grupos anteriores para tratar de, a tasa no muy altas (8Kbps), obtener
mejor calidad que con los vocoders. Es decir combinan la sencillez de los Vocoders con la
capacidad que tienen los codificadores de forma de onda de lograr buena calidad. En estos
codificadores, las muestras de la señal de entrada se dividen en bloques de muestras
(vectores) que son procesados secuencialmente. Llevan a cabo una representación
paramétrica de la señal de voz (como los vocoders) pero tratan de que la señal suene
menos artificial para esto tratan de seleccionar mejor la excitación que alimenta al sistema
de generación de la voz. La diferencia básica entre los diferentes codificadores híbridos es
la forma como seleccionan y codifican la excitación del modelo de generación de voz. Por
ejemplo:
-En RELP (Regular Excited Linear Prediction) la excitación es una serie de pulsos
regularmente espaciados, 10 pulsos cada 5ms. Se asignan de 3 a 4 bits por pulso. Este es
usado en GSM y se obtiene una tasa de 13 Kbps
-En CELP (Coded Excited Linear prediction) la excitación se toma de un Codebook
o Diccionario almacenado tanto en el transmisor como en el receptor en base al resultado
de minimizar la potencia del error perceptual que no es mas que el error de predicción
pasado por un filtro perceptual. La idea de este filtro es atenuar las componentes
frecuenciales menos importantes para el oído y acentuar aquellas importantes. Con el error
perceptual se buscan en los diccionarios las ganancias y la excitación mas apropiada. La
excitación luego es cuantificada vectorialmente. Los codificadores CELP usan dos
predictores: uno corto y uno largo para determinar la peridiodicidad en el caso de trozos
sonoros(voiced) de la voz. La excitación trata de actualizarse cada 5ms. El empeño por
representar mejor la excitación del modelo de generación de voz resulta conveniente para
darle a la voz un sonido mas natural.
- El codificador VSELP (Vector Sum Excited Linear Prediction) emplea dos
cuantificadores VQ sumados como excitación al modelo de generación de la voz.
A continuación se explicará en un poco mas de detalle el algoritmo RPE usado en las
comunicaciones móviles GSM. En el se convierte una señal PCM de 64kbps en una
secuencia de 13kbps. La trama o segmento de voz de entrada consta de 160 muestras de
señal. A estas muestras se le aplica un preprocesado y posteriormente se pasan por un filtro
de primer orden de preénfasis. La salida obtenida se analiza para obtener los coeficientes
del filtro de retardo corto, STP (análisis LPC; Short Time Predictor). Estos parámetros se
utilizan para filtrar las 160 muestras. Los coeficientes del filtro, llamados coeficientes de
reflexión r(i), se transforman en unos coeficientes, llamados LAR LAR(i)=log10( (1+r(i))
/(1-r(i)) ), antes de transmitirlos. Para las operaciones siguientes, el segmento de voz se
subdivide en 4 sub-segmentos con 40 muestras de la señal residuo del filtro de retardo corto
cada uno.
El siguiente paso es calcular los parámetros del filtro de retardo largo (LTP; long Time
Predictor), el pitch (retardo del filtro LTP) y la ganancia, en la etapa de análisis LTP. El
bloque resultante de 40 muestras pasa al bloque de análisis del residuo(RPE). Los
parámetros RPE se utilizan en un decodificador local para reconstruir las 40 muestras de la
versión cuantificada de la señal residuo del filtro LTP. Sumando estas muestras al bloque
anterior del residuo STP estimado, se consigue una versión reconstruida de la señal residuo
actual del filtro STP.
Este bloque de señal residuo del filtro STP se pasa al bloque de análisis LTP para producir
la nueva estimación de señal residuo STP que se va a utilizar en el siguiente sub-bloque,
completando así el lazo de realimentación.
En resumen se han generado parámetros del filtro STP, parámetros del filtro LTP y
finalmente parámetros del analizador de residuo.
Los diagramas de bloques del codificador y del decodificador simplificados se muestran a
continuación:
A continuación se muestran cronológicamente diferentes algoritmos de codificación de la
voz y los organismos que los normalizaron y
Para finalizar se presenta una tabla comparativa entre diferentes técnicas. Entre otras cosas
se muestran las velocidades alcanzadas y el MOS (Mean Opinión Store) el cual es un
criterio para determinar según los usuarios la calidad de la señal reconstruida. El MOS va
entre 1 y 5 siendo 5 calidad excelente y 1 Mala calidad.