Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ESTIMATION OF ENCODING NOISE CREATED BY COMPRESSED MICDA ENCODING
Document Type and Number:
WIPO Patent Application WO/2015/145050
Kind Code:
A1
Abstract:
The present invention relates to a method for estimating encoding noise from a bitstream of a digital audio signal compression encoded according to MICDA encoding that encodes a prediction error signal. Said method comprises the following steps: - estimating (E305) the encoding noise variance based on an estimation (E300) of the variance in the encoded prediction error signal; and - estimating (E306) encoding noise by means of a white noise, the variance of which is the estimated variance in the encoding noise. The invention also relates to a device implementing said estimation method. The invention moreover relates to an encoding noise reduction processing method using the estimation method, to a device implementing the latter method, and to a decoder having said devices built therein.

Inventors:
KOVESI BALAZS (FR)
RANAIVOSON NIRINA FREDDY (FR)
Application Number:
PCT/FR2015/050716
Publication Date:
October 01, 2015
Filing Date:
March 20, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ORANGE (FR)
International Classes:
G10L21/0224; G10L19/04; G10L19/26; G10L21/0264; G10L25/69; H03M7/36
Domestic Patent References:
WO1995028770A11995-10-26
Other References:
CHARBONNIER A ET AL: "SUB-BAND ADPCM CODING FOR HIGH QUALITY AUDIO SIGNALS", AUDIO AND ELECTROACOUSTICS, UNDERWATER SIGNAL PROCESSING. NEW YORK, APR. 11 - 14, 1988; [INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH & SIGNAL PROCESSING. ICASSP], NEW YORK, IEEE, US, vol. VOL. 5, no. 1988, 11 April 1988 (1988-04-11), pages 2540 - 2543, XP000012857
LAWRENCE H GOLDSTEIN ET AL: "Quantization Noise in ADPCM Systems", IEEE TRANS. COMMUN. (SPECIAL ISSUE ON SPREAD SPECTRUM COMMUNICATIONS, 1 February 1977 (1977-02-01), pages 227 - 238, XP055130560, Retrieved from the Internet [retrieved on 20140721]
J.L. GARCIA, C. MARRO, B. KÖVESI: "A PCM coding noise reduction for ITU-T G.711.1", INTERSPEECH 2008, 22 September 2008 (2008-09-22) - 26 September 2008 (2008-09-26), Brisbane, pages 57 - 60, XP009179236
J-L.GARCIA; C.MARRO; B.KÔVESI: "a PCM coding noise reduction forITU TG.711.1", INTERSPEECH, 2008
C.PLAPOUS; C.MARRO; L.MAUUARY; P.SCALART: "a Two-step noise reduction technique", ICASSP, 2004
Attorney, Agent or Firm:
ORANGE/IPL (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé d'estimation d'un bruit de codage à partir d'un flux binaire d'un signal audionumérique codé en compression selon un codage de type MICDA codant un signal d'erreur de prédiction, caractérisé en ce qu'il comporte les étapes suivantes:

- estimation de la variance du bruit de codage (E305) en fonction d'une estimation de la variance du signal d'erreur de prédiction codé (E300);

- estimation d'un bruit de codage (E306) par un bruit blanc dont la variance est la variance estimée du bruit de codage.

2. Procédé selon la revendication 1, caractérisé en ce que l'estimation de la variance du signal d'erreur de prédiction codé est effectué selon les étapes suivantes:

- obtention (E301) du signal d'erreur de prédiction décodé;

- calcul (E302) de l'énergie du signal d'erreur de prédiction décodé obtenu pour déterminer sa variance.

3. Procédé selon la revendication 1, caractérisé en ce que l'estimation de la variance du signal d'erreur de prédiction codé est effectué selon les étapes suivantes:

- obtention (E301) de facteurs d'échelle de quantification par échantillon pour une trame courante du signal audio décodé;

- calcul (E302) d'une moyenne des facteurs d'échelle obtenus pour les échantillons de la trame courante;

et en ce que l'estimation de la variance du bruit de codage est fonction au moins de la moyenne ainsi calculée.

4. Procédé selon la revendication 3, caractérisé en ce qu'il comporte en outre une étape d'association pour la trame courante k, d'une classe Q- en fonction de l'intervalle de valeur dans lequel se situe la moyenne des facteurs d'échelle de la trame courante ^ et en ce que l'estimation de la variance du bruit de codage est en outre fonction des classes déterminées pour la trame courante et pour un nombre prédéterminé de trames précédentes.

5. Procédé selon la revendication 4, caractérisé en ce que l'association d'une classe à une trame s'effectue par la recherche d'une distance minimum entre la valeur de la moyenne des facteurs d'échelle de la dite trame et les centres des intervalles disjoints que forment une partition de l'ensemble des valeurs possibles des moyennes des facteurs d'échelle.

6. Procédé selon la revendication 4, caractérisé en ce que l'association d'une classe à une trame est en outre fonction de la valeur de la moyenne des facteurs d'échelle d'un nombre prédéterminé de trames précédentes. 7. Procédé selon la revendication 4, caractérisé en ce que la variance du bruit de codage est déterminée à partir de nc +1 coefficients d'une matrice de dimension p+l prédéfinie par apprentissage d'une base de données de signaux audio de référence et stockée en mémoire, nc étant le nombre de classes déterminées, p étant le nombre de trames précédentes prises en compte pour l'estimation de la variance du bruit de codage

8. Procédé selon la revendication 7, caractérisé en ce qu'il comporte les étapes suivantes, mises en œuvre pour les signaux de référence de la base de données, codés, décodés et synchronisés:

- extraction par trame de facteurs d'échelle;

- calcul d'un bruit de codage par soustraction au signal décodé du signal d'origine;

- calcul des moyennes des facteurs d'échelle par trame, des écarts type du bruit de codage pour chaque trame fenêtré par une fenêtre incluant un nombre prédéterminé d'échantillons de la trame précédente; 9. Procédé selon la revendication 8, caractérisé en ce que les coefficients de la matrice prédéfinie sont obtenus par les étapes suivantes:

- calcul pour chaque trame d'un rapport entre la moyenne et l'écart type calculés pour les signaux de référence de la base de données;

-obtention et enregistrements des coefficients de la matrice par calcul d'une moyenne des rapports calculés pour chaque coordonnée (i,j) de la matrice, correspondant aux classes i et j respectives.

10. Procédé selon la revendication 9, caractérisé en ce que le calcul d'estimation de la variance du bruit de codage s'effectue selon l'équation suivante pour une trame courante k de signal: avec Dk la moyenne des facteurs d'échelle de la trame courante k et MR[ck-i,ck], le coefficient de la matrice prédéfinie de coordonnée (k-1, k) correspondant aux classes k-1 et k associées à la trame précédente et à la trame courante k.

11. Procédé de traitement de réduction d'un bruit de codage d'un signal audionumérique codé et décodé en compression selon un codage et décodage de type MICDA, caractérisé en ce qu'il comporte les étapes suivantes:

- estimation d'un bruit de codage selon un procédé conforme à l'une des revendications 1 à 10;

-détermination d'une fonction de filtrage à appliquer au signal décodé, en fonction de l'estimation du bruit de codage, pour appliquer un traitement de réduction de bruit de codage estimé. 12. Dispositif d'estimation d'un bruit de codage à partir d'un flux binaire d'un signal audionumérique codé en compression selon un codage de type MICDA, caractérisé en ce qu'il comporte:

- un module d'estimation de la variance du bruit de codage (103) en fonction du résultat d'un module d'estimation de la variance du signal d'erreur de prédiction codé (100);

- un module d'estimation d'un bruit de codage (104) par un bruit blanc dont la variance est la variance estimée du bruit de codage.

13. Dispositif de traitement de réduction d'un bruit de codage d'un signal audionumérique codé et décodé en compression selon un codage et décodage de type MICDA, caractérisé en ce qu'il comporte:

- un dispositif d'estimation d'un bruit de codage conforme à la revendication 12;

-un module de filtrage apte à déterminer une fonction de filtrage à appliquer au signal décodé, en fonction de l'estimation du bruit de codage, et à appliquer un traitement de réduction de bruit de codage estimé.

14. Décodeur de signal audionumérique comprenant un dispositif d'estimation d'un bruit de codage conforme à la revendication 12 et/ou un dispositif de traitement de réduction d'un bruit de codage conforme à la revendication 13.

15. Programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé d'estimation selon l'une des revendications 1 à 10, lorsque ces instructions sont exécutées par un processeur.

Description:
Estimation d'un bruit de codage introduit par un codage en compression de type

MICDA

La présente invention concerne un procédé d'estimation d'un bruit de codage, en particulier pour un codage de type MICDA (pour "Modulation par Impulsion et Codage Différentiel Adaptatif). L'estimation de ce bruit de codage est utile pour effectuer des posttraitements du signal et notamment des traitements de réduction du bruit, en particulier pour des signaux audio numériques dans le domaine des télécommunications. Ces signaux peuvent être des signaux de parole, de musique ou autres.

Généralement, le débit nécessaire pour faire transiter un signal audio avec une qualité suffisante est un paramètre important en télécommunications. Afin de réduire ce paramètre et d'augmenter alors le nombre de communications possibles via un même réseau, des codeurs audio ont été développées notamment pour diminuer la quantité d'informations nécessaire pour transmettre un signal.

Certains codeurs permettent d'atteindre des taux de compression de l'information particulièrement élevés. De tels codeurs utilisent en général des techniques avancées de modélisation et de quantification de l'information. Ainsi, de tels codeurs ne transmettent que des modèles ou des données partielles du signal.

Le signal décodé, bien qu'il ne soit pas identique au signal original (puisqu'une partie de l'information n'a pas été transmise du fait de l'opération de quantification), reste néanmoins très proche du signal original. La différence, du point de vue mathématique, entre le signal décodé et le signal original est alors appelée "bruit de quantification" ou "bruit de codage". On peut parler aussi de "distorsion" introduite par le codage/décodage.

Les traitements en compression de signaux sont souvent conçus de manière à minimiser le bruit de codage et, en particulier, à rendre ce bruit de codage le moins audible possible.

Il existe déjà des systèmes de réduction de bruit de codage qui comportent un premier module d'estimation du bruit de quantification selon différentes techniques et un deuxième module de traitement de réduction de bruit sur le signal décodé (qui constitue le signal d'entrée du module), à partir de cette estimation. La problématique de ces systèmes est de trouver un compromis entre une réduction trop forte qui peut dégrader le signal utile et une réduction trop faible qui conserve bien le signal utile mais laisse le signal de bruit audible. Cette problématique est d'autant plus vraie lorsque le signal utile est complexe, par exemple lorsqu'il est composé d'un mélange de parole et de bruit ambiant. Pour pouvoir trouver le point de fonctionnement optimal de réduction de bruit entre réduction et distorsion on a besoin d'une estimation de bruit de codage la plus précise possible. Une solution de post-filtrage est par exemple décrite dans le document des auteurs J- LGarcia, C.Marro et B.Kovesi, intitulé "a PCM coding noise réduction for ITU-T G.711.1", dans Interspeech 2008, pour un codeur de type normalisé ITU-T G.711.

Ce document décrit une méthode d'estimation du bruit de codage adaptée au codage de type MIC. L'estimation s'effectue ainsi par le calcul par trame de la variance (ou de l'énergie) du signal décodé.

L'estimation ainsi obtenue permet d'effectuer un traitement de réduction de bruit sur le signal décodé.

Cependant, cette solution adaptée au codage MIC n'est pas toujours précise ni efficace pour d'autres types de codage en compression, notamment pour un codage de type MICDA.

Le codage MIC effectue une compression logarithmique du signal avant d'effectuer une quantification uniforme, ce qui est équivalent à l'utilisation d'un quantificateur logarithmique. La particularité de la quantification logarithmique est qu'elle garde un rapport signal à bruit (RSB) à peu près constant. Ainsi à partir de la variance du signal, il est possible pour ce type de codage d'estimer la variance du bruit par simple multiplication par une constante.

Le codage MICDA utilise directement un quantificateur logarithmique adaptatif pour quantifier l'erreur de prédiction (qui sera détaillée ultérieurement). Il assure également un RSB à peu près constant quand ce quantificateur est utilisé dans sa dynamique optimale et le bruit de quantification peut toujours être considéré comme un bruit blanc. Par contre en cas changement brusque de l'énergie de l'erreur de prédiction à quantifier (surtout pour le démarrage, « offset » en anglais) l'adaptation peut ne pas avoir le temps de bien mettre à l'échelle le quantificateur et converger vers son point de fonctionnement optimal ainsi le RSB diminue. L'information seule de la variance du signal à quantifier n'est pas suffisante dans ce cas pour bien estimer le niveau du bruit.

Il existe donc un besoin d'estimer avec une bonne précision, le bruit de codage engendré par un codage différent du codage MIC, notamment pour un codage de type MICDA, ce bruit de codage estimé pouvant alors être utilisé pour effectuer un traitement de réduction de bruit.

La présente invention vient améliorer la situation.

Elle propose à cet effet, un procédé d'estimation d'un bruit de codage à partir d'un flux binaire d'un signal audionumérique codé en compression selon un codage de type MICDA codant un signal d'erreur de prédiction. Le procédé est tel qu'il comporte les étapes suivantes:

- estimation de la variance du bruit de codage en fonction d'une estimation de la variance du signal d'erreur de prédiction codé; - estimation d'un bruit de codage par un bruit blanc dont la variance est la variance estimée du bruit de codage.

Ainsi, cette méthode d'estimation du bruit de codage est adaptée au signal codé selon un codage de type MICDA. La méthode est simple et de moindre complexité contrairement à des méthodes de mise en forme du bruit de codage qui peuvent exister sur ce type de codage. De plus, cette méthode d'estimation est réalisable à partir d'un flux binaire obtenu comportant l'information sur le signal d'erreur de prédiction codé par le codage de type MICDA et ne nécessite pas d'autres informations ou de traitements du codeur.

Les différents modes particuliers de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé d'estimation défini ci-dessus.

Dans un premier mode de réalisation, l'estimation de la variance du signal d'erreur de prédiction codé est effectuée selon les étapes suivantes:

- obtention du signal d'erreur de prédiction décodé;

- calcul de l'énergie du signal d'erreur de prédiction décodé obtenu pour déterminer sa variance.

On utilise ici de façon équivalente les termes variance ou énergie. En effet pour les signaux bien centrés, ce qui est le cas pour les signaux concernés ici les deux mesures sont quasiment identique (et parfaitement identique pour les signaux parfaitement centrés).

Dans ce mode de réalisation, le flux binaire est entièrement décodé pour obtenir le signal d'erreur de prédiction. Le calcul de la variance sur ce signal décodé est alors efficace et précis.

Dans un deuxième mode de réalisation, l'estimation de la variance du signal d'erreur de prédiction codé est effectuée selon les étapes suivantes:

- obtention de facteurs d'échelle de quantification par échantillon pour une trame courante du signal audio décodé;

- calcul d'une moyenne des facteurs d'échelle obtenus pour les échantillons de la trame courante;

l'estimation de la variance du bruit de codage est fonction au moins de la moyenne ainsi calculée.

Dans ce mode de réalisation, on utilise le facteur d'échelle de quantification qui est obtenu directement à partir du flux binaire sans le décoder entièrement. Le facteur d'échelle de quantification est en effet représentatif du signal d'erreur de prédiction codé. Cette méthode permet donc de l'obtenir avec une moindre complexité. Dans un mode de réalisation particulier, le procédé comporte en outre une étape d'association pour la trame courante k, d'une classe <¾· en fonction de l'intervalle de valeur dans lequel se situe la moyenne des facteurs d'échelle de la trame courante ^ et en ce que l'estimation de la variance du bruit de codage est en outre fonction des classes déterminées pour la trame courante et pour un nombre prédéterminé de trames précédentes.

L'estimation du bruit de codage s'effectue alors de façon plus précise avec la prise en compte des classes des moyennes de facteur d'échelle. On obtient en effet une réduction significative de l'écart quadratique moyen entre la variance par trame du bruit de codage et de son estimation.

De façon simple, l'association d'une classe à une trame s'effectue par la recherche d'une distance minimum entre la valeur de la moyenne des facteurs d'échelle de la dite trame et les centres des intervalles disjoints que forment une partition de l'ensemble des valeurs possibles des moyennes des facteurs d'échelle.

Dans une variante de réalisation, l'association d'une classe à une trame est en outre fonction de la valeur de la moyenne des facteurs d'échelle d'un nombre prédéterminé de trames précédentes. Ainsi la classe elle-même porte également l'information de l'évolution de l'énergie des trames consécutives. En analogie avec la différence entre la quantification scalaire et la quantification vectorielle, cette solution est plus performante mais également plus complexe (en stockage et en calcul).

Dans un mode de réalisation particulier, la variance du bruit de codage est déterminée à partir de n c +1 coefficients d'une matrice de dimension +1 prédéfinie par apprentissage d'une base de données de signaux audio de référence et stockée en mémoire, n c étant le nombre de classes déterminées et p le nombre de trames précédentes prises en compte pour l'estimation de la variance du bruit de codage.

Dans un mode de réalisation préféré p = 1.

Les signaux de référence pouvant être de type différents, les coefficients de la matrice ainsi définie sont calculés pour un grand nombre de situations possibles. Ceci permet d'apporter plus de précision pour différents types de signaux sur l'estimation du bruit de codage.

Dans un mode de réalisation particulier, le procédé comporte les étapes suivantes, mises en œuvre pour les signaux de référence de la base de données, codés, décodés et synchronisés:

- extraction par trame de facteurs d'échelle;

- calcul d'un bruit de codage par soustraction au signal décodé du signal d'origine;

- calcul des moyennes des facteurs d'échelle par trame, des écarts type du bruit de codage pour chaque trame fenêtré par une fenêtre incluant un nombre prédéterminé d'échantillons de la trame précédente; Ces calculs sur différents types de signaux permettent de calculer les coefficients de la matrice prédéfinie de la façon suivante:

- calcul pour chaque trame d'un rapport entre la moyenne et l'écart type calculés pour les signaux de référence de la base de données;

-obtention et enregistrements des coefficients de la matrice par calcul d'une moyenne des rapports calculés pour chaque coordonnée (i,j) de la matrice, correspondant aux classes i et j respectives.

Cette matrice pourra alors être utilisée pour calculer l'estimation de la variance du bruit de codage, de façon efficace.

Ainsi, de façon optimale et dans un mode de réalisation particulier le calcul d'estimation de la variance du bruit de codage s'effectue selon l'équation suivante pour une tram

Avec D k la moyenne des facteurs d'échelle de la trame courante k et MR[Ck-i,cJ, le coefficient de la matrice prédéfinie de coordonnée (k-1, k) correspondant aux classes k-1 et k associées à la trame précédente et à la trame courante k.

L'invention vise également un procédé de traitement de réduction d'un bruit de codage d'un signal audionumérique codé et décodé en compression selon un codage et décodage de type MICDA. Le procédé est tel qu'il comporte les étapes suivantes:

- estimation d'un bruit de codage selon un procédé d'estimation décrit ci-dessus;

-détermination d'une fonction de filtrage à appliquer au signal décodé, en fonction de l'estimation du bruit de codage, pour appliquer un traitement de réduction de bruit de codage estimé.

Elle vise un dispositif d'estimation d'un bruit de codage à partir d'un flux binaire d'un signal audionumérique codé en compression selon un codage de type MICDA comportant:

- un module d'estimation de la variance du bruit de codage en fonction du résultat d'un module d'estimation de la variance du signal d'erreur de prédiction codé;

- un module d'estimation d'un bruit de codage par un bruit blanc dont la variance est la variance estimée du bruit de codage.

Elle vise également un dispositif de traitement de réduction d'un bruit de codage d'un signal audionumérique codé et décodé en compression selon un codage et décodage de type MICDA, comportant:

- un dispositif d'estimation d'un bruit de codage tel que décrit;

-un module de filtrage apte à déterminer une fonction de filtrage à appliquer au signal décodé, en fonction de l'estimation du bruit de codage, et à appliquer un traitement de réduction de bruit de codage estimé. Elle vise aussi un décodeur de signal audionumérique comprenant un dispositif d'estimation d'un bruit de codage tel que décrit et/ou un dispositif de traitement de réduction d'un bruit de codage tel que décrit.

Ces dispositifs et ce décodeur présentent les mêmes avantages que les procédés décrits précédemment, qu'ils mettent en œuvre.

L'invention vise également un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé d'estimation tel que décrit, lorsque ces instructions sont exécutées par un processeur.

Enfin l'invention se rapporte à un support de stockage, lisible par un processeur, intégré ou non au dispositif d'estimation, éventuellement amovible, mémorisant un programme informatique mettant en œuvre un procédé de tel que décrit précédemment.

D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins annexés, sur lesquels :

la figure 1 illustre de façon schématique la structure générale d'un codée comportant un module de post-traitement de réduction de bruit de codage comportant un dispositif d'estimation de bruit de codage selon un mode de réalisation de l'invention;

la figure 2 illustre un codée de type MICDA pour lequel le procédé et le dispositif selon l'invention peuvent être mis en œuvre;

la figure 3 illustre sous forme d'organigramme, les étapes principales d'un procédé d'estimation d'un bruit de codage selon un mode de réalisation de l'invention;

la figure 4 illustre un codeur de type normalisé ITU-T G.722 délivrant un flux binaire à partir duquel le procédé d'estimation dans un mode particulier de réalisation de l'invention, peut être mis en œuvre;

la figure 5 illustre un exemple de limites des intervalles de classification utilisés dans un mode de réalisation particulier de l'invention;

la figure 6 illustre les fenêtres mises en œuvre pour le calcul des différents paramètres du procédé d'estimation selon un mode de réalisation de l'invention; La figure 7 illustre le nombre d'échantillons pris en compte lors de l'apprentissage à partir d'une base de référence, pour déterminer une matrice d'estimation selon un mode de réalisation de l'invention;

La figure 8 illustre les valeurs d'une matrice d'estimation du bruit de codage pour la bande basse fréquence d'un codeur de type G.722, utilisé dans un mode de réalisation du procédé d'estimation de l'invention; et

La figure 9 illustre un exemple de réalisation matérielle d'un dispositif d'estimation de bruit de codage selon un mode de réalisation de l'invention. En référence à la figure 1, une chaîne de traitement d'un signal audio est présentée. Un signal s(n) est codé en compression par un codeur COD de type MICDA comportant une opération de quantification Q du signal d'erreur de prédiction. Ce signal codé est transmis via un canal de transmission CA puis décodé par un décodeur DEC homologue du codeur COD. Le signal ainsi décodé, noté x(n), présente alors un bruit de quantification ou de codage b(n) qui se définit mathématiquement comme un écart {s(n) -x(nj) ou (x(n) -s(n)), le signe n'ayant pas d'importance ici. Une unité de traitement de réduction du bruit de quantification TBQ est prévu en aval du décodeur DEC, pour supprimer ou au moins limiter le bruit de codage (pour le rendre moins audible) dans le signal x(n).

Pour effectuer ce traitement de réduction de bruit, que l'on appellera également posttraitement, l'unité de traitement comporte un dispositif BQ d'estimation du bruit de codage.

Ce dispositif d'estimation du bruit de codage comporte un module 100 d'estimation de la variance du signal d'erreur de prédiction codé. Ce module 100 comporte lui-même un module 101 d'obtention du signal d'erreur de prédiction décodé (e(n)) ou bien d'un facteur d'échelle de quantification par échantillon (v(n)), à partir d'un flux binaire d'un signal audio codé selon un codage de type MICDA et reçu au décodeur DEC.

Dans le cas où les signaux internes du décodeur DEC sont accessibles, le décodeur peut également fournir au module TBQ le signal d'erreur de prédiction décodé (e(n)) ou bien les facteurs d'échelle de quantification par échantillon (v(n)).

Néanmoins, le décodeur DEC déterminant lui-même ces signaux e(n) et v(n) à partir du flux binaire reçu, on peut donc généraliser en disant ces signaux sont obtenus à partir d'un flux binaire d'un signal audionumérique codé.

Le module 100 comporte en outre un module de calcul 102 soit de l'énergie du signal d'erreur de prédiction décodé (E k ), soit d'une moyenne D k des facteurs d'échelles pour une trame courante k du signal audio décodé. Ce calcul définit dans les deux cas, la variance du signal d'erreur de prédiction codé. A partir de cette variance issue du module 100, un module 103 estime la variance du bruit de codage E vk . Le dispositif BQ comporte également un module 104 d'estimation du bruit de codage à partir de la variance déterminée par le module 103.

L'estimation du bruit de codage B k ainsi obtenue par le dispositif BQ est ensuite envoyée en entrée d'un module de filtrage 105 qui appliqué au signal décodé x(n), effectue le traitement de réduction de bruit estimé.

Le signal post-traité x'(n) est fourni en sortie du dispositif de traitement TBQ.

On rappelle ci-dessous, en référence à la figure 2, les caractéristiques de la technologie MICDA.

La technologie MICDA ou ADPCM (pour « Adaptative Differential Puise Code Modulation » en anglais) est une technique de compression des signaux multimédias. Les exemples de codeurs utilisant la technologie MICDA les plus connus et les plus utilisés sont deux codeurs de parole, normalisés à l'UIT-T (Union Internationale des Télécommunications): le codeur UIT-T G.726 pour des signaux en bande téléphonique (ou bande étroite) échantillonnés à 8 kHz (codeur DECT pour « Digital Enhanced Cordless Télécommunications» en anglais) et le codeur UIT-T G.722 pour des signaux en bande élargie échantillonnés à 16 kHz (codeur voix HD pour la VoIP).

Le codage MICDA est un codage prédictif où l'échantillon courant est prédit par un prédicteur adaptatif de type ARMA (pour « Auto Régressive Moving Average » en anglais) à partir des valeurs décodées passées. En utilisant les valeurs décodées aussi à l'encodeur donné par un quantificateur inverse local (Qa 1 ), le décodeur peut faire la même prédiction que l'encodeur. L'adaptation du prédicteur est également faite à partir des valeurs décodées (du signal décodé et de l'erreur de prédiction décodée), échantillon par échantillon, sans transmission d'information supplémentaire.

L'encodeur MICDA (COD) représenté en figure 2, quantifie la différence e(n) (l'erreur de prédiction) entre la prédiction x p (n) , issu du prédicteur adaptatif (Pred.A), de l'échantillon courant et la vraie valeur s(n) de l'échantillon courant en utilisant un quantificateur scalaire adaptatif (Qa). L'amplitude codée de l'erreur de prédiction est composée de 2 parties : une partie constante y(I(n)) stockée en mémoire ROM indexée par les valeurs de quantification scalaire et un facteur adaptatif multiplicatif v(n) (dans le domaine linéaire) appelé facteur d'échelle, dont l'adaptation est faite sans transmission d'information supplémentaire, échantillon par échantillon, en fonction de l'indice de quantification transmis. L'adaptation du facteur d'échelle est décrite plus loin. On note également que ce facteur d'échelle est à peu près proportionnel avec la variance du signal d'erreur de prédiction, ce facteur d'échelle est donc très représentatif du signal d'erreur de prédiction. Dans le flux binaire ("bitstream" en anglais) MICDA, on transmet donc uniquement les indices de quantification scalaire obtenus en quantifiant l'erreur de prédiction échantillon par échantillon. Ces indices de quantification scalaire se décomposent en un bit de signe sign(n) et un indice de quantification d'amplitude I(n).

Pour décoder le flux binaire, le décodeur (DECOD) effectue une quantification inverse échantillon par échantillon de l'erreur de prédiction utilisant le quantificateur adaptatif inverse (Qa 1 ). Le décodeur fait également la même prédiction de l'échantillon courant que celle effectuée à l'encodeur, en utilisant le même prédicteur adaptatif ARMA (Pred.A) (en l'absence d'erreurs de transmission) adapté échantillon par échantillon. En cas d'erreurs de transmission, le prédicteur et le quantificateur au décodeur divergent de ceux à l'encodeur.

Grâce à l'utilisation de facteurs d'oubli ils re-convergent généralement en quelques millisecondes. La valeur décodée de l'échantillon courant est obtenue en additionnant la prédiction et la valeur déquantifiée de l'erreur de prédiction. Le bruit de quantification d'une telle architecture de codeur MICDA revient finalement ) = s (n) - x(n) = e{n) - e Q (n) lorsqu'on ne prend pas en compte des erreurs de transmission. Les prédictions n'apportent pas d'erreur supplémentaire car elles se font en parallèle à partir du signal décodé.

Le codage MIC et le codage MICDA sont des codeurs de faible complexité. Il est donc important que l'algorithme de réduction de bruit soit également de faible complexité pour pouvoir l'implémenter sur les mêmes processeurs que ceux du codage. Ainsi, selon l'invention, il est possible d'estimer la variance du signal d'erreur de prédiction en décodant complètement ce signal (l'erreur de prédiction) à partir du train binaire MICDA et en calculant son énergie ou sa variance. Une autre méthode efficace et beaucoup moins complexe est de ne décoder que les facteurs d'échelle v(n) et de faire l'estimation de la variance à partir de ces valeurs. De façon alternative, si les signaux internes du décodeur sont accessibles, le décodeur peut fournir également au module d'estimation soit l'erreur de prédiction décodée soit le facteur d'échelle décodé.

La figure 3 illustre sous forme d'organigramme, les étapes principales d'un procédé d'estimation d'un bruit de codage, selon un mode de réalisation.

Ainsi, à l'étape E300, on estime la variance du signal d'erreur de prédiction codé. Pour cela, à l'étape E301, à partir du train binaire T, on obtient, selon un premier mode de réalisation, le signal d'erreur de prédiction décodé e(n) en décodant complètement le train binaire ou selon un deuxième mode de réalisation, pour une trame courante de taille / de signal décodé, les facteurs d'échelle de quantification de l'erreur de prédiction v(n) obtenus par échantillon.

Dans un mode de réalisation particulier en référence à la figure 4, on verra un exemple d'extraction de ces facteurs d'échelle.

A l'étape E302, selon le premier mode de réalisation, un calcul d'énergie du signal d'erreur de prédiction décodé est effectué pour obtenir la variance du signal d'erreur. Selon le deuxième mode de réalisation, à l'étape E302, le calcul d'une moyenne arithmétique D k des facteurs d'échelle v(n) pour la trame ^est effectué.

Des variantes concernant le calcul de D k par d'autres types de moyenne, comme la moyenne géométrique ou quadratique sont possibles. Moyenne quadratique : D

Dans un mode de réalisation simplifié, l'étape E300 est suivi de l'étape E305 d'estimation de la variance du bruit de quantification en fonction de la variance du signal d'erreur de prédiction. Ainsi, dans le premier mode de réalisation, la variance du bruit de quantification est estimée à partir de l'énergie du signal d'erreur de prédiction décodé et selon le deuxième mode de réalisation, la variance du bruit de quantification est estimée à partir de la moyenne des facteurs d'échelle D k . Dans le mode de réalisation simplifié, l'estimation de la variance du bruit de quantification est obtenue par division de D k par une constante.

De façon à éviter des dégradations de la qualité audibles à l'issue du traitement de réduction de bruit, un autre mode de réalisation apportant plus de précision prend en compte également une classe c k fonction de la valeur de la moyenne des facteurs d'échelle D k ou de l'énergie E k pour estimer la variance du bruit de quantification.

On décrit ici le mode de réalisation utilisant les classes c k pour le deuxième mode de réalisation avec facteurs d'échelle. Il peut tout aussi bien s'appliquer au cas du premier mode de réalisation utilisant le signal d'erreur de prédiction décodé. Dans ce dernier cas, la moyenne des facteurs d'échelle D k est remplacée par l'énergie E k calculée par trame pour le signal d'erreur décodé.

En déterminant l'intervalle dans lequel se situe D k , on associe à la trame k une classe c k à l'étape E303. Ce calcul s'effectue par la recherche du minimum de distance aux centres CI des différents intervalles disjoints [LI(k);LI(k+l)] qui forment une partition de l'ensemble des valeurs que peuvent prendre D k : q = arg min ((C/ [ï] - ¾ ))

Cette classification est équivalente à une quantification scalaire des valeurs D k sur n c valeurs, n c étant le nombre total de classes.

A l'étape E304, la valeur c k pour la trame courante est mémorisée pour une utilisation ultérieure lors du calcul de l'estimation de la variance de l'étape E305, pour ce mode de réalisation.

Ainsi, à partir de D k , de c k , et de c k _ { ;i e (l; p) les classes de p trames précédentes, avec p une valeur prédéterminée, on calcule l'estimation de la variance du bruit de codage à l'étape E305:

E Vk = f (D k ,c k _ - i G {0; p)) Un exemple d'une telle fonction f est donné ultérieurement.

Par ce mode de réalisation, on obtient une réduction significative de l'écart quadratique moyen entre la variance par trame du bruit de codage et de son estimation comme le montre le tableau 1 ci-dessous pour différents exemples d'échantillons sonores:

Tableau 1

A l'étape E306, une estimation du bruit de codage est obtenue à partir de l'estimation de la variance calculée à l'étape E305. Cette estimation du bruit de codage est obtenue par un bruit blanc dont la variance est celle estimée à l'étape E305. Le bruit blanc est un signal aléatoire dont la densité spectrale de puissance est la même sur toute la largeur de bande représentée, cette largeur en fréquence est la moitié de la fréquence d'échantillonnage. La variance d'un bruit blanc dépend de sa valeur de densité spectrale de puissance et de la fréquence d'échantillonnage. Ainsi, en connaissant la fréquence d'échantillonnage et la variance, le niveau de la densité spectrale de puissance peut être déterminé par une simple multiplication de la variance par une constante dépendant de la fréquence d'échantillonnage.

Une variante d'extension de la classification incluant les trames précédentes est possible. La classe c k est alors aussi définie en fonction des valeurs des moyennes du facteur d'échelle de d trames précédentes, selon l'équation (6) suivante:

c k = f {D k _ - i e (0;d ))

Le module de filtrage 105 de la figure 1 effectue un traitement de réduction de bruit à partir du bruit estimé à l'étape E306. Ce module reprend les principes du filtre utilisé dans l'annexe C du codeur normalisé ITU-T G.711.1. Pour une trame k, à partir du signal décodé x(n) et l'estimation du bruit pour la même trame, on calcule dans le domaine fréquentiel un filtre (/) par la technique de la TSNR ("Two Step Noise Réduction") décrit par exemple dans le document intitulé "a Two-step noise réduction technique" des auteurs C.PIapous, C.Marro, LMauuary & P.Scalart, dans ICASSP 2004.

A partir de la distribution spectrale en puissance (PSD) pour la trame k du signal décodé (f ) et de l'estimation de bruit ' ( ) , on a un rapport signal à bruit (RSB) a posteriori RSB k st :

Le rapport signal à bruit a priori pour la trame est calculé en deux étapes. Tout d'abord on calcule une première estimation RSB priol par une décision dirigée entre le RSB a priori final de la trame précédente et le RSB a posteriori :

RSB , = fiRSB p {k : o 1 l + (l - fi) max(RSB p { i -Ι,θ)

RSB p ri ol permet de calculer un premier filtre de réduction de bruit W 1 (f ) , d'après la forme de Wiener :

RSB p k iÀf )

l + RSB (f )

Ce filtre permet d'affiner l'estimation du RSB a priori en considérant cette fois ci, la PSD du signal filtré par W l . Une deuxième estimation du RSB a priori 7 est alors donné par : x ik) (f ).(w{ k) (f ))

-M

* ' (f )

Le filtre est alors calculé à artir de cette deuxième version du RSB par la forme de Wiener Par transformée de Fourier inverse et réorganisation des coefficients, un filtre FIR temporel et causal h(n) es calculée :

La réorganisation des coefficients est la suivante : Cette réponse impulsionnelle est fenêtrée par une fenêtre symétrique de Hanning à 33 coefficients de façon à réduire de moitié la taille nécessaire de FIR. Le module de filtrage 105 met donc en œuvre une étape de détermination d'une fonction de filtrage à appliquer au signal décodé, en fonction de l'estimation du bruit de codage, obtenu selon les étapes E301 à E306, pour appliquer un traitement de réduction de bruit de codage.

Le mode de réalisation décrit ci-après est donné pour une estimation du bruit de codage de la bande basse d'un codeur de type normalisé UIT-T G.722. Dans ce codeur, le signal de la sous-bande basse est en effet codé par un codeur indépendant MICDA. Un tel codeur est par exemple décrit dans le document " Rec. ITU-T G.722, 7 kHz audio-coding within 64 kbit/s, Sep. 2012" et illustré à la figure 4 décrite à présent.

Le codeur G.722 code le signal d'entrée (x(n)) échantillonné à 16 kHz en deux sous- bandes échantillonnées à 8 kHz. La division en sous-bandes est faite par un filtre miroir en quadrature (QMF pour "Quadrature Mirror Filter " en anglais) par le module 401. A partir de deux échantillons d'entrée le filtre QMF donne en sortie un échantillon x L (n) de bande basse (0-4000 Hz) et un échantillon x H (n) de bande haute (4000-8000 Hz). Les signaux des 2 sous- bandes sont codés indépendamment par des codeurs MICDA 402 et 403.

Les indices des deux erreurs de prédiction quantifiées I H (n) et I L (n) sont ainsi transmis dans le flux binaire I(n) après multiplexage en 404. Le codeur G.722 a trois débits: 64, 56 et 48 kbit/s. Chaque échantillon de la sous-bande basse est codé sur 6 bits au plus haut débit (48 kbit/s), sur 5 bits au débit intermédiaire (40 kbit/s), et sur 4 bits au plus bas débit (32 kbit/s). Au plus haut débit, le flux codé de la sous-bande basse est constitué de la couche cœur à 4 bits par échantillon et de deux couches d'amélioration à 1 bit par échantillon chacune. La sous-bande haute est toujours codée sur 2 bits (16 kbit/s) par échantillon indépendamment du débit.

On décrit ici l'adaptation du quantificateur de la bande basse du codeur G.722. Typiquement, dans cette bande, l'erreur de prédiction au plus bas débit (48 kbit/s dont bande basse à 32 kbit/s) est codée sur 4 bits : 1 bit de signe sign(n) et 3 bits I(n) pour choisir parmi les 8 amplitudes possibles du quantificateur scalaire. En réalité le train binaire du G.722 ne contient pas directement les 3 bits de l'indice I(n) mais on peut le déduire facilement à partir des 4 bits extraits du train binaire selon le tableau 2 ci dessous:

Tableau 2

L'amplitude décodée de l'erreur de prédiction est décomposée en 2 parties : une partie constante de type logarithmique y(I(n)) stockée en mémoire ROM indexée par I(n), et un facteur adaptatif multiplicatif appelé facteur d'échelle v(n). Par exemple le quantificateur fixe de 4 bits (incluant 1 bit de signe) dans la bande inférieure de G.722 contient les 8 valeurs d'amplitude suivantes, données dans le tableau 3:

Tableau 3

Le facteur d'échelle v(n) permet d'adapter l'étendue du quantificateur à l'amplitude du signal à quantifier échantillon par échantillon pour assurer un bon rapport signal à bruit indépendamment du niveau de l'erreur de prédiction. L'adaptation est faite de la façon suivante : quand pour quantifier l'erreur de prédiction on utilise un des plus grands niveaux du quantificateur scalaire on augmente la valeur du facteur d'échelle en le multipliant par un facteur d'adaptation M(I(n)) supérieur à 1 pour étendre un peu plus le quantificateur et ainsi éviter la saturation du quantificateur. Inversement, quand un des plus faibles niveaux du quantificateur scalaire est choisi on diminue la valeur du facteur d'échelle en le multipliant par un facteur d'adaptation M(I(n)) inférieur à 1 pour rétrécir un peu plus le quantificateur et ainsi mieux utiliser sa dynamique et obtenir un bon rapport signal à bruit.

La valeur du facteur d'adaptation M(I(n)) dépend donc de l'indice de quantification transmis I(n), elle est inférieure à 1 si l'indice correspond à une valeur quantifiée faible (0, 0.037 et 0.079 dans l'exemple de la bande basse du codeur G.722) et supérieure à 1 pour des autres valeurs. Dans le codeur G.722 cette adaptation est faite dans le domaine logarithmique, par addition du facteur d'adaptation logarithmique Mi(I(n)) correspondant à l'indice d'amplitude transmis I(n) au facteur d'échelle logarithmique vi(n). Le tableau 4 donne les valeurs du facteur d'adaptation dans le domaine logarithmique Mi(I(n)) et le facteur d'adaptation multiplicatif dans le domaine linéaire M(I(n)) pour les 8 niveaux possibles :

Tableau 4

De plus, la valeur obtenue est bornée dans l'intervalle [0, 18432] : v' L (n) = min (max(v l (n -\) + M L (l (n - \)) ,{)), 18432)

En cas d'erreur de transmission cette adaptation n'est pas faite avec la même valeur à l'encodeur et au décodeur, l'encodeur et le décodeur se désynchronisent. En utilisant l'équation précédente cette désynchronisation persisterait indéfiniment. Pour assurer leur resynchronisation après une erreur de transmission un facteur d'oubli est appliqué. Dans le cas du codeur G.722 il s'agit d'une multiplication par 0.9922 ((32512 en virgule fixe Q15, 32512/32768)) du facteur d'échelle logarithmique précédent : v L (n) = min (max(0.9922Y L (n -l) + M L (l (n - l)) ,0) , 18432)

Finalement, la conversion log-lin est faite par une simple lecture de table de 289 entrées, l'indice pour cette table est obtenu en divisant v|_(n) par 64 (décalage binaire à droite par 6 , "shift" en anglais).

Cette adaptation dans le G.722, en utilisant ces tables de conversion log-lin, correspond dans le domaine linéaire à : v(n) = min (max v(n _i) 09922 M (i (n -l)) , ό) ,4095) (1) Dans ce mode de réalisation, pour la bande basse du codeur G.722, on utilise des trames de 1=40 échantillons soit 5ms. Le procédé d'estimation du bruit de quantification, à l'étape E301 de la figure 3, extrait, dans le deuxième mode de réalisation, les facteurs d'échelle par échantillon pour une trame k courante selon l'équation 1 et les tableaux 2 et 4 ci-dessus à partir du train binaire T reçu au décodeur.

A l'étape E302, la moyenne D k de v(n) est obtenue comme décrit en référence à la figure 3. A l'étape E303, en déterminant l'intervalle dans lequel se situe D k , on associe à la trame k une classe c k , n c étant le nombre total de classes, fixé à 40 dans cet exemple de réalisation. Dans le mode de réalisation décrit ici, cette classe c k et la classe c k _ x de la trame précédente permettent de déterminer dans une matrice MR[i;j], de taille n c .n c le paramètre qui permet d'estimer la variance du bruit E v de la manière suivante :

Des variantes de cette estimation sont possibles. Le choix est fait de faire une classification par trame mais il est possible de faire une classification en considérant en sus des trames précédentes. En considérant l'espace (D^ * D k ) , on peut choisir de faire une quantification vectorielle de cet espace, par exemple par une méthode de k-moyenne. On peut aussi étendre la dimension de cette espace de classification.

Dans le mode de réalisation décrit ici le nombre des trames précédentes p prises en compte est égal à 1. Ces résultats sont facilement généralisable pour les cas où p est supérieur à 1. Dans ce cas la dimension de la matrice M? est égale à p+1.

Cette considération des trames précédentes peut se faire aussi par l'intermédiaire de la matrice MR. Dans le cas d'une classification par quantification vectorielle sur n niveau, MR sera un vecteur de taille ri a ,. Dans le cas d'une classification par trame, la dimension de MR peut être allongée. Ici fixée à 2, il est possible de l'agrandir à 3,4 voire au-delà, les paramètres étant pris en compte en entrée étant les classes <¾,,· des trames actuelles et précédentes.

Le choix d'une classification scalaire et d'une matrice MR de dimension 2 sont justifiés par un compromis entre complexité et qualité.

Dans un exemple de réalisation du procédé d'estimation, un apprentissage est effectué à partir d'une base de données comportant une concaténation de différentes conditions de signaux : parole propre, parole avec bruit d'ambiance, musique, et mélange de parole et musique. Les signaux de cette base de données sont codés, décodés de manière à extraire :

1. Le signal de facteur d'échelle v(n)

2. Le bruit de quantification exact de la bande basse b(n), obtenu comme différence des signaux d'origine de la bande basse x L (n) et décodé Xi_ q (n) synchronisés en annulant le retard.

A partir de ces deux informations, on extrait pour la base de données par trame de /=40 échantillons la moyenne D k de v(n) et l'écart-type o k de b(n) pour chaque trame fenêtré par une fenêtre asymétrique de Hanning, incluant 24 échantillons de la trame précédente selon l'équation (3) ci dessous. On fait ainsi un recouvrement des trames sur les 24 premiers échantillons.

Ce fenêtrage a entre autre pour intérêt de ne pas introduire de retard. Ce type de fenêtrage est illustré en référence à la figure 6 où on peut voir le signal (x(n)), les fenêtres de Hanning asymétriques (fen.) et les limites de trame (lim.). La flèche indiquée sur la figure représente le recouvrement.

Cette fenêtre permet d'assurer une continuité et a l'avantage de ne pas introduire de retard supplémentaire car elle ne nécessite pas la connaissance des échantillons appartenant à la trame suivante. Bien sûr d'autres types de fenêtres peuvent être également utilisées, comme par exemple une fenêtre symétrique Hamming de 72 échantillons centrée sur la trame, en couvrant également 16 échantillons de la trame suivante ("Lookahead" en anglais). L'utilisation d'une telle fenêtre augmentera cependant le retard algorithmique par la durée de 16 échantillons (2 ms avec la fréquence d'échantillonnage de 8000 Hz).

A partir des valeurs D k et a k obtenues pour les signaux de la base de données, un vecteur de rapport r k avec r k =— - est calcule. Les valeurs de la matrice MR seront calculées a partir de ces valeurs r k .

Dans cet exemple de réalisation, le nombre de classe /7 c est fixé à 40.

Un tableau CI représente les centres des intervalles des classes. Ces intervalles sont déterminés par leurs bornes LI, obtenues par partition « équiprobable » de D. Sur chaque segment, on trouve le même nombre de valeur de £> dans la base d'apprentissage. Le tableau CI a donc un vecteur de taille 40 dont les valeurs sont définies comme suit:

V(c,d) e (1;40) 2' card (D k e [LI (c); LI (c + \) ) = card (D k e [LI (d);LI (d + \) )

Les ClfcJ sont alors les milieux des segments [LI(c);LI(c+l)],c=l ,...,40

. . . Ll (c) + Ll (c + l)

Vce (1; 40), C/ (c) =— 2 ' La figure 5 représente les limites des intervalles de classification pour les 40 classes.

Des variantes sur le choix des intervalles et des centres sont possibles. Sur le choix des intervalles, on peut choisir évidemment une partition en segments de taille égale ou encore une partition en segments de tailles différentes, suivant une suite exponentielle, où la taille de l'intervalle est le double du précédent par exemple.

Les centres peuvent aussi prendre en compte la répartition des éléments de la base de données dans chaque intervalle, soit par moyenne de ces éléments, soit par choix de la médiane. Moyenne : Cl (c) = moyenne^D k I D k e (zJ (c):ZJ (c + l)))

On peut alors déterminer le flux de classes c de la base de donnée. Les coefficients de la matrice MRf/ Jsont obtenus par moyenne arithmétique des rde même coordonnées. MR est alors un tableau de taille 40*40.

Dans l'établissement de la matrice MR, il est possible que des couples (i ) ne soient pas représentés dans la base d'apprentissage. On sait qu'on trouvera toujours une classe j tel que , le problème est de trouver le sous-ensemble des k tel que le précédent est c k -i=i, ce sous-ensemble pouvant être vide. On prendra alors par défaut la moyenne des r k avec c k = j

La figure 7 illustre le nombre de trames attribué à chaque élément de la matrice MR, avec la base d'apprentissage utilisée. Malgré une taille importante de la base d'apprentissage, il se peut qu'un certain nombre de couple {c k ,c k -î) soit absent. On peut y observer que les cas où Ck-i est grand (qui signifie une moyenne de facteur D k _i élevée) et où c k est petit (signifiant une moyenne de facteur D k faible) ne sont jamais représentés dans la base d'apprentissage (cases noires dans le coin supérieur gauche sur la figure). Ceci a une explication physique. En effet, on ne passe pas d'une trame de très forte énergie à une trame de très faible énergie. Ceci est dû à l'algorithme d'adaptation qui permet de rapides augmentations du facteur d'échelle v (maximum du facteur multiplicatif 2.81 par échantillon) et une diminution faible (minimum du facteur multiplicatif 0.98 par échantillon). Ainsi pour une durée de 2 trames soit 80 échantillons dans notre exemple, la diminution de facteur d'échelle maximale est de 0.98 80 =0.2 et la moyenne de ces facteurs d'échelles par trame peut au maximum diminuer de D k _ ! / D k = 0.45.

La figure 8 montre les valeurs de la matrice MR ainsi obtenue. On peut y observer la grande dynamique de ces valeurs (entre 20 et 160). On y voit également que, comme attendu, ces valeurs sont les plus fortes dans la diagonale de cette matrice correspondant aux cas où l'énergie du signal ne change pas significativement de trame à trame et où l'adaptation du facteur d'échelle est optimale. Et inversement, ces valeurs sont faibles loin de la diagonale correspondant au cas où l'énergie du signal à quantifier augmente brusquement et où l'adaptation automatique a du mal à trouver le point de fonctionnement optimal du fait d'un bruit de quantification plus fort.

Dans le mode de réalisation simplifié (quand l'étape E302 est suivi de l'étape E305) la matrice MR' est remplie par une constante (la valeur moyenne de toutes les valeurs D k ). L'estimation de la variance du bruit de codage est alors calculée par la valeur de la moyenne D k par trame divisée par la valeur constante. Cette estimation ne prend pas en compte les zones de transition qui peuvent avoir lieu.

L'intérêt du mode de réalisation incluant les étapes E303 et E304 est montré ici par le fait que les valeurs de la matrice ne sont pas constantes et permettent d'obtenir une estimation de la variance du bruit de codage de façon plus précise surtout dans les zones de transition.

Des variantes sur le calcul de la matrice MR sont possibles, outre ces formes détaillées plus tôt. Le choix d'une autre valeur autre que la moyenne arithmétique, comme par exemple les moyennes géométriques ou quadratiques ou encore la médiane est également possible.

La figure 9 représente un exemple de réalisation matérielle d'un dispositif d'estimation 900 selon l'invention. Celui-ci peut faire partie intégrante d'un dispositif de traitement de réduction de bruit de quantification (TBQ) ou encore d'un décodeur audiofréquence ou d'un équipement recevant des signaux audio décodés.

Ce type de dispositif comporte un processeur PROC coopérant avec un bloc mémoire BM comportant une mémoire de stockage et/ou de travail MEM.

Un tel dispositif comporte un module d'entrée E apte à recevoir un flux binaire T d'un signal audio numérique codé et un module de sortie S apte à transmettre l'estimation du bruit de quantification déterminé par le dispositif à un module de filtrage intégré ou non au dispositif.

Le bloc mémoire peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en œuvre des étapes du procédé d'estimation au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes d'estimation de la variance du bruit de codage en fonction d'une estimation de la variance du signal d'erreur de prédiction codé et d'estimation d'un bruit de codage par un bruit blanc dont la variance est la variance estimée du bruit de codage.

Typiquement, la description de la figure 3 reprend les étapes d'un algorithme d'un tel programme informatique. Le programme informatique peut également être stocké sur un support mémoire lisible par un lecteur du dispositif ou téléchargeable dans l'espace mémoire de celui-ci.

La mémoire MEM enregistre selon un mode de réalisation, les classes déterminées à partir des moyennes de facteur d'échelle des trames traitées et de manière générale, toutes les données nécessaires à la mise en œuvre du procédé.

Dans un mode possible de réalisation, le dispositif ainsi décrit peut également comporter les fonctions de décodage, les fonctions de traitement en plus des fonctions d'estimation du bruit de codage selon l'invention.