Muestreo y cuantificación
Creación del codebook: (con N codevectors)
Dada una secuencia de entrenamiento (siendo cada muestra xi k-dimensional):
Sea el codebook:
Codificadores de voz: clasificación
Los codificadores de voz pueden dividirse en 3 grupos:
Codificadores de forma de onda
Conservan la forma de onda de la señal
Calidad alta: 16 – 64 kbps
Vocoders (codificadores paramétricos)
Explotan la naturaleza de la señal de voz para reducir el bitrate
Calidad baja/media: 1.2 – 4.8 kbps
Codificadores híbridos
Mezcla de los dos anteriores
Calidad media/alta: 2.4 – 16 kbps
Codificadores de forma de onda
Estos codificadores pueden clasificarse en dos grupos según el dominio en el que trabajan:
En el dominio del tiempo:
PCM, LogPCM, DPCM, ADPCM, etc…
En el dominio de la frecuencia:
Codificación por subbandas
Codificación por transformada
Codificadores: dominio del tiempo
PCM:
Cuantificador uniforme
No aprovecha la FDP de la señal
Óptimo solo si FDP es uniforme
(Gp:) Muestreo
(Gp:) Q
(Gp:) Codificación
Codificadores: dominio del tiempo
DPCM, PCM diferencial:
La potencia del error de cuantificación es proporcional a la potencia de la señal
Reducir pot. de la señal ? reducir pot. ruido
Emplearemos un predictor:
Cuantificamos la señal de error
(Gp:) Codificador
(Gp:) +
(Gp:) Q
(Gp:) Codificador
(Gp:) +
(Gp:) P
(Gp:) x[n]
(Gp:) x[n]
(Gp:) x[n]
(Gp:) ê[n]
(Gp:) e[n]
(Gp:) c[n]
(Gp:) ^
(Gp:) ~
Codificadores: dominio del tiempo
DPCM: PCM Diferencial
(Gp:) Decodificador
(Gp:) +
(Gp:) Decodificador
(Gp:) P
(Gp:) x[n]
(Gp:) x[n]
(Gp:) c[n]
(Gp:) ^
(Gp:) ~
(Gp:) e[n]
(Gp:) ~
Codificadores: dominio del tiempo
ADPCM: PCM Diferencial Adaptativo
DPCM + adaptación del tamaño de los niveles del cuantificador
Estándar G.721 ? ADPCM 32 kbps
(Gp:) Codificador
(Gp:) +
(Gp:) Q
(Gp:) +
(Gp:) P
Adaptativo
(Gp:) x[n]
(Gp:) Ajuste
tamaño
escalón
(Gp:) Ajuste
tamaño
escalón
(Gp:) P
Adaptativo
(Gp:) +
(Gp:) Q
Inverso
(Gp:) Decodificador
Codificadores: en frecuencia
Hay dos tipos dependiendo de la forma de obtener el espectro:
Codificación por subbandas
Dividen la señal en N bandas de frecuencia por medio de un banco de filtros paso banda
Codificación por transformada
Calculan el espectro mediante una transformada (Fourier, coseno, etc…)
Codificadores: en frecuencia
Codificación por subbandas:
Banco de filtros QMF (generalmente de 4 a 8)
Cada banda puede emplear más o menos bits
Ruido de cuantificación: confinado en cada banda
PCM, DPCM, ADPCM, …
(Gp:) FPB1
(Gp:) FPBn
(Gp:) n:1
(Gp:) n:1
(Gp:) Diezmado
(Gp:) x[n]
(Gp:) x1[n]
(Gp:) xn[n]
(Gp:) 1:n
(Gp:) 1:n
(Gp:) FPB1
(Gp:) FPBn
(Gp:) +
(Gp:) Interp.
(Gp:) y[n]
Codificar
Decodificar
…
…
…
…
Codificadores: en frecuencia
Codificación por transformada:
Es necesario trabajar por bloques
Ventanas…
Se calcula el espectro de cada bloque y se cuantifica el espectro, no la señal temporal
El decodificador reconstruye el espectro y calcula la transformada inversa
Generalmente se emplea la transformada discreta de coseno ya que condensa mejor los coeficientes
Vocoders
Se basan en el modelo simplificado de producción de voz
Explotan las características de la voz
Codificador:
Calcula los parámetros del modelo
Transmite los parámetros al decodificador
Decodificador:
Reconstruye la señal de voz a partir de los parámetros
Permiten tasas binarias muy bajas
Consiguen inteligibilidad pero no naturalidad.
(Gp:) Análisis
(Gp:) Síntesis
(Gp:) Voz
(Gp:) Voz
(Gp:) Parámetros
Vocoders
Modelo de producción:
(Gp:) Excitación
Periódica
(Gp:) Ruido
Aleatorio
(Gp:) Pitch
(Gp:) Envolvente
espectral
(Gp:) G
(Gp:) Parámetros
Espectrales
(Gp:) Voz
Un único modelo ? Varios vocoders
Vocoder LPC
Vocoder de predicción lineal
El codificador trabaja por segmentos:
Frecuencia fundamental (F0 o pitch)
Decisión sonoro/sordo (incluido en pitch)
Coeficientes LPC
Factor de ganancia
El decodificador sintetiza la voz empleando los parámetros
Vocoder LPC
Vocoder LPC vs DPCM
Ambos emplean predicción lineal
DPCM envía el error muestra a muestra
El vocoder solo envía los parámetros del modelo
Para obtener la señal de error emplea el pitch o un ruido blanco (sonoro/sordo)
La calidad de la voz sintética del vocoder es muy inferior
El vocoder tiene una tasa binaria mucho menor
LPC-10
Diseñado por el DOD estadounidense (1976)
Permite la codificación de la señal de voz a 2400 bps
Emisor
Análisis
LPC
Voz
FPB
Filtro Inverso
LPC 2º Orden
AMDF
Pitch
Detector
Sonoridad
Corrector
Pitch
Codificación
RC’s y RMS
LPC-10
Receptor
(Gp:) Excitación
Periódica
(Gp:) Generador
Ruido
(Gp:) Pitch
(Gp:) LPC
(Gp:) G
(Gp:) RC’s
(Gp:) Voz
RMS
Codificadores híbridos
Combinan las técnicas de los codificadores de forma de onda con las de los vocoders
Intención: mejorar la calidad empleando bitrates bajos
Forma de mejorar la calidad:
Mejorar el modelo de la fuente
Sustituir el modelo de la fuente
Enviando el residuo (o parte de el) de alguna forma
A algunos de ellos se les conoce como codificadores de
“Análisis por síntesis”
RELP
Residual-Excited LPC Vocoder
El filtro LPC quita la correlación entre muestras, pero no elimina toda la información útil
Esta información permanece en el error de predicción
Transmitiremos parte del residuo e intentaremos reconstruirlo por completo
Filtro
Inverso
LPC
Filtro
LPC
Residuo
Voz
Voz
RELP
Información a transmitir:
Coeficientes del filtro LPC
Parte del residuo
Solamente se envía baja frecuencia
Se aplica un diezmado (~800 Hz)
Así se quitan muestras y se reduce el bitrate
Las altas frecuencias del residuo se “reconstruyen” en el decodificador generalmente aplicando un proceso no lineal:
Saturación
Énfasis en alta frecuencia
Adición de ruido
Etc…
RELP
Diagrama de bloques del codificador:
(Gp:) Análisis LPC
(Gp:) Filtro Inverso
(Gp:) Diezmado
(Gp:) Mux
s[n]
LPC coefs
e[n]
e’[n]
RELP
Diagrama de bloques del decodificador:
(Gp:) Síntesis LPC
(Gp:) Generación HF
(Gp:) Filtro PA
(Gp:) De-Mux
(Gp:) LPC coefs
(Gp:) e[n]
(Gp:) +
(Gp:) Interpolación
(Gp:) e’[n]
MELP
Mixed Excitation LPC
La señal de excitación se genera como una mezcla de dos señales:
Ruido gausiano
Trenes de impulsos
Esta operación se realiza en varias bandas de frecuencia (entre 4 y 10 bandas distintas)
Se debe determinar el “grado de sonoridad” de la señal
Además se le aplica cierto Jitter a la señal para generar naturalidad.
Codificación multipulso, MPC
Alimenta al filtro LPC con una serie pulsos sin tener en cuenta si la señal es sonora o sorda.
No aplica el modelo de fuente sonora.
Amplitudes
y posiciones
Síntesis LPC
Generador multipulsos
FPB
v[n]
s[n]
^
LPC coefs
Residuo reconstruido
Codificación multipulso, MPC
Ejemplo de señal multipulso:
(Gp:) Residuo LPC Original
(Gp:) Excitación multipulso
Codificación multipulso, MPC
Al no emplear el modelo de fuente sonora está libre de errores debido a:
El propio modelo de la fuente
Ej: Tramos mezcla sonoro/sordo
La estimación de los parámetros del modelo
Ej: Errores en la estimación del pitch
Mayor inconveniente:
Calcular las amplitudes y posiciones óptimas de la señal multipulso en cada caso
Dos opciones: bucle abierto y bucle cerrado
Codificación multipulso, MPC
Cálculo de la señal multipulso: Bucle abierto
Relativamente sencillo
Filtro Inverso LPC
Análisis
LPC
Selección
de pulsos
Codificación y empaquetado
Residuo
Voz
Coefs. LPC
Amplitudes y
posiciones
Codificación multipulso, MPC
Cálculo de la señal multipulso: Bucle cerrado
Más complejo pero mejor resultado (Análisis por Síntesis)
Análisis
LPC
Filtro
LPC
Generador
excitación
Minimización del error
+
Codificación y empaquetado
Voz
Error
Voz
sintética
LPC
–
Amplitudes y
posiciones
Codificación multipulso, MPC
Mejoras que podemos realizar:
Implementar un predictor de retardo largo para blanquear aún más la señal de excitación
Solo tener en cuenta el error perceptible por el oído:
Añadir un filtro de ponderación perceptual
Predictor a largo plazo
El pitch genera una correlación de retardo largo que no elimina el filtro LPC
Soluciones:
Aumentar el orden de la LPC (50 o más)
Aplicar otro predictor específico
Preferible: otro predictor
Necesitamos calcular el periodo del pitch y el valor del coeficiente del filtro
T: Periodo del pitch
b: coef. LPC de largo plazo
Predictor a largo plazo
La señal estimada es:
Por tanto el error (cuadrático) cometido será:
Minimizando el error…
Autocorrelación
[Ec. 1]
[Ec. 2]
Página anterior | Volver al principio del trabajo | Página siguiente |