FR2990552A1 - Traitement d'amelioration de la qualite des signaux audiofrequences - Google Patents
Traitement d'amelioration de la qualite des signaux audiofrequences Download PDFInfo
- Publication number
- FR2990552A1 FR2990552A1 FR1256641A FR1256641A FR2990552A1 FR 2990552 A1 FR2990552 A1 FR 2990552A1 FR 1256641 A FR1256641 A FR 1256641A FR 1256641 A FR1256641 A FR 1256641A FR 2990552 A1 FR2990552 A1 FR 2990552A1
- Authority
- FR
- France
- Prior art keywords
- signal
- frequency
- gain
- spectral gain
- spectral
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000003595 spectral effect Effects 0.000 claims abstract description 84
- 238000012545 processing Methods 0.000 claims abstract description 33
- 238000001914 filtration Methods 0.000 claims abstract description 22
- 238000007493 shaping process Methods 0.000 claims abstract description 10
- 230000004044 response Effects 0.000 claims description 33
- 238000001228 spectrum Methods 0.000 claims description 24
- 238000011282 treatment Methods 0.000 claims description 18
- 230000033228 biological regulation Effects 0.000 claims description 9
- 230000003247 decreasing effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 26
- 238000004458 analytical method Methods 0.000 description 24
- 230000002123 temporal effect Effects 0.000 description 19
- 238000003786 synthesis reaction Methods 0.000 description 17
- 230000015572 biosynthetic process Effects 0.000 description 16
- 238000012805 post-processing Methods 0.000 description 16
- 230000007480 spreading Effects 0.000 description 10
- 238000003892 spreading Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 9
- 230000009466 transformation Effects 0.000 description 9
- 230000008901 benefit Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 7
- 230000009467 reduction Effects 0.000 description 7
- 230000001276 controlling effect Effects 0.000 description 6
- 230000002829 reductive effect Effects 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 230000002146 bilateral effect Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 230000005284 excitation Effects 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 4
- 238000011084 recovery Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000002238 attenuated effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000000670 limiting effect Effects 0.000 description 3
- 210000000056 organ Anatomy 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000003628 erosive effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 210000001260 vocal cord Anatomy 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
-
- 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/26—Pre-filtering or post-filtering
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
L'invention se rapporte à un procédé de traitement d'un signal audiofréquence comportant les étapes suivantes: - détermination (det.g(k)) d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence; - régularisation (reg. g(k)) non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel (W (k) ou W (delta)) prédéterminé; - filtrage (606) du signal audiofréquence par utilisation du gain spectral ainsi régularisé. Elle se rapporte également à un dispositif de traitement mettant en oeuvre le procédé tel que décrit.
Description
Traitement d'amélioration de la qualité des signaux audiofréquences La présente invention se rapporte au domaine du traitement des signaux audiofréquences et notamment des signaux de parole ou de musique qui ont été codés et décodés par codeurs et décodeurs de parole. Le dispositif de traitement audio selon l'invention est adapté notamment pour la transmission et/ou le stockage des signaux audiofréquences. L'invention concerne plus le post-traitement des signaux décodés pour améliorer la qualité des signaux musicaux décodés ou encore le traitement audio comme par exemple les traitements par application d'un gain spectral (dans le domaine temporel ou fréquentiel) pour la réduction de bruit ambiant. Différentes techniques existent pour convertir sous forme numérique et compresser un signal audiofréquence (parole, musique, etc.). Les techniques les plus courantes dans les services de télécommunications sont les méthodes de codage de forme d'onde, telles que le codage MIC (pour "Modulation par Impulsions Codées") et MICDA (pour "Modulation par Impulsion et Codage Différentiel adaptatif') dits aussi "PCM" ou "ADPCM" en anglais, les méthodes de codage paramétrique par analyse par synthèse comme le codage CELP (pour "Code Excited Linear Prediction" en anglais), et les méthodes de codage perceptuel en sous-bandes ou par transformée. Ces techniques traitent le signal d'entrée de façon séquentielle échantillon par échantillon (MIC ou MICDA) ou par blocs d'échantillons dits trames (CELP, codage par transformée). On s'intéresse ici plus particulièrement au cas du codage CELP comme exemple de codeur-décodeur de parole, cependant l'invention s'applique au cas général des codeurs de parole et audio (ex: MIC, MICDA, CELP, etc...) .
Le codage CELP - dont sa variante appelée ACELP (pour "Algebraic CELP") utilisée par exemple dans les normes 3GPP AMR et AMR-WB - est un codage prédictif fondé sur le modèle source-filtre de production de la parole. Le filtre correspond en général à un filtre tout-pôle de fonction de transfert 1/ A(z) obtenu par prédiction linéaire LPC (pour "Linear Predictive Coding" en anglais). Le signal est synthétisé à l'aide de la version quantifiée,1/ Â(z) , du filtre 1/ A(z) . La source - c'est-à-dire l'excitation du filtre linéaire prédictif 1/ Â(z) - est en général représentée comme la combinaison d'une excitation adaptative (obtenue par prédiction long-terme modélisant la vibration des cordes vocales), et d'une excitation fixe (ou innovation) codée efficacement sous la forme de dictionnaires d'impulsions (ACELP), de dictionnaires de bruit, etc. La recherche de l'excitation "optimale" est réalisée par minimisation d'un critère d'erreur quadratique dans le domaine du signal pondéré par un filtre de fonction de transfert 14(z) dérivée du filtre de prédiction linéaire A(z) , de la forme 14(z)- A(z/71)/A(z/2/2). On peut noter que dans le codec 3GPP AMR-WB, qui est décrit dans l'article de B. Bessette et al., intitulé "The Adaptive Multirate Wideband Speech Coder (AMR-WB)", IEEE Transactions on Speech, Audio and Language Processing, Nov. 2002, le codage ACELP est en fait appliqué par trames de 20 ms non pas au signal direct échantillonné à 16 kHz mais à un signal pré-accentué échantillonné à 12,8 kHz dans une bande audio réduite (0-6400 Hz); la pré-accentuation (ou pré-emphase) est réalisée par le filtre de fonction de transfert I- az-1 avec a =0,68. Le filtre de pondération perceptuelle utilisé pour la mise en forme de bruit de codage est de la forme W(z)=A(z/2/)/(1-az-) avec 7-0,92. Le codage CELP repose sur une approche de codage temporelle et prédictive à partir d'un modèle de signal (LPC); ce type de codage est très efficace sur la parole (propre), mais il donne à bas débit une qualité souvent médiocre pour les cas des signaux s'éloignant des hypothèses du modèle de production de la parole. Ainsi, pour les signaux musicaux ayant une structure composée de composantes tonales qui sont mal codées par un modèle CELP (ex: signaux harmoniques, multipitch, ou inharmoniques, tels que les sons d'orgue, de piano, etc.), il est bien connu qu'un codage par transformée est beaucoup plus adapté. Des exemples de défauts introduits par le codage CELP pour les signaux musicaux sont listés ci-dessous de façon non exhaustive: o Pour les signaux très harmoniques, les vallées spectrales entre les composantes tonales ou "tones" sont remplies par le bruit de codage dont la "forme" spectrale globale suit approximativement la réponse en fréquence du filtre 1/W(z) . o Pour les signaux multipitch ou ayant une structure harmonique avec un fondamental en dehors de la gamme de pitch codée, des altérations de la structure harmonique peuvent être observées (y compris l'apparition de fausses harmoniques) - cependant en général les composantes tonales les plus énergétiques sont relativement préservées, surtout en basses fréquences. Les codeurs de parole de type CELP sont historiquement déployés dans les applications de téléphonie fixe et mobile car ils fournissent une meilleure qualité à bas débit pour les signaux de parole qui sont les signaux les plus importants pour les applications de téléphonie. Cependant, les signaux musicaux ou les contenus mixtes (mélange de parole et musique) représentent malgré tout une classe de signaux importante dans certains cas d'usage tels que la musique d'attente, la tonalité de retour, etc. Il est donc pertinent et important de chercher à améliorer pour la musique et les contenus mixtes la qualité des codeurs de parole qui sont déjà déployés dans les services.
La figure 1 montre l'exemple concret d'un signal musical (un son d'orgue) échantillonné à 16 kHz, préfiltré par un masque P.341 (50-7000 Hz) et analysé par FFT à court-terme sur un support de 512 échantillons (32 ms). Le spectre du signal ('sig') sur la trame considérée fait apparaître un certain nombre de composantes tonales (ct). Après codage du signal par le codeur AMR-WB à 12,65 kbit/s, le spectre de bruit ('err') correspondant apparaît comme relativement fort entre les composantes tonales. Cette caractéristique du bruit de codage s'explique par le fait que le codage CELP est temporel et met en forme le bruit en principe selon la réponse en fréquence du filtre W(z) contrairement à un codage par transformée opérant dans un domaine fréquentiel, le codage CELP ne peut pas "creuser" entre les harmoniques ou composantes tonales aussi appelées tones. Un exemple de technique améliorant le décodage CELP pour les signaux musicaux est présenté dans l'article de T. Vaillancourt et al. intitulé "Inter-tone noise reduction in a low bit rate CELP decoder", Proc. ICASSP 2009. Cette technique est utilisée dans le mode "bande étroite" de la norme UIT-T G.718. Le principe de cette technique consiste à réaliser un post-traitement dans le domaine fréquentiel (par FFT court-terme) du signal CELP décodé et de réduire le bruit de codage CELP entre les partiels (composantes tonales) par une fonction d'atténuation spectrale et un ajustement de gain (ou d'énergie). Ce post-traitement s'apparente à une réduction de bruit classique par atténuation spectrale à court-terme. Il comporte les étapes suivantes illustrées à la figure 2: - Une pré-emphase (bloc 201) et une transformation de Fourier discrète (FFT) à court-terme (bloc 202) sont appliquées par trames de 20 ms sur le signal décodé échantillonné à 16 kHz - la FFT a un support temporel de 30 ms (soit une FFT de longueur N =480). Le spectre complexe obtenu est ici noté S(f), où f = 0, - -,N / 2+1, si on ne retient que les fréquences positives (de 0 à 8000 Hz). - Une classification (bloc 203) du signal CELP décodé afin d'évaluer le niveau de stationnarité dans la trame courante et ajuster la zone de fréquence du post-traitement et le niveau de réduction de bruit maximal. - Une atténuation du bruit de codage (bloc 204): à chaque trame d'indice temporel t, le niveau de bruit de codage N(i) est estimé par sous-bandes critiques d'indice i (CB pour "Critical Bands" en anglais). Un rapport signal à bruit SNR(f) a posteriori est ensuite estimé par raie fréquentielle, celui-ci étant défini comme le rapport entre l'énergie du signal décodé et pré-accentué à la raie de fréquence f et l'énergie du bruit N(i) dans la bande critique incluant la raie de fréquence f Une fonction d'atténuation spectrale g(f) est finalement calculée raie par raie, en fonction du signal à bruit, et le gain g(f) est ensuite lissé. De façon récursive pour obtenir - La correction de l'atténuation (bloc 205) par un gain de correction( f) corr pour compenser la perte d'énergie due à l'atténuation spectrale du bloc 204 ainsi que l'atténuation des hautes fréquences par le modèle CELP. Ainsi, le traitement fréquentiel appliqué au spectre (issu du bloc 202) peut être résumé à : g(f)-(f).gcorr(f).S(f)= g giob(f).S(f) Où= est le gain "global" appliqué au spectre du signal ggiob(f <s(f)-gco analysé. On peut ainsi parler d'un gain spectral de mise en forme du signal pour désigner le gain gglob ( f) ou encore ses composantes (f) ou gcorr(f ). - La synthèse temporelle (bloc 206) par FFT inverse du spectre du signal post-traité puis l'addition-recouvrement (bloc 207) et la dé-emphase (bloc 208).
La technique de Vaillancourt et al. est de complexité raisonnable et elle occasionne un retard additionnel (10 ms) compatible avec les applications conversationnelles. Cependant, elle présente un inconvénient majeur lorsque le retard additionnel est réduit à une valeur entre 1 et -5 ms pour répondre à des contraintes temps-réel de l'application visée ou en raison de contraintes fixées en normalisation. Ce dernier cas se rencontre par exemple dans le cadre de la normalisation EVS au 3GPP SA4 où une version améliorée du codeur AMR-WB est envisagée avec une contrainte de retard algorithmique 32 ms, cette contrainte inclut une marge implicite (laissée libre à la conception algorithmique) pour le ré-échantillonnage d'entrée sortie à 8, 16, 32 voire 48 kHz ; le codeur AMR-WB existant ayant un retard de 25.9375 ms, une telle contrainte laisse donc une marge de retard additionnel inférieure à 5 ms pour un (post-)traitement d'amélioration. En fonction de l'architecture de codage choisie, cette marge peut même se réduire à une valeur entre 1 à 2.5 ms. La méthode décrite dans l'état de l'art de "Vaillancourt et al." consiste à réduire le bruit de codage par application d'un facteur (gain) directement dans le domaine spectral (FFT). Il est bien connu de l'homme de l'art que cette opération correspond en fait à un filtrage dans le domaine fréquentiel par convolution circulaire entre le signal décodé, pré- accentué et fenêtré, et la réponse impulsionnelle hg/ob(n) (symétrique) obtenue par FFT inverse à partir du gain spectral ggiob(f) - Le fenêtrage d'analyse-synthèse par FFT court-terme n'est pas détaillé dans l'article de "Vaillancourt et al.". Pour réduire le retard de traitement, un fenêtrage adapté peut être prévu. Un exemple de fenêtrage adapté est par exemple illustré aux figures 3a, 3b et 3c.
La fenêtre d'analyse wa(n) de la figure 3a est de type Hamming et la fenêtre de synthèse ws(n)de la figure 3c compense la fenêtre d'analyse et inclut une fenêtre d'addition-recouvrement wo/a(n) à faible retard illustré en figure 3b. Plus précisément, on prend à titre d'exemple les fenêtres suivantes : La fenêtre d'analyse wa(n) est définie comme une fenêtre de Hamming de longueur N =512 échantillons, ce qui correspond à 32 ms à 16 kHz: ( n wa(n) = 0.54-0.46cos 2z- ,n=0,...,N -1 N-11 La fenêtre de synthèse w5(n) est définie comme 0 n = 0, ... , D -1 ws(n) 'Iwoia(n- D)n=0,...,N -1 n = D ,. . . , N -1' wa(n) où l'on a introduit par commodité la quantité D = N - L - Lola d'échantillons ignorés et rendus nuls par le fenêtrage de synthèse, et où la fenêtre woia (n) , m = 0,- - -,L + Lola -1 d'addition-recouvrement (OLA pour Overlap-Add en anglais) est définie par: -1 ( ( n = 0, ... n = Lola ,.. , Lola -1 . , L -1 2 1-cos -7r (n + 0.5) \Lola )) 1 woia (n) = ( ( n = L,..., L+ Lola -1 1 l+cos -7r ((n - L)+ 0.5) \Lola 2 )) avec Loia =40 et L =320, soit respectivement 2.5 ms et 20 ms à 16 kHz.
On illustre à la figure 4 l'opération de réduction du bruit de codage dans le domaine fréquentiel à la manière de l'état de l'art de "Vaillancourt et al.", en prenant - sans perte de généralité - le fenêtrage des figures 3a, 3b et 3c pour mettre en oeuvre l'analyse/synthèse par FFT court-terme. Le signal x(n) est découpé en trames successives de longueur L et on définit par convention les indices de la trame courante comme n = 0,- - - ,L -1. Pour une fenêtre d'analyse wa(n) de longueur N, on définit le signal fenêtré comme : x,,,(n) = w a(n - Lpast)x(n) , n = -L past , - - - , L -1 qui inclut une partie du signal passé x(n) , n = -L pas t ,- - - , -1 et la trame courante, x(n) , n = 0,- - - , L -1 , avec N = Lpast ± L .
Ce signal x(n) est transformé par FFT sur N points, le spectre discret résultant, X(k), est multiplié par une fonction de gain spectral g (k) , dont on suppose ici à titre d'exemple qu'il suit le principe du traitement de l'état de l'art de "Vaillancourt et al.". Un exemple de représentation de g (k) est illustré dans l'encadré de la figure 4.
Le spectre X(k) est pondéré par g (k) , X post (k) = g (k)X (k) , transformé par FFT inverse (FFT-1) et fenêtrage de synthèse w (n) , avant addition-recouvrement, pour obtenir le signal post-traité x0 (n) . La multiplication de X(k) par g (k) dans le domaine FFT pour obtenir X pos t(k) correspond à une convolution circulaire entre le signal x(n) et la réponse impulsionnelle h(n) obtenue par FFT inverse de g (k) . Un exemple de réponse impulsionnelle h(n) correspondant au gain g (k) est illustré dans l'encadré de la figure 4. Il apparaît que la réponse impulsionnelle h(n) a en général un support temporel étendu de longueur N, et est associée à un retard de filtrage FIR (pour "Finite Impulse Response" en anglais) non négligeable.
La convolution circulaire dans l'état de l'art de "Vaillancourt et al." introduit en général des défauts de repliement temporel, qui sont d'autant plus audibles que le recouvrement entre fenêtres d'analyse/synthèse est faible. Ces problèmes de repliement temporel dû à la convolution circulaire sont illustrés plus en détails à la figure 5. Le support temporel (partie non nulle) de la fenêtre et la longueur de la FFT coïncident, soit L = N. Pour l'exemple de signal fenêtré et de réponse impulsionnelle h(n) de la figure 5, la convolution circulaire produit un résidu indésirable (res.) en comparaison avec une convolution linéaire et ce résidu est amplifié par la forme « biscornue » de la fenêtre de synthèse w5(n) qui amplifie la fin du bloc. Ce type de repliement (Rt), conjugué avec la fenêtre optimisée w5(n) pour les contraintes de très faible retard de traitement, conduit à des artéfacts (Artef.) de type effets de bloc et donc un bruit de trame très gênant lorsque le retard (et donc le recouvrement à droite) est faible, de l'ordre de 2.5 ms. Il existe donc un besoin, pour le post-traitement des signaux décodés, en particulier pour les signaux musicaux, d'une part de préserver le signal et plus particulièrement sa structure harmonique court-terme tout en réduisant efficacement le bruit de codage entre les composantes tonales et d'autre part, de diminuer les artéfacts gênants induit d'un fenêtrage à faible retard.
Cette technique doit s'appliquer dans le cas où il n'est pas nécessaire de transmettre (du codeur au décodeur) d'information supplémentaire pour le traitement - on considère en effet ici le cas d'un post-traitement en aveugle au décodeur. On peut également noter que ce besoin de préserver le signal utile tout en réduisant le bruit (signal non utile), avec des contraintes sur le retard algorithmique, existe également dans d'autres applications de traitement audio comme par exemple les traitements par application d'un gain spectral (dans le domaine temporel ou fréquentiel) pour la réduction de bruit ambiant.
La présente invention vient améliorer la situation. Elle propose à cet effet, un procédé de traitement d'un signal audiofréquence tel qu'il comporte les étapes suivantes: - détermination d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence; - régularisation non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel prédéterminé; - filtrage du signal audiofréquence par utilisation du gain spectral ainsi régularisé. La régularisation du gain spectral permet ainsi de rendre plus compacte la réponse temporelle correspondante après transformée inverse et ainsi d'éviter les artéfacts gênants d'une convolution circulaire tout en permettant la préservation des composantes tonales du signal audiofréquence. Le procédé peut s'appliquer par exemple pour un post-traitement de signaux décodés mais aussi pour un traitement de réduction de bruit sur un signal audio à coder.
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é de traitement défini ci-dessus. Le motif fréquentiel est selon un mode général de réalisation une fonction de pondération normalisée à 1.
Le motif présente alors un maximum en 1 et une décroissance bilatérale (vers les fréquences supérieures et inférieures) qui permet de contrôler les variations de la courbe fréquentielle du gain, de façon à ce que ses variations ne soient pas trop brusques. Dans un mode particulier de réalisation, le motif fréquentiel est déterminé à partir de la transformée d'une fenêtre étendue à une longueur N prédéterminée par bourrage de zéros.
Ce type de motif fréquentiel permet de contrôler la variation fréquentielle de la fonction de gain de façon à ce que sa décroissance bilatérale ne soit pas plus rapide que ce motif. La réponse temporelle correspondante est alors plus compacte. Une opération de régularisation de moindre complexité est par exemple selon l'équation suivante: greg(k) = ma.5.x (g (k - (5.).Wh(5)) où1/17h(5) est le motif fréquentiel prédéterminé. Dans un autre mode de réalisation, l'étape de régularisation est effectuée en deux passes - une passe directe, dans le sens des fréquences croissantes, utilisant la moitié droite décroissante du motif fréquentiel prédéterminé selon une tolérance prédéfinie; - une passe rétrograde, sans le sens des fréquences décroissantes, utilisant la moitié gauche croissante du motif fréquentiel prédéterminé. Cette méthode, même plus complexe, a l'avantage de moins élargir les pics de la courbe de gain spectral original, tout en contrôlant les variations locales du gain en fonction du motif fréquentiel et de tolérances prédéfinies. Dans un premier mode de réalisation, les étapes sont mises en oeuvre dans le domaine fréquentiel sur le spectre fréquentiel du signal audiofréquence. Ainsi, le fait d'effectuer ces étapes dans le domaine fréquentiel permet d'éviter des opérations de transformation du gain spectral et réduit ainsi la complexité de traitement. Dans un deuxième mode de réalisation, le filtrage du signal audiofréquence s'effectue dans le domaine temporel après transformation en réponse impulsionnelle du gain spectral régularisé. Ce mode de réalisation est intéressant lorsque la longueur de la réponse impulsionnelle est courte. Il évite de plus une étape de pondération du spectre du signal audiofréquence par rapport au mode de réalisation dans le domaine fréquentiel. La présente invention vise également un dispositif de traitement d'un signal audiofréquence tel qu'il comporte: - un module de détermination d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence; - un module de régularisation non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel prédéterminé; - un module de filtrage du signal audiofréquence par utilisation du gain spectral ainsi régularisé.
Ce dispositif présente les mêmes avantages que le procédé décrit précédemment, qu'il met en oeuvre. L'invention vise aussi un décodeur de signal audiofréquence comportant un dispositif de traitement tel que décrit ci-dessus. Elle vise un programme informatique comportant des instructions de code pour la mise en oeuvre des étapes du procédé de traitement 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 de traitement, éventuellement amovible, mémorisant un programme informatique mettant en oeuvre un procédé de traitement 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 décrite précédemment, illustre un exemple de spectre court-terme d'un signal musical et du bruit de codage CELP associé; - la figure 2 représente un schéma bloc de la méthode de réduction de bruit de l'état de l'art, telle que décrite précédemment; - les figures 3a, 3b et 3c décrites précédemment, illustrent des exemples de fenêtres temporelles utilisées pour la mise en oeuvre des étapes de transformée temps-fréquence ou de transformée inverse; - la figure 4 décrite précédemment, illustre le principe du filtrage dans le domaine fréquentiel selon l'état de l'art; - la figure 5 décrite précédemment explique les effets de bloc par convolution circulaire sur une trame de signal, introduits par une technique de l'état de l'art; - la figure 6 illustre un premier exemple de réalisation d'un dispositif de traitement et d'un procédé de traitement selon l'invention; - la figure 7 illustre un exemple de fenêtrage en fonction de la longueur de recouvrement, liée au retard de post-traitement, pouvant être utilisée dans un mode de réalisation de l'invention; - les figures 8a, 8b et 8c représentent les relations entre gain spectral et réponse impulsionnelle associée selon différents traitements dont celui mis en oeuvre par l'invention; - la figure 9 illustre l'annulation de l'effet de trame produit par la mise en oeuvre du procédé de traitement selon l'invention; - la figure 10 illustre un deuxième exemple de réalisation d'un dispositif de traitement et d'un procédé de traitement selon l'invention; et - la figure 11 illustre un exemple de réalisation matérielle d'un dispositif de traitement selon un mode de réalisation de l'invention. La figure 6 illustre à présent un premier exemple de réalisation d'un dispositif de traitement mettant en oeuvre un procédé de traitement selon l'invention. Le dispositif de traitement fonctionne ici, dans un exemple de réalisation, sans perte de généralité, à la fréquence d'échantillonnage de 12.8 kHz, qui correspond à la fréquence interne du codage ACELP décrit dans la norme 3GPP AMR-WB ou de façon équivalente dans la recommandation UIT-T G.722.2, afin de minimiser la complexité du post-traitement en termes de nombre d'opérations. Il est à noter que l'invention est mise en oeuvre dans ce mode de réalisation dans les modules 604 à 606 et plus particulièrement dans le module 605 de régularisation de gain.
On suppose ici que le signal x post (n) issu du traitement ou post-traitement est par la suite combiné avec la synthèse de la bande haute (6400-7000 Hz), décalée dans le temps, du décodeur AMR-WB - ces opérations (décodage bande-haute, ré-échantillonnage à 16 kHz, combinaison) ne sont pas illustrées à la figure 6. Dans un mode de réalisation privilégié, le post-traitement agit comme un bloc externe (bloc 608) au décodeur (bloc 601) par exemple de type AMR-WB et nécessite de récupérer le signal synthétisé après décodage ACELP en bande basse (0-6400 Hz) du décodeur. Dans une variante du mode de réalisation privilégié, ce dispositif de traitement (bloc 608) peut être directement intégré au décodeur AMR-WB (bloc 601) ou fonctionner sur le signal reconstruit par le décodeur AMR-WB à 16 kHz, incluant l'extension de bande (6400 - 7000 Hz).
Dans des variantes du mode de réalisation privilégié, le post-traitement illustré à la figure 6 pourra être mis en oeuvre à la fréquence de 16 kHz après décodage AMR-WB. Par ailleurs le décodeur AMR-WB pourra être remplacé par tout autre type de décodeur de parole et/ou audio, dont les décodeurs CELP et éventuellement des versions modifiées mais compatibles du décodeur AMR-WB standard. De plus le post-traitement pourra être mis en oeuvre non pas dans le domaine du signal décodé, mais dans le domaine du signal pré- accentué (comme dans le document de l'état de l'art "Vaillancourt et al.") ou dans un autre domaine du signal filtrée par un filtre LPC (résidu LPC) ou un filtre de pondération perceptuel. On détaille ici les étapes du traitement pour le dispositif de la figure 6.
On suppose que le décodeur ACELP du décodeur standard AMR-WB (bloc 601) reconstruit un signal décodé x(n) à la fréquence interne de 12.8 kHz. Une étape de détermination (det. g(k)) d'un gain spectral g(k) de mise en forme du signal à appliquer au signal audiofréquence, est effectuée par le module 604 à partir d'une analyse fréquentielle (T/F) effectuée par le module 602 par trame du signal à améliorer et d'une classification du signal par le module 603. On considère ici que la classification (bloc 603) et le calcul du gain (bloc 604) sont mis en oeuvre suivant les principes de l'article de l'état de l'art "Vaillancourt et al." avec des adaptations simples qui sont liées à l'analyse temps-fréquence (bloc 602) qui est ici différente et détaillée ci-dessous. L'analyse spectrale (bloc 602) est ici faite sur la base d'une transformée de Fourier discrète (DFT pour "Discrete Fourier Transform" en anglais) du signal temporel pondéré par une fenêtre d'analyse wa(n).
La DFT est en général avantageusement implantée sous forme d'un algorithme rapide FFT (pour "Fast Fourier Transform" en anglais). En variante, d'autres transformées temps-fréquence peuvent être envisagées, comme la DCT (pour "Discrete Fourier Transform" en anglais), voire la MDCT (pour "Modified Discrete Cosine Transform" en anglais), bien connues de l'homme de l'art. Le choix de la forme et la taille de la fenêtre d'analyse a un impact important sur la pertinence de l'analyse fréquentielle qui en résulte. Dans le cas illustré sur la figure 3a, une fenêtre de type Hamming définie par : ( w a (n) = 0.54 - 0.46 cos 27c. , n = 0,..., N -1 N-11 s'avère relativement intéressante pour ses propriétés spectrales associées, c'est-à-dire que la présence d'une composante tonale stationnaire se manifeste dans le spectre par un lobe principal prédominant centré sur la composante tonale, et des lobes secondaires très peu présents de sorte qu'il n'y a pratiquement pas de risque de confusion entre le bruit de codage à atténuer, et lesdits lobes secondaires qui ne sont que des artefacts de l'analyse lorsqu'il s'agit d'interpréter l'énergie spectrale dans un voisinage de ladite composante tonale. A l'inverse, le choix d'une fenêtre de type Tukey pour l'analyse induit dans le spectre des lobes secondaires potentiellement gênants pour la détection et le nettoyage du bruit de codage. De façon générale, une fenêtre de type Tukey (symétrique) de longueur Lwindow peut être généralisée comme : ..., Loverlap -1 Loverlap, - - - Lwindow -1 w gen (n) = sin ( [n +0.51 n = 0, - Lwindow Loverlap -1 sin 71- [n Lwindow n - Loverlap, - - n = Lwndow 2Loverlap +1151 2Loverlap ( 2Loverlap où Loverlap est la longueur du recouvrement à gauche et à droite. Des exemples de fenêtre Wgen(n) de Lwindow =240 échantillons (30 ms à 8 kHz) sont illustrés à la figure 7 pour Loverlap -20, 40 et 80 (2.5, 5, 10 ms à 8 kHz).
Néanmoins, la présente invention s'applique tout aussi avantageusement avec tout type de fenêtres d'analyse et/ou de synthèse. Comme l'indiquent les relations entre fenêtres d'analyse w (n) , d'addition-recouvrement w ia(n) et de synthèse w (n) , illustrées par les figure 3a, 3b et 3c, la forme de la fenêtre de synthèse est fortement impactée par le fait que w (n) décroît plus vite que la fenêtre d'addition-recouvrement sur leur extrémité commune. La forte bosse sur la fin de la fenêtre augmente les risques d'artefacts liés aux transformations et à la reconstruction du signal. Aussi, un autre type de fenêtre d'analyse peut être envisagé, par exemple des fenêtres de forme asymétrique ayant des valeurs plus fortes sur leur partie droite et plus atténuée sur leur partie gauche. Un exemple particulier en est la fenêtre dite 'hamcos' (comme celle utilisée pour l'analyse LPC dans le codeur AMR-WB), constituée pour ses deux premiers tiers par une demi-fenêtre de Hamming croissante et pour le dernier tiers par une fenêtre cosinus décroissante. Afin de pouvoir annuler ou atténuer les artefacts de convolution circulaire exposés plus haut, on prévoit d'opérer la transformée temps-fréquence sur un nombre d'échantillons N = Lana LZp supérieur à la taille Lana de la fenêtre d'analyse, en utilisant la technique du bourrage de zéro ("zero-padding" en anglais), soit en ajoutant ici Lzp échantillons nuls. Dans le cadre de cette invention, on s'attache à s'accommoder d'une taille Lzp réduite afin de bénéficier d'une fenêtre d'analyse toujours relativement longue, et donc d'une bonne résolution fréquentielle, sans devoir augmenter la taille N de la transformée et donc sa 15 complexité. Dans un contexte d'application comme celui de l'amélioration de la qualité des signaux codés par un codeur AMR-WB, le codage coeur (CELP) se fait dans un domaine sous-échantillonné à 12,8kHz, ce qui conditionne la bande passante effective du signal codé (à 6,4kHz). Afin d'optimiser le compromis performance/complexité, on privilégie sans restriction 20 de généralité l'application du procédé dans ce domaine. Pour le traitement d'une trame de 20 ms, soit 256 échantillons, on se donne pour l'exemple présent une contrainte de retard de 2,5 ms ; l'invention s'applique néanmoins à d'autres valeurs de retard. Considérant une approche d'analyse-synthèse par addition-recouvrement ("overlap-add" ou OLA, en anglais), la longueur du recouvrement est fixée 25 égale au retard, soit La, =32 échantillons, impliquant une fenêtre de synthèse de taille L= L+ Lola =256+32 échantillons. On choisit une taille de FFT égale à la puissance de 2 syn supérieure, soit N=512 points. Enfin, on se donne un bourrage de zéro d'étendue modérée Lzp =64 échantillons soit 5 ms de sorte qu'il reste une taille confortable de Lana = N - Lzp =488 échantillons pour la fenêtre d'analyse de Hamming. Par commodité, on se donne 30 comme fenêtre implicite d'addition-recouvrement wola(n) le carré d'une fenêtre de Tukey de taille Lsyn avec une partie plate centrale de Lsyn 2Lnin échantillons (cf figure 7). De là, la fenêtre de synthèse se déduit suivant l'équation : w syn(n) = W ola (n) w ana (n) A noter que le bourrage de zéros est illustré ici en ajoutant les zéros à droite des fenêtres, mais il est totalement équivalent - à un décalage circulaire près - de répartir les zéros de part et d'autre, ou de les placer tous à gauche du bloc analysé.
Ainsi, comme expliqué précédemment, dans le mode de réalisation illustré à la figure 6, le calcul du gain d'amélioration ou de mise en forme à partir du spectre suivant la technique de l'état de l'art "Vaillancourt et al." est mis en oeuvre avec des adaptations qui concernent la fréquence d'échantillonnage (12.8 kHz ici) et le fenêtrage d'analyse/synthèse choisis. Dans des variantes, on pourra également modifier le calcul de l'énergie moyenne par sous-bandes, la classification, etc. On constate en effet que nombre de précautions prises par "Vaillancourt et al.", notamment pour limiter les risques d'artefacts, ont conduit à brider le potentiel d'amélioration du signal, notamment en limitant la zone fréquentielle sur laquelle le gain spectral est appliqué. L'un des avantages de la présente invention est qu'elle permet d'exploiter au maximum les possibilités d'amélioration du signal décodé.
La figure 4 montre dans l'encadré un exemple de gain de correction spectrale (ou gain spectral) calculé pour une trame de signal d'orgue. La transformée inverse de cette fonction spectrale produit une réponse impulsionnelle finie (FIR en anglais), h(n) associée, telle que la multiplication du spectre du signal par cette courbe de gain équivaut dans le domaine temporel à la convolution circulaire du signal analysé x(n) par ladite réponse impulsionnelle h(n) . Pour éviter les artefacts de convolution circulaire illustrés à la figure 5, une solution possible serait de tenter de limiter artificiellement l'étendue de la réponse impulsionnelle FIR h(n) en la fenêtrant temporellement - comme représenté à la figure 8b. Cette approche classique n'a cependant pas un effet satisfaisant en termes de performance/contrôle de la correction spectrale. En effet, en comparaison avec la figure 8a qui reprend l'exemple de fonction g(k) de la figure 4, et de la réponse impulsionnelle FIR associée, la figure 8b, illustre un gain spectral gf (k) calculé dans le domaine fréquentiel mais appliqué dans le domaine temporel par convolution linéaire (filtrage FIR) par la réponse impulsionnelle h(n) . La réponse impulsionnelle h(n) représentée ici (wind.FIR) est en fait tronquée par fenêtrage de type Nanning de longueur inférieure à la taille Nde la FFT de manière à limiter le retard du filtrage FIR si le filtrage (post-traitement) est réalisé dans le domaine temporel. Cette troncature de la réponse impulsionnelle est équivalente à un filtrage passe-bas du gain spectral. La figure 8b montre bien l'effet de ce filtrage passe-bas sur le gain spectral: le gain spectral de la figure 8a est transformé en un gain qui varie plus lentement, l'atténuation inter-tones est relativement limitée, cependant on observe surtout que les zones où le gain avait une valeur de 1 ne sont plus conservées. Or ces portions correspondent en général aux composantes harmoniques du signal qu'il faut préserver. Dans ces conditions, l'approche de limitation de gain par troncature de la réponse impulsionnelle pourrait servir à traiter le problème de repliement par convolution circulaire, mais elle ne garantit par la préservation des composantes tonales à cause de l'érosion du gain spectral, ce qui est pourtant crucial pour la qualité des signaux musicaux à post-traiter. Notons Wh(k)= FFT(wh ), où Wh est une fenêtre de troncature symétrique de longueur 2L, +1, étendue à la longueur N par bourrage de zéros, et sa version normalisée(k) =Wh(k) . Pour l'exemple de la figure 8b, on a L'g = 64 échantillons, et la Wh (0) fenêtre Wh a une longueur de 129 échantillons. Un filtrage FIR (dans le temps) utilisant la réponse impulsionnelle h(n) tronquée par Wh aura un retard de L'g échantillons. D'autres valeurs de L'g sont possibles, et pour atteindre un retard de 2.5 ms à 12.8 kHz d'échantillonnage on prendra L'g = 32 échantillons. Ce fenêtrage temporel (ou troncature) de h(n) revient en fait à opérer une convolution de g (k) par la transformée de la fenêtre de troncature de h(n) sous la forme : g0(k) =1 g (k - .5).Wh(5) Afin d'illustrer cette opération de convolution dans le domaine fréquentiel, on a représenté en gras et pointillés (en haut) la transformée normalisée Wh(k) de la fenêtre de troncature (illustrée en bas). Cette transformée est centrée pour les besoins de l'illustration sur un point de transition caractéristique de la courbe, en haut des figures 8a, 8b, et 8c. Elle se caractérise par un lobe principal d'une certaine largeur, inversement proportionnelle à la largeur effective de la fenêtre temporelle, les lobes secondaires sortant des limites d'affichage car beaucoup plus faibles en amplitude. La convolution a pour effet l'érosion de la courbe de gain spectral, comme l'illustre la figure 8b. On note en effet que là où le gain était de l'ordre de 0 dB sur la représentation du gain g (k) de la figure 8a, il est significativement rabaissé sur la représentation du gain (k) de la figure 8b. Cela veut dire que les composantes tonales sont dégradées au lieu d'être préservées (ou potentiellement, rehaussées), ce qui est évidemment contraire à l'objectif recherché. Les inconvénients de l'approche illustrée à la figure 8b sont liés à une propriété bien connue en traitement du signal, à savoir la relation inverse entre étalement temporel et étalement fréquentiel. Le procédé de traitement selon l'invention vient apporter une solution à la recherche simultanée d'une réponse temporelle h(n) compacte ne générant pas d'artefact gênant par convolution circulaire, et la maîtrise des propriétés de correction spectrale de g(k) , en particulier en termes de variations spectrales On considère en effet ici, le fait que des changements spectraux abrupts suscitent un effet d'étalement temporel. L'invention repose donc sur l'idée qu'en contraignant la variation fréquentielle de la fonction de gain - soit encore sa décroissance bilatérale (i.e. vers les fréquences supérieures et inférieures) - à ne pas être plus rapide qu'un certain modèle ou motif fréquentiel, on conditionne favorablement le support temporel de sa réponse temporelle. Un mode de réalisation pour le module de régularisation du gain 605, mettant en oeuvre l'étape de régularisation non linéaire du gain spectral, est maintenant décrit. La régularisation non linéaire du gain spectral s'effectue par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel prédéterminé. D'une façon générale le motif spectral à partir duquel la régularisation est effectuée, peut être une simple fonction de pondération, qui est sans perte de généralité normalisée à 1, c'est-à-dire présentant un maximum à 1 et une décroissance bilatérale ; cette fonction est en général symétrique, mais elle peut également être choisie comme étant asymétrique autour du maximum, par exemple à la façon d'une fonction d'étalement spectral pour le calcul d'une courbe de masquage.
Dans le mode de réalisation privilégié, le motif spectral est donné par la transformée Wh(k) s FFT de longueur N d'une fenêtre de troncature, soit Wh (k)= ou Wh (k)= FFT (wh) , Wh (0) et Wh est une fenêtre de troncature symétrique de longueur 2L, +1, étendue à la longueur N par bourrage de zéros. A titre illustratif, la fenêtre Wh utilisée à la figure 8c est une fenêtre de Nanning de longueur 2L'g +1=129 échantillons, et cette fenêtre est étendue à N =512 échantillons par concaténation de 383 zéros. Le spectre (ou motif spectral) Wh(k) est contraint par commodité à une phase nulle, et symétrique par rapport à la fréquence nulle, soit 1 if/h (k)= 1 if/h ( -k) . Le gain spectral régularisé est selon le principe de l'invention le résultat de l'équation suivante: g 'g (k) = nria.5.x(g(k - où l'on note qu'en particulier g(k)= g(k - 8).Wh(S) en Ô= 0 . Cette formule est similaire au principe d'une convolution dont la définition est rappelée ci-dessus, où la sommation est remplacée par une maximisation et la transformée de la fenêtre est normalisée On peut noter que dans le cas général on pourra utiliser le prototype Wh(k) ou bien Wh(k). Dans le cas général, on pourra remplacer W-h(g) par 1147h(g)1 si le motif n'est pas forcé à phase nulle. La régularisation consiste donc à ajuster le prototype Wh(k) ou bien Iff/h(k) à un point de la courbe g(k) , ce qui revient à décaler (ou translater) en fréquence la courbe du motif pour le centrer sur la fréquence indicée par k, et à lui appliquer le gain d'amplitude g(k) . En pratique, comme décrit ultérieurement, le motif pourra être tronqué sur un voisinage de quelques points contenant les valeurs les plus significatives, par exemple en ne retenant que les valeurs de(k) aux indices k tels que 20logio 1W-h (k)1 >-12 dB. Ainsi, l'étape de régularisation revient à retenir la valeur maximale observée en chaque point lorsqu'on fait glisser l'ajustement du motif ou prototype Wh(k) sur tous les points de la courbe g(k) , alors que la convolution revient à calculer la somme des versions du prototype Wh(k) ajustées sur l'ensemble des points de la courbe g(k) . En d'autres termes, le gain spectral de la figure 8b s'obtient à partir du gain spectral de la figure 8a en faisant glisser cette transformée sur l'axe fréquentiel et en effectuant une moyenne mobile (ou somme pondérée) des valeurs locales de gain g(k -Ô) par les valeurs de Wh (Ô) . En comparaison, le gain spectral de la figure 8c s'obtient à partir du gain spectral de la figure 8a en faisant glisser cette transformée sur l'axe fréquentiel ajustée, sous la forme g(k - 8).147h(S) et en maximisant localement les valeurs entre le gain spectral et cette transformée ajustée. On voit en effet sur la figure 8c que le gain régularisé suit la pente du motif spectral pour contrôler les variations de sa courbe fréquentielle. Ainsi, l'invention basée sur le calcul de g'g(k) se différencie donc d'un calcul de gain spectral par filtrage (ou convolution) par les deux points suivants: - l'utilisation d'une fenêtre normalisée - le remplacement de la somme par un opérateur non-linéaire (max). La régularisation selon le procédé de traitement de l'invention est donc une fonction non-linéaire. Un exemple de résultat pour g 'g (k) est illustré à la figure 8c. Sur cette figure, comme pour celles des figures 8a et 8b, on a fait apparaître en pointillés la transformée de la fenêtre 1ff /h(k) translatée en une fréquence arbitraire (autour de 4300 Hz). La figure 8c illustre particulièrement, le cas du gain régularisé selon le procédé de traitement de la présente invention. Ici, le gain spectral est « limité » ou « régularisé » de façon adéquate pour préserver les composantes tonales de X (k) tout en réduisant les problèmes de repliement par convolution circulaire. En comparaison avec la figure 8b, les zones fréquentielles où le gain est proche de 1 (sur la figure 8a) sont préservées à la figure 8c, par contre les variations du gain à la figure 8c sont plus lentes et le niveau d'atténuation est parfois plus limité. A noter que la limitation ou régularisation du gain spectral faisant l'objet de la présente invention peut être appliquée au gain g s(f) , à sa version lissée s(f) ou sa version corrigée ge,b(f )comme défini précédemment. Ainsi, d'une façon générale, le gain spectral a pour fonction de mettre en forme le signal, par atténuation du bruit, par compensation de l'énergie ou encore par les deux fonctions. L'exemple de la figure 8c correspond au cas où cette régularisation (ou limitation) porte sur le gain (f). On décline maintenant ce principe par un algorithme de complexité limitée en ne retenant qu'un motif fréquentiel de longueur 2 iipm, +1 du spectre Wh (k).
Dans un mode de réalisation particulier de l'invention, on choisit ainsi comme motif fréquentiel, la transformée de la fenêtre de Nanning illustrée à la figure 8c. Cependant, l'invention s'applique pareillement à des motifs correspondant à d'autres fenêtres qu'une fenêtre de Nanning. De par la relation inverse entre étalement temporel et étalement fréquentiel, on pourra en effet choisir une fenêtre temporelle Wh relativement large (étalée), comme par exemple une fenêtre rectangulaire ou de type Tukey, afin d'avoir un lobe principal de largeur réduite et ainsi minimiser l'étalement fréquentiel de la fonction de gain g 'g(k) après régularisation. L'étalement cible L'g est choisi de préférence en relation avec le bourrage de zéro. En supposant que la réponse impulsionnelle associée au gain spectral régularisé g,(k) a un support effectif de longueur L'g , on vérifie que la convolution circulaire donne le même résultat qu'une convolution linéaire en fixant L'g = L /2 qui correspond ici à une fenêtre Wh de 65 échantillons ; cependant pour éviter que la régularisation étale trop la fonction de gain, on a fixé dans l'exemple de la figure 8c l'étalement à L'g =Lzp, ce qui donne une fenêtre Wh de longueur 129 ; avec une telle valeur pour L'g , le repliement temporel indésirable reste bien atténué. Dans des variantes, on pourra fixer L'g à d'autres valeurs sans changer le principe de l'invention. En particulier, on pourra envisager qu'aucun bourrage de zéros n'est réalisé et dans ce cas l'étalement cible L'g choisi sera en relation avec la longueur du recouvrement, en fixant typiquement L'g = Lola . Il ressort que la valeur de L'g est un paramètre (ou degré de flexibilité) supplémentaire pour la conception et l'optimisation du post-traitement. Il est d'ailleurs important de noter que le post-traitement considéré ici s'applique à un signal entaché par un fort niveau de bruit de codage CELP si le codage a été effectué à bas débit (typiquement de l'ordre de 12,65 kbit/s ou moins pour le codec AMR- WB) ; dans une mesure limitée, le bruit de codage présent dans le signal décodé peut être exploité pour masquer d'éventuels défauts de repliement temporel par convolution circulaire ; ce masquage dépend de l'application considérée (codeur-décodeur, débit, retard admissible, etc.) et peut être pris en compte dans la définition de L'g . Ainsi, le choix de la fenêtre Wh (type, longueur) est un paramètre de régularisation qui apparaît être un avantage en termes de flexibilité de conception et d'optimisation par rapport à l'état de l'art. Compte-tenu de la dynamique de gain à traiter (de 12dB au maximum sur l'exemple illustré), il suffit de considérer un nombre réduit d'échantillons pour décrire le motif, et on choisit ici sans perte de généralité =5 échantillons de part et d'autre du point central.
La valeur iiprow sera en général adaptée au motif prédéterminé. Une réalisation détaillée de la régularisation (ou limitation) du gain spectral est décrite par le pseudo-code suivant, où les fréquences discrètes sont représentées par des indices k (0 k < N 1 2) : Initialisation : g 'g (k) = 0 pour k =0,- - - ,N 12 -1 Pour k =0,---,N 12-1 g 'g (k) = max (g 'g (k), g(k)) /7/, min (il pro to ,N 12-1-k) Pour i = 1,- - - ,i7 p g , (k + i) = max (g , (k + i), g (k)Wh(i)) Fin pour hm = min (i 1 proto , k) Pour i =1,- - -, hm g reg (k -j) = max (g ,(k - i), g (k)Wh(i)) Fin pour Fin pour Le coût de l'opération est du même ordre que celle d'une convolution linéaire sur 2 iipm, points. Dans une variante du mode de réalisation décrit ci-dessus, pour économiser des opérations, on pourra focaliser la boucle sur les maxima locaux de g (k) , et même au-dessus d'un certain seuil. La figure 8c montre le gain en compacité de la réponse temporelle FIR équivalente et à la fois le respect des caractéristiques prioritaires de la fonction de gain spectral. De retour à la figure 6, le gain ainsi régularisé g 'g (k) est utilisé par le module 606 pour le filtrage du spectre X(k) du signal audiofréquence.
Le spectre est multiplié (bloc 606) selon la formule suivante : X p',(k) = g 'g (k).X (k) Le spectre pos-traité X05(k) subit ensuite une transformée fréquence-temps (FIT) par le module 607 avec par exemple la fenêtre de synthèse de la figure 3c, pour obtenir le signal audiofréquence post-traité xp't(n).
Ainsi, dans ce premier mode de réalisation, les étapes de traitement selon l'invention sont mises en oeuvre dans le domaine fréquentiel, sur le spectre fréquentiel du signal audiofréquence. Il y a un intérêt à intervenir directement dans le domaine fréquentiel sans passer par le domaine temporel pour des raisons de complexité. En effet, le passage de la fonction de gain g(k)vers le domaine temporel pour obtenir la réponse temporelle FIR h(n) et la fenêtrer, implique une transformée inverse. Ensuite, le retour au domaine fréquentiel demande encore une transformée directe supplémentaire de hw(n) . La figure 9 traduit graphiquement l'équivalent temporel de l'application du procédé dans le domaine fréquentiel, et démontre ainsi la quasi-disparition du repliement temporel de signal par convolution circulaire qui causait les artefacts gênants (effets de trame ou de bloc). En effet, comme illustré, le support temporel de la fenêtre est de Lana + L. Il est prévu d'opérer ici la transformée temps-fréquence sur un nombre d'échantillons N = L + L ana zp bourrage de zéro ("zero-padding" en anglais), soit en ajoutant ici Lzp échantillons nuls.
L'étalement cible L'g est choisi de préférence harmonisé avec le bourrage de zéro, en fixant par exemple L'g =L zp ou encore L'g =L zp /2. On peut voir que l'application du gain régularisé représenté sous sa forme FIR de réponse temporelle, ne donne plus de résidu indésirable ni à gauche (res.L), ni à droite (res.R). supérieur à la taille Lana de la fenêtre d'analyse, en utilisant la technique du Même avec une forme de la fenêtre de synthèse w5(n) qui amplifie la fin du bloc, la convolution linéaire résultante ne donne pas de termes résiduels dû au repliement (res.conv.R:Rt et res.conv.L:Rt) indésirables. Le résultat illustré ne montre donc pas d'artefacts gênants (result.) de type effet de blocs que l'on pouvait voir en référence à la figure 5. On présente maintenant une variante de réalisation, plus complexe, pour la régularisation du gain spectral, suivant les mêmes principes mais visant à étaler de façon optimale le gain spectral et donc adoucir les variations sans trop élargir les pics.
Dans cette variante de réalisation, la régularisation est effectuée en deux passes : 1. Une passe directe, dans le sens des fréquences croissantes, utilisant la moitié droite (décroissante) du motif spectral (ou prototype) 2. Une passe rétrograde, sans le sens des fréquences décroissantes, utilisant la moitié gauche (croissante) du motif spectral (ou prototype) Une différence avec la réalisation décrite précédemment est qu'on introduit ici une tolérance sous la forme, e(i),i=1,---,qp, qui permet de contrôler le niveau de régularisation de façon plus flexible. A noter que cette variante peut non seulement contrôler la pente en fonction du motif (ou prototype) mais elle peut aussi « raboter » les valeurs du gain spectral aux bords des « plats » (zones où le gain spectral est typiquement à sa valeur maximale de 1). Dans la passe directe on part de la première raie d'indice k et, lorsque le gain spectral g 'g(k +i) (1 < i iip) reste dans le prototype ajusté selon la tolérance on « saute » les indices correspondants et on ajuste le gain sous la forme : g'g (k + j) = g 'g(k)W-h( j) pour j . Des opérations similaires sont effectuées dans la passe rétrograde.
Cette variante est plus complexe, mais elle a l'avantage de moins élargir les pics de la courbe gain spectral original g(k), tout en contrôlant les variations locales de g(k) en fonction du prototype if/h (k) et des tolérances prédéfinies e(i) . Cette variante est détaillée dans le peudo-code ci-dessous où l'on exploite ici la symétrie du prototype (Wh(-k) =1/17h(k)). g 'g(k) = g(k) pour k =0,- - - ,N 12-1 Passe directe (fonction décroissante) avec moitié droite du motif spectral (ou prototype) k =0 Tant que k < N/ 2-1 Si g reg(k+1) g reg(k)Wh (1)e(1) i = 1 i Tant que <qproto et k+i+ISN 12-1 et g ,(k + i +1) g ,(k)W h(i + 1)e (i +1) i = i + 1 Fin tant que Si i>1 ou greg (k +1) g reg (k)W h(1) g reg (k + j) = g ,(k)W h( j) , pour j =1,- - - ip Fin si k = k +i Sinon k = k +1 Fin si Fin tant que Passe rétrograde (fonction croissante) avec moitié gauche du motif spectral (ou prototype).' k = N 12-1 Tant que k>1 Si greg (k -1) greg (k)Wh (1)e(1) i=1 . proto Tant que i<1/,00 et k -i-11 et greg (k - i -1) g r'(k)Wh(i +1)e(i +1) i = i + 1 Fin tant que Si i >1 ou g reg (k -1) g reg (k)W h(1) g reg (k - l) - g reg (k)W h( l) , Pour l =1,- - - ,17 p Fin si k = k -i Sinon k = k -1 Fin si Fin tant que Dans une variante de réalisation, la figure 10 illustre un deuxième mode de réalisation du dispositif et du procédé de traitement selon l'invention.
Dans ce mode de réalisation, les modules 101, 102, 103, 104 et 105 sont identiques aux modules 601, 602, 603, 604 et 605 de la figure 6. Une étape supplémentaire de transformation du gain régularisé en réponse impulsionnelle par le module 110, un fenêtrage en 111, sont réalisés, avant d'appliquer le filtrage du signal audiofréquence x(n) par le module 112. Ainsi, la réponse impulsionnelle h 'g (n) associée à g 'g (k) présente déjà une certaine compacité temporelle. L'étape de fenêtrage temporel (bloc 111) permet de tronquer les extrémités (par exemple avec une fenêtre de Tukey quasi-rectangulaire laissant une partie centrale à 1 large) pour la restreindre à un support temporel de longueur prédéterminée. De là, le filtrage FIR par la réponse impulsionnelle obtenue peut être réalisé par exemple par convolution linéaire dans le domaine temporel (bloc 112). D'autres réalisations du filtrage FIR sont possibles, comme une convolution rapide dans le domaine fréquentiel et des filtrages de type overlap-add (OLA) ou overlap-save (OLS) avec ou sans interpolation des coefficients de filtrage. La variante de la figure 9 n'est intéressante, du point de vue de la complexité, que si la longueur de h reg (n) (tronquée) est suffisamment courte. Cette variante nécessite une FFT inverse sur N points mais elle économise la pondération du spectre (par rapport au premier mode de réalisation au bloc 606 de la figure 6). De façon équivalente, dans une variante, on pourra effectuer la troncature de la réponse impulsionnelle h'g (n) directement dans le domaine fréquentiel, en filtrant (convoluant) le gain régularisé g ,(k) par la transformée d'une fenêtre de troncature de longueur prédéterminée, comme une étape supplémentaire dans le bloc 605, après calcul de g reg (k) Dans un mode possible de réalisation du procédé selon l'invention, pour la décroissance du gain, la solution décrite peut être combinée avec la prise en compte d'un modèle de masquage. Ainsi, dans une variante de l'invention, une courbe de masquage est calculée à partir du spectre, et le gain est régularisé (limité) à partir de cette courbe. On peut noter que le mode de réalisation principal de l'invention s'est basé sur le codeur AMR-WB (ou de façon équivalente G.722.2), néanmoins l'invention s'applique à tout type de codeur de parole et audio, en particulier à d'autres codeurs de type CELP tels que 3GPP AMR, UIT-T G.729 qui fonctionnent à 8 kHz ; dans ce cas les paramètres de fenêtrage, longueur de trame, taille de FFT, etc. peuvent être adaptés en fonction des contraintes de l'application.
La figure 11 représente un exemple de réalisation matérielle d'un dispositif de traitement selon l'invention. Celui-ci peut faire partie intégrante d'un décodeur audiofréquence ou d'un équipement recevant des signaux audiofréquences décodés ou non. 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. Le bloc mémoire peut avantageusement comporter un programme informatique comportant des instructions de code pour la mise en oeuvre des étapes du procédé de traitement au sens de l'invention, lorsque ces instructions sont exécutées par le processeur PROC, et notamment les étapes de détermination d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence, de régularisation non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel prédéterminé et de filtrage du signal audiofréquence par utilisation du gain spectral ainsi régularisé. Typiquement, la description des figures 6 et 10 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 le motif fréquentiel Wn(k) prédéterminé utilisé dans le procédé selon un mode de réalisation de l'invention et de manière générale, toutes les données nécessaires à la mise en oeuvre du procédé. Un tel dispositif comporte un module d'entrée E apte à recevoir un signal audiofréquence x(n) et un module de sortie S apte à transmettre le signal traité xp't(n). Dans un mode possible de réalisation, le dispositif ainsi décrit peut également comporter les fonctions de décodage en plus des fonctions de traitement selon l'invention.25
Claims (1)
- REVENDICATIONS1. - - - 2. 3. 4. Procédé de traitement d'un signal audiofréquence, caractérisé en ce qu'il comporte les étapes suivantes: détermination (det.g(k)) d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence; régularisation (reg. g(k)) non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel (Wh(k) ou prédéterminé; filtrage (606) du signal audiofréquence par utilisation du gain spectral ainsi régularisé. Procédé selon la revendication 1, caractérisé en ce que le motif fréquentiel prédéterminé est une fonction de pondération normalisée à1. Procédé selon la revendication 2, caractérisé en ce que le motif fréquentiel (Wh(k)) est déterminé à partir de la transformée d'une fenêtre étendue à une longueur N prédéterminée par bourrage de zéros. Procédé selon la revendication 2, caractérisé en ce que le gain spectral régularisé (greg(k)) est le résultat de l'équation suivante: g ', (k) = ma5..x (g (k - g ) . Wh ( g ) ) OÙ 1/17h (g) est le motif fréquentiel prédéterminé. 5. Procédé selon la revendication 1, caractérisé en ce que l'étape de régularisation est effectuée en deux passes : - une passe directe, dans le sens des fréquences croissantes, utilisant la moitié droite décroissante du motif fréquentiel prédéterminé selon une tolérance prédéfinie; - une passe rétrograde, sans le sens des fréquences décroissantes, utilisant la moitié gauche croissante du motif fréquentiel prédéterminé. 6. Procédé selon la revendication 1, caractérisé en ce que les étapes sont mises en oeuvre dans le domaine fréquentiel sur le spectre fréquentiel du signal audiofréquence.7. Procédé selon la revendication 1, caractérisé en ce que le filtrage du signal audiofréquence s'effectue dans le domaine temporel après transformation en réponse impulsionnelle du gain spectral régularisé. 8. Dispositif de traitement d'un signal audiofréquence, caractérisé en ce qu'il comporte: - un module de détermination (604) d'un gain spectral de mise en forme du signal à appliquer au signal audiofréquence; - un module de régularisation (605) non linéaire du gain spectral par contrôle des variations de sa courbe fréquentielle à partir d'un motif fréquentiel (Wh(k) ou Wh (g) ) prédéterminé; - un module de filtrage (606, 112) du signal audiofréquence par utilisation du gain spectral ainsi régularisé. 9. Décodeur de signal audiofréquence caractérisé en ce qu'il comporte un dispositif de traitement selon la revendication 8. 10. Programme informatique comportant des instructions de code pour la mise en oeuvre des étapes du procédé de traitement selon l'une des revendications 1 à 7, lorsque ces instructions sont exécutées par un processeur. 11. Support de stockage lisible par un dispositif de traitement sur lequel est enregistré un programme informatique comprenant des instructions de code pour l'exécution des étapes du procédé de traitement selon l'une des revendications 1 à7.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1256641A FR2990552A1 (fr) | 2012-07-10 | 2012-07-10 | Traitement d'amelioration de la qualite des signaux audiofrequences |
PCT/FR2013/051647 WO2014009657A1 (fr) | 2012-07-10 | 2013-07-10 | Traitement d'amelioration de la qualite des signaux audiofrequences |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1256641A FR2990552A1 (fr) | 2012-07-10 | 2012-07-10 | Traitement d'amelioration de la qualite des signaux audiofrequences |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2990552A1 true FR2990552A1 (fr) | 2013-11-15 |
Family
ID=47191878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1256641A Pending FR2990552A1 (fr) | 2012-07-10 | 2012-07-10 | Traitement d'amelioration de la qualite des signaux audiofrequences |
Country Status (2)
Country | Link |
---|---|
FR (1) | FR2990552A1 (fr) |
WO (1) | WO2014009657A1 (fr) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117935834B (zh) * | 2024-03-12 | 2024-05-28 | 深圳市声优创科技有限公司 | 一种音频智能降噪方法及设备 |
-
2012
- 2012-07-10 FR FR1256641A patent/FR2990552A1/fr active Pending
-
2013
- 2013-07-10 WO PCT/FR2013/051647 patent/WO2014009657A1/fr active Application Filing
Non-Patent Citations (4)
Title |
---|
CH.V RAMA RAO ET AL: "Noise Reduction Using mel-Scale Spectral Subtraction with Perceptually Defined Subtraction Parameters- A New Scheme", SIGNAL & IMAGE PROCESSING : AN INTERNATIONAL JOURNAL, vol. 2, no. 1, 22 March 2011 (2011-03-22), pages 135 - 149, XP055048729, ISSN: 2229-3922, DOI: 10.5121/sipij.2011.2110 * |
LUKIN ALEXEY ET AL: "Suppression of Musical Noise Artifacts in Audio Noise Reduction by Adaptive 2-D Filtering", AES CONVENTION 123; OCTOBER 2007, AES, 60 EAST 42ND STREET, ROOM 2520 NEW YORK 10165-2520, USA, 1 October 2007 (2007-10-01), XP040508312 * |
MICHAEL Z. LIVSHITZ ET AL: "An Overcomplete WDFT-based Perceptually Constrained Variable Bit Rate Wideband Speech Coder with Embedded Noise Reduction System", SPECOM'2006, 25 June 2006 (2006-06-25), St. Petersburg, pages 343 - 348, XP055048723, Retrieved from the Internet <URL:http://www.eurasip.org/Proceedings/Ext/SPECOM2006/papers/061.pdf> [retrieved on 20130107] * |
WEERAWUT THANHIKAM ET AL: "Noise suppression based on replacement of zero phase signal", INTELLIGENT SIGNAL PROCESSING AND COMMUNICATIONS SYSTEMS (ISPACS), 2011 INTERNATIONAL SYMPOSIUM ON, IEEE, 7 December 2011 (2011-12-07), pages 1 - 4, XP032114737, ISBN: 978-1-4577-2165-6, DOI: 10.1109/ISPACS.2011.6146164 * |
Also Published As
Publication number | Publication date |
---|---|
WO2014009657A1 (fr) | 2014-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2390856C2 (ru) | Системы, способы и устройства для подавления высокополосных всплесков | |
KR101436715B1 (ko) | 광대역 스피치 코딩을 위한 시스템들, 방법들, 장치, 및 컴퓨터 프로그램 제품들 | |
EP1989706B1 (fr) | Dispositif de ponderation perceptuelle en codage/decodage audio | |
EP3020043B1 (fr) | Facteur d'échelle optimisé pour l'extension de bande de fréquence dans un décodeur de signaux audiofréquences | |
EP2366177B1 (fr) | Codage de signal audionumerique avec mise en forme du bruit dans un codeur hierarchique | |
EP3014611B1 (fr) | Extension améliorée de bande de fréquence dans un décodeur de signaux audiofréquences | |
EP2452337B1 (fr) | Allocation de bits dans un codage/décodage d'amélioration d'un codage/décodage hiérarchique de signaux audionumériques | |
EP2951813B1 (fr) | Correction perfectionnée de perte de trame au décodage d'un signal | |
EP3103116B1 (fr) | Extension ameliorée de bande de fréquence dans un décodeur de signaux audiofréquences | |
FR2912249A1 (fr) | Codage/decodage perfectionnes de signaux audionumeriques. | |
EP2452336B1 (fr) | Codage/décodage perfectionne de signaux audionumériques | |
EP3069340B1 (fr) | Transition d'un codage/décodage par transformée vers un codage/décodage prédictif | |
EP2005424A2 (fr) | Procede de post-traitement d'un signal dans un decodeur audio | |
FR2990552A1 (fr) | Traitement d'amelioration de la qualite des signaux audiofrequences | |
FR2980620A1 (fr) | Traitement d'amelioration de la qualite des signaux audiofrequences decodes |