ES2277050T3 - Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo. - Google Patents

Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo. Download PDF

Info

Publication number
ES2277050T3
ES2277050T3 ES03292715T ES03292715T ES2277050T3 ES 2277050 T3 ES2277050 T3 ES 2277050T3 ES 03292715 T ES03292715 T ES 03292715T ES 03292715 T ES03292715 T ES 03292715T ES 2277050 T3 ES2277050 T3 ES 2277050T3
Authority
ES
Spain
Prior art keywords
signal
column
filter
block
analysis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03292715T
Other languages
English (en)
Inventor
Balaes Kovesi
Dominique Massaloux
Claude Lamblin
Yang Gao
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Mindspeed Technologies LLC
Original Assignee
France Telecom SA
Mindspeed Technologies LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA, Mindspeed Technologies LLC filed Critical France Telecom SA
Application granted granted Critical
Publication of ES2277050T3 publication Critical patent/ES2277050T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • G10L19/13Residual excited linear prediction [RELP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Analogue/Digital Conversion (AREA)

Abstract

Un método de codificación de voz, que comprende los pasos de: - analizar una señal de audio de entrada (S) para determinar un respectivo conjunto de parámetros de filtro para cada uno de una sucesión de bloques de la señal de audio, - filtrar la señal de entrada en un filtro de equilibrado (3) perceptivo definido para cada bloque mediante el conjunto determinado de parámetros de filtro para producir una señal perceptivamente equilibrada (FS), - modificar una escala temporal de la señal equilibrada perceptivamente en base a información de tono fundamental para producir una señal filtrada modificada (MFS), - localizar lindes de bloque dentro de la señal filtrada modificada que corresponde al lindes de bloque de la señal de audio, y - procesar la señal filtrada modificada para obtener parámetros de codificación; en el que dicho procesamiento implica una operación de filtrado inverso que corresponde al filtro de equilibrado perceptivo, y en el que la operación de filtrado inverso se define mediante los conjuntos sucesivos de parámetros de filtro actualizados en los lindes de bloque localizados.

Description

Método de codificación generalizada de voz de análisis por síntesis, y codificador que implanta tal método.
La presente invención se refiere a la codificación mediante técnicas que usan codificación generalizada de voz de análisis por síntesis y, más particularmente, a la tecnología conocida como Predicción Lineal Relajada Excitada por Código (RCELP) y similares.
Una gran clase de paradigmas de codificación de voz está construida alrededor del concepto de la codificación predictiva. Los codificadores predictivos de voz se usan extensamente por sistemas de comunicación y de almacenamiento a tasas medias y bajas de bitios.
El enfoque más práctico y común para la codificación predictiva de voz es el esquema de predicción lineal (LP), en el que los valores actuales de señal se estiman mediante una combinación lineal de las muestras de señal transmitidas y decodificadas previamente. La predicción lineal a corto plazo (ST), que está estrechamente relacionada con la forma espectral de la señal de entrada, se usó inicialmente para codificar voz. Adicionalmente se introdujo una predicción lineal a largo plazo (LT), para capturar la estructura armónica de la señal de voz, en particular para segmentos de voz hablados.
El enfoque de análisis por síntesis (AbS) ha proporcionado unos medios eficientes para un análisis y una codificación óptimos del residual de LP a corto plazo, usando la predicción lineal a largo plazo y una búsqueda de excitación de libro de códigos. El esquema de AbS es la base de una gran familia de codificadores de voz, que incluyen codificadores de predicción lineal excitada por código (CELP) y vocodificadores autoexcitados (A. Gersho, "Advances in Speech and Audio Compression", Proc. del IEEE, vol. 82, nº 6, págs. 900-918, junio de 1994).
El análisis de LP a largo plazo, también denominado "predicción de tono fundamental", en el codificador y la síntesis de LP a largo plazo en el descodificador han evolucionado, a medida que ha progresado la tecnología de codificación de voz. Modelado inicialmente como un filtro de derivación única, la LP a largo plazo se extendió para incluir filtros de derivaciones múltiples (R. P. Ramachandran y P. Kabal, "Stability and Performance Analysis of Pitch Filters in Speech Coders", IEEE Trans. en ASSP, vol. 35, nº 7, págs. 937-948, julio de 1987). Después se han introducido retrasos fraccionarios, usando un sobremuestreo y un submuestreo con filtros de interpolación (P. Kroon y B. S. Atal, "Pitch Predictors with High Temporal Resolution", Proc. ICASSP, vol. 2, abril de 1990, págs. 661-664).
Esas extensiones del filtro inicial de derivación única se diseñaron para mejorar la captura de las redundancias a LT producidas por la fuente glotal en voz hablada. Cuanto mejor es la coincidencia a LT y mejor es la codificación de excitación de LP, mejores son los rendimientos globales. La exactitud de coincidencia también se puede mejorar mediante refrescamientos frecuentes de los parámetros a LT. Sin embargo, un predictor a LT de derivaciones múltiples o una tasa más alta de actualización para los filtros a LT requiere la transmisión de un gran número de bitios para su representación, y eso aumenta significativamente la tasa de bitios. Este coste puede resultar prohibitivo en el caso de codificadores de baja tasa de bitios, donde son necesarias por consiguiente otras soluciones.
Para superar algunas de las limitaciones del enfoque de predicción a LT descrito anteriormente, se introdujo el concepto de codificación generalizada de análisis por síntesis (W. E. Kleijn y otros, "Generalized Analysis-by-Synthesis Coding and its Application to Pitch Prediction", Proc. ICASSP, vol. 1, 1992, págs. 337-340). En este esquema, la señal original es modificada antes de codificar, con la obligación de que la señal modificada sea perceptivamente cercana o idéntica a la señal original. La modificación es tal que los parámetros de codificador, más precisamente los parámetros de predicción de tono fundamental, están obligados a coincidir con un contorno específico de período de tono fundamental. El contorno de tono fundamental se obtiene mediante la interpolación de los parámetros de predicción de tono fundamental columna a columna usando una representación de baja resolución para el desfase de tono fundamental, lo que limita la tasa de bitios necesitada para la representación de los parámetros de predicción a LT.
La modificación realizada para coincidir con el contorno de tono fundamental se llama modificación de escala temporal o "pliegue temporal" (W. E. Kleijn y otros, "Interpolation of the Pitch Predictor Parameters in Analysis-by-Synthesis Speech Coders", IEEE Trans. en SAP, vol. 2, nº 1, parte I, enero de 1994, págs. 42-54). El objetivo del procedimiento de modificación de escala temporal es alinear los rasgos principales de la señal original con los de la contribución de la predicción a LT a la señal de excitación.
Los codificadores RCELP se derivan de los codificadores CELP convencionales usando el concepto generalizado de análisis por síntesis, descrito anteriormente, aplicado a los parámetros de tono fundamental, como se describe en el documento W. B. Kleijn y otros, "The RCELP Speech-Coding Algorithm", Trans. Europeas en Telecomunicaciones, vol. 4, nº 5, septiembre-octubre de 1994, págs. 573-582.
Los rasgos principales de los codificadores RCELP son como viene a continuación. Como en los codificadores CELP, primero se estiman los coeficientes de LP a corto plazo (generalmente una vez por cada columna, algunas veces con refrescamientos intermedios). La longitud de columna puede variar, típicamente, entre 10 y 30 ms. En los codificadores RCELP, el período de tono fundamental también se estima columna a columna, con un algoritmo robusto de detección de tono fundamental. Después, se obtiene un contorno de período de tono fundamental interpolando los períodos de tono fundamental columna a columna. La señal original se modifica para coincidir con este contorno de tono fundamental. En implantaciones más tempranas (patente de Estados Unidos nº 5.704.003), este proceso de modificación de escala temporal se realizó en la señal residual de LP a corto plazo. Sin embargo, una solución preferida es usar una señal de entrada equilibrada perceptivamente, obtenida filtrando la señal de entrada a través de un filtro de equilibrado perceptivo, como se hace en el documento J. Thyssen y otros, "A candidate for the ITU-T 4 kbit/s Speech Coding Standard", Proc. ICASSP, vol. 2, Salt Lake City, Utah, EE.UU., mayo de 2001, págs. 681-684, o en el documento Yang Gao y otros, "EX-CELP: A Speech Coding Paradigm", Proc. ICASSP, vol. 2, Salt Lake City, Utah, EE.UU., mayo de 2001, págs. 689-693.
La señal modificada de voz se puede obtener entonces mediante filtrado inverso usando el filtro inverso de preprocesamiento, mientras que las operaciones subsiguientes de codificación pueden ser idénticas a las realizadas en un codificador CELP convencional.
Se hace observar que la señal modificada de entrada se puede calcular realmente, dependiendo de la clase de filtrado realizado antes de la modificación de escala temporal, y dependiendo de la estructura adoptada en el codificador CELP que viene a continuación del módulo de modificación de escala temporal.
Cuando el filtro de equilibrado perceptivo, usado para la búsqueda fija de libro de códigos del codificador CELP, es de la forma A(z)/A(z/\gamma), en donde A(z) es el filtro de LP y \gamma un factor de equilibrado, en el cálculo diana solo está implicado un filtrado recurrente. Solo se necesita de este modo la señal residual para la búsqueda de libro de códigos. En el caso de la codificación RCELP, el cálculo de la señal original modificada puede no ser necesario si la modificación de escala temporal se ha realizado sobre esta señal residual. Los filtros de equilibrado perceptivo de la forma A(z/\gamma_{1})/A(z/\gamma_{2}), con factores \gamma_{1} y \gamma_{2} de equilibrado, se conoce que proporcionan un mejor rendimiento, y más particularmente los filtros perceptivos adaptativos, es decir, con \gamma_{1} y \gamma_{2} variables, como se divulga en la patente de Estados Unidos nº 5.845.244. Cuando se usan tales filtros de equilibrado en el procedimiento CELP, la evaluación diana introduce dos filtros recurrentes.
En muchas estructuras CELP (por ejemplo en el documento R. Salami y otros, "Design and description of CS-ACELP: a toll quality 8 kb/s speech coder", IEEE Trans. en procesamiento de audio y voz, vol. 6, nº 2, marzo de 1998), el proceso intermedio de filtrado alimenta la señal residual actual al filtro de síntesis de LP con la pasada señal de error equilibrada como memoria. La señal de entrada está implicada tanto en el cálculo residual como en la actualización de la señal de error al final del procesamiento de columna.
En el caso de la RCELP, una implantación clara y sencilla de este esquema introduce la necesidad de calcular la entrada original modificada. Sin embargo, se pueden derivar esquemas equivalentes, en los que no se requiere la señal modificada de entrada. Estos se basan en el uso bien de la señal residual modificada, si la modificación de escala temporal se aplicó a la señal residual, o bien de la entrada equilibrada modificada, si la modificación de escala temporal se aplicó a la voz equilibrada.
En la práctica, la mayoría de codificadores RCELP no calculan realmente la señal original modificada usando la clase de estructura presentada anteriormente.
En la figura 1 se muestra un diagrama de bloques de un codificador RCELP conocido. Un módulo 1 de análisis de codificación predictiva lineal (LPC) procesa primero la señal S de audio de entrada, para proporcionar parámetros de LPC usados por un módulo 2 para calcular los coeficientes del filtro 3 de preprocesamiento cuya función de transferencia se representa como F(z). Este filtro 3 recibe la señal S de entrada y suministra una señal preprocesada FS a un módulo 4 de análisis de tono fundamental. Los parámetros de tono fundamental estimados de este modo son procesados por un módulo 5 para derivar una trayectoria de tono fundamental.
La entrada filtrada FS se alimenta adicionalmente a un módulo 6 de modificación de escala temporal que proporciona la señal filtrada modificada MFS en base a la trayectoria de tono fundamental obtenida por el módulo 5. Un filtrado inverso que usa un filtro 7 de función de transferencia F(z)^{-1} se aplica a la señal filtrada modificada MFS para proporcionar una señal modificada MS de entrada alimentada a un codificador CELP convencional 8.
El flujo digital \phi de salida del codificador RCELP, ensamblado mediante un multiplexor 9, incluye típicamente datos de cuantización para los parámetros de LPC y el desfase de tono fundamental calculados por los módulos 1 y 4, índices de libro de códigos de CELP obtenidos por el codificador 8, y datos de cuantización para ganancias asociadas con la predicción a LT y la excitación CELP, también obtenidos por el codificador 8.
En lugar de una función directa 7 de filtrado inverso, se puede realizar la conversión de la señal filtrada modificada en otro dominio. Esta observación se mantiene para la técnica anterior discutida aquí y también para la presente invención divulgada más adelante. Como ejemplo, tal dominio puede ser el dominio residual, usándose el filtro
F(z)^{-1} de procesamiento inverso en combinación con otro procesamiento, tal como el filtrado de LP a corto plazo del codificador CELP. Para comprender más directamente el problema, la siguiente discusión considera el caso en el que la señal modificada de entrada se calcula realmente, es decir, cuando se usa explícitamente el filtro 7 de preprocesamiento inverso.
En la mayoría de los métodos de codificación de voz de AbS, el procesamiento de voz se realiza en columnas de voz que tienen una longitud típica de 5 a 30 ms, que corresponden al período de análisis de LP a corto plazo. Dentro de una columna, se asume que la señal es estacionaria, y los parámetros asociados con la columna se mantienen constantes. Esto es verdad típicamente asimismo para el filtro F(z), y sus coeficientes se actualizan de este modo columna a columna. Se apreciará que el análisis de LP se puede realizar más de una vez en una columna, y que el filtro F(z) también puede variar de subcolumna a subcolumna. Este es el caso, por ejemplo, cuando se usa interpolación de intracolumna de los filtros de LP.
En lo que viene a continuación, la palabra "bloque" se usará como que corresponde a la periodicidad de actualización de los parámetros de filtro de preprocesamiento. Los expertos en la técnica apreciarán que tal "bloque" puede constar típicamente de una columna de análisis de LP, una subcolumna de tal columna de análisis de LP, etc., dependiendo de la arquitectura de códec.
La ganancia asociada con un filtro lineal es definida como el cociente de la energía de su señal de salida con relación a la energía de su señal de entrada. Claramente, una ganancia alta de un filtro lineal corresponde a una ganancia baja del filtro lineal inverso y viceversa.
Puede ocurrir que los filtros 3 de preprocesamiento calculados para dos bloques consecutivos tengan ganancias significativamente diferentes, mientras que las energías de la voz original S son similares en ambos bloques. Puesto que las ganancias de filtro son diferentes, las energías de las señales filtradas FS para los dos bloques serán asimismo significativamente diferentes. Sin una modificación de escala temporal, todas las muestras del bloque filtrado de energía más alta se filtrarán inversamente mediante el filtro lineal inverso 7 de ganancia más baja, mientras que todas las muestras del bloque filtrado de energía más baja se filtrarán inversamente mediante el filtro lineal inverso 7 de ganancia más alta. En este caso, el perfil de energía de la señal modificada MS refleja correctamente la de la voz S de entrada.
Sin embargo, el procedimiento de modificación de escala temporal hace que, cerca del linde de bloque, una porción de un primer bloque, que puede incluir múltiples muestras, se pueda desplazar hasta un segundo bloque adyacente. Las muestras en esa porción del primer bloque se filtrarán mediante un filtro inverso calculado para el segundo bloque, que podría tener una ganancia significativamente diferente. De este modo, si muestras de una señal filtrada modificada MFS de alta energía se remiten a un filtro inverso 7 que tiene una ganancia alta en lugar de una ganancia baja, se produce un crecimiento súbito de energía en la señal modificada. Un oyente percibe tal crecimiento de energía como un ruido "de chasquido" criticable.
La figura 2 ilustra este problema, representando N un número de bloque, g_{d}(N) la ganancia del filtro 3 de preprocesamiento para el bloque N, y g_{i}(N)=1/g_{d}(N) la ganancia del filtro inverso 7 para el bloque N.
Un objeto de la presente invención es proporcionar una solución para evitar la falta de coincidencia discutida anteriormente entre los filtros inversos de preprocesamiento (presentes explicita o implícitamente) y la señal modificada de escala temporal, como se divulga mediante la reivindicación independiente 1 de método y la reivindicación independiente 9 de aparato.
La presente invención se usa en el lado de codificador de un códec de voz que usa un tipo de enfoque EX-CELP o RCELP, en el que la señal de entrada se ha modificado mediante un proceso de modificación de escala temporal. La modificación de escala temporal se aplica a una versión perceptivamente equilibrada de la señal de entrada. Después, la señal filtrada modificada se convierte en otro dominio, por ejemplo de regreso al dominio de voz o al dominio residual, usando un correspondiente filtro inverso, directa o indirectamente, por ejemplo combinado con otro filtro.
La presente invención elimina artefactos que son resultado de la falta de alineamiento de la voz modificada de escala temporal y de las actualizaciones de parámetro de filtro inverso, ajustando la disposición temporal de las actualizaciones del filtro inverso implicado en la conversión mencionada anteriormente a otro dominio.
En el procedimiento de modificación de escala temporal, se calcula ventajosamente una función de desplazamiento temporal para localizar los lindes de bloque dentro de la señal filtrada modificada, en el que tendrán lugar las actualizaciones de parámetro de filtro inverso. El procedimiento de modificación de escala temporal desplaza generalmente estos lindes de bloque con respecto a sus posiciones en la señal filtrada entrante. La función de desplazamiento temporal evalúa las posiciones de las muestras en la señal filtrada modificada que corresponden a los lindes de bloque de la señal original, con el fin de realizar las actualizaciones de los parámetros de filtro inverso de preprocesamiento en las posiciones más adecuadas. Actualizando los parámetros de filtro en estas posiciones, el sincronismo entre el filtro inverso y la señal filtrada modificada de escala temporal se mantiene, y se eliminan los artefactos cuando la señal filtrada modificada se convierte al otro dominio.
La invención propone de este modo un método de codificación de voz, que comprende los pasos de:
- analizar una señal de audio de entrada para determinar un respectivo conjunto de parámetros de filtro para cada uno de una sucesión de bloques de la señal de audio;
- filtrar la señal de entrada en un filtro de equilibrado perceptivo definido para cada bloque mediante el conjunto determinado de parámetros de filtro para producir una señal perceptivamente equilibrada;
- modificar una escala temporal de la señal equilibrada perceptivamente en base a información de tono fundamental para producir una señal filtrada modificada;
- localizar lindes de bloque dentro de la señal filtrada modificada; y
- procesar la señal filtrada modificada para obtener parámetros de codificación.
Este último procesamiento implica una operación de filtrado inverso que corresponde al filtro de equilibrado perceptivo. La operación de filtrado inverso se define mediante los conjuntos sucesivos de parámetros de filtro actualizados en los lindes de bloque localizados.
En una realización del método, el paso de analizar la señal de entrada comprende un análisis de predicción lineal llevado a cabo en columnas sucesivas de señal, estando hecha cada columna de un número p de subcolumnas consecutivas (p\geq1). Cada uno de los "bloques" puede constar entonces de una de estas subcolumnas. El paso de localizar lindes de bloque comprende entonces, para cada columna, determinar un conjunto ordenado de p+1 valores para localizar los lindes de sus p subcolumnas dentro de la señal filtrada modificada.
El análisis de predicción lineal se aplica preferiblemente a cada una de las p subcolumnas por medio de una función de ventana de análisis centrada en esta subcolumna, mientras que el paso de analizar la señal de entrada comprende adicionalmente, para la columna actual, un análisis de predicción lineal a futuro por medio de una función asimétrica de ventana de análisis a futuro que tiene un soporte que no se extiende por adelantado con respecto al soporte de la función de ventana de análisis centrada en la última subcolumna de la columna actual y un máximo alineado en una posición temporal localizada por adelantado con respecto al centro de esta última subcolumna. En respuesta al valor (p+1)º del conjunto ordenado determinado para la columna actual que cae cerca del final de la columna, la operación de filtrado inverso se actualiza ventajosamente en el linde de bloque localizado por dicho valor (p+1)º que se ha de definir mediante un conjunto de coeficientes de filtro determinados a partir del análisis a futuro.
Otro aspecto de la presente invención se refiere a un codificador de voz, que tiene medios adaptados para implantar el método esbozado aquí anteriormente.
Otros rasgos y ventajas de la invención se pondrán de manifiesto en la siguiente descripción de realizaciones ejemplares no limitantes de ella, con relación a los dibujos adjuntos, en los cuales:
La figura 1, discutida previamente, es un diagrama de bloques de un codificador RCELP de acuerdo con la técnica anterior;
la figura 2, discutida previamente, es un diagrama de disposición temporal que ilustra el problema de "ruido de chasquido" encontrado en ciertos codificadores RCELP del tipo descrito con referencia a la figura 1;
la figura 3 es un diagrama similar a la figura 2, que ilustra el funcionamiento de un codificador RCELP de acuerdo con la presente invención;
la figura 4 es un diagrama de bloques de un ejemplo de codificador RCELP de acuerdo con la presente invención;
la figura 5 es un diagrama de disposición temporal que ilustra ventanas de análisis usadas en una realización particular de la invención.
La figura 3 ilustra cómo se puede aliviar el problema de falta de coincidencia evidente en la figura 2.
En lugar de bloques de filtrado inverso de longitud constante relacionados con la longitud de columna o de subcolumna de la señal de entrada, se aplica un filtrado inverso de longitud variable. El linde en el cual el filtro inverso F(z,N+1) sustituye al filtro inverso F(z,N) depende del procedimiento de modificación de escala temporal. Si T_{0} designa la posición de la primera muestra de la columna N+1 en la señal filtrada FS, antes de la modificación de escala temporal, la correspondiente posición de muestra en la señal filtrada modificada se denota como T_{1} en la figura 3. Esta posición T_{1} se proporciona como salida del procedimiento de modificación de escala temporal. En el método propuesto, durante el procedimiento de filtrado inverso, el filtro inverso F(z,N)^{-1} se sustituye por el siguiente filtro inverso
F(z,N+1)^{-1} en la muestra T_{1} en lugar de en la muestra T_{0}. Por lo tanto, cada muestra se filtra inversamente mediante el filtro que corresponde al filtro de preprocesamiento de equilibrado perceptivo que se usó para producir la muestra, lo que reduce el riesgo de una falta de coincidencia de ganancia.
Si se observa un desplazamiento a la izquierda (T_{1}<T_{0}), las muestras de la señal modificada después de T_{1} se tienen que filtrar mediante el filtro inverso que corresponde a la siguiente columna de la señal de entrada. Generalmente, ya se conoce una buena aproximación de este filtro debido a un análisis a futuro realizado en la etapa de análisis de LPC. Usar el filtro que es resultado del análisis a futuro en este caso evita introducir cualquier retraso adicional cuando se usa la presente invención.
Tal mejora del esquema RCELP se consigue en un codificador como se pone de ejemplo en la figura 4. Con respecto a la estructura conocida mostrada en la figura 1, los cambios están en los módulos 16, 17 de modificación de escala temporal y de filtrado inverso. Los otros elementos 1-5 y 8-9 se han representado con las mismas referencias porque pueden ser esencialmente los mismos que en el codificador RCELP conocido.
Como ilustración, el codificador de acuerdo con la invención, como se muestra en la figura 4, puede ser un codificador de voz de banda estrecha de baja tasa de bitios, que tiene los siguientes rasgos:
- La longitud de columna es de 20 ms, es decir, 160 muestras a una velocidad de muestreo de 8 kHz.
- Cada columna está dividida en p=3 subcolumnas (bloques) de 53, 53 y 54 muestras respectivamente, con una ventana a futuro de 90 muestras. La figura 5 ilustra las diversas ventanas de análisis usadas en el módulo 1 de análisis de LPC. Las líneas verticales continuas son los lindes de columna, mientras que las líneas verticales discontinuas son los lindes de subcolumna. Las curvas simétricas continuas corresponden a las ventanas de análisis de subcolumna, y la curva asimétrica de puntos y trazos representa la ventana de análisis para la parte a futuro. Esta ventana de análisis a futuro tiene el mismo soporte que la ventana de análisis que pertenece a la tercera subcolumna de la columna, pero está centrada en la región a futuro (es decir, su máximo está avanzado para estar en alineamiento con el centro de la primera subcolumna de la siguiente columna).
- Un modelo de LP a corto plazo de orden 10 es usado por el módulo 1 de análisis de LPC para representar la envuelta espectral de la señal. El correspondiente filtro A(z) de LP se calcula para cada subcolumna.
- El filtro 3 de preprocesamiento es un filtro adaptativo de equilibrado perceptivo de la forma F(z)=A(z/\gamma_{1})/A(z/\gamma_{2}), con A(z)=1+ \sum\limits^{10}_{i=1} \alpha_{i} \cdot z^{-i} en la que a_{i} son los coeficientes del filtro de LP de orden 10º sin cuantizar. La cantidad de equilibrado perceptivo, controlado por \gamma_{1} y \gamma_{2}, es adaptativo para depender de la forma espectral de la señal, por ejemplo como se describe en la patente de Estados Unidos nº 5.845.244.
Se ha apuntado que una de las causas de la degradación de señal es la diferencia en las ganancias de dos filtros consecutivos de equilibrado perceptivo. Cuanto mayor es la diferencia, mayor es el riesgo de una degradación audible. Aunque se podría producir un cambio significativo de ganancia incluso cuando se usa un filtro no adaptativo de equilibrado, es decir, valores constantes de \gamma_{1} y \gamma_{2}, el filtro adaptativo de equilibrado aumenta la probabilidad de que dos ganancias consecutivas de filtro sean significativamente diferentes, puesto que los valores de \gamma_{1} y \gamma_{2} pueden cambiar bastante rápidamente, lo que puede causar un cambio significativo de ganancia de una columna a la siguiente. La invención propuesta es de este modo de particular interés cuando se usa un filtro adaptativo de equilibrado.
La voz equilibrada se obtiene filtrando la señal S de entrada por medio del filtro perceptivo 3 cuyos coeficientes definidos por las a_{i}, \gamma_{1} y \gamma_{2} se actualizan en los lindes originales de subcolumna, es decir, en posiciones digitales de muestra 0, 53, 106 y 160. El análisis a LT hecho por el módulo 4 en la voz equilibrada incluye una clasificación de cada columna como hablada de manera estacionaria o no. Para columnas habladas de manera estacionaria, la trayectoria de tono fundamental es calculada por ejemplo por el módulo 5 por medio de una interpolación lineal del valor de tono fundamental que corresponde a la última muestra de la columna y el valor de tono fundamental del final de la columna previa. Para columnas no estacionarias, la trayectoria de tono fundamental se puede fijar a algún valor constante de tono fundamental.
El módulo 16 de modificación de escala temporal puede realizar, si es necesario, la modificación de escala temporal de la voz equilibrada en base a períodos de tono fundamental, como es el caso a menudo en codificadores RCELP. El linde entre dos períodos se escoge en una región de baja energía entre dos pulsos de tono fundamental. Después se calcula una señal diana para el período dado mediante filtrado fraccionario a LT de la voz equilibrada precedente de acuerdo con la trayectoria dada de tono fundamental. La voz equilibrada modificada debe coincidir con esta señal diana. La modificación de escala temporal de la voz equilibrada consiste en dos pasos. En el primer paso, el pulso de la voz equilibrada se desplaza para coincidir con el pulso de la señal diana. El valor óptimo de desplazamiento se determina maximizando la correlación cruzada normalizada entre la señal diana y la voz equilibrada. En el segundo paso, las muestran que preceden al pulso dado y que están entre los dos últimos pulsos se modifican de escala temporal en la voz equilibrada. Las posiciones de estas muestras se comprimen o expanden proporcionalmente como una función de la operación de desplazamiento del primer paso. El retraso acumulado se actualiza en base al valor local obtenido de desplazamiento, y se guarda al final de cada subcolumna.
Las salidas del módulo 16 de modificación de escala temporal son (1) la señal MFS de voz equilibrada modificada de escala temporal y (2) los lindes de subcolumna modificada representados en un conjunto ordenado i0 de p+1=4 entradas i0[0], i0[1], i0[2], i0[3]. Estos lindes modificados de subcolumna se calculan usando los retrasos acumulados guardados, con la limitación: 0 \leq i0[0]< i0[1]< i0[2]< i0[3] \leq160. Si los retrasos acumulados son todos cero, las posiciones originales de linde no cambian, es decir, i0[0]=0, i0[1]=53, i0[2]=106, i0[3]=159.
En la realización ilustrada, el retorno del dominio de voz se hace por medio del filtro inverso 17 cuya función de transferencia es F(z)^{-1} = A(z/\gamma_{2})/A(z/\gamma_{1}), en la que los coeficientes a_{i}, \gamma_{1} y \gamma_{2} se cambian en las posiciones de muestra dadas por el conjunto ordenado i0 de la siguiente manera:
\newpage
- Para las posiciones de muestra 0 a i0[0] - 1, se usan los coeficientes de filtro de la tercera subcolumna de la columna previa. Por lo tanto, los filtros de las terceras subcolumnas tienen que ser almacenados durante la duración de al menos una subcolumna más.
- Para las posiciones de muestra i0[0] a i0[1] - 1, se usan los coeficientes de filtro de la primera subcolumna de la columna actual.
- Para las posiciones de muestra i0[1] a i0[2] - 1, se usan los coeficientes de filtro de la segunda subcolumna de la columna actual.
- Para las posiciones de muestra i0[2] a i0[3] - 1, se usan los coeficientes de filtro de la tercera subcolumna de la columna actual.
- Para las posiciones de muestra i0[3] a 159 (si i0[3]<160), se usan los coeficientes de filtro que corresponden a la ventana de análisis a futuro. El filtro modelado de esta manera es una buena aproximación del filtro de la primera subcolumna de la siguiente columna, puesto que se calcula en ventanas de análisis centradas en la misma subcolumna. Usar esta aproximación circunvala la necesidad de introducir retraso adicional. De otro modo, son necesarias 54 muestras extra para hacer el análisis de LP de la primera subcolumna de la siguiente columna.
Consiguientemente, cada región de la voz equilibrada se filtra inversamente mediante los filtros directos 17, es decir, mediante la inversa de los filtros que se usaron para el análisis. Esto evita sacudidas súbitas de energía debidas a falta de coincidencia de ganancia de filtro (como en la figura 2).

Claims (16)

1. Un método de codificación de voz, que comprende los pasos de:
- analizar una señal de audio de entrada (S) para determinar un respectivo conjunto de parámetros de filtro para cada uno de una sucesión de bloques de la señal de audio,
- filtrar la señal de entrada en un filtro de equilibrado (3) perceptivo definido para cada bloque mediante el conjunto determinado de parámetros de filtro para producir una señal perceptivamente equilibrada (FS),
- modificar una escala temporal de la señal equilibrada perceptivamente en base a información de tono fundamental para producir una señal filtrada modificada (MFS),
- localizar lindes de bloque dentro de la señal filtrada modificada que corresponde al lindes de bloque de la señal de audio, y
- procesar la señal filtrada modificada para obtener parámetros de codificación;
en el que dicho procesamiento implica una operación de filtrado inverso que corresponde al filtro de equilibrado perceptivo, y en el que la operación de filtrado inverso se define mediante los conjuntos sucesivos de parámetros de filtro actualizados en los lindes de bloque localizados.
2. El método según la reivindicación 1, en el que el filtro de equilibrado perceptivo es un filtro (3) de equilibrado perceptivo adaptativo.
3. El método según la reivindicación 2, en el que el filtro (3) de equilibrado perceptivo tiene una función de la forma A(z/\gamma_{1})/A(z/\gamma_{2}), en la que A(z) es una función de transferencia de un filtro de predicción lineal estimada en el paso de analizar la señal (S) de entrada y \gamma_{1} y \gamma_{2} son coeficientes adaptativos para controlar una cantidad de equilibrado perceptivo.
4. El método según una cualquiera de las reivindicaciones anteriores, en el que el paso de localizar lindes de bloque comprende acumular un retraso que es resultado de la modificación de escala temporal aplicada a muestras de cada bloque de la señal (FS) equilibrada perceptivamente, y guardar el valor de retraso acumulado al final del bloque para localizar un linde de bloque dentro de la señal filtrada modificada (MFS).
5. El método según una cualquiera de las reivindicaciones anteriores, en el que el paso de analizar la señal (S) de entrada comprende un análisis de predicción lineal llevado a cabo en columnas sucesivas de señal, estando hecha cada columna de un número p de subcolumnas consecutivas en las que p es un número entero al menos igual a 1, en el que cada uno de dichos bloques consta de una respectiva de dichas subcolumnas, y en el que el paso de localizar lindes de bloque comprende, para cada columna, determinar un conjunto ordenado de p+1 valores para localizar los lindes de las p subcolumnas de dicha columna dentro de la señal filtrada modificada (MFS).
6. El método según la reivindicación 5, en el que el análisis de predicción lineal se aplica a cada subcolumna por medio de una función de ventana de análisis centrada en dicha subcolumna,
en el que el paso de analizar la señal (S) de entrada comprende adicionalmente, para una columna actual, un análisis de predicción lineal a futuro por medio de una función asimétrica de ventana de análisis a futuro que tiene un soporte que no se extiende por adelantado con respecto al soporte de la función de ventana de análisis centrada en la última subcolumna de la columna actual y un máximo alineado en una posición temporal localizada por adelantado con respecto al centro de dicha última subcolumna,
y en el que, en respuesta al valor (p+1)º del conjunto ordenado determinado para la columna actual que cae cerca del final de la columna, la operación de filtrado inverso se actualiza en el linde de bloque localizado por dicho valor (p+1)º que se ha de definir mediante un conjunto de coeficientes de filtro determinados a partir del análisis a futuro.
7. El método según la reivindicación 6, en el que la función de ventana de análisis a futuro tiene un máximo alineado en el centro de la primera subcolumna de la columna que viene a continuación de la columna actual.
8. El método según una cualquiera de las reivindicaciones anteriores, en el que los parámetros de codificación obtenidos en el paso de procesar la señal filtrada modificada comprenden parámetros de codificación CELP.
9. Un codificador de voz, que comprende:
- medios (1) para analizar una señal (S) de audio de entrada para determinar un respectivo conjunto de parámetros de filtro para cada uno de una sucesión de bloques de la señal de audio,
\newpage
- un filtro (3) de equilibrado perceptivo definido para cada bloque mediante el conjunto determinado de parámetros de filtro, para filtrar la señal de entrada y producir una señal (FS) perceptivamente equilibrada,
- medios (16) para modificar una escala temporal de la señal equilibrada perceptivamente en base a información de tono fundamental para producir una señal filtrada modificada (MFS),
- medios (16) para localizar lindes de bloque dentro de la señal filtrada modificada que corresponde al lindes de bloque de la señal de audio, y
- medios (17, 8) para procesar la señal filtrada modificada para obtener parámetros de codificación;
en el que dicho procesamiento implica una operación de filtrado inverso que corresponde al filtro de equilibrado perceptivo, y en el que la operación de filtrado inverso se define mediante los conjuntos sucesivos de parámetros de filtro actualizados en los lindes de bloque localizados.
10. El codificador según la reivindicación 9, en el que el filtro (3) de equilibrado perceptivo es un filtro adaptativo de equilibrado perceptivo.
11. El codificador según la reivindicación 10, en el que el filtro (3) de equilibrado perceptivo tiene una función de transferencia de la forma A(z/\gamma_{1})/A(z/\gamma_{2}), en la que A(z) es una función de transferencia de un filtro de predicción lineal estimada por los medios (1) para analizar la señal de entrada y \gamma_{1} y \gamma_{2} son coeficientes adaptativos para controlar una cantidad de equilibrado perceptivo.
12. El codificador de voz según una cualquiera de las reivindicaciones 9 a 11, en el que los medios (16) para localizar lindes de bloque comprenden medios para acumular un retraso que es resultado de la modificación de escala temporal aplicada a muestras de cada bloque de la señal (FS) equilibrada perceptivamente, y para guardar el valor de retraso acumulado al final del bloque para localizar un linde de bloque dentro de la señal filtrada modificada (MFS).
13. El codificador de voz según una cualquiera de las reivindicaciones 9 a 12, en el que los medios (1) para analizar la señal de entrada comprenden medios para llevar a cabo un análisis de predicción lineal en columnas sucesivas de señal, estando hecha cada columna de un número p de subcolumnas consecutivas en las que p es un número entero al menos igual a 1, en el que cada uno de dichos bloques consta de una respectiva de dichas subcolumnas, y en el que los medios (16) para localizar lindes de bloque comprenden medios para determinar, para cada columna, un conjunto ordenado de p+1 valores para localizar los lindes de las p subcolumnas de dicha columna dentro de la señal filtrada modificada (MFS).
14. El codificador según la reivindicación 13, en el que los medios (1) de análisis de predicción lineal están dispuestos para procesar cada subcolumna por medio de una función de ventana de análisis centrada en dicha subcolumna,
en el que los medios (1) para analizar la señal (S) de entrada comprenden adicionalmente medios de análisis de predicción lineal a futuro para procesar una columna actual por medio de una función asimétrica de ventana de análisis a futuro que tiene un soporte que no se extiende por adelantado con respecto al soporte de la función de ventana de análisis centrada en la última subcolumna de la columna actual y un máximo alineado en una posición temporal localizada por adelantado con respecto al centro de dicha última subcolumna,
y en el que los medios (17) para procesar la señal filtrada modificada están dispuestos para actualizar la operación de filtrado inverso en el linde de bloque localizado por el valor (p+1)º del conjunto ordenado determinado para la columna actual, en respuesta a dicho valor (p+1)º que cae cerca del final de la columna actual, como para definir mediante un conjunto de coeficientes de filtro determinados a partir del análisis a futuro.
15. El codificador según la reivindicación 14, en el que la función de ventana de análisis a futuro tiene un máximo alineado en el centro de la primera subcolumna de la columna que viene a continuación de la columna actual.
16. El codificador de voz según una cualquiera de las reivindicaciones 9 a 15, en el que los parámetros de codificación obtenidos por los medios (8) para procesar la señal filtrada modificada comprenden parámetros de codificación CELP.
ES03292715T 2002-11-14 2003-10-30 Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo. Expired - Lifetime ES2277050T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US294923 2002-11-14
US10/294,923 US20040098255A1 (en) 2002-11-14 2002-11-14 Generalized analysis-by-synthesis speech coding method, and coder implementing such method

Publications (1)

Publication Number Publication Date
ES2277050T3 true ES2277050T3 (es) 2007-07-01

Family

ID=32176196

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03292715T Expired - Lifetime ES2277050T3 (es) 2002-11-14 2003-10-30 Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo.

Country Status (12)

Country Link
US (1) US20040098255A1 (es)
EP (1) EP1420391B1 (es)
JP (1) JP2004163959A (es)
KR (1) KR20040042903A (es)
CN (1) CN1525439A (es)
AT (1) ATE345565T1 (es)
BR (1) BR0305195A (es)
CA (1) CA2448848A1 (es)
DE (1) DE60309651T2 (es)
ES (1) ES2277050T3 (es)
HK (1) HK1067911A1 (es)
MX (1) MXPA03010360A (es)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ562182A (en) * 2005-04-01 2010-03-26 Qualcomm Inc Method and apparatus for anti-sparseness filtering of a bandwidth extended speech prediction excitation signal
DK1875463T3 (en) * 2005-04-22 2019-01-28 Qualcomm Inc SYSTEMS, PROCEDURES AND APPARATUS FOR AMPLIFIER FACTOR GLOSSARY
EP1989706B1 (fr) * 2006-02-14 2011-10-26 France Telecom Dispositif de ponderation perceptuelle en codage/decodage audio
US8260609B2 (en) 2006-07-31 2012-09-04 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of inactive frames
US8725499B2 (en) * 2006-07-31 2014-05-13 Qualcomm Incorporated Systems, methods, and apparatus for signal change detection
US8532984B2 (en) * 2006-07-31 2013-09-10 Qualcomm Incorporated Systems, methods, and apparatus for wideband encoding and decoding of active frames
US7987089B2 (en) * 2006-07-31 2011-07-26 Qualcomm Incorporated Systems and methods for modifying a zero pad region of a windowed frame of an audio signal
US8688437B2 (en) 2006-12-26 2014-04-01 Huawei Technologies Co., Ltd. Packet loss concealment for speech coding
FR2911227A1 (fr) * 2007-01-05 2008-07-11 France Telecom Codage par transformee, utilisant des fenetres de ponderation et a faible retard
US9653088B2 (en) * 2007-06-13 2017-05-16 Qualcomm Incorporated Systems, methods, and apparatus for signal encoding using pitch-regularizing and non-pitch-regularizing coding
EP2413314A1 (en) * 2009-03-24 2012-02-01 Huawei Technologies Co., Ltd. Method and device for switching a signal delay
AU2011226143B9 (en) 2010-03-10 2015-03-19 Dolby International Ab Audio signal decoder, audio signal encoder, method for decoding an audio signal, method for encoding an audio signal and computer program using a pitch-dependent adaptation of a coding context
US20140114653A1 (en) * 2011-05-06 2014-04-24 Nokia Corporation Pitch estimator
WO2013056388A1 (en) * 2011-10-18 2013-04-25 Telefonaktiebolaget L M Ericsson (Publ) An improved method and apparatus for adaptive multi rate codec
US9418671B2 (en) 2013-08-15 2016-08-16 Huawei Technologies Co., Ltd. Adaptive high-pass post-filter
KR102251833B1 (ko) * 2013-12-16 2021-05-13 삼성전자주식회사 오디오 신호의 부호화, 복호화 방법 및 장치
EP2980796A1 (en) * 2014-07-28 2016-02-03 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method and apparatus for processing an audio signal, audio decoder, and audio encoder
CN105974416B (zh) * 2016-07-26 2018-06-15 零八一电子集团有限公司 积累互相关包络对齐的8核dsp片上并行实现方法
CN113287318A (zh) * 2018-11-08 2021-08-20 瑞典爱立信有限公司 视频编码器和/或视频解码器中的非对称去块

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE59002222D1 (de) * 1989-10-06 1993-09-09 Telefunken Fernseh & Rundfunk Verfahren zur uebertragung eines signals.
US5327518A (en) * 1991-08-22 1994-07-05 Georgia Tech Research Corporation Audio analysis/synthesis system
US5513297A (en) * 1992-07-10 1996-04-30 At&T Corp. Selective application of speech coding techniques to input signal segments
US5517595A (en) * 1994-02-08 1996-05-14 At&T Corp. Decomposition in noise and periodic signal waveforms in waveform interpolation
US5574825A (en) * 1994-03-14 1996-11-12 Lucent Technologies Inc. Linear prediction coefficient generation during frame erasure or packet loss
FR2729247A1 (fr) * 1995-01-06 1996-07-12 Matra Communication Procede de codage de parole a analyse par synthese
FR2734389B1 (fr) * 1995-05-17 1997-07-18 Proust Stephane Procede d'adaptation du niveau de masquage du bruit dans un codeur de parole a analyse par synthese utilisant un filtre de ponderation perceptuelle a court terme
US5704003A (en) * 1995-09-19 1997-12-30 Lucent Technologies Inc. RCELP coder
US6169970B1 (en) * 1998-01-08 2001-01-02 Lucent Technologies Inc. Generalized analysis-by-synthesis speech coding method and apparatus
US6260010B1 (en) * 1998-08-24 2001-07-10 Conexant Systems, Inc. Speech encoder using gain normalization that combines open and closed loop gains
US6449590B1 (en) * 1998-08-24 2002-09-10 Conexant Systems, Inc. Speech encoder using warping in long term preprocessing
US6104992A (en) * 1998-08-24 2000-08-15 Conexant Systems, Inc. Adaptive gain reduction to produce fixed codebook target signal
US6311154B1 (en) * 1998-12-30 2001-10-30 Nokia Mobile Phones Limited Adaptive windows for analysis-by-synthesis CELP-type speech coding
US6223151B1 (en) * 1999-02-10 2001-04-24 Telefon Aktie Bolaget Lm Ericsson Method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders
US6691082B1 (en) * 1999-08-03 2004-02-10 Lucent Technologies Inc Method and system for sub-band hybrid coding
US6842735B1 (en) * 1999-12-17 2005-01-11 Interval Research Corporation Time-scale modification of data-compressed audio information

Also Published As

Publication number Publication date
KR20040042903A (ko) 2004-05-20
HK1067911A1 (en) 2005-04-22
DE60309651T2 (de) 2007-09-13
US20040098255A1 (en) 2004-05-20
EP1420391A1 (en) 2004-05-19
BR0305195A (pt) 2004-08-31
JP2004163959A (ja) 2004-06-10
EP1420391B1 (en) 2006-11-15
CN1525439A (zh) 2004-09-01
MXPA03010360A (es) 2005-07-01
CA2448848A1 (en) 2004-05-14
DE60309651D1 (de) 2006-12-28
ATE345565T1 (de) 2006-12-15

Similar Documents

Publication Publication Date Title
ES2277050T3 (es) Metodo de codificacion generalizada de voz de analisis por sintesis, y codificador que implanta tal metodo.
JP5519334B2 (ja) 音声符号化用開ループピッチ処理
DE69934320T2 (de) Sprachkodierer und verfahren zur codebuch-suche
EP1454315B1 (en) Signal modification method for efficient coding of speech signals
KR101406113B1 (ko) 스피치 신호에서 천이 프레임을 코딩하기 위한 방법 및 장치
US6480822B2 (en) Low complexity random codebook structure
EP1141946B1 (en) Coded enhancement feature for improved performance in coding communication signals
US6507814B1 (en) Pitch determination using speech classification and prior pitch estimation
US6345248B1 (en) Low bit-rate speech coder using adaptive open-loop subframe pitch lag estimation and vector quantization
JP2004514182A (ja) 広帯域信号コーディング用の代数コードブック中のパルス位置と符号の索引付け方法
US20050137863A1 (en) Method and apparatus for speech coding
US6169970B1 (en) Generalized analysis-by-synthesis speech coding method and apparatus
US20040093204A1 (en) Codebood search method in celp vocoder using algebraic codebook
EP1114415B1 (en) Linear predictive analysis-by-synthesis encoding method and encoder
EP0539103B1 (en) Generalized analysis-by-synthesis speech coding method and apparatus
JPH02160300A (ja) 音声符号化方式
JP3144244B2 (ja) 音声符号化装置