WO2013186506A1 - Procede de traitement d'un signal numerique, dispositif et programmes d'ordinateurs associes - Google Patents

Procede de traitement d'un signal numerique, dispositif et programmes d'ordinateurs associes Download PDF

Info

Publication number
WO2013186506A1
WO2013186506A1 PCT/FR2013/051401 FR2013051401W WO2013186506A1 WO 2013186506 A1 WO2013186506 A1 WO 2013186506A1 FR 2013051401 W FR2013051401 W FR 2013051401W WO 2013186506 A1 WO2013186506 A1 WO 2013186506A1
Authority
WO
WIPO (PCT)
Prior art keywords
signal
rotation
digital signal
processing
transformation
Prior art date
Application number
PCT/FR2013/051401
Other languages
English (en)
Inventor
Julien Faure
Grégory PALLONE
Original Assignee
Orange
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Orange filed Critical Orange
Publication of WO2013186506A1 publication Critical patent/WO2013186506A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0212Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using orthogonal transformation

Definitions

  • the invention lies in the field of coding / decoding of digital audio signals, more specifically in the so-called "transform audio coding / decoding" domain.
  • Transform coding consists of coding time signals in the transformed domain (frequency). This transformation makes it possible in particular to use the frequency characteristics of audio signals (musical, speech or other) in order to optimize coding performance. For example, it is used that a harmonic sound is represented in the frequency domain by a finite and reduced number of spectral lines which can thus be concisely coded. Frequency masking effects are also used to shape the coding noise so that it is as quiet as possible.
  • a typical transform coding technique can be summarized as follows.
  • the digital audio stream (sampled at a given sampling frequency Fs), to be encoded, is divided into frames (or “blocks", more generally) comprising a finite number 2N of samples.
  • Each frame is conventionally 50% overlapping with the previous frame.
  • a weighting window h a (called “analysis window”) is applied to each frame.
  • a transformation is then applied to the signal.
  • MDCT Modified Discrete Cosine Transform
  • the weighted frame is "folded” according to a 2N sample transformation to N samples.
  • a Type IV DCT transform is then applied to the folded frame to obtain a N-sized frame in the transformed domain.
  • the frame in the transformed domain is then quantized using a suitable quantizer.
  • Quantization reduces the size of the data, but introduces noise (audible or not) into the original frame. The higher the encoder rate, the lower the noise and the closer the quantized frame is to the original frame.
  • an inverse MDCT transformation is then applied to the quantized frame.
  • the quantized frame of size N is converted to a frame of size N in the time domain using an inverse type IV DCT.
  • a second "unfolding" transformation from N to 2N is then applied to the time frame of size N.
  • Weighting windows h s called "synthesis" are then applied to 2N frame sizes.
  • a Type IV DCT can be expressed as follows:
  • x (n) is the time signal of size N, with n integer between 0 and N-1, X (k) is the transformed signal of size N.
  • V (2 / N) is a normalization factor.
  • this factor at (2 / iV) allows the DCT IV to be used both as a direct transform and as an inverse transform.
  • the DCT-IV is essential for the implementation of the MDCT (Modified Discrete Cosine Transform) used in most standard digital audio coders and decoders (eg G729.1, G718, G. 722.1 Appendix C, MPEG-4 audio or MPEG-D USAC).
  • MDCT Modified Discrete Cosine Transform
  • the DCT-IV is expressed in the following form:
  • the elements of the signal x (n) are first reorganized in a complex z (n), during a step Tr1:
  • N is the size of the input signal x and z is the reorganized signal.
  • a compensation of the pre-rotation is implemented, as follows:
  • Tr4 a Discrete Fourier Transform or DFT (for discrete Fourier Transform, in English) of size N / 2 is applied to the compensated signal:
  • Tr5 a second rotation compensation is implemented.
  • the second compensation is expressed as follows:
  • the value of the compensation factor applied depends on the choice made during the first compensation made in step Tr3.
  • the compensation to be applied during this step is W ⁇ .
  • the signal-to-noise ratio of the perfect reconstruction does not respect the usually accepted standards.
  • the method of the prior art does not therefore make it possible to achieve an optimal result regardless of the value of the number of samples N.
  • the signal-to-noise or SNR curves for "Signal to Noise Ratio" for the DCT-IV, as implemented in the G71 8 SWB encoder specification. SNRs are calculated on random signals.
  • the SNR "DCT-IV" corresponds to the difference between the classical DCT-IV as described by the equation (1) named DCT and the approximate DCT-IV of the G718 SWB named DCT * . :
  • PR DCT DCT
  • the present invention improves the situation. To this end, it proposes a method of processing a digital signal by applying a time-frequency transformation, comprising the following steps:
  • pre-rotation of the signal - Rotation of the signal before the application of a discrete Fourier transform, called pre-rotation of the signal
  • the method according to the invention is remarkable in that it comprises a step of correction of the approximation, of applying a multiplicative correction factor F to the values of said table, before storage in memory.
  • the processing method according to the invention is intended to be implemented both for the application of a direct time-frequency transformation and that of a inverse time-frequency transform.
  • any drift introduced by the approximation made during the step of compensation in rotation is corrected, which allows on the one hand to maximize the SNR of the time-frequency transform applied to the signal, and to to get closer to perfect reconstruction conditions, especially when the number N of samples is low.
  • An advantage of storing the corrected values in memory is that this calculation is done offline once and for all, for all the digital signals that can be processed, and therefore that it does not involve an additional calculation cost with respect to the implementation of the DCT IV described in the state of the art.
  • the cost of the correction is reduced to the multiplication of the signal by a correction factor.
  • the invention thus provides an improvement of the SNR of the time-frequency transformation and of the reconstruction, without any significant increase in computational complexity.
  • the invention makes it possible to optimize the processing performance of a digital signal, both for the application of a direct time-frequency transformation and for a reverse time-frequency transform.
  • the signal comprises successive blocks of N samples and the correction factor F (N) depends only on the number N of samples.
  • the correction factor applied to the digital signal depends only on the number N of samples of the signal. It is therefore independent of the shape of the digital input signal.
  • this factor can be calculated offline and applied to the different signals to be processed upstream of the application of the time-frequency transformation.
  • the invention also relates to a method of processing a digital signal by applying a time-frequency transformation, comprising the following steps:
  • pre-rotation of the signal - Rotation of the signal before the application of a discrete Fourier transform, called pre-rotation of the signal
  • the method according to the invention is remarkable in that it comprises a step of correction of the approximation, of applying the square of a multiplicative correction factor F to the values of said table, before storage in memory.
  • the windowing of the signal is an operation that is for example implemented during the application of an MDCT. Since windowing is applied only once to the digital signal, the correction multiplying factor applied corresponds to the square of the correction factor used in the previous embodiment.
  • the approximation correction factor F (N) is a function of a first gain G1 and a second gain G2, such that
  • the correction factor of the approximation F (N) can be expressed in a simplified form.
  • correction factor F (N) is expressed even more simply.
  • the various aspects of the treatment method according to the invention that have just been presented can be implemented independently or in combination.
  • the invention also relates to a method for encoding a digital signal.
  • This method is remarkable in that it implements a processing of said signal obtained according to the treatment method which has just been described.
  • the invention also relates to a method for decoding a digital signal.
  • This method is remarkable in that it implements a processing step obtained by the processing method which has just been described, which makes it possible to optimally apply a time-frequency inverse transform equivalent to the direct transform.
  • the invention also relates to a device for processing a digital audio signal capable of implementing the method just described.
  • this device can be integrated in a coding device of a digital audio signal according to the invention.
  • the invention therefore also relates to a device for coding a digital signal.
  • This device is remarkable in that it is able to implement the processing device just described.
  • this device can also be integrated in a digital audio signal decoding device.
  • the invention therefore also relates to a device for decoding a digital audio signal.
  • This device is remarkable in that it is able to implement the processing device just described.
  • the invention also relates to a computer program comprising instructions for implementing the steps of a method of processing a digital signal by applying a time-frequency transformation as described above, when this program is executed. by a processor.
  • a program can use any programming language. It can be downloaded from a communication network and / or saved on a computer-readable medium.
  • the invention also relates to a storage medium, readable by a processor, integrated or not integrated with the processing device according to the invention, possibly removable, storing a computer program implementing a method of processing a digital signal. by applying a time-frequency transformation as described above.
  • the invention also relates to a computer program comprising instructions for implementing a method of coding a digital signal as described above, when this program is executed by a processor.
  • a program can use any programming language. It can be downloaded from a communication network and / or saved on a computer-readable medium.
  • the invention finally relates to a storage medium, readable by a processor, integrated or not to the encoder according to the invention, possibly removable, storing a computer program implementing a method of encoding a digital signal such as previously described.
  • the invention also relates to a computer program comprising instructions for the implementation of a method of decoding a digital signal as described above, when this program is executed by a processor.
  • a program can use any programming language. It can be downloaded from a communication network and / or saved on a computer-readable medium.
  • the invention finally relates to a storage medium, readable by a processor, integrated or not to the decoder according to the invention, possibly removable, storing a computer program implementing a method of decoding a digital signal such as previously described.
  • FIG. 1 already described, shows schematically the steps for calculating a time-frequency transform of the DCT-IV type according to the prior art
  • FIG. 2 already described, presents a curve of SNR measurements obtained for a signal transformed by application of a DCT-IV implemented according to the prior art
  • FIG. 3 schematically shows the steps of the method of processing a digital signal by applying a time-frequency transform according to one embodiment of the invention
  • FIG. 4 shows evolution curves of the SNR measurement of a processed signal as a function of the value of the correction factor F, according to one embodiment of the invention
  • FIG. 5 shows an exemplary performance of the processing methods according to the invention, in comparison with that of the G718 SWB encoder.
  • FIG. 6 schematically shows the steps of the method of encoding a digital signal according to one embodiment of the invention
  • FIG. 7 schematically shows the steps of the method of decoding a digital signal according to one embodiment of the invention.
  • FIG. 8 shows an exemplary structure of a processing device by applying a time-frequency transform according to one embodiment of the invention
  • FIG. 9 shows an exemplary structure of a device for coding a digital signal according to one embodiment of the invention.
  • FIG. 10 shows an exemplary structure of a digital signal decoding device according to one embodiment of the invention.
  • time-frequency transform of the DCT-IV type is considered.
  • the invention is not limited to this example and potentially applies to any other time-frequency transform, such as for example a DST-IV type transform (for "Discrete Sinus Transform IV", in English).
  • the method under consideration implements a step T1 of complex formatting from the signal s (n) to a signal z (n), a step T2 of pre-rotating the signal z (n) into a signal z '(n), a first step T3 of approximating the signal z' (n) which provides a compensated signal z "(n), a step T4 transforming the signal z" (n) into a transformed signal Z (k) using a Fourier transform discrete, a second step T5 of compensation of the post-rotation by applying an approximated compensation factor, which produces a compensated signal Z '(k), a post-rotation step T6 of the compensated signal into a signal Z "( k) and a step T7 return to a real digital signal which provides a signal X "(k).
  • steps Tr1 to Tr7 are similar to steps Tr1 to Tr7,
  • one of the two compensation steps previously mentioned is not mandatory and that it can be deleted. As mentioned above, its deletion makes it possible to reduce the complexity of the processing applied to the digital signal.
  • the method according to the invention further comprises a step T0 correction of the approximation made during the second compensation step.
  • This correction consists in applying a multiplicative correction factor F to the signal during its processing.
  • the application of this correction factor F makes it possible to correct the drift introduced by the application of the approximated compensation factor.
  • this factor F is applied to the terms of the cosine table R, implemented during the pre- and post-rotation steps of the digital signal.
  • a table R * FR is stored. This storage step can be done offline, for the purpose of processing digital signals according to the invention.
  • the cosine table R * (n) stored in memory is constructed from N / 2 samples given by the following equation
  • factor F could be similarly applied to a sine table stored in memory, for example for the purpose of applying another type of time-frequency transform.
  • the square of the factor F could be applied to a table of values of weighting windows to be implemented during a step of windowing the digital signal. Such a step will be described in more detail in connection with FIG. 6.
  • F depends only on N. It is only necessary to recalculate it when the input signals have a number N 'of samples different from that of the previous input signals.
  • the correction factor F is calculated analytically. This is the case in the embodiment described below.
  • the second compensation step T5 approximates the term:
  • W n + OS s ( ⁇ 2 ⁇ ⁇ _ + 0.5) ⁇ j _j. sm . ( ⁇ 2 ⁇ ⁇ _ + 0.5) ⁇ j as follows: W +0 - 5 ⁇ G 1 - j. G 2 .
  • the factor F is then a function of N which in the following way:
  • a signal-to-noise ratio evolution curve of the optimized DCT-IV and of the signal-to-noise ratio "PR DCT (DCT)" corresponding to the perfect reconstruction condition according to the invention is presented. as a function of the values of the corrective factor F.
  • These curves show, on the one hand, that the optimal value of F is not equal to 1, and on the other hand that it is possible to find a value of F for each N-sized transform that achieves perfect reconstruction and at the same time maximizes SNR to match optimized DCT-IV with DCT-IV.
  • the signal is a digital audio signal and the coding method according to the invention is based on a coding technique specified in the G718-SWB standard.
  • each block of size 2N is windowed by a weighting window h (n) and then folded in a step C2 so as to obtain a frame x '(n) of size N:
  • V 3 ⁇ ", 3N” ⁇ 3N, ⁇ , 3N, ⁇
  • X (n) -x (- n-1) h (- n-lj-x (- + n) n (- + n)
  • this frame x '(n) of size N is then transformed into real spectrum by applying a time-frequency transform according to the processing method which has just been described, in relation with FIG. .
  • Step C4 makes it possible to calculate the spectral envelope, i.e. the average energy of each of the sub-bands of the spectrum to be coded.
  • the spectral envelope is then used to calculate, during a step C6, the allocation of the bits to each of the subbands.
  • the allocation makes it possible, during a step C7, to code the fine structure of each of the sub-bands with the budget predefined by the allocation.
  • the subbands and the coded spectral envelope are written in a digital stream in step C8.
  • the step of correcting the approximation can be implemented during the step C3 of applying the time-frequency transform of the DCT-IV type, in particular when calculating pre- and post-rotations applied to the signal, as described with reference to FIG.
  • the correction is implemented during the windowing step C1 of the signal which has just been described.
  • the new window h '(n) is then expressed by:
  • the signal is a digital audio signal and the decoding method according to the invention is based on a decoding technique specified in the G718-SWB standard.
  • a first step D1 the spectral envelope and the coded subbands are extracted from the digital stream.
  • the spectral envelope is decoded during a step D2.
  • the allocation determined from the spectral envelope during a step D3 makes it possible to decode the subbands during a step D4 and thus to reconstruct the spectrum Xd (k).
  • Step D5 makes it possible to transform the spectrum into a time signal xd '(k) by applying a DCT IV inverse time-frequency transformation, equivalent to the direct transformation, as previously described in relation with FIG.
  • the unfolding step D6 makes it possible to pass from a frame xd '(k) of size N to a frame xd (k) of size 2N as follows: xd (- 1)
  • xd (N + k) -xd (j - k - lj
  • the frame of size 2N is then multiplied by a weighting window hd (k) during a step D7.
  • the hd window must respect the perfect reconstruction condition.
  • the decoded xd signal is thus obtained.
  • the correction step of the approximation can be implemented during the step D5 of applying the time-frequency transform, as previously described in relation to FIG.
  • the step of correcting the approximation is implemented during the windowing step D7 of the signal corresponding to the application of the MDCT.
  • module and/or entity
  • entity can correspond either to a software component, or to a hardware component, or to a set of hardware and / or software components, able to implement perform the function (s) described for the module or entity concerned.
  • the simplified structure of a digital signal processing device 100 is now considered by application of a time-frequency transform according to an exemplary embodiment of the invention.
  • the processing device 100 implements the method of processing a digital signal by applying a time-frequency transform according to the invention, as described above.
  • the device 100 comprises a processing unit 1 10, equipped for example with a processor P1, and driven by a computer program Pg ! 120, stored in a memory 130 and implementing the method of processing a digital signal by applying a time-frequency transform according to the invention.
  • the code instructions of the computer program Pg ! 120 are by example loaded in a RAM before being executed by the processor of the processing unit 1 1 0.
  • the processor of the processing unit 1 1 0 implements the steps of the method of processing a digital signal by application of a time-frequency transform described above, according to the instructions of the computer program 120.
  • the device 1 00 comprises a PRE-ROT module for rotating the digital signal, a DFT module for applying a time-frequency transform discrete, an approximation compensation unit COMP2, a POST-ROT module of rotation of the compensated transformed signal and a CORR correction module of the approximation according to the invention. These modules are driven by the processor P3 of the processing unit 1 1 0.
  • the corrected cosine table according to the invention is stored in a memory, for example the memory 1 30 of the device 1 00.
  • the table of values of weighting windows is stored in a memory, for example the memory 130 of the device 1 00.
  • 1 0 implements the method of encoding a digital signal according to the invention, as described above.
  • the coding device 1 0 comprises a processing unit 1 1, equipped for example with a processor P2, and driven by a computer program Pg 2 1 2 stored in a memory 13 and implementing the coding method of FIG. a digital signal according to the invention.
  • the code instructions of the computer program Pg 2 are for example loaded into a RAM memory before being executed by the processor of the processing unit 11.
  • the processor P2 of the processing unit 1 1 implements the steps of the coding method described above, according to the instructions of the computer program Pg 2 .
  • the coding device 1 0 therefore comprises a PROC-DCT-IV processing module by applying a time-frequency transform.
  • the device 1 00 is integrated in the coding device 1 0 of a digital signal.
  • the PROC-DCT-IV module is arranged to cooperate with the processing device 1 00 according to the invention, in particular to control the application of an optimized time-frequency transform according to the invention.
  • This module is driven by the processor P2 of the processing unit 1 1.
  • the coding device 10 according to the invention stores in memory 13 the computer program Pg1 (shown in dotted lines) implementing the method of processing a digital signal by applying a time-frequency transform. according to the invention.
  • the code instructions of the computer program Pg- ⁇ are, for example, loaded into a RAM before being executed by the processor of the processing unit 1 1 during the implementation of the processing by application of an optimized PROC-DCT-IV time-frequency transform.
  • the steps of the processing method in question are then implemented by the processor P2 of the coding device 1 00.
  • the corrected cosine table according to the invention is then stored in a memory, for example the memory 13 of the coding device 10.
  • the table of values of weighting windows is stored in a memory, for example the memory 13 of the device 1 0.
  • the simplified structure of a device 20 for decoding a digital signal according to one embodiment of the invention is finally considered.
  • the decoding device 20 implements the method of decoding a digital signal according to the invention, as described above.
  • the decoding device 20 comprises a processing unit 21, equipped for example with a processor P3, and driven by a computer program Pg 3 22 stored in a memory 23 and implementing the method of decoding a digital signal. according to the invention.
  • the code instructions of the computer program Pg 3 are for example loaded into a RAM memory before being executed by the processor of the processing unit 21.
  • the processor P3 of the processing unit 21 implements the steps of the decoding method described above, according to the instructions of the computer program Pg 3 -
  • the processing device 1 00 is integrated in the decoding device 20.
  • the device 20 therefore comprises a PROC-DCT-IV-1 processing module by applying a reverse frequency time transform, which is arranged to cooperate with the processing device 1 00 according to the invention, in particular to control the application of an optimized time-frequency transform according to the invention.
  • This module is driven by the processor P3 of the processing unit 21.
  • the decoding device 20 stores in memory 23 the computer program Pg1 (shown in dotted lines) implementing the method of processing a digital signal by applying a time-frequency transform according to the invention.
  • the code instructions of the computer program Pg ! are for example loaded into a RAM before being executed by the processor of the processing unit 21.
  • the steps of the processing method in question are then implemented by the processor P3 of the decoding device 20.
  • the corrected cosine table according to the invention is then stored in a memory, for example the memory 23 of the decoding device 20.
  • the table of values of weighting windows is stored in a memory, by example the memory 23 of the device 20.
  • the methods of processing a digital signal by applying a time-frequency transform and a time-frequency inverse transform according to the invention have many advantages. They notably make it possible to significantly increase the SN R of the time-frequency transform applied to the signal and of its perfect reconstruction condition, without affecting the overall complexity of the treatment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • General Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Procédé de traitement d'un signal numérique, dispositif et programme d'ordinateur associés. L'invention concerne un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, comprenant les étapes suivantes : - rotation du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal; - transformation du signal par application d'une transformation de Fourier discrète; - rotation du signal transformé, dite post-rotation du signal; - compensation d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé, - stockage préalable de valeurs de cosinus en mémoire dans une table, lesdites valeurs stockées étant destinées à être utilisées par les étapes de rotation. Selon l'invention, ledit procédé comprend en outre une étape de correction de l'approximation, consistant à appliquer un facteur multiplicatif de correction F aux valeurs de ladite table, avant leur stockage en mémoire.

Description

Procédé de traitement d'un signal numérique, dispositif et programmes d'ordinateurs associés
1. Domaine de l'invention
L'invention se situe dans le domaine du codage/décodage de signaux audionumériques, plus spécifiquement dans le domaine dit du « codage/décodage audio par transformée».
Le « codage par transformée » consiste à coder des signaux temporels dans le domaine transformé (fréquentiel). Cette transformation permet notamment d'utiliser les caractéristiques fréquentielles de signaux audio (musicaux, de parole ou d'autres) afin d'optimiser les performances de codage. On utilise par exemple le fait qu'un son harmonique est représenté dans le domaine fréquentiel par un nombre fini et réduit de raies spectrales qui peuvent ainsi être codées de manière concise. On a aussi recours à des effets de masquage fréquentiels pour mettre en forme le bruit de codage de manière à ce qu'il soit le moins audible possible.
2. Art antérieur
Une technique habituelle de codage par transformée peut être résumée comme suit. Le flux audionumérique (échantillonné à une fréquence d'échantillonnage Fs donnée), à coder, est sectionné en trames (ou « blocs », plus généralement) comprenant un nombre 2N d'échantillons fini. Chaque trame se recouvre classiquement à 50 % avec la trame précédente. Une fenêtre de pondération ha (appelée « fenêtre d'analyse ») est appliquée à chaque trame.
Une transformation est ensuite appliquée au signal. Dans le cas d'une transformation dite « MDCT » (pour « Modified Discrète Cosine Transform », en anglais), et dans une réalisation particulière, la trame pondérée est « repliée » suivant une transformation 2N échantillons vers N échantillons. Une transformée DCT de type IV est ensuite appliquée à la trame repliée afin d'obtenir une trame de taille N dans le domaine transformé.
La trame dans le domaine transformé est alors quantifiée en utilisant un quantificateur adapté. La quantification permet de réduire la taille des données, mais introduit un bruit (audible ou non) dans la trame originale. Plus le débit du codeur est élevé, plus ce bruit est réduit et plus la trame quantifiée est proche de la trame originale.
Au décodage, une transformation MDCT inverse est alors appliquée à la trame quantifiée. La trame quantifiée de taille N est convertie en trame de taille N dans le domaine temporel en utilisant une DCT de type IV inverse. Une deuxième transformation de « dépliage » de N vers 2N est alors appliquée à la trame temporelle de taille N. Des fenêtres de pondération hs dites de « synthèse » sont appliquées ensuite aux trames de tailles 2N.
Le flux audio décodé est alors synthétisé en sommant les parties en recouvrement. Une DCT de type IV peut s'exprimer de la façon suivante :
= f-∑N n in) cos (g) (n + ¾ (fc + ¾) (1 )
Où x(n) est le signal temporel de taille N, avec n entier compris entre 0 et N-1 , X(k) est le signal transformé de taille N.
Le terme V(2/N) est un facteur de normalisation. Dans cet exemple ce facteur à (2/iV) permet à la DCT IV d'être utilisée à la fois comme transformée directe et comme transformée inverse.
La DCT-IV est essentielle à la mise en œuvre de la MDCT (pour « Modified Discrète Cosinus Transform », en anglais) utilisée dans la plupart des standards de codeurs et décodeurs de signaux audionumériques (par exemple G729.1 , G718, G.722.1 annexe C, MPEG-4 audio ou MPEG-D USAC).
Si l'on implémentait la DCT-IV telle quelle, la complexité serait proportionnelle à N2, N étant la taille de la transformée.
Il est connu du document de De-ming Zhang; Hai-ting Li, intitulé "A Low Complexity Transform - Evolved DCT," publié dans les proceedings de la conférence Computational Science and Engineering (CSE), 2011 IEEE 14th International Conférence on Computational Science and Engineering, vol., no., pp.144-149, qui s'est tenue les 24-26 août 201 1 , une méthode permettant de diminuer de manière importante la complexité de la DCT-IV, par approximation. Cette méthode d'implémentation rapide par transformée de Fourier Discrète ou DFT (pour « Discrète Fourier Transform », en anglais) a été spécifiée dans l'extension SWB du codeur G71 8.
Avec cette méthode, la DCT-IV s'exprime sous la forme suivante :
DCT IV(k) = cos (k + 0.5)(n + 0.5)) (2)
Ses étapes vont maintenant être décrites, en relation avec la Figure 1.
On considère un signal x(n), avec n et k e [ θ,Ι, ... ,^ - l] .
Les éléments du signal x(n) sont d'abord réorganisés dans un complexe z(n), au cours d'une étape Tr1 :
z(n) = x(2n) + jx(L - 1 - 2n), n 6 [θ,Ι, ... ,^ - l] (3) N est la taille du signal d'entrée x et z est le signal réorganisé.
Au cours d'une étape Tr2, une pré-rotation est appliquée à z(n) :
z'(n) = z{n). a(N). WÏÏÏ+1 (4)
avec a(N) = V2/VN qui correspond à la racine carrée du facteur de normalisation. Ce même facteur a(N) sera appliqué également lors d'une étape ultérieure Tr6 pour permettre de reconstituer le facteur de normalisation de la DCT-IV, soit V2/N .
Le terme ¾η+1 est défini par : = cos p¾^) - jsin p¾^)
On comprend ici qu'avantageusement, seul le stockage d'une table cosinus (ou sinus, qui n'est autre qu'un cosinus déphasé) R(n) de taille N/2 est nécessaire au calcul de l'expression a(N). W iï+1 _ . ... . t .
J 4N , avec R défini tel que :
Au cours d'une étape Tr3, une compensation de la pré-rotation est mise en œuvre, comme suit :
z"(n) = z'(n). W™+0-5 (6)
Une telle compensation de la pré-rotation permet d'assurer la reconstruction parfaite de la transformée. Elle est par exemple égale à W^1 ou ou ou lt avec
Figure imgf000005_0001
Par exemple :
W4lï = cos ( ) -j sin (= = cos -j sin (^)
¾3 = cos( )-j sin( )
En Tr4, une Transformée de Fourier Discrète ou DFT (pour « Discrète Fourier Transform », en anglais) de taille N/2 est appliquée au signal compensé :
Z(fe) = DF7(z "(n)) (8)
En Tr5, une seconde compensation en rotation est mise en œuvre. La seconde compensation s'exprime donc de la façon suivante :
Z'(k) = Z(k). W™+0-5 (9)
La valeur du facteur de compensation appliqué dépend du choix fait lors de la première compensation faite dans l'étape Tr3.
Par exemple, dans le cas où la compensation utilisée lors de l'étape Tr3 est de 1 , la compensation à appliquer lors de cette étape est de W^.
Pour N grand, peut etre approximé par 1 + 7 3n/4JV Ainsi, dans la spécification du codeur G718 SWB, il a été choisi d'appliquer une première compensation avec un facteur égal à 1 pour l'étape Tr3 et une deuxième compensation avec un facteur égal à WBN pour l'étape Tr5. Il a aussi été choisi d'utiliser une approximation de WBN , qui s'exprime de la façon suivante :
W8 ~ N 3~l + ; ^ (10)
Cette approximation permet d'économiser une multiplication par échantillon lors de la mise en œuvre de l'algorithme à cette étape (la partie réelle étant multipliée par 1 ).
En Tr6, les données sont à nouveau transformées par post-rotation :
Z"(k) = Z'(fc). a(N). W4 2 +1 (1 1 )
Ceci est avantageux, car cette rotation peut être obtenue en utilisant la même table R que celle de l'étape Tr2.
Figure imgf000006_0001
Enfin, au cours d'une dernière étape Tr7, les éléments du signal complexe Z"(k) sont réorganisés dans un réel X(k) :
DCT(2k) = ¾ (z"( ) r N -,
, ;Λ k e 0; ^ - l (12)
DCT{N - 1 - 2k) = -3(Z (k)) L 2 J
3. Inconvénients de l'art antérieur L'approximation faite lors de la compensation de l'étape Tr5 permet de réduire la complexité de la rotation suivante, conformément à l'équation (10) évoquée ci-dessus:
Figure imgf000006_0002
Toutefois, si elle est valable pour les N suffisamment grands, elle est loin d'atteindre la reconstruction parfaite pour les N petits. Ceci s'explique par le fait que :
DCT1 (DCT(x))= DCT(DCT(x))~= x.
Par conséquent, le rapport signal à bruit de la reconstruction parfaite ne respecte pas les standards habituellement admis. La méthode de l'art antérieur ne permet donc pas d'atteindre un résultat optimal quelle que soit la valeur du nombre d'échantillons N. En relation avec la Figure 2, on considère maintenant les courbes de rapport signal à bruit ou SNR (pour « Signal to Noise Ratio » , en anglais) pour la DCT-IV, telle qu'implémentée dans la spécification du codeur G71 8 SWB. Les SNR sont calculés sur des signaux aléatoires. Le SNR « DCT-IV » correspond à la différence entre la DCT-IV classique telle que décrite par l'équation (1 ) nommée DCT et la DCT-IV approximée du G718 SWB nommée DCT*. :
Figure imgf000007_0001
La courbe SNR « PR DCT(DCT) » correspond à la condition de reconstruction parfaite entre le signal d'entrée et le signal ayant subi deux transformations successives :
SNR (PR DCUDCT)) = 10 log10 (14)
Figure imgf000007_0002
Si l'on considère que la condition de reconstruction parfaite correspond à une valeur de SNR supérieure à 80 dB, on observe que cette condition n'est pas atteinte pour N<240.
On observe aussi que la DCT-IV approximée est assez éloignée de la DCT-IV originale.
4. Exposé de l'invention
La présente invention vient améliorer la situation. Elle propose à cet effet un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, comprenant les étapes suivantes :
- rotation du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation du signal par application d'une transformation de Fourier discrète ;
- rotation du signal transformé, dite post-rotation du signal;
- compensation d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé ;
- stockage préalable de valeurs de cosinus en mémoire dans une table, lesdites valeurs stockées étant destinées à être utilisées par les étapes de rotation.
Le procédé selon l'invention est remarquable en ce qu'il comprend une étape de correction de l'approximation, consistant à appliquer un facteur multiplicatif de correction F aux valeurs de ladite table, avant leur stockage en mémoire.
Le procédé de traitement selon l'invention est destiné à être mis en œuvre aussi bien pour l'application d'une transformation temps-fréquence directe que celle d'une transformée temps-fréquence inverse.
Avec l'invention, une éventuelle dérive introduite par l'approximation faite lors de l'étape de compensation en rotation est corrigée, ce qui permet d'une part de maximiser le SNR de la transformée temps-fréquence appliquée au signal, et d'autre part de se rapprocher des conditions de reconstruction parfaite, en particulier lorsque le nombre N d'échantillons est peu élevé.
Un avantage de stocker les valeurs corrigées en mémoire est que ce calcul est fait hors ligne une fois pour toutes, pour tous les signaux numériques susceptibles d'être traités, et donc qu'il n'entraîne pas de coût de calcul supplémentaire par rapport à la mise en œuvre de la DCT IV décrite dans l'état de l'art.
Le coût de la correction apportée se réduit à la multiplication du signal par un facteur de correction. L'invention apporte donc une amélioration du SNR de la transformation temps- fréquence et de la reconstruction, sans augmentation notable de la complexité de calcul.
Ainsi, l'invention permet d'optimiser les performances de traitement d'un signal numérique, aussi bien pour l'application d'une transformation temps-fréquence directe que celle d'une transformée temps-fréquence inverse. Selon un aspect de l'invention, le signal comprend des blocs successifs de N échantillons et le facteur de correction F(N) ne dépend que du nombre N d'échantillons.
Le facteur de correction appliqué au signal numérique ne dépend que du nombre N d'échantillons du signal. Il est donc indépendant de la forme du signal numérique d'entrée.
Un avantage de ce facteur de correction est qu'il n'est nécessaire de le calculer qu'une fois avant de l'appliquer à n'importe quel nouveau signal numérique d'entrée de N échantillons.
En outre, ce facteur peut être calculé hors ligne et appliqué aux différents signaux à traiter en amont de l'application de la transformation temps-fréquence.
Enfin, comme ce facteur dépend du nombre d'échantillons N du signal, il est nécessaire d'en calculer une nouvelle valeur pour chaque nouvelle valeur de N , ce qui permet d'optimiser la correction à chaque découpage du signal d'entrée.
L'invention concerne aussi un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, comprenant les étapes suivantes :
- stockage préalable de valeurs de fenêtres de pondération dans une table; - fenêtrage du signal numérique destinée à utiliser lesdites valeurs stockées ;
- rotation du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation du signal par application d'une transformation de Fourier discrète ;
- rotation du signal transformé, dite post-rotation du signal;
- compensation d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé.
Le procédé selon l'invention est remarquable en ce qu'il comprend une étape de correction de l'approximation, consistant à appliquer le carré d'un facteur multiplicatif de correction F aux valeurs de ladite table, avant leur stockage en mémoire.
Le fenêtrage du signal est une opération qui est par exemple mise en œuvre lors de l'application d'une MDCT. Comme le fenêtrage n'est appliqué qu'une fois au signal numérique, le facteur multiplicatif de correction appliqué correspond au carré du facteur de correction utilisé dans le mode de réalisation précédent.
Un avantage est donc non seulement que ce calcul du facteur de correction est fait une fois pour toutes pour tous les signaux numériques susceptibles d'être traités, mais aussi que le facteur lui-même n'est appliqué qu'une fois. De ce fait, l'invention n'entraine pas de coût de calcul supplémentaire par rapport à la mise en œuvre de la MDCT de l'état de l'art.
Selon un autre aspect de l'invention, le facteur de correction d'approximation F(N) est fonction d'un premier gain G1 et d'un deuxième gain G2, tel que
F(iV) = +G|)4' "1 et G2 étant fonctions du nombre d'échantillons.
Lorsque la compensation n'est appliquée au signal que pour compenser la post-rotation, le facteur de correction de l'approximation F(N) selon l'invention peut s'exprimer sous une forme simplifiée.
Selon encore un autre aspect de l'invention , la compensation par approximation est appliquée lors de la post-rotation du signal avec un facteur de compensation égal à W8 ~3 = COS \~8N ) ' le Prem ier 9ai n est é9al à 1 et le deuxième gain G2 à ^..
Dans le cas particulier considéré, le facteur de correction F(N) s'exprime encore plus simplement. Bien sûr, les différents aspects du procédé de traitement selon l'invention qui viennent d'être présentés peuvent être mis en œuvre de façon indépendante ou combinée.
L'invention concerne aussi un procédé de codage d'un signal numérique.
Ce procédé est remarquable en ce qu'il met en œuvre un traitement dudit signal obtenu conformément au procédé de traitement qui vient d'être décrit.
Avec l'invention, il devient possible d'optimiser le SNR de la transformation temps- fréquence directe appliquée au signal numérique à encoder et de ce fait la qualité globale de l'encodage de ce signal, sans en augmenter la complexité. L'invention concerne aussi un procédé de décodage d'un signal numérique.
Ce procédé est remarquable en ce qu'il met en œuvre une étape de traitement obtenu par le procédé de traitement qui vient d'être décrit, qui permet d'appliquer de façon optimisée une transformée temps-fréquence inverse équivalente à la transformée directe.
L'invention concerne aussi un dispositif de traitement d'un signal audionumérique apte à mettre en œuvre le procédé qui vient d'être décrit.
Avantageusement ce dispositif peut être intégré dans un dispositif de codage d'un signal audionumérique selon l'invention.
L'invention concerne donc aussi un dispositif de codage d'un signal numérique. Ce dispositif est remarquable en ce qu'il est apte à mettre en œuvre le dispositif de traitement qui vient d'être décrit.
Avantageusement ce dispositif peut aussi être intégré dans un dispositif de décodage de signal audionumérique.
L'invention concerne donc aussi un dispositif de décodage d'un signal audionumérique. Ce dispositif est remarquable en ce qu'il est apte à mettre en œuvre le dispositif de traitement qui vient d'être décrit.
L'invention concerne encore un programme d'ordinateur comportant des instructions pour la mise en œuvre des étapes d'un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence tel que décrit précédemment, lorsque ce programme est exécuté par un processeur. Un tel programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur. L'invention se rapporte aussi à un support de stockage, lisible par un processeur, intégré ou non au dispositif de traitement selon l'invention, éventuellement amovible, mémorisant un programme d'ordinateur mettant en œuvre un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence tel que décrit précédemment.
L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre d'un procédé de codage d'un signal numérique tel que décrit précédemment, lorsque ce programme est exécuté par un processeur. Un tel programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur.
L'invention se rapporte enfin à un support de stockage, lisible par un processeur, intégré ou non au codeur selon l'invention, éventuellement amovible, mémorisant un programme d'ordinateur mettant en œuvre un procédé de codage d'un signal numérique tel que décrit précédemment.
L'invention concerne également un programme d'ordinateur comportant des instructions pour la mise en œuvre d'un procédé de décodage d'un signal numérique tel que décrit précédemment, lorsque ce programme est exécuté par un processeur. Un tel programme peut utiliser n'importe quel langage de programmation. Il peut être téléchargé depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur.
L'invention se rapporte enfin à un support de stockage, lisible par un processeur, intégré ou non au décodeur selon l'invention, éventuellement amovible, mémorisant un programme d'ordinateur mettant en œuvre un procédé de décodage d'un signal numérique tel que décrit précédemment.
5. Liste des figures
D'autres avantages et caractéristiques de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation particulier de l'invention, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels :
la figure 1 , déjà décrite, présente de façon schématique, les étapes de calcul d'une transformée temps-fréquence de type DCT-IV selon l'art antérieur ;
- la figure 2, déjà décrite, présente une courbe de mesures de SNR obtenues pour un signal transformé par application d'une DCT-IV implémentée selon l'art antérieur ; la figure 3 présente de façon schématique les étapes du procédé de traitement d'un signal numérique par application d'une transformée temps-fréquence selon un mode de réalisation de l'invention ; la figure 4 présente des courbes d'évolution de la mesure de SNR d'un signal traité en fonction de la valeur du facteur de correction F, selon un mode de réalisation de l'invention;
la figure 5 présente un exemple de performance des procédés de traitement selon l'invention, en comparaison de celle du codeur G718 SWB.
la figure 6 présente de façon schématique les étapes du procédé de codage d'un signal numérique selon un mode de réalisation de l'invention ;
la figure 7 présente de façon schématique les étapes du procédé de décodage d'un signal numérique selon un mode de réalisation de l'invention ;
la figure 8 présente un exemple de structure d'un dispositif de traitement par application d'une transformée temps-fréquence selon un mode de réalisation de l'invention ;
la figure 9 présente un exemple de structure d'un dispositif de codage d'un signal numérique selon un mode de réalisation de l'invention; et
la figure 10 présente un exemple de structure d'un dispositif de décodage de signal numérique selon un mode de réalisation de l'invention.
6. Description d'un mode de réalisation particulier de l'invention
Dans la suite de la description, on considère le cas particulier d'une transformée temps- fréquence de type DCT-IV. Toutefois, l'invention n'est pas limitée à cet exemple et s'applique potentiellement à toute autre transformée temps-fréquence, comme par exemple une transformée de type DST-IV (pour « Discrète Sinus Transform IV », en anglais).
En relation avec la figure 3, on présente les étapes d'un procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, directe ou inverse, selon un exemple de réalisation de l'invention.
A partir d'un signal numérique s(n), disponible sous forme de blocs de N échantillons, avec N entier non nul et n compris entre 0 et N-1 , le procédé considéré met en œuvre une étape T1 de mise sous forme complexe du signal s(n) en un signal z(n), une étape T2 de prérotation du signal z(n) en un signal z'(n), une première étape T3 de compensation par approximation du signal z'(n) qui fournit un signal compensé z"(n), une étape T4 de transformation du signal z"(n) en un signal transformé Z(k) à l'aide d'une transformée de Fourier discrète, une deuxième étape T5 de compensation de la post-rotation par application d'un facteur de compensation approximé, qui produit un signal compensé Z'(k), une étape T6 de post-rotation du signal compensé en un signal Z"(k) et une étape T7 de retour à un signal numérique réel qui fournit un signal X"(k). Ces étapes sont analogues aux étapes Tr1 à Tr7, déjà décrites en relation avec la Figure 1. Elles ne seront donc pas décrites plus en détail ci- après.
On notera, qu'une des deux étapes de compensation précédemment évoquées n'est pas obligatoire et qu'elle peut être supprimée. Comme évoqué précédemment, sa suppression permet de réduire la complexité du traitement appliqué au signal numérique.
Dans la suite de la description, on considère en particulier que la première compensation (représentée en pointillés sur la figure 3) n'est pas mise en œuvre.
Le procédé selon l'invention comprend en outre une étape T0 de correction de l'approximation faite lors de la deuxième étape de compensation. Cette correction consiste à appliquer un facteur multiplicatif de correction F au signal, au cours de son traitement. L'application de ce facteur de correction F permet de corriger la dérive introduite par l'application du facteur de compensation approximé.
Dans cet exemple de réalisation de l'invention, ce facteur F est appliqué aux termes de la table de cosinus R, mise en œuvre lors des étapes de pré- et post-rotation du signal numérique. Ainsi, au lieu de stocker la table R en mémoire, on stocke une table R*= F.R Cette étape de stockage peut être faite hors-ligne, en vue du traitement de signaux numériques selon l'invention.
La table de cosinus R*(n) stockée en mémoire est construite à partir de N/2 échantillons donnée par l'équation suivant
Figure imgf000013_0001
Où F(N) est le facteur de correction de l'approximation.
Bien sûr, le facteur F pourrait être de façon analogue appliquée à une table de sinus stockée en mémoire, par exemple en vue de l'application d'un autre type de transformée temps- fréquence.
Selon une variante, le carré du facteur F pourrait être appliqué à une table de valeurs de fenêtres de pondération destinées à être mises en œuvre lors d'une étape de fenêtrage du signal numérique. Une telle étape sera décrite plus en détails en relation avec la Figure 6. F ne dépend que de N. Il n'est nécessaire de le recalculer que lorsque les signaux d'entrée présentent un nombre N' d'échantillons différent de celui des signaux d'entrée précédents.
Avantageusement, le facteur de correction F est calculé de façon analytique. C'est le cas dans l'exemple de réalisation décrit ci-dessous.
Toutefois, dans certains cas, il n'existe pas de formulation analytique. Il est possible alors de recourir à des méthodes connues d'optimisation, basées sur la minimisation du SNR. Elles sont en effet parfaitement adaptées à la recherche des F optimaux.
On notera que l'on peut choisir d'optimiser différemment le facteur F, selon que l'on souhaite privilégier la condition de reconstruction parfaite et/ou la ressemblance à la DCT-IV classique.
Dans l'exemple de réalisation de l'invention que l'on considère ici, la deuxième étape de compensation T5 réalise une approximation du terme :
Wn+O.S = s ( ^2π{η _ + 0.5)^ j _j . sm . ( ^2π{η _ + 0.5)^ j de la façon suivante : W +0-5 ~G1 - j. G2.
Le facteur F est alors une fonction de N qui de la façon suivante :
Figure imgf000014_0001
Dans le cas particulier où W8 -3 est approximé par l - ^, les gains G1 et G2 s'expriment simplement sous la forme : G, = 1 et G? =— .
Pour différentes valeurs de N, on obtient alors les valeurs de F de la table 1 ci-dessous :
Figure imgf000014_0002
Table 1
Ce sont des valeurs optimales qui permettent de se rapprocher le plus possible de la DCT-IV et de la reconstruction parfaite pour différentes valeurs de N. On notera que la fonction de N particulière explicitée par l'équation (15) s'appliquerait tout aussi bien, dans un autre mode de réalisation, à la correction de la table de valeurs de fenêtres de pondération.
En relation avec la Figure 4, on présente une courbe d'évolution de rapport signal à bruit de la DCT-IV optimisée et du rapport signal à bruit « PR DCT(DCT) » correspondant à la condition de reconstruction parfaite selon l'invention, en fonction des valeurs du facteur correctif F. Ces courbes illustrent d'une part le fait que la valeur optimale de F n'est pas égale à 1 , et d'autre part qu'il est possible de trouver une valeur de F pour chaque transformée de taille N qui permet d'atteindre la reconstruction parfaite et en même temps, le maximum de SNR pour faire correspondre la DCT-IV optimisée à la DCT-IV.
En relation avec la figure 5, on présente les courbes SNR obtenues pour la DCT-IV optimisée selon l'invention et pour la condition de reconstruction parfaite « PR (DCT(DCT) » . On constate qu'avec le facteur de correction F selon l'invention la condition de reconstruction parfaite est atteinte quelle que soit la valeur de N. Ce résultat est à comparer avec N>=240 obtenu pour l'état de l'art. On constate aussi que la DCT-IV est mieux estimée grâce au facteur de correction que par la technique de l'état de l'art, avec un SNR compris entre 20 et 40 dB supérieur. Ainsi à N=160, ce qui correspond à une trame de 20ms à 8KHz, la DCT-IV optimisée est très proche d'une DCT-IV (SN R > 80dB).
En relation avec la Figure 6, on présente maintenant un procédé de codage d'un signal numérique selon un mode de réalisation de l'invention. Dans cet exemple, le signal est un signal audionumérique et le procédé de codage selon l'invention s'appuie sur une technique de codage spécifiée dans la norme G718-SWB.
On considère donc un signal numérique x(n) organisé en blocs de 2N échantillons, les blocs successifs se recouvrant de N échantillons.
Dans une étape C1 , chaque bloc de taille 2N est fenêtré par une fenêtre de pondération h(n) puis replié dans une étape C2 de manière à obtenir une trame x'(n) de taille N :
V 3Λί „\ , 3N „\ 3N , \ , 3N , \
X (n) =—x (—— n— 1 ) h (—— n— lj—x (— + n ) n (— + n )
(16)
x (n + = x(n)h(n) - x(N - n - l)h(N - n - 1) n 6 0 Lors d'une étape C3, cette trame x'(n) de taille N est ensuite transformée en spectre réel par application d'une transformée temps-fréquence selon le procédé de traitement qui vient d'être décrit, en relation avec la Figure 3.
L'étape C4 permet de calculer l'enveloppe spectrale, i.e. l'énergie moyenne de chacune des sous-bandes du spectre à coder. L'enveloppe spectrale est ensuite utilisée pour calculer, lors d'une étape C6, l'allocation des bits à chacune des sous-bandes. L'allocation permet lors d'une étape C7, de coder la structure fine de chacune des sous-bandes avec le budget prédéfini par l'allocation. Les sous-bandes ainsi que l'enveloppe spectrale codée sont écrites dans un flux numérique lors de l'étape C8.
Selon une première variante de l'invention, l'étape de correction de l'approximation peut être mise en œuvre au cours de l'étape C3 d'application de la transformée temps-fréquence de type DCT-IV, en particulier lors du calcul des pré- et post-rotations appliquées au signal, comme décrit en relation avec la figure 3.
Selon une deuxième variante de l'invention, la correction est mise en œuvre au cours de l'étape de fenêtrage C1 du signal qui vient d'être décrite. La nouvelle fenêtre h'(n) s'exprime alors par :
= F2 N ) h (jl) (1 7)
On comprend qu'avec la seconde variante, la correction n'étant appliquée qu'une fois au lieu de deux au signal numérique, il est nécessaire de remplacer le facteur F par son carré F2.
En relation avec la Figure 7, on présente maintenant un procédé de décodage d'un signal audionumérique selon un mode de réalisation de l'invention.
Dans cet exemple, le signal est un signal audionumérique et le procédé de décodage selon l'invention s'appuie sur une technique de décodage spécifiée dans la norme G718-SWB.
Dans une première étape D1 , on extrait du flux numérique l'enveloppe spectrale ainsi que les sous-bandes codées. L'enveloppe spectrale est décodée lors d'une étape D2. L'allocation déterminée d'après l'enveloppe spectrale lors d'une étape D3 permet de décoder les sous-bandes lors d'une étape D4 et ainsi de reconstituer le spectre Xd(k).
L'étape D5 permet de transformer le spectre en signal temporel xd'(k) en appliquant une transformation temps-fréquence inverse de type DCT IV, équivalente à la transformation directe, comme décrit précédemment en relation avec la figure 3.
L'étape de dépliement D6 permet de passer d'une trame xd'(k) de taille N à une trame xd(k) de taille 2N de la manière suivante : xd ( - 1)
Figure imgf000017_0001
xd(N + k) = -xd (j - k - lj
xd (-^ + =—xd (k)
La trame de taille 2N est ensuite multipliée par une fenêtre de pondération hd(k) lors d'une étape D7. La fenêtre hd doit respecter la condition de reconstruction parfaite.
On obtient ainsi le signal xd décodé.
Selon une première variante, l'étape de correction de l'approximation peut être mise en œuvre au cours de l'étape D5 d'application de la transformée temps-fréquence, comme décrit précédemment en relation avec la figure 3.
Selon une deuxième variante, l'étape de correction de l'approximation est mise en oeuvre au cours de l'étape de fenêtrage D7 du signal correspondant à l'application de la MDCT. La nouvelle fenêtre hd'(k) est ainsi exprimée par : hd'(k) = F2(N)hd(k) (19)
L'invention qui vient d'être décrite ci-dessus, peut être mise en œuvre au moyen de composants logiciels et/ou matériels. Dans la suite, les termes « module » et « entité », utilisés dans ce document, peuvent correspondre soit à un composant logiciel, soit à un composant matériel, soit encore à un ensemble de composants matériels et/ou logiciels, aptes à mettre en œuvre la ou les fonctions décrites pour le module ou l'entité concerné(e).
En relation avec la Figure 8, on considère maintenant la structure simplifiée d'un dispositif 100 de traitement d'un signal numérique par application d'une transformée temps- fréquence selon un exemple de réalisation de l'invention. Le dispositif de traitement 100 met en œuvre le procédé de traitement d'un signal numérique par application d'une transformée temps- fréquence selon l'invention, tel que décrit ci-dessus.
Par exemple, le dispositif 100 comprend une unité de traitement 1 10, équipée par exemple d'un processeur P1 , et pilotée par un programme d'ordinateur Pg! 120, stocké dans une mémoire 130 et mettant en œuvre le procédé de traitement d'un signal numérique par application d'une transformée temps-fréquence selon l'invention.
A l'initialisation, les instructions de code du programme d'ordinateur Pg! 120 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 1 1 0. Le processeur de l'unité de traitement 1 1 0 met en œuvre les étapes du procédé de traitement d'un signal numérique par application d'une transformée temps- fréquence décrit précédemment, selon les instructions du programme d'ordinateur 120. Le dispositif 1 00 comprend un module PRE-ROT de rotation du signal numérique, un module DFT d'application d'une transformée temps-fréquence discrète, une unité COMP2 de compensation par approximation, un module POST-ROT de rotation du signal transformé compensé et un module CORR de correction de l'approximation selon l'invention. Ces modules sont pilotés par le processeur P3 de l'unité de traitement 1 1 0. De façon avantageuse, la table de cosinus corrigée selon l'invention est stockée dans une mémoire, par exemple la mémoire 1 30 du dispositif 1 00. Selon une variante, la table de valeurs de fenêtres de pondération est stockée dans une mémoire, par exemple la mémoire 130 du dispositif 1 00.
En relation avec la Figure 9, on considère maintenant la structure simplifiée d'un dispositif 1 0 de codage d'un signal numérique selon un mode de réalisation de l'invention. 1 0 met en œuvre le procédé de codage d'un signal numérique selon l'invention, tel que décrit ci- dessus.
Le dispositif de codage 1 0 comprend une unité de traitement 1 1 , équipée par exemple d'un processeur P2, et pilotée par un programme d'ordinateur Pg2 1 2 stocké dans une mémoire 13 et mettant en œuvre le procédé de codage d'un signal numérique selon l'invention .
A l'initialisation, les instructions de code du programme d'ordinateur Pg2 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 1 1 . Le processeur P2 de l'unité de traitement 1 1 met en œuvre les étapes du procédé de codage décrit précédemment, selon les instructions du programme d'ordinateur Pg2.
Selon l'invention, le dispositif de codage 1 0 comprend donc un module PROC-DCT-IV de traitement par application d'une transformée temps fréquence.
Selon un mode de réalisation de l'invention, le dispositif 1 00 est intégré au dispositif de codage 1 0 d'un signal numérique. Le module PROC-DCT-IV est agencé pour coopérer avec le dispositif de traitement 1 00 selon l'invention, en particulier pour lui commander l'application d'une transformée temps-fréquence optim isée selon l'invention. Ce module est piloté par le processeur P2 de l'unité de traitement 1 1 . De façon alternative, le dispositif de codage 1 0 selon l'invention stocke en mémoire 13 le programme d'ordinateur Pg1 (représenté en pointillés) mettant en œuvre le procédé de traitement d'un signal numérique par application d'une transformée temps-fréquence selon l'invention. A l'initialisation , les instructions de code du programme d'ordinateur Pg-ι sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 1 1 lors de la mise en œuvre du traitement par application d'une transformée temps-fréquence PROC-DCT-IV optimisée. Les étapes du procédé de traitement en question sont alors m ises en œuvre par le processeur P2 du dispositif de codage 1 00.
De façon avantageuse, la table de cosinus corrigée selon l'invention est alors stockée dans une mémoire, par exemple la mémoire 13 du dispositif de codage 1 0. Selon une variante, la table de valeurs de fenêtres de pondération est stockée dans une mémoire, par exemple la mémoire 13 du dispositif 1 0.
En relation avec la Figure 10, on considère enfin la structure simplifiée d'un dispositif 20 de décodage d'un signal numérique selon un mode de réalisation de l'invention. Le dispositif de décodage 20 met en œuvre le procédé de décodage d'un signal numérique selon l'invention, tel que décrit ci-dessus.
Le dispositif de décodage 20 comprend une unité de traitement 21 , équipée par exemple d'un processeur P3, et pilotée par un programme d'ordinateur Pg3 22 stocké dans une mémoire 23 et mettant en œuvre le procédé de décodage d'un signal numérique selon l'invention.
A l'initialisation, les instructions de code du programme d'ordinateur Pg3 sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 21 . Le processeur P3 de l'unité de traitement 21 met en œuvre les étapes du procédé de décodage décrit précédemment, selon les instructions du programme d'ordinateur Pg3-
Selon un mode de réalisation de l'invention, le dispositif de traitement 1 00 est intégré au dispositif de décodage 20. Le dispositif 20 comprend donc un module PROC-DCT-IV-1 de traitement par application d'une transformée temps fréquence inverse, qui est agencée pour coopérer avec le dispositif de traitement 1 00 selon l'invention, en particulier pour lui commander l'application d'une transformée temps-fréquence optim isée selon l'invention. Ce module est piloté par le processeur P3 de l'unité de traitement 21 .
De façon alternative, le dispositif de décodage 20 selon l'invention stocke en mémoire 23 le programme d'ordinateur Pg1 (représenté en pointillés) mettant en œuvre le procédé de traitement d'un signal numérique par application d'une transformée temps-fréquence selon l'invention. A l'initialisation, les instructions de code du programme d'ordinateur Pg! sont par exemple chargées dans une mémoire RAM avant d'être exécutées par le processeur de l'unité de traitement 21 . Les étapes du procédé de traitement en question sont alors mises en œuvre par le processeur P3 du dispositif de décodage 20.
De façon avantageuse, la table de cosinus corrigée selon l'invention est alors stockée dans une mémoire, par exemple la mémoire 23 du dispositif de décodage 20. Selon une variante, la table de valeurs de fenêtres de pondération est stockée dans une mémoire, par exemple la mémoire 23 du dispositif 20.
Bien sûr d'autres modes de réalisation que les exemples décrits peuvent être envisagés. L'invention, qui vient d'être décrite s'applique donc potentiellement à de nombreuses applications de traitement de signal, y compris en dehors du domaine du codage et du décodage de signaux audionumériques. A titre d'exemple, on cite le domaine des transformées 2D utilisées en traitement d'images.
Les procédés de traitement d'un signal numérique par application d'une transformée temps- fréquence et d'une transformée temps-fréquence inverse selon l'invention présentent de nombreux avantages. Ils permettent notamment d'augmenter significativement le SN R de la transformée temps-fréquence appliquée au signal et de sa condition de reconstruction parfaite, sans incidence sur la complexité globale du traitement.

Claims

REVENDICATIONS
1. Procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, comprenant les étapes suivantes :
- rotation (T2) du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation (T4) du signal par application d'une transformation de Fourier discrète ;
- rotation (T6) du signal transformé, dite post-rotation du signal;
- compensation (T5) d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé,
- stockage préalable de valeurs de cosinus en mémoire dans une table, lesdites valeurs stockées étant destinées à être utilisées par les étapes de rotation (T2, T6),
ledit procédé étant caractérisé en ce qu'il comprend en outre une étape (TO) de correction de l'approximation consistant à appliquer un facteur multiplicatif de correction (F) aux valeurs de ladite table, avant leur stockage en mémoire.
2. Procédé de traitement d'un signal numérique par application d'une transformation temps-fréquence, comprenant les étapes suivantes :
- stockage préalable de valeurs de fenêtres de pondération dans une table;
fenêtrage du signal numérique destinée à utiliser lesdites valeurs stockées ;
- rotation (T2) du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation (T4) du signal par application d'une transformation de Fourier discrète ;
- rotation (T6) du signal transformé, dite post-rotation du signal;
- compensation (T5) d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé,
ledit procédé étant caractérisé en ce qu'il comprend en outre une étape (TO) de correction de l'approximation consistant à appliquer le carré d'un facteur multiplicatif de correction d'approximation (F) aux valeurs de ladite table, avant leur stockage en mémoire.
3. Procédé de traitement d'un signal numérique selon l'une des revendications 1 ou 2, caractérisé en ce que, le signal comprenant des blocs successifs de N échantillons, le facteur de correction F(N) ne dépend que du nombre N d'échantillons.
4. Procédé de traitement d'un signal numérique selon l'une des revendications 1 à 3, caractérisé en ce que, le facteur de correction d'approximation F(N) est fonction d'un premier gain G1 et d'un deuxième gain G2, tel que
F(iV) = +G|)4' "1 et G2 étant fonctions du nombre d'échantillons.
5. Procédé de traitement d'un signal numérique selon la revendication 4, caractérisé en ce que, la compensation par approximation est appliquée au signal avec un facteur de compensation égal à W8 ~3 = le premier gain G1 est égal à 1 et le
Figure imgf000022_0001
deuxième gain G2 à—.
a AN
6. Procédé de codage d'un signal numérique, caractérisé en ce qu'il met en œuvre un traitement dudit signal obtenu conformément au procédé de traitement des revendications 1 à 5.
Procédé de décodage d'un signal numérique, caractérisé en ce qu'il met en œuvre un traitement dudit signal, conformément au procédé de la revendication 1 à 6.
Dispositif (100) de traitement d'un signal numérique par application d'une transformation temps-fréquence, ledit dispositif comprenant les modules suivants :
- rotation du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation du signal par application d'une transformation de Fourier discrète ;
- rotation du signal transformé, dite post-rotation du signal;
- compensation d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé,
- stockage de valeurs de cosinus en mémoire dans une table, lesdites valeurs stockées étant destinées à être utilisées par le module de rotation, ledit dispositif étant caractérisé en ce qu'il comprend en outre un module de correction d'approximation, apte à appliquer un facteur multiplicatif de correction F aux valeurs de ladite table, avant leur stockage en mémoire.
9. Dispositif de traitement d'un signal numérique par application d'une transformation temps-fréquence, ledit dispositif comprenant les modules suivants :
- stockage préalable de valeurs de fenêtres de pondération dans une table;
- fenêtrage du signal numérique destinée à utiliser lesdites valeurs stockées ;
- rotation du signal avant l'application d'une transformation de Fourier discrète, dite pré-rotation du signal ;
- transformation du signal par application d'une transformation de Fourier discrète ;
- rotation du signal transformé, dite post-rotation du signal;
- compensation d'au moins une desdites rotations par multiplication du signal obtenu avec un facteur de compensation approximé,
ledit dispositif étant caractérisé en ce qu'il comprend en outre un module de correction de l'approximation apte à appliquer le carré d'un facteur multiplicatif de correction d'approximation (F) aux valeurs de ladite table, avant leur stockage en mémoire.
10. Dispositif de codage (10) d'un signal numérique, caractérisé en ce qu'il est apte à mettre en œuvre un dispositif (100) de traitement par transformée temps-fréquence conformément à la revendication 9.
11. Dispositif de décodage (20) d'un signal numérique, caractérisé en ce qu'il est apte à mettre en œuvre un dispositif de traitement par transformée conformément à la revendication 9.
12. Programme d'ordinateur (Pg1 ) comprenant des instructions pour la mise en œuvre du procédé de traitement d'un signal numérique par application d'une transformée selon les revendications 1 à 5 lorsqu'il est exécuté par un processeur.
13. Programme d'ordinateur (Pg2) comprenant des instructions pour la mise en œuvre du procédé de codage d'un signal numérique selon la revendication 6, lorsqu'il est exécuté par un processeur.
14. Programme d'ordinateur (Pg3) comprenant des instructions pour la mise en œuvre du procédé de décodage d'un signal numérique selon la revendication 7, lorsqu'il est exécuté par un processeur.
PCT/FR2013/051401 2012-06-15 2013-06-14 Procede de traitement d'un signal numerique, dispositif et programmes d'ordinateurs associes WO2013186506A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1255636A FR2992131A1 (fr) 2012-06-15 2012-06-15 Procede de traitement d'un signal numerique, dispositif et programmes d'ordinateurs associes
FR1255636 2012-06-15

Publications (1)

Publication Number Publication Date
WO2013186506A1 true WO2013186506A1 (fr) 2013-12-19

Family

ID=47172764

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2013/051401 WO2013186506A1 (fr) 2012-06-15 2013-06-14 Procede de traitement d'un signal numerique, dispositif et programmes d'ordinateurs associes

Country Status (2)

Country Link
FR (1) FR2992131A1 (fr)
WO (1) WO2013186506A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6463081B1 (en) * 1998-04-07 2002-10-08 United Microelectronics Corp. Method and apparatus for fast rotation
EP2290938A1 (fr) * 2009-06-24 2011-03-02 Huawei Technologies Co., Ltd. Procédé de traitement de signal, procédé de traitement de données et appareil de traitement de données

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6463081B1 (en) * 1998-04-07 2002-10-08 United Microelectronics Corp. Method and apparatus for fast rotation
EP2290938A1 (fr) * 2009-06-24 2011-03-02 Huawei Technologies Co., Ltd. Procédé de traitement de signal, procédé de traitement de données et appareil de traitement de données

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
DE-MING ZHANG ET AL: "A Low Complexity Transform - Evolved DCT", COMPUTATIONAL SCIENCE AND ENGINEERING (CSE), 2011 IEEE 14TH INTERNATIONAL CONFERENCE ON, IEEE, 24 August 2011 (2011-08-24), pages 144 - 149, XP032068071, ISBN: 978-1-4577-0974-6, DOI: 10.1109/CSE.2011.36 *
DE-MING ZHANG; HAI-TING LI: "A Low Complexity Transform - Evolved DCT", PROCEEDINGS DE LA CONFÉRENCE COMPUTATIONAL SCIENCE AND ENGINEERING (CSE), 2011 IEEE 14TH INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE AND ENGINEERING, 24 August 2011 (2011-08-24), pages 144 - 149
HEKSTRA G J ET AL: "Fast rotations: low-cost arithmetic methods for orthonormal rotation", PROCEEDINGS 13TH IEEE SYMPOSIUM ON COMPUTER ARITHMETIC. ASILOMAR, CA, JULY 6 - 9, 1997; [IEEE SYMPOSIUM ON COMPUTER ARITHMETIC], LOS ALAMITOS, CA : IEEE COMP. SOC. PRESS, US, 6 July 1997 (1997-07-06), pages 116 - 125, XP010241200, ISBN: 978-0-8186-7846-2, DOI: 10.1109/ARITH.1997.614886 *
P RIEDER ET AL: "Orthogonal approximation of the discrete cosine transform", PROCEEDINGS OF EUROPEAN CONFERENCE ON CIRCUIT THEORY AND DESIGN: ECCTD '95, vol. 2, 1995, pages 1003 - 1006, XP055057088, ISBN: 975-561-061-8 *

Also Published As

Publication number Publication date
FR2992131A1 (fr) 2013-12-20

Similar Documents

Publication Publication Date Title
EP1789956B1 (fr) Procede de traitement d&#39;un signal sonore bruite et dispositif pour la mise en oeuvre du procede
EP1905010B1 (fr) Codage/décodage audio hiérarchique
EP2104936B1 (fr) Codage par transformee, utilisant des fenetres de ponderation et a faible retard
EP3014611B1 (fr) Extension améliorée de bande de fréquence dans un décodeur de signaux audiofréquences
CA2839971C (fr) Fenetres de ponderation en codage/decodage par transformee avec recouvrement, optimisees en retard
WO2012052676A1 (fr) Codage/decodage paramétrique stéréo amélioré pour les canaux en opposition de phase
EP1395981B1 (fr) Dispositif et procede de traitement d&#39;un signal audio.
EP0511095B1 (fr) Procédé et dispositif de codage-décodage d&#39;un signal numérique
EP3103116A1 (fr) Extension ameliorée de bande de fréquence dans un décodeur de signaux audiofréquences
EP2656344B1 (fr) Filtrage perfectionne dans le domaine transforme
EP2347411A1 (fr) Attenuation de pre-echos dans un signal audionumerique
WO2013186506A1 (fr) Procede de traitement d&#39;un signal numerique, dispositif et programmes d&#39;ordinateurs associes
FR3020732A1 (fr) Correction de perte de trame perfectionnee avec information de voisement
FR3009121A1 (fr) Procede de suppression de la reverberation tardive d&#39;un signal sonore
EP2126905B1 (fr) Procédés et dispositifs d&#39;encodage et décodage de signaux audio, signal audio encodé
EP2126904B1 (fr) Procede et dispositif de codage audio
EP1192618B1 (fr) Codage audio avec liftrage adaptif
EP1192621B1 (fr) Codage audio avec composants harmoniques
FR2990552A1 (fr) Traitement d&#39;amelioration de la qualite des signaux audiofrequences
WO2009010672A2 (fr) Limitation de distorsion introduite par un post-traitement au decodage d&#39;un signal numerique
WO1999027523A1 (fr) Procede de reconstruction, apres debruitage, de signaux sonores
FR2980620A1 (fr) Traitement d&#39;amelioration de la qualite des signaux audiofrequences decodes
FR2773653A1 (fr) Dispositifs de codage/decodage de donnees, et supports d&#39;enregistrement memorisant un programme de codage/decodage de donnees au moyen d&#39;un filtre de ponderation frequentielle

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13737321

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13737321

Country of ref document: EP

Kind code of ref document: A1