ES2738883T3 - Aparato y método de cuantificación vectorial de envolventes de frecuencia - Google Patents
Aparato y método de cuantificación vectorial de envolventes de frecuencia Download PDFInfo
- Publication number
- ES2738883T3 ES2738883T3 ES14819622T ES14819622T ES2738883T3 ES 2738883 T3 ES2738883 T3 ES 2738883T3 ES 14819622 T ES14819622 T ES 14819622T ES 14819622 T ES14819622 T ES 14819622T ES 2738883 T3 ES2738883 T3 ES 2738883T3
- Authority
- ES
- Spain
- Prior art keywords
- vector
- codebook
- vectors
- quantification
- bits
- 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.)
- Active
Links
- 239000013598 vector Substances 0.000 title claims abstract description 274
- 238000000034 method Methods 0.000 title claims abstract description 27
- 238000011002 quantification Methods 0.000 title claims description 57
- 238000013139 quantization Methods 0.000 abstract description 15
- 230000000694 effects Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/02—Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/032—Quantisation or dequantisation of spectral components
- G10L19/038—Vector quantisation, e.g. TwinVQ audio
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
- G10L2019/0001—Codebooks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
- G10L2019/0001—Codebooks
- G10L2019/0004—Design or structure of the codebook
- G10L2019/0005—Multi-stage vector quantisation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
- G10L2019/0001—Codebooks
- G10L2019/0013—Codebook search algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
Un método de cuantificación vectorial de envolventes de frecuencia, que comprende: Dividir (S101) N envolventes de frecuencia en una trama en N1 vectores, en donde cada vector en los N1 vectores comprende M envolventes de frecuencia, N1, N, y M son enteros positivos, M es igual a 2, y N es mayor que N1; Cuantificar (S102) un primer vector en los N1 vectores utilizando un primer libro de códigos que tiene B bits, para obtener una palabra clave del primer vector cuantificado, en donde el primer libro de códigos se divide en dos partes, B es un número entero positivo mayor o igual a 2; Determinar (S103), de acuerdo con la palabra clave del primer vector cuantificado, que el primer vector cuantificado está asociado con una i-ésima parte en las dos partes del primer libro de códigos, en donde i es igual a 1 o i es igual a 2; determinar (S104) un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte del primer libro de códigos; y cuantificar (S105) un segundo vector en los N1 vectores en función del segundo libro de códigos; en donde la determinación (S104) de un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte comprende: utilizar la i-ésima parte del primer libro de códigos como el segundo libro de códigos, en donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-1.
Description
DESCRIPCIÓN
Aparato y método de cuantificación vectorial de envolventes de frecuencia
Campo técnico
La presente invención se refiere al campo de la codificación y la decodificación, y en particular, a un método y un aparato de cuantificación vectorial de envolventes de frecuencia.
Antecedentes
Generalmente, los valores de energía de todas o algunas de las frecuencias en una trama de una señal de entrada se promedian y a continuación se calcula una raíz cuadrada de un valor de energía promedio, para obtener las envolventes de frecuencia de estas frecuencias.
Actualmente, un método para cuantificar una envolvente de frecuencia mediante un códec se suele referir a la cuantificación escalar simple o a la cuantificación vectorial. Sin embargo, en algunos casos especiales, por ejemplo, cuando es necesario obtener muchas envolventes de frecuencia a partir de una trama y una cantidad de bits que se utiliza para cuantificar las envolventes de frecuencia es algo limitada, se puede consumir una gran cantidad de bits si se utiliza la cuantificación escalar para cada una de las envolventes de frecuencia.
Un método de cuantificación vectorial existente incluye las siguientes etapas: (1) dividir las frecuencias que se necesita cuantificar en varios vectores de acuerdo con las dimensiones de los vectores; (2) preentrenar un libro de códigos con una longitud de 2B utilizando una gran cantidad de muestras vectoriales y de acuerdo a una cantidad B de bits para cuantificar cada uno de los vectores, es decir, este libro de códigos tiene vectores 2B, y estos vectores se entrenan de antemano de acuerdo con la gran cantidad de muestras vectoriales; (3) comparar un vector A que necesita ser cuantificado con cada uno de los vectores en el libro de códigos, y buscar un vector B que sea el más cercano del vector A; (4) un índice de localización del vector B en el libro de códigos es un valor cuantificado del vector A. Por lo tanto, si todas las envolventes de frecuencia se combinan como un vector para la cuantificación vectorial, se requiere un gran libro de códigos, lo que aumenta la complejidad.
El cómo diseñar un método de cuantificación vectorial de envolventes de frecuencia simple y eficaz, así como que garantice la calidad de la cuantificación, es un problema urgente a resolver. El documento WO 95/10760 A2 describe un cuantificador vectorial que genera coeficientes predictivos lineales a partir del habla de entrada y los convierte en frecuencias del espectro lineal. Las frecuencias del espectro lineal se aplican a la cuantificación de la banda dividida. En paralelo, el habla de entrada también se analiza para estimar el tono a partir del cual se cuantifican el tono y la ganancia. Todos los parámetros cuantificados se multiplexan a continuación para su transmisión.
YANNIS AGIOMYRGIANNAKIS ET AL: "Conditional Vector Quantization for Speech Coding", IEEE TRANSACTIONS ON AUDIO, SPEECH AND LANGUAGE PROCESSING, IEEE, vol. 15, no. 2, 1 de febrero de 2007 presenta un método de cuantificación vectorial que utiliza la cuantificación vectorial condicional, que atribuye un libro de códigos en formato k-dimensional a cada primer vector de códigos, siendo cuantificado el segundo vector de códigos utilizando este libro de códigos enlazado.
Resumen
La presente invención propone un método y un aparato de cuantificación vectorial de envolventes de frecuencia de acuerdo con las características de las reivindicaciones independientes, dirigidos a resolver problemas de precisión de cuantificación insuficiente y de complejidad excesivamente alta provocados por una cantidad insuficiente de bits en un libro de códigos y una cantidad relativamente grande de envolventes de frecuencia.
Breve descripción de los dibujos
Para describir las soluciones técnicas en las formas de realización de la presente invención más claramente, a continuación, se introducen brevemente los dibujos adjuntos requeridos para describir las formas de realización de la presente invención. Aparentemente, los dibujos adjuntos en la siguiente descripción muestran meramente algunas formas de realización de la presente invención y un experto en la técnica aún puede obtener otros dibujos a partir de estos dibujos adjuntos sin esfuerzos creativos.
La FIG. 1 es un diagrama de flujo de un método de cuantificación vectorial de envolventes de frecuencia de acuerdo con una forma de realización de la presente invención;
La FIG. 2 es un diagrama estructural esquemático de un aparato de cuantificación vectorial de envolventes de frecuencia de acuerdo con una forma de realización de la presente invención; y
La FIG. 3 muestra un códec que implementa un método de cuantificación vectorial de envolventes de frecuencia de acuerdo a una forma de realización de la presente invención.
Descripción de las formas de realización
A continuación, se describe claramente y por completo las soluciones técnicas en las formas de realización de la presente invención con referencia a los dibujos adjuntos en las formas de realización de la presente invención. Aparentemente, las formas de realización descritas son algunas más bien que todas las formas de realización de la presente invención. Todas las otras formas de realización obtenidas por un experto en la técnica en función de las formas de realización de la presente invención sin esfuerzos creativos caerán dentro del alcance de protección de la presente invención.
Específicamente para un caso en el que una cantidad total de bits se limita cuando la cuantificación vectorial se realiza en envolventes de frecuencia, las formas de realización de la presente invención proponen, de acuerdo con las características de las envolventes de frecuencia que se necesitan codificar y mediante la utilización de relaciones tales como la relevancia entre las envolventes de frecuencia en una subtrama de, un método de cuantificación vectorial de envolventes de frecuencia, que sea simple, que ahorre bits y que pueda garantizar un efecto de cuantificación. El método de cuantificación vectorial de acuerdo con la forma de realización de la presente invención es específico a un caso en el que una trama incluye varias envolventes de frecuencia.
Con referencia a FIG. 1, a continuación, se describe un método de cuantificación vectorial de envolventes de frecuencia de acuerdo con una forma de realización de la presente invención. El método de cuantificación vectorial incluye las siguientes etapas:
5101. Dividir N envolventes de frecuencia en una trama en N1 vectores, donde cada vector en los N1 vectores incluye M envolventes de frecuencia, N1, N, y M son enteros positivos, M es mayor o igual a 2 y N es mayor que N1. Por ejemplo, N envolventes de frecuencia en una trama se dividen en N1 vectores M-dimensionales y, por lo tanto, N1 x M = N. A continuación, se realiza una cuantificación vectorial en los N1 vectores. De esta manera, debido a que una cantidad de dimensiones disminuye, para lograr una precisión de cuantificación adecuada, una cantidad de bits requerida para un solo vector disminuye en consecuencia, y la complejidad de la cuantificación vectorial también se reduce.
Cuando una trama incluye M subtramas, y cada subtrama en las M subtramas incluye N1 envolventes, donde el producto de M y N1 es N, para reducir una cantidad de dimensiones, una envolvente correspondiente a cada subtrama en las M subtramas se puede combinar además en un vector. En la presente memoria, la envolvente correspondiente puede ser una envolvente en una ubicación correspondiente. Por ejemplo, las primeras envolventes de las M subtramas se combinan en un primer vector, y las segundas envolventes de las M subtramas se combinan en un segundo vector y el resto se puede deducir por analogía. Finalmente, se obtienen N1 vectores, donde cada uno de los vectores incluye M envolventes de frecuencia.
Generalmente, se pueden utilizar diferentes maneras de combinación vectorial para diferentes características de la envolvente de frecuencia. En primer lugar, cuando una misma subtrama tiene más de dos envolventes de frecuencia y hay una pequeña cantidad de subtramas, por ejemplo, sólo se pueden combinar dos subtramas, las mismas envolventes de frecuencia de las diferentes subtramas, de modo que se puedan obtener varios vectores bidimensionales; en segundo lugar, cuando hay más de dos subtramas, las primeras envolventes de frecuencia de las subtramas se pueden combinar en un primer vector, y las envolventes de frecuencia J-ésima de las subtramas se pueden combinar en un vector J-ésima.
5102. Cuantificar un primer vector en los N1 vectores utilizando un primer libro de códigos, para obtener una palabra clave del primer vector cuantificado, donde los B bits en el primer libro de códigos se dividen en 2B1 partes, B es un entero positivo mayor o igual a 2, y B1 es un entero positivo mayor o igual a 1.
Por ejemplo, una cantidad de bits que se requieren para realizar la cuantificación vectorial en un primer vector es B; entonces, se necesita obtener por medio de entrenamiento un primer libro de códigos que tenga 2B palabras clave. Debido a que los N1 vectores de la envolvente de frecuencia pertenecen a una misma trama, se puede ajustar una secuencia de un libro de códigos para los N1 vectores de acuerdo a un orden de estos vectores, estimando de este modo un rango de un vector posterior de acuerdo a un resultado de cuantificación de un vector anterior, y reduciendo una cantidad de bits que es necesaria para realizar la cuantificación vectorial en el vector posterior. Es fácil entender que, si el primer libro de códigos se divide en dos partes, y posteriormente una parte del primer libro de códigos se utiliza para cuantificar un vector posterior, la parte del primer libro de códigos que se utiliza para cuantificar el vector posterior tiene solamente B-1 bits; o, si el primer libro de códigos se divide en cuatro partes, y posteriormente una parte del primer libro de códigos se utiliza para cuantificar un vector posterior, la parte del primer libro de códigos que se utiliza para cuantificar el vector posterior tiene sólo B-3 bits; y el resto se puede deducir por analogía. Es decir, se puede utilizar un libro de códigos con una cantidad menor de bits para realizar cuantificación vectorial en vectores de envolvente de frecuencia, reduciendo de este modo la complejidad de la cuantificación vectorial y garantizando un efecto de cuantificación vectorial.
5103. Determinar, de acuerdo con la palabra clave del primer vector cuantificado, que el primer vector cuantificado está asociado con la i-ésima parte en las 2B1 partes del primer libro de códigos, donde i es un entero positivo mayor o igual a 1 y menor o igual a 2B1.
Por ejemplo, cuando B1 es 1, el primer libro de códigos se divide en dos partes. Por lo tanto, el primer vector cuantificado se compara con cada vector del primer libro de códigos, para buscar un vector que esté en el primer libro de códigos y sea el más cercano al primer vector, donde un índice de localización del vector en el primer libro de códigos es un valor cuantificado del primer vector.
Cuando se determina que el valor cuantificado del primer vector está en la primera parte del primer libro de códigos, se determina que la palabra clave del primer vector cuantificado pertenece a la primera parte en las dos partes del primer libro de códigos, es decir, se determina que el primer vector cuantificado está asociado con la primera parte del primer libro de códigos, y la primera parte del primer libro de códigos se puede utilizar como el segundo libro de códigos; o, cuando se determina que el valor cuantificado del primer vector está en la segunda parte del primer libro de códigos, se determina que la palabra clave del primer vector cuantificado pertenece a la segunda parte en las dos partes del primer libro de códigos, es decir, se determina que el primer vector cuantificado está asociado con la segunda parte del primer libro de códigos, y la segunda parte del primer libro de códigos se puede utilizar como el segundo libro de códigos.
Alternativamente, por ejemplo, cuando M es 2 y B1 es 1, el primer libro de códigos se divide en dos partes, y cada vector es bidimensional. Por lo tanto, el primer vector cuantificado se compara con cada vector del primer libro de códigos, para buscar un vector que esté en el primer libro de códigos y sea el más cercano al primer vector, donde un índice de localización del vector en el primer libro de códigos es un valor cuantificado del primer vector.
A continuación, se determina si una relación entre el primer valor del primer vector cuantificado correspondiente a la palabra clave con el segundo valor del primer vector cuantificado correspondiente a la palabra clave está dentro de un rango preestablecido; y, cuando se determina que la relación está dentro del rango preestablecido, se determina que el primer vector cuantificado está asociado con la primera parte en las dos partes del primer libro de códigos; o cuando se determina que la relación no está dentro del rango preestablecido, se determina que el primer vector cuantificado está asociado con la segunda parte en las dos partes del primer libro de códigos. En la presente memoria, el rango preestablecido es un rango umbral que se preajusta de acuerdo con la experiencia.
Se asume que el primer libro de códigos que incluye vectores bidimensionales es {(a1, b1), (a2, b2), (a3, b3), (a4, b4)}, donde una palabra clave de (a1, b1) (esto es, un índice de localización de (a1, b1) en el primer libro de códigos) es 1, una palabra clave de (a2, b2) es 2, una palabra clave de (a3, b3) es 3, y una palabra clave de (a4, b4) es 4. Una palabra clave es un índice de localización que está en un libro de códigos y se corresponde con cada vector del libro de códigos. Si se determina que una palabra clave del primer vector cuantificado es 3, el primer vector cuantificado correspondiente a la palabra clave es (a3, b3). Entonces, una proporción del primer valor a3 al segundo valor b3 se compara con un rango preestablecido [a, b], y si la proporción está dentro del rango, se determina que el primer vector cuantificado está asociado con la primera parte en las dos partes del primer libro de códigos, y la primera parte del primer libro de códigos se puede utilizar como el segundo libro de códigos; o si la proporción no está dentro del rango, se determina que el primer vector cuantificado está asociado con la segunda parte en las dos partes del primer libro de códigos, y la segunda parte del primer libro de códigos se puede utilizar como el segundo libro de códigos.
5104. Determinar un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte.
Por ejemplo, según se describió anteriormente, la i-ésima parte del primer libro de códigos se puede utilizar como el segundo libro de códigos, donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-B1. Alternativamente, por ejemplo, un libro de códigos preentrenado se puede utilizar como el segundo libro de códigos, donde una cantidad de bits en el libro de códigos preentrenado y la cantidad de bits en la i-ésima parte del primer libro de códigos son las mismas y ambas son B-B1.
Es decir, un libro de códigos para el segundo vector se puede determinar directamente de acuerdo con una parte de un libro de códigos para cuantificar el primer vector. En operaciones reales, uno o más libros de códigos (con B-B1 bits) que incluyen sólo algunas de las palabras clave en el primer libro de códigos se pueden reentrenar de acuerdo a los requerimientos de diferentes códecs, y se utilizan como un libro de códigos para el segundo vector y un vector posterior, logrando de este modo un efecto de reducción de una cantidad de bits que se requiere para la cuantificación y optimizando la calidad de la cuantificación.
5105. Cuantificar un segundo vector en los N1 vectores en función del segundo libro de códigos.
Por ejemplo, el segundo vector y el vector posterior se pueden cuantificar en función del segundo libro de códigos que se determina de acuerdo con un resultado de cuantificar el primer vector. Es decir, el primer libro de códigos que tiene B bits se utiliza para cuantificar el primer vector en los N1 vectores, para obtener la palabra clave del primer vector cuantificado; a continuación, se determina que la palabra clave del primer vector cuantificado pertenece a la iésima parte en las 2B1 partes del primer libro de códigos; a continuación, el segundo libro de códigos se determina
de acuerdo con el libro de códigos de la i-ésima parte; finalmente, el segundo libro de códigos se utiliza para cuantificar otro vector en los N1 vectores excepto el primer vector.
Alternativamente, por ejemplo, el segundo vector también se puede cuantificar en función del segundo libro de códigos que se determina de acuerdo con el resultado de cuantificar el primer vector, y a continuación un tercer vector se cuantifica en función de un tercer libro de códigos que se determina de acuerdo con el resultado de cuantificar el segundo vector, y el resto se puede deducir por analogía.
Se puede ver que, en las formas de realización de la presente invención, dividiendo las envolventes de frecuencia en varios vectores con menos dimensiones, la cuantificación vectorial se puede realizar en vectores de envolvente frecuencia utilizando un libro de códigos con una cantidad más pequeña de bits. Por lo tanto, se puede reducir la complejidad de la cuantificación vectorial, y también se puede garantizar el efecto de la cuantificación vectorial. En una manera de implementación, cuando B1 es 1 la determinación de que la palabra clave del primer vector cuantificado pertenece a la i-ésima parte en las 2B1 partes del primer libro de códigos en la etapa S103 y la determinación de un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte en la etapa S104 incluyen específicamente:
determinar si la palabra clave del primer vector cuantificado pertenece a la primera parte, por ejemplo, la primera parte, en las dos partes del primer libro de códigos; y
cuando se determina que la palabra clave del primer vector cuantificado pertenece a la primera parte en las dos partes del primer libro de códigos, determinar que el primer vector cuantificado está asociado con la primera parte en las dos partes del primer libro de códigos, y determinar además que el segundo libro de códigos es la primera parte del primer libro de códigos; o
cuando se determina que la palabra clave del primer vector cuantificado no pertenece a la primera parte en las dos partes del primer libro de códigos, determinar que el primer vector cuantificado está asociado con la segunda parte en las dos partes del primer libro de códigos, y determinar además que el segundo libro de códigos es la segunda parte del primer libro de códigos.
En este caso, el segundo libro de códigos sólo necesita B-1 bits.
En otra manera de implementación, cuando M es 2 y B1 es 1, la determinación, de acuerdo con la palabra clave del primer vector cuantificado, de que el primer vector cuantificado está asociado con la i-ésima parte en las 2B1 partes del primer libro de códigos en la etapa S103 y la determinación de un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte en la etapa S104 incluye específicamente:
determinar si la relación entre el primer valor del primer vector cuantificado (un vector bidimensional) correspondiente a la palabra clave y el segundo valor del primer vector cuantificado correspondiente a la palabra clave está dentro de un rango preestablecido; y
cuando se determina que la relación está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una primera parte en dos partes del primer libro de códigos, y determinar además que el segundo libro de códigos es la primera parte del primer libro de códigos; o
cuando se determina que la proporción no está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una segunda parte en las dos partes del primer libro de códigos, y determinar además que el segundo libro de códigos es la segunda parte del primer libro de códigos.
En este caso, el segundo libro de códigos sólo necesita B-1 bits.
En las dos maneras de implementación anteriores, se describe de manera ejemplar un caso en el que el primer libro de códigos que tiene B bits se divide en dos partes, y éstas son maneras de implementación fáciles de implementar. Se debe entender que, en esta forma de realización de la presente invención, una cantidad de partes en las que se divide el primer libro de códigos no está limitada a 2, y el primer libro de códigos también se puede dividir en cuatro partes, ocho partes o incluso más partes cuya cantidad es una potencia entera de 2. Generalmente, una mayor cantidad de partes en las que se divide el primer libro de códigos da como resultado una menor precisión del segundo libro de códigos determinado; por lo tanto, se puede afectar la precisión de la cuantificación. Por lo tanto, un valor de B1 se puede determinar con referencia a una cantidad de bits que se pueden utilizar realmente, es decir, una cantidad de partes en las que se divide el primer libro de códigos y que puede garantizar la calidad de la cuantificación.
A continuación, se proporcionan algunas formas de realización específicas, para describir en detalle el método de cuantificación vectorial de envolventes de frecuencia de acuerdo con esta forma de realización de la presente invención.
Una primera forma de realización específica es como sigue: Si una trama incluye N envolventes de frecuencia, la trama se divide en N1 subtramas, y cada una de las subtramas tiene una misma cantidad M de envolventes de
frecuencia, las envolventes de frecuencia (en total M envolventes de frecuencia) de cada una de las subtramas se empaquetan como un vector y, por lo tanto, hay N1 vectores.
Primero, un primer libro de códigos A que tiene 2B palabras clave que están preentrenadas y ordenadas se utiliza para cuantificar un primer vector utilizando B bits, y un resultado de cuantificación es ind(1).
A continuación, se determina si el resultado de la cuantificación ind(1) está en la primera parte del primer libro de códigos A.
Si el resultado de cuantificación ind(1) está en la primera parte del primer libro de códigos A, las palabras clave en la primera parte del libro de códigos A se utilizan como un nuevo libro de códigos (es decir, un segundo libro de códigos que incluye B-1 bits), para cuantificar el segundo vector y un vector posterior utilizando los B-1 bits; o bien si el resultado de cuantificación ind(1) no está en la primera parte del primer libro de códigos A, las palabras clave en la segunda parte del libro de códigos A se utilizan como un nuevo libro de códigos (es decir, un segundo libro de códigos que incluye B-1 bits), para cuantificar el segundo vector y un vector posterior utilizando los B-1 bits.
Se puede ver que, en la primera forma de realización específica, primero se ordena un libro de códigos general (por ejemplo, un primer libro de códigos); a continuación, con referencia a un resultado de cuantificación del primer vector, se estima un resultado de cuantificación de un vector posterior; y a continuación, se estrecha un rango del libro de códigos para cuantificar el vector posterior.
Una segunda forma de realización específica es como sigue: Si un vector es bidimensional, también se puede utilizar el método en esta forma de realización específica.
Primero, un primer libro de códigos A que tiene 2B palabras clave que están preentrenadas y ordenadas se utiliza para cuantificar un primer vector utilizando B bits, y un resultado de cuantificación es ind(1).
A continuación, se determina si una relación entre dos valores del primer vector cuantificado está dentro de un rango preestablecido [a, b], donde la relación se obtiene dividiendo el primer valor del primer vector cuantificado por el segundo valor del primer vector cuantificado.
Si la relación está dentro del rango preestablecido [a, b], las palabras clave en la primera parte del libro de códigos A se utilizan como un nuevo libro de códigos (es decir, un segundo libro de códigos que incluye B-1 bits), para cuantificar el segundo vector y un vector posterior utilizando los B-1 bits; o bien
si la relación no está dentro del rango preestablecido [a, b], las palabras clave en la segunda parte del libro de códigos A se utilizan como un nuevo libro de códigos (es decir, un segundo libro de códigos que incluye B-1 bits), para cuantificar el segundo vector y un vector posterior utilizando los B-1 bits.
Se puede ver que, en esta forma de realización específica, con referencia a las características de un vector bidimensional, se estima un resultado de cuantificación de un vector posterior, y a continuación se estrecha un rango del libro de códigos para cuantificar el vector posterior.
Con referencia a la FIG. 2, a continuación, se describe un aparato de cuantificación vectorial de envolventes de frecuencia de acuerdo con una forma de realización de la presente invención.
En la FIG. 2, el aparato de cuantificación vectorial de envolventes de frecuencia 20 incluye una unidad de división de vectores 21, una primera unidad de cuantificación 22, una primera unidad de determinación 23, una segunda unidad de determinación 24 y una segunda unidad de cuantificación 25, donde:
la unidad de división de vectores 21 se configura para dividir N envolventes de frecuencia en una trama en N1 vectores, donde cada vector en los N1 vectores incluye M envolventes de frecuencia, N1, N, y M son enteros positivos, M es mayor o igual a 2, y N es mayor que N1;
la primera unidad de cuantificación 22 se configura para utilizar un primer libro de códigos que tiene B bits para cuantificar un primer vector en los N1 vectores que se obtienen por medio de la división mediante la unidad de división vectorial 21, para obtener una palabra clave del primer vector cuantificado, donde el primer libro de códigos se divide en 2B1 partes, B es un entero positivo mayor o igual a 2, y B1 es un entero positivo mayor o igual a 1; la primera unidad de determinación 23 se configura para determinar, de acuerdo con la palabra clave del primer vector cuantificado que se obtiene por medio de la cuantificación mediante la primera unidad de cuantificación 22, que el primer vector cuantificado está asociado con la i-ésima parte en las 2B1 partes del primer libro de códigos, donde i es un entero positivo mayor o igual a 1 e inferior o igual a 2B1;
la segunda unidad de determinación 24 se configura para determinar un segundo libro de códigos de acuerdo con el libro de códigos que es de la i-ésima parte y se determina mediante la primera unidad de determinación 23; y
la segunda unidad de cuantificación 25 se configura para cuantificar un segundo vector en los N1 vectores en función del segundo libro de códigos que se determina mediante la segunda unidad de determinación 24.
Específicamente, la segunda unidad de determinación 24 se puede configurar para utilizar la i-ésima parte del primer libro de códigos como el segundo libro de códigos, donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-B1. Alternativamente, la segunda unidad de determinación 24 se puede configurar para utilizar un libro de códigos preentrenado como el segundo libro de códigos, donde una cantidad de bits en el libro de códigos preentrenado y una cantidad de bits en la i-ésima parte del primer libro de códigos son las mismas, y ambas son B-B1.
Específicamente, cuando B1 es 1, la primera unidad de determinación 23 se puede configurar para: cuando la palabra clave del primer vector cuantificado pertenece a una primera parte en las dos partes del primer libro de códigos, determinar que el primer vector cuantificado está asociado con la primera parte del primer libro de códigos; o cuando la palabra clave del primer vector cuantificado pertenece a una segunda parte en las dos partes del primer libro de códigos, determinar que el primer vector cuantificado está asociado con la segunda parte del primer libro de códigos.
Alternativamente, cuando M es 2 y B1 es 1, se puede configurar la primera unidad de determinación 23 para: determinar si una relación del primer valor del primer vector cuantificado correspondiente a la palabra clave con el segundo valor del primer vector cuantificado correspondiente a la palabra clave está dentro de un rango preestablecido; y, cuando se determine que la relación está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una primera parte en dos partes del primer libro de códigos; o cuando se determine que la relación no está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una segunda parte en las dos partes del primer libro de códigos.
Específicamente, la unidad de división de vectores 21 se puede configurar además para: cuando la una trama incluye M subtramas, y cada subtrama en las M subtramas incluye N1 envolventes, donde el producto de M y N1 es N, combinar una envolvente correspondiente a cada subtrama en las M subtramas en un vector, para obtener N1 vectores, donde cada vector en los N1 vectores incluye M envolventes de frecuencia.
En las formas de realización de la presente invención, dividiendo las envolventes de frecuencia en varios vectores con menos dimensiones, se puede realizar la cuantificación vectorial en vectores de la envolvente de frecuencia utilizando un libro de códigos con una cantidad más pequeña de bits. Por lo tanto, se puede reducir la complejidad de la cuantificación vectorial, y también se puede garantizar el efecto de la cuantificación vectorial.
La FIG. 3 muestra un códec que implementa un método de cuantificación vectorial de envolventes de frecuencia de acuerdo a una forma de realización de la presente invención. El códec 30 incluye un procesador 31 y una memoria 32. El procesador 31 se configura para: dividir N envolventes de frecuencia en una trama en N1 vectores, donde cada vector en los N1 vectores incluye M envolventes de frecuencia, N1, N, y M son enteros positivos, M es mayor o igual que 2, y N es mayor que N1; utilizar un primer libro de códigos que tenga B bits para cuantificar un primer vector en los N1 vectores, para obtener una palabra clave del primer vector cuantificado, donde el primer libro de códigos se divide en 2B1 partes, B es un entero positivo mayor o igual a 2, y B1 es un entero positivo mayor o igual a 1; determinar, de acuerdo con la palabra clave del primer vector cuantificado, que el primer vector cuantificado está asociado con la i-ésima parte en las 2B1 partes del primer libro de códigos, donde i es un entero positivo mayor o igual a 1 y menor o igual a 2B1; determinar un segundo libro de códigos de acuerdo con el libro de códigos de la iésima parte; y cuantificar un segundo vector en los N1 vectores en función del segundo libro de códigos. La memoria 32 se configura para almacenar instrucciones que son utilizadas por el procesador 31 para ejecutar el método anterior.
Específicamente, cuando una trama incluye M subtramas, y cada subtrama en las M subtramas incluye N1 envolventes, donde el producto de M y N1 es N, el procesador 31 puede combinar una envolvente correspondiente a cada subtrama en las M subtramas en un vector, para obtener N1 vectores, donde cada vector en los N1 vectores incluye M envolventes de frecuencia.
El procesador 31 puede utilizar la i-ésima parte del primer libro de códigos como el segundo libro de códigos, donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-B1; o utilizar un libro de códigos preentrenado como el segundo libro de códigos, donde una cantidad de bits en el libro de códigos preentrenado y una cantidad de bits en la i-ésima parte del primer libro de códigos son las mismas y ambas son B-B1.
Cuando B1 es 1, el procesador 31 puede determinar, de acuerdo con que la palabra clave del primer vector cuantificado pertenece a una primera parte en dos partes del primer libro de códigos, que el primer vector cuantificado está asociado con la primera parte del primer libro de códigos; o determinar, de acuerdo con que la palabra clave del primer vector cuantificado pertenece a una segunda parte en las dos partes del primer libro de códigos, que el primer vector cuantificado está asociado con la segunda parte del primer libro de códigos. Alternativamente, cuando M es 2 y B1 es 1, el procesador 31 puede determinar, de acuerdo a si una proporción del primer valor del primer vector cuantificado correspondiente a la palabra clave con el segundo valor del primer vector cuantificado correspondiente a la palabra clave está dentro de un rango preestablecido, que el primer vector
cuantificado está asociado con la primera parte o la segunda parte del primer libro de códigos; y, cuando se determina que la relación está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una primera parte en dos partes del primer libro de códigos; o cuando se determina que la relación no está dentro del rango preestablecido, determinar que el primer vector cuantificado está asociado con una segunda parte en las dos partes del primer libro de códigos.
Se puede ver que, en las formas de realización de la presente invención, dividiendo las envolventes de frecuencia en varios vectores con menos dimensiones, la cuantificación vectorial se puede realizar en vectores de envolvente de frecuencia utilizando un libro de códigos con una cantidad más pequeña de bits. Por lo tanto, se puede reducir la complejidad de la cuantificación vectorial, y también se puede garantizar el efecto de la cuantificación vectorial. Se puede entender que, la solución descrita en cada reivindicación de la presente invención también se debe considerar una forma de realización, y las características en las reivindicaciones se pueden combinar. Por ejemplo, las diferentes etapas de ejecución tributarias después de una etapa de determinación en la presente invención pueden servir como diferentes formas de realización.
Un experto en la técnica puede ser consciente, en combinación con los ejemplos descritos en las formas de realización descritas en esta memoria descriptiva, de que las unidades y las etapas de algoritmo se pueden implementar mediante hardware electrónico o una combinación de software de ordenador y hardware electrónico. El hecho de que las funciones se realicen mediante hardware o software depende de las aplicaciones particulares y de las condiciones de limitación de diseño de las soluciones técnicas. Un experto en la técnica puede utilizar diferentes métodos para implementar las funciones descritas para cada aplicación en particular, pero no se debe considerar que la implementación va más allá del alcance de la presente invención.
Un experto en la técnica puede entender claramente que, para una descripción breve y conveniente, para un proceso de trabajo detallado del sistema, aparato y unidad anteriores, se refiere a un proceso correspondiente en las formas de realización del método anterior, y los detalles no se describen en la presente memoria de nuevo.
En las varias formas de realización proporcionadas en la presente solicitud, se debe entender que el sistema, aparato y método descritos se pueden implementar de otras maneras. Por ejemplo, la forma de realización del aparato descrito es meramente de ejemplo. Por ejemplo, la división de unidades es meramente una división lógica de funciones y puede ser otra división en la implementación real. Por ejemplo, se pueden combinar o integrar varias unidades o componentes en otro sistema, o se pueden ignorar o no realizar algunas características. Además, los acoplamientos mutuos o los acoplamientos directos o las conexiones de comunicación mostradas o descritas se pueden implementar a través de algunas interfaces. Los acoplamientos indirectos o conexiones de comunicación entre los aparatos o unidades se pueden implementar de forma electrónica, mecánica u otras formas.
Las unidades descritas como partes separadas pueden o no estar físicamente separadas, y las partes mostradas como unidades pueden o no ser unidades físicas, se pueden situar en una posición o se pueden distribuir en varias unidades de red. Algunas o todas las unidades se pueden seleccionar de acuerdo con las necesidades reales para lograr los objetivos de las soluciones de las formas de realización.
Además, las unidades funcionales en las formas de realización de la presente invención se pueden integrar en una unidad de procesamiento, o cada una de las unidades puede existir sola físicamente, o dos o más unidades se integran en una unidad.
Cuando las funciones se implementan en una forma de una unidad de software funcional y se venden o utilizan como un producto independiente, las funciones se pueden almacenar en un medio de almacenamiento legible por ordenador. En función de dicha comprensión, las soluciones técnicas de la presente invención esencialmente, o la parte que contribuye a la técnica anterior, o algunas de las soluciones técnicas se pueden implementar en una forma de un producto de software. El producto de software se almacena en un medio de almacenamiento, e incluye varias instrucciones para instruir un dispositivo de ordenador (que puede ser un ordenador personal, un servidor, o un dispositivo de red) para realizar todas o algunas de las etapas de los métodos descritos en las formas de realización de la presente invención. El medio de almacenamiento anterior incluye: cualquier medio que pueda almacenar código de programa, tal como una unidad flash USB, un disco duro extraíble, una memoria de sólo lectura (Read-Only Memory, ROM), una memoria de acceso aleatorio (Random Access Memory, RAM), un disco magnético o un disco óptico.
Las descripciones anteriores son meramente maneras de implementación específicas de la presente invención, pero no pretenden limitar el alcance de protección de la presente invención. Cualquier variación o sustitución fácilmente calculada por un experto en la técnica dentro del alcance técnico descrito en la presente invención caerá dentro del alcance de protección de la presente invención. Por lo tanto, el alcance de protección de la presente invención estará sujeto al alcance de la protección de las reivindicaciones.
Claims (4)
1. Un método de cuantificación vectorial de envolventes de frecuencia, que comprende:
Dividir (S101) N envolventes de frecuencia en una trama en N1 vectores, en donde cada vector en los N1 vectores comprende M envolventes de frecuencia, N1, N, y M son enteros positivos, M es igual a 2, y N es mayor que N1; Cuantificar (S102) un primer vector en los N1 vectores utilizando un primer libro de códigos que tiene B bits, para obtener una palabra clave del primer vector cuantificado, en donde el primer libro de códigos se divide en dos partes, B es un número entero positivo mayor o igual a 2;
Determinar (S103), de acuerdo con la palabra clave del primer vector cuantificado, que el primer vector cuantificado está asociado con una i-ésima parte en las dos partes del primer libro de códigos, en donde i es igual a 1 o i es igual a 2;
determinar (S104) un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte del primer libro de códigos;
y
cuantificar (S105) un segundo vector en los N1 vectores en función del segundo libro de códigos;
en donde la determinación (S104) de un segundo libro de códigos de acuerdo con el libro de códigos de la i-ésima parte comprende:
utilizar la i-ésima parte del primer libro de códigos como el segundo libro de códigos, en donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-1.
2. El método de acuerdo con la reivindicación 1, en donde la división (S101) de N envolventes de frecuencia en una trama en N1 vectores, en donde cada vector de los N1 vectores comprende M envolventes de frecuencia: cuando la una trama comprende M subtramas y cada subtrama en las M subtramas comprende N1 envolventes, en donde el producto de M y N1 es N, combinando una envolvente correspondiente a cada subtrama de los M subtramas en un vector, para obtener N1 vectores, en donde cada vector de los N1 vectores comprende M envolventes de frecuencia.
3. Un aparato de cuantificación vectorial de envolventes de frecuencia (20), que comprende:
una unidad de división de vectores (21), configurada para dividir N envolventes de frecuencia en una trama en N1 vectores, en donde cada vector en los N1 vectores comprende M envolventes de frecuencia, N1, N, y M son enteros positivos, M es igual a 2, y N es mayor que N1;
una primera unidad de cuantificación (22), configurada para utilizar un primer libro de códigos que tiene B bits para cuantificar un primer vector en los N1 vectores que se obtienen por medio de la división mediante la unidad de división de vectores (21), para obtener una palabra clave del primer vector cuantificado, en donde el primer libro de códigos se divide en dos partes, B es un entero positivo mayor o igual a 2;
una primera unidad de determinación (23), configurada para determinar, de acuerdo con la palabra clave del primer vector cuantificado que se obtiene por medio de la cuantificación mediante la primera unidad de cuantificación (22), que el primer vector cuantificado está asociado a una i-ésima parte en las dos partes del primer libro de códigos, en donde i es igual a 1 o i es igual a 2;
una segunda unidad de determinación (24), configurada para determinar un segundo libro de códigos de acuerdo con el libro de códigos que es de la i-ésima parte y se determina mediante la primera unidad de determinación (23); y
una segunda unidad de cuantificación (25), configurada para cuantificar un segundo vector en los N1 vectores en función del segundo libro de códigos que se determina mediante la segunda unidad de determinación (24);
en donde la segunda unidad de determinación (24) se configura específicamente para:
utilizar la i-ésima parte del primer libro de códigos como el segundo libro de códigos, en donde una cantidad de bits en la i-ésima parte del primer libro de códigos es B-1.
4. El aparato (20) de acuerdo con la reivindicación 3, en donde la unidad de división vectorial (21) se configura de forma específica para:
cuando la una trama comprende M subtramas y cada subtrama de las M subtramas comprende N1 envolventes, en donde el producto de M y N1 es N, combinar una envolvente correspondiente a cada subtrama en las M subtramas
en un vector, para obtener N1 vectores, en donde cada vector de los N1 vectores comprende M envolventes de frecuencia.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310279924.5A CN104282308B (zh) | 2013-07-04 | 2013-07-04 | 频域包络的矢量量化方法和装置 |
PCT/CN2014/081530 WO2015000416A1 (zh) | 2013-07-04 | 2014-07-03 | 频域包络的矢量量化方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2738883T3 true ES2738883T3 (es) | 2020-01-27 |
Family
ID=52143115
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14819622T Active ES2738883T3 (es) | 2013-07-04 | 2014-07-03 | Aparato y método de cuantificación vectorial de envolventes de frecuencia |
ES19162443T Active ES2954460T3 (es) | 2013-07-04 | 2014-07-03 | Método y aparato de cuantificación de vector de envolventes de frecuencia |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES19162443T Active ES2954460T3 (es) | 2013-07-04 | 2014-07-03 | Método y aparato de cuantificación de vector de envolventes de frecuencia |
Country Status (16)
Country | Link |
---|---|
US (2) | US9805732B2 (es) |
EP (3) | EP3594944B1 (es) |
JP (1) | JP6301459B2 (es) |
KR (1) | KR101725531B1 (es) |
CN (2) | CN107316647B (es) |
AU (1) | AU2014286716B2 (es) |
BR (1) | BR112015031617B1 (es) |
CA (1) | CA2911314C (es) |
ES (2) | ES2738883T3 (es) |
HK (1) | HK1206137A1 (es) |
MX (1) | MX351967B (es) |
MY (1) | MY170701A (es) |
PL (1) | PL3594944T3 (es) |
RU (1) | RU2635069C2 (es) |
SG (1) | SG11201509155RA (es) |
WO (1) | WO2015000416A1 (es) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102168650B1 (ko) * | 2018-11-27 | 2020-10-21 | 한국과학기술원 | 다중 안테나 다중 사용자 간섭채널에서 기계학습 기반 빔포밍 방법 및 장치 |
CN113766150B (zh) * | 2021-08-31 | 2024-03-26 | 北京安酷智芯科技有限公司 | 一种降噪方法、电路***、电子设备及计算机可读存储介质 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5680508A (en) * | 1991-05-03 | 1997-10-21 | Itt Corporation | Enhancement of speech coding in background noise for low-rate speech coder |
AU7960994A (en) * | 1993-10-08 | 1995-05-04 | Comsat Corporation | Improved low bit rate vocoders and methods of operation therefor |
TW321810B (es) * | 1995-10-26 | 1997-12-01 | Sony Co Ltd | |
US6014618A (en) | 1998-08-06 | 2000-01-11 | Dsp Software Engineering, Inc. | LPAS speech coder using vector quantized, multi-codebook, multi-tap pitch predictor and optimized ternary source excitation codebook derivation |
US6952671B1 (en) | 1999-10-04 | 2005-10-04 | Xvd Corporation | Vector quantization with a non-structured codebook for audio compression |
US7337110B2 (en) | 2002-08-26 | 2008-02-26 | Motorola, Inc. | Structured VSELP codebook for low complexity search |
CA2415105A1 (en) * | 2002-12-24 | 2004-06-24 | Voiceage Corporation | A method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding |
CN100493199C (zh) * | 2003-06-16 | 2009-05-27 | 松下电器产业株式会社 | 编码装置、编码方法和码本 |
EP2273494A3 (en) * | 2004-09-17 | 2012-11-14 | Panasonic Corporation | Scalable encoding apparatus, scalable decoding apparatus |
CA2603246C (en) * | 2005-04-01 | 2012-07-17 | Qualcomm Incorporated | Systems, methods, and apparatus for anti-sparseness filtering |
US7805314B2 (en) * | 2005-07-13 | 2010-09-28 | Samsung Electronics Co., Ltd. | Method and apparatus to quantize/dequantize frequency amplitude data and method and apparatus to audio encode/decode using the method and apparatus to quantize/dequantize frequency amplitude data |
US7602745B2 (en) | 2005-12-05 | 2009-10-13 | Intel Corporation | Multiple input, multiple output wireless communication system, associated methods and data structures |
US20090299738A1 (en) | 2006-03-31 | 2009-12-03 | Matsushita Electric Industrial Co., Ltd. | Vector quantizing device, vector dequantizing device, vector quantizing method, and vector dequantizing method |
EP1970900A1 (en) * | 2007-03-14 | 2008-09-17 | Harman Becker Automotive Systems GmbH | Method and apparatus for providing a codebook for bandwidth extension of an acoustic signal |
US8125884B1 (en) * | 2007-07-11 | 2012-02-28 | Marvell International Ltd. | Apparatus for pre-coding using multiple codebooks and associated methods |
CN100585699C (zh) * | 2007-11-02 | 2010-01-27 | 华为技术有限公司 | 一种音频解码的方法和装置 |
CN101335004B (zh) | 2007-11-02 | 2010-04-21 | 华为技术有限公司 | 一种多级量化的方法及装置 |
US8515767B2 (en) * | 2007-11-04 | 2013-08-20 | Qualcomm Incorporated | Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs |
CN101483043A (zh) * | 2008-01-07 | 2009-07-15 | 中兴通讯股份有限公司 | 基于分类和排列组合的码本索引编码方法 |
WO2009090875A1 (ja) * | 2008-01-16 | 2009-07-23 | Panasonic Corporation | ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法 |
CN101911185B (zh) * | 2008-01-16 | 2013-04-03 | 松下电器产业株式会社 | 矢量量化装置、矢量反量化装置及其方法 |
CN101261835B (zh) | 2008-04-25 | 2010-12-15 | 清华大学 | 基于超帧模式的多矢量多码本尺寸联合优化方法 |
US9037474B2 (en) * | 2008-09-06 | 2015-05-19 | Huawei Technologies Co., Ltd. | Method for classifying audio signal into fast signal or slow signal |
WO2010031003A1 (en) * | 2008-09-15 | 2010-03-18 | Huawei Technologies Co., Ltd. | Adding second enhancement layer to celp based core layer |
US8924222B2 (en) * | 2010-07-30 | 2014-12-30 | Qualcomm Incorporated | Systems, methods, apparatus, and computer-readable media for coding of harmonic signals |
CN102208188B (zh) * | 2011-07-13 | 2013-04-17 | 华为技术有限公司 | 音频信号编解码方法和设备 |
-
2013
- 2013-07-04 CN CN201710370044.7A patent/CN107316647B/zh active Active
- 2013-07-04 CN CN201310279924.5A patent/CN104282308B/zh active Active
-
2014
- 2014-07-03 EP EP19162443.6A patent/EP3594944B1/en active Active
- 2014-07-03 KR KR1020157033916A patent/KR101725531B1/ko active IP Right Grant
- 2014-07-03 AU AU2014286716A patent/AU2014286716B2/en active Active
- 2014-07-03 ES ES14819622T patent/ES2738883T3/es active Active
- 2014-07-03 PL PL19162443.6T patent/PL3594944T3/pl unknown
- 2014-07-03 ES ES19162443T patent/ES2954460T3/es active Active
- 2014-07-03 WO PCT/CN2014/081530 patent/WO2015000416A1/zh active Application Filing
- 2014-07-03 EP EP23175742.8A patent/EP4231288A1/en active Pending
- 2014-07-03 EP EP14819622.3A patent/EP2983170B1/en active Active
- 2014-07-03 JP JP2016522247A patent/JP6301459B2/ja active Active
- 2014-07-03 RU RU2015155949A patent/RU2635069C2/ru active
- 2014-07-03 CA CA2911314A patent/CA2911314C/en active Active
- 2014-07-03 BR BR112015031617-4A patent/BR112015031617B1/pt active IP Right Grant
- 2014-07-03 MY MYPI2015704556A patent/MY170701A/en unknown
- 2014-07-03 MX MX2015017003A patent/MX351967B/es active IP Right Grant
- 2014-07-03 SG SG11201509155RA patent/SG11201509155RA/en unknown
-
2015
- 2015-07-10 HK HK15106604.8A patent/HK1206137A1/xx unknown
- 2015-12-29 US US14/981,923 patent/US9805732B2/en active Active
-
2017
- 2017-09-26 US US15/715,179 patent/US10032460B2/en active Active
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10152676B1 (en) | Distributed training of models using stochastic gradient descent | |
CN105706369B (zh) | 划分的增益形状向量编码 | |
JP7389651B2 (ja) | デジタルオーディオ信号における可変アルファベットサイズ | |
JP2021043453A (ja) | 信号処理方法及び装置 | |
ES2738883T3 (es) | Aparato y método de cuantificación vectorial de envolventes de frecuencia | |
KR101941619B1 (ko) | 음성/오디오 비트스트림 디코딩 방법 및 장치 | |
US10152981B2 (en) | Dynamic bit allocation methods and devices for audio signal | |
BR112016025330B1 (pt) | Método de codificação de áudio e aparelho relacionado | |
JP6555841B2 (ja) | メモリのためのインテリジェントコード装置、方法およびコンピュータプログラム | |
Lee et al. | Tender: Accelerating Large Language Models via Tensor Decomposition and Runtime Requantization | |
Shipton et al. | Implementing WaveNet Using Intel® Stratix® 10 NX FPGA for Real-Time Speech Synthesis | |
KR20160005069A (ko) | 손실 프레임을 처리하는 방법, 및 디코더 | |
CN115062118A (zh) | 双通道信息抽取方法、装置、电子设备和介质 |