EP2119073A1 - Method for generating mutually orthogonal signals having a controlled spectrum - Google Patents

Method for generating mutually orthogonal signals having a controlled spectrum

Info

Publication number
EP2119073A1
EP2119073A1 EP08775694A EP08775694A EP2119073A1 EP 2119073 A1 EP2119073 A1 EP 2119073A1 EP 08775694 A EP08775694 A EP 08775694A EP 08775694 A EP08775694 A EP 08775694A EP 2119073 A1 EP2119073 A1 EP 2119073A1
Authority
EP
European Patent Office
Prior art keywords
complex
spectra
signals
matrix
mutually orthogonal
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.)
Withdrawn
Application number
EP08775694A
Other languages
German (de)
French (fr)
Inventor
Bruno Lozach
José Bollo
Alain Le Guyader
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Publication of EP2119073A1 publication Critical patent/EP2119073A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/10Code generation
    • H04J13/12Generation of orthogonal codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J13/00Code division multiplex systems
    • H04J13/0007Code type
    • H04J13/004Orthogonal

Definitions

  • the present invention relates to a method of generating mutually orthogonal signals whose spectrum is controlled.
  • Spectral spread audio tattooing uses time signals with a broad spectrum - the extended spectrum.
  • the tattoo uses either one or more signals stored in a dictionary for symbol modulation.
  • signals whose inter-correlation product is zero it is preferred to use signals whose inter-correlation product is zero, as this facilitates correlation detection.
  • Cross-correlation of signals is a particular form of the dot product. It can thus be said that to look for signals that are not correlated with one another is to choose a family of mutually orthogonal signals.
  • tattooing we need signals whose spectrum is under control, that is to say that correspond to a particular template.
  • an AAC (Advanced Audio Coding) coded signal at 24 kbit / s per channel occupies a band in the order of
  • the tattoo must be as discreet as possible, it will be modulated and formatted taking into account the properties of psychoacoustics. To guarantee a precise shaping, below the masking curve guaranteeing the inaudibility of the mark, the signal to be modulated must have a perfectly white spectrum.
  • the generation of real time signals of mutually orthogonal given length is generally done, either by an orthogonalization technique of a family of time signals, generally random, or by use of the rows or columns of the actual Hadamard matrices.
  • orthogonalization technique of a family of time signals, generally random, or by use of the rows or columns of the actual Hadamard matrices.
  • Each of these techniques of the prior art has the disadvantage of producing signals whose power spectrum is difficult to control.
  • variations of dynamics of 60 dB and more are observed on the power spectrum, the spectrum being chopped and not very regular.
  • the technique of actual Hadamard matrices can produce only signals of length 2 or multiples of 4.
  • WO-A-0077962 discloses a method for generating orthogonal complex spectra in low numbers, typically seven, by discretizing the phase of each complex sample. This method has the disadvantage of providing only a limited number of sequences.
  • the present invention provides a method of generating a plurality of discrete spectra s (i) of Q dimension, mutually orthogonal and with controlled power, where i denotes the spectrum number, these spectra representing time signals in the spectral domain and being of constant ⁇ module in a set of spectral line designation G and zero everywhere else, the method being remarkable in that it consists of:
  • the invention allows the generation mutually orthogonal discrete spectra of any length, in desired number and at controlled power. In addition, it is not necessary to construct the entire complex Hadamard matrix.
  • the step of determining at least a portion of the complex Hadamard matrix consists in obtaining a column of a rotation matrix calculated from predetermined rotation and permutation keys applied to a matrix. of reference Hadamard.
  • the method further comprises a step of decomposition of the order d R of the reference Hadamard matrix into a product of factors and a sub-step of calculating the least common multiple of the set. of these factors for the determination of the reference Hadamard matrix.
  • choosing the least common multiple means that the phases of the complex spectrum generated will be as far apart as possible. This increases the robustness to noise.
  • the method further comprises a step of determining a signal
  • T denotes the number of temporal dimensions
  • F qJ denotes the Fourier matrix of order q ⁇ , so as to generate a plurality of mutually orthogonal time signals s (i).
  • the present invention also proposes a method for generating a family of time signals, which is remarkable in that it consists in combining mutually orthogonal time signal families generated by a method as briefly described above and whose spectral supports are disjoint.
  • the use of families of complex spectra with disjoint power spectra makes it possible to quantify the signal in the transformed domain by using progressive signal frequency modeling by orthogonal complex spectra. This way of proceeding gives directly to each step optimal scale factors for the complex spectra, without requiring reoptimization of the preceding factors, contrary to the prior art, which uses a Gram-Schmidt method for this reoptimization.
  • the present invention also provides the use of mutually orthogonal complex time signals or spectra generated by a method as briefly described above for spectral spreading in spread spectrum transmission systems.
  • these signals or spectra are spread spectrum in the transmitted band and power of value 1, unlike the Hadamard sequences used in the current American system IS95 code division multiple access.
  • audio coders they can be used as quantization dictionaries in predictive coders.
  • the quantization is performed by two fast algorithms: on the one hand, by fast Fourier transform for the passage in the frequency domain and, on the other hand, for the scalar product involved in the quantization.
  • the present invention also provides the use of mutually orthogonal complex time signals or complex spectra generated by a method as briefly described above for audio tattooing and its detection.
  • these spectra can be directly used for tattooing in the frequency domain, their ideally white power spectrum in the transmitted band (s) allowing their precise shaping by psychoacoustic weighting, which is an important property to ensure the character inaudible tattoo.
  • the spectra of the prior art do not allow this precise formatting, since their power spectrum has a significant variation in dynamics.
  • the complex spectra of the invention also have the advantage of being easily modulated as such, in defined frequency bands, in code access multiplex transmission systems.
  • the time domain signals in audio tattooing, they can be directly used for spread spectrum tattooing, where a symbol of K b bits is represented by K b orthogonal signals.
  • K b bits is represented by K b orthogonal signals.
  • the present invention also provides the use of mutually orthogonal complex spectrums with controlled power spectrum generated by a method as briefly described above for encoding or representing audio signals, the audio signals being quantized by means of a dictionary or family of dictionaries with real or complex values.
  • these spectra can be used as quantization dictionaries for the signals coming from a discrete Fourier transform.
  • the quantization is for example performed by a fast algorithm whose structure is derived from the way in which the dictionary is constructed, in a particular embodiment, by Kronecker products of small-size basic matrices.
  • the present invention also provides the use of mutually orthogonal complex time signals or spectrums with controlled power spectrum generated by a method as briefly described above for the optimization of metrology excitation data.
  • the fact that the generated sequences have an ideally flat spectrum in the band is likely to improve the accuracy of the detection compared to the current use of the pseudo-noise sequences generated by shift registers, whose correlation function has a parasitic term with respect to its ideal value, which is a Dirac.
  • the invention proposes a device for generating a plurality of discrete spectra S (i) of dimension Q that are mutually orthogonal and with controlled power, i denoting the number of the spectrum, these spectra representing time signals in the spectral domain and being of constant ⁇ module in a set of spectral line designation G and zero anywhere else, the device being remarkable in that it comprises:
  • the present invention further provides a computer program product that can be loaded into a programmable apparatus, characterized in that it includes instruction sequences for implementing a method as briefly described above, when this program is loaded and executed by the programmable device.
  • FIG. 1 is a graph representing the power spectrum of the signals generated, in a particular embodiment of the invention.
  • FIG. 2 is a flowchart illustrating the main steps of a time signal generation method according to the present invention, in a particular embodiment
  • FIGS. 3 to 6 are flowcharts detailing various operations performed to obtain a column of a matrix of rotations of a complex Hadamard matrix according to the present invention, in a particular embodiment
  • FIG. 7 is a flowchart illustrating the process according to the present invention in all its generality
  • FIG. 8 is a flowchart illustrating in more detail the so-called "band calculation” method implemented in the flowchart of FIG. 7;
  • FIG. 9 is a flowchart illustrating in more detail the so-called "band preparation” step implemented in the flowchart of FIG. 8;
  • FIG. 10 is a flowchart illustrating in greater detail the spectral calculation step implemented in the flowchart of FIG. 8;
  • FIG. 11 is a flowchart illustrating in more detail the so-called "exponential" step implemented in the flowchart of FIG. 10;
  • FIG. 12 is a flowchart illustrating in greater detail the step of calculating the extension of FIG. 9 in the case of complex spectra;
  • Fig. 13 is a flowchart illustrating in more detail the step of extending Fig. 10 in the case of complex spectra
  • Fig. 14 is a flowchart illustrating in more detail the step of preparing the extension in the case of complex spectra
  • Fig. 15 is a flowchart illustrating in more detail the step of extending Fig. 10 in the case of real signals
  • FIGS. 16 to 19 illustrate examples of application of the present invention, in particular embodiments; and - Figure 20 schematically shows a device adapted to implement the present invention, in a particular embodiment.
  • the invention applies to the case of real or complex discrete signals. Below are some notations and definitions that will be used in the rest of the description.
  • the number of signals generated is noted Ns.
  • the signals to be generated will be noted s (i), where 0 ⁇ i ⁇ Ns, where i is the variable that designates the signal number.
  • Each signal s (i) can be seen indifferently, either as a signal of length Ls, or as an application of [0; Ls-1] c N (N being the set of natural numbers), or as a vector of dimension ls. This last interpretation, that is to say the vectorial interpretation, is preferred here.
  • each signal s (i) is a vector of E Ls (the Cartesian product of the vector space E at the power Ls) where E is either the body of the reals 9? (in the case of a real-valued signal), that is the body of the complexes C (in the case of a signal with complex values).
  • E is either the body of the reals 9? (in the case of a real-valued signal), that is the body of the complexes C (in the case of a signal with complex values).
  • the values of the signal s (i) are denoted s (i) [n], where 0 ⁇ n ⁇ Ls, where n is the variable which designates the time sample.
  • F ( ⁇ ) -F ( ⁇ ) n1 (n) (1.2) where F (n) denotes the conjugate matrix of F (n) , F (n) denotes the transposed matrix of the matrix F (n) and (n) denotes the identity matrix of order n.
  • F and F are respectively the Discrete Fourier Transform (DFT) matrix and the inverse Discrete Fourier transform matrix.
  • DFT Discrete Fourier Transform
  • F the matrix F will be used in two different contexts: to transform a complex spectrum with a controlled power spectrum into a time signal, and
  • the power spectrum of the time signal is given as a function of the complex spectrum by:
  • 1. Note that Fourier matrices are complex Hadamard matrices.
  • the complex Hadamard matrices also have the following properties: - if H is a complex Hadamard matrix, if P, Q are permutation matrices, if C, D are diagonal matrices whose non-null elements of the diagonal have a module of 1, then PCHD Q is also a complex Hadamard matrix; - If G and H are two complex Hadamard matrices of respective orders g and h, then G ® H is a complex gham Hadamard matrix.
  • the operation ⁇ 8> is the product of Kronecker or tensor product.
  • the low frequency F min is linked to the index S min and to the sampling frequency F e by: s 1 ⁇ mIn - F min - p
  • Ls is the number of samples of the DFT defined by equation (1.3).
  • Phases are the only degrees of freedom of the system.
  • the signals form a free family in the space of the signals of length Ls, they are orthogonal to each other, or, in other words, they are not correlated with each other.
  • the spectrum of signals Frequencies are then perfectly white over the entire frequency band and the correlation function of the orthogonal temporal signals, derived by inverse Fourier transform, is equal to a Dirac distribution, an interesting property in many applications.
  • the time signals will be real when the property of symmetry with complex conjugate (equation (1.5)) will be verified.
  • ⁇ s (i> is (i) M, w ,, (Wi ⁇ ) ⁇ *: tr 2
  • the module 20 calculates the ith column of a matrix of rotations of a complex Hadamard matrix H cle whose generation depends on a key.
  • z ⁇ (n) 0 2 ⁇ ⁇ 1 , to go from the entire rotation to the corresponding complex number of module 1.
  • a key is used to obtain distinct signal families. In an application of the present invention tattooing signal files, this allows for separate tattoos that can be superimposed without interacting.
  • the key is an integer which makes it possible to generate two permutations of Ns elements and twice Ns integer rotations of order ⁇ , that is to say a number from 1 to [NS! . ⁇ NS ] 2 .
  • the keys are used to initialize a generator making it possible to extract the necessary information.
  • the introduction of the key allows to introduce a secret in the process of generating the sequences and thus to restrict the possibility of their use to the owners of the key only.
  • the module 22 transforms a vector of rotations of Z dR into a complex vector with a discrete spectrum of C Ls .
  • the complex spectrum s (i) can be used as such, which has been shown in Figure 2 by an arrow output algorithm. Otherwise, the generation of mutually orthogonal time signals is performed by the module 24 which transforms a complex vector s (i) in C Ls and controlled spectrum into a controlled discrete spectrum time vector of E Ls .
  • the module 24 is an application module of a reverse discrete Fourier transform of order Ls. This operation is well known to those skilled in the art. It does not depend on i.
  • this module calculates a column of the matrix H cle .
  • This has the advantage of avoiding the construction of the complete matrix and thus simplifying and accelerating calculations.
  • the matrix of the rotations is expressed thus: ⁇ ⁇
  • H r ef is the reference complex Hadamard matrix canonically constructed by the process as a function of d R ;
  • auxiliary functions ⁇ c hg, ⁇ c iecoi, Pcie hg and p c iecoi is trivial.
  • the permutations can be performed for example by scrambling algorithms well known in cryptography and the rotations can be initialized by a random function for introducing a secret. In the context of the description of the process, these calculated and known auxiliary functions are assumed.
  • d R - 100 DF (d R ) - ⁇ 2; 2; 5; 5 ⁇ and Nf - 4.
  • the complex Hadamard matrix H ref of reference constructed by the method is defined by:
  • n i + f i- ( n 2 + f 2 - (n 3 + • • • ))
  • H ref is an integer matrix
  • Figure 3 shows the organization of the process of calculating the ith column of the rotation matrix H de [.] [I].
  • Step 302 consists in performing the permutation ⁇ c ie, cor (i) and then to calculate directly ref H [.] [ ⁇ collar key (i)]. To this last matrix is added, at step 304, the contribution of the rotations according to equation (1.8).
  • a basic example of workflow a) and b) is illustrated in the flowchart of Figure 4.
  • a variable n is initialized to the value dR, a variable D to the value 2, a variable i to the value 0 and a variable ⁇ to the value 1.
  • test 402 consisting in checking if n is congruent to zero modulo D, that is, if n is a multiple of D.
  • test 402 If the test 402 is negative, a test 404 consisting in verifying if n is 1 is carried out.
  • test 404 If the test 404 is negative, the value of the variable D (step 406) is incremented by one unit and the test 402 is returned. If the test 404 is positive, the variable Nf, which designates the number of factors, is assigned. from the decomposition of dR, the value of i (step 408) and the algorithm ends.
  • test 402 If the test 402 is positive, a test 410 is performed consisting in checking whether ⁇ is congruent to zero modulo D.
  • step 412 If the test 410 is negative, the variable ⁇ is assigned the value of the variable D. ⁇ (step 412) and step 414 is passed. If the test 410 is positive, it goes directly to step 414.
  • Step 414 consists in assigning the variable n the value of the variable n / D, incrementing the value of the variable i by one, and assigning the variable fi the value of the variable D. Then, we return to test 402. Returning to FIG. 3, the operation 302 for calculating the column
  • I j and q are calculated progressively.
  • a variable I is initialized to the value 0 and a variable c to the value of the auxiliary function ⁇ c ié, ⁇ ⁇ (i) -
  • a variable j is initialized to the value 1 and a variable a to the value 0 (step 504). Then, one tests during a test 506 if j> Nf, Nf denoting the number of prime factors of dR. If the 506 test is positive, the value of the variable a to the variable H ref [1] [c] (step 508), the value of the variable I (step 510) is incremented by one unit and returns to the test 502.
  • the next step 516 is to assign the value of a + - - c, - I, to
  • step 518 the value of variable j is incremented by one and the value of variable x is assigned to variable I and the value of variable y to variable c.
  • operation 304 consists of calculating the column H of [.] [I] by calculating the
  • an initialization step 600 firstly consists in initializing a variable I at the value 0, a variable c at the value of the auxiliary function ⁇ c ié, coi (i), a variable h the value of H ref [c] and a variable r to the value of the auxiliary function p c ie, cor (i) [.] -
  • the set Q makes it possible to express the values of a signal f of A as a function of Q in E, ie f: Q ⁇ E; x ⁇ -> f (x).
  • a signal is comparable to f, an element of the set of functions of Q in E, denoted by F (Q 1 E), ie f ⁇ F (Q 1 E).
  • the set F (Q 1 E) is known as a vector space, and thus, as before, we will equate the signals f with vectors of the vector space F (Q 1 E).
  • a key named key has been associated to them, possibly unique, which allows the generation of a variety of weakly correlated signals families.
  • G is the definition of the constraints of the system: each constraint cg has
  • FIG. 7 illustrates the process according to the present invention in all its generality.
  • the constraint G is segmented into its constraints by ego band, cgi, cg 2 , etc.
  • Each band g a gives rise to the generation (via the modules 70, 71, 72, etc.) of a signal s a (i) and of its variant s a (i) in the Fourier domain, having a controlled spectrum .
  • the signals thus created are multiplied (via the modules 700, 701, 702, etc.) by a factor c a which controls the power of the signal in this band.
  • the signals are then added in a module
  • the factors c a can be modified without changing the orthogonality (non correlation) of the spectra and signals, they modify only the balancing of the power of the signals s (i, c) and s (i, c).
  • the method in all its generality illustrated in FIG. 7 uses the so-called "band calculation" method (in the modules 70, 71, 72, etc.).
  • the band calculation is illustrated in more detail on the flowchart of FIG. 8. It includes a step 80 called “band preparation” which makes it possible to determine once and for all the generation parameters that will be used by the so-called “calculation” method. spectral "illustrated by block 82.
  • Spectral calculation method allows the generation of the complex spectrum S (i) of the ith band signal g a.
  • the signal s (i) is obtained at the output of the module 84, by a discrete inverse Fourier transform of its complex spectrum s a (i), by a simple implementation of the formula
  • the band preparation step is illustrated in greater detail in the flowchart of FIG. 9.
  • This mechanism is composed of a so-called "extension calculation” module 90 which determines, as a function of the constraint cg a and the dimensions of the system, the dimension a, R Hadamard matrices (and thus the maximum number of the family of signals) and PRLG extension data to be used for the extension.
  • the preparation module 300 is the one described above in conjunction with FIGS. 3 and 4.
  • the flowchart of FIG. 10 shows in greater detail the organization of the spectral calculation step implemented by the block 82 of FIG. 8. This step includes:
  • a so-called "exponential” step 106 which consists of calculating the complex numbers corresponding to the calculated rotations and normalizing them by a scale factor making it possible to obtain the power property controlled.
  • an initialization step 110 firstly consists of initializing a variable I at the value 0. Then a test 112 consists in checking whether the value of the variable I has reached the maximum number d a , R of family signals. If this is the case, the procedure ends. Otherwise, we calculate
  • FIGS. 12 and 13 show the calculation steps in the case of complex signals. This case is the simplest because there is no symmetrization constraint.
  • FIG. 12 illustrates in greater detail the step 90 of calculating the extension of FIG. 9 in the case of complex signals.
  • a step 120 the value of the band g a is assigned to the variable prlg a .
  • a step 122 the value of
  • FIG. 13 illustrates in greater detail step 108 of extension of FIG. 10 in the case of complex spectra.
  • the variable s (i) [.] Is initialized to the value 0 and during a step
  • step 140 we begin with steps of initialization of d a , R at the value 0 (step 140), extension data prg a to the empty set (step 142) and variable I to the value 0 (step 144). .
  • J a, R is assigned to the variable k the value of g a [l] (step 150). Note that the value of ⁇ a is different depending on whether the signals are real or complex.
  • step 160 add k to the extension data (step 160), increment by one unit the value of d a , R (step 162) and then go to step 154.
  • This extension of preparation removes the elements of g which is undesirable.
  • the dimension d a , R can have a value different from
  • the variable I is then incremented by one unit (step 166) and then returns to test 134.
  • a first example concerns the tattooing of audio files.
  • FIG. 16 shows, by way of nonlimiting example, that the method according to the invention makes it possible to provide time signals or their Fourier variants with discrete spectra controlled at the level of the modulation of the messages.
  • the data received from the transmission channel are processed in order to reconstitute the messages sent.
  • the process of Figure 16 can be used to power a read-only memory (ROM), which avoids boarding the process.
  • ROM read-only memory
  • the binary message is modulated (within a block 1600) by the signal allocated to the user #i for whom the binary data is intended.
  • the signal is then processed to be transmitted on the mobile radio channel 1602.
  • the user #i performs the correlation of the received signal (block 1604). Since the signals are orthogonal, the user # i will only detect, in the stream he receives, the data that is intended for him.
  • These signals can also be used in metrology, where they can make it possible to optimize the excitation data to be supplied to the studied system, as shown in FIG. 17. This makes it possible to increase the relevance of the result of the measurement performed on the system. system studied.
  • the method of Figure 17 can be used to power a ROM, which avoids boarding the process.
  • a typical case of use in metrology is the measurement of the impulse response of acoustic rooms.
  • a long periodic signal sequence is emitted by a loudspeaker, each period of which is flat spectrum or controlled according to the case.
  • the periodic signal will be filtered by the impulse response of the room.
  • the signal is retrieved from a microphone for processing.
  • the percussion response of the room is obtained by making the cross correlation between the signal received by the microphone and the transmitted sequence.
  • the transmitted sequence has a correlation function equal to a Dirac distribution. This is precisely the case of the time signals which are the subject of the present invention.
  • Correlation is performed by taking a sequence of twice the size of the desired impulse response.
  • An efficient way of performing the correlation is to perform the discrete Fourier transform of the received signal, to multiply the frequency signal obtained by the conjugate complex of the Fourier transform of the orthogonal sequence and to perform a fast inverse Fourier transform of the received signal. resulting signal.
  • the signals are generated in the spectral domain, it is sufficient to store in ROM the frequency version of the sequence.
  • These signals can also be used as a basis for encoding or representing signals.
  • these signals may be used in digital audio coding as illustrated by way of example in FIG. 18.
  • the use of orthogonal complex spectrums in the frequency domain makes it possible to code the speech or audio signal directly in this domain.
  • the quantization noise shaping can be performed so that the noise faithfully follows the masking curve over the specified frequency bands.
  • the coding device illustrated in FIG. 18 comprises a dictionary in which the complex spectra generated according to the method of the invention are stored. This type of dictionary is used in the coding or decoding of audio signals to implement the quantization and inverse quantization step.
  • the signals are generated by Kronecker products of base matrices
  • the scalar product of the signal to be quantified by all the waveforms of the dictionary can then be efficiently obtained by a fast algorithm involving butterflies such as of the Fast Fourier Transform (TFR) or that of the actual Hadamard transform.
  • TFR Fast Fourier Transform
  • the dictionary is expanded by taking different matrices as generating matrices. For example, for an order 2, there are 64 possible basic matrices, the elements of each matrix being orthogonal and chosen in (1, -1, i, -i). More specifically, Figure 18 illustrates the use of mutually orthogonal complex spectra in a time-domain predictive coder.
  • the contribution of the filtering of an emitted signal s e (n) with zero excitation (block 180) is first removed from the signal (subtractor 182) to give the target t.
  • the target t in the frequency domain is obtained by Fast Fourier Transform of t (block 184).
  • the complex samples of the signal are quantized by a quantizer 186 defined by a dictionary containing the Ns orthogonal complex vectors s (0), ..., s (Ns - 1).
  • Ns - 1 The numerator is equal to the scalar product of t ⁇ h ⁇ by all the waveforms of the dictionary generated by a Kronecker product of elementary matrices for which an effective algorithm of the "Hadamard transform" type is realized.
  • the resulting structure is based on a butterfly structure similar to that of the TFR.
  • the computation of the optimal index amounts to computation of the index i op t which maximizes [t ⁇ s (i)] 2 .
  • a particular example of implementation is obtained by segmenting the spectrum into frequency bands, contiguous or not, of variable length, possibly with areas of zero amplitude at high frequencies.
  • Fig. 19 shows an example of using mutually orthogonal signals in the case of audio tattooing.
  • the complex signals or spectra are generated according to the description given above, the method illustrated being either on-board or off-line, the signals being stored once and for all in a ROM.
  • the resynchronization and the correlation are first carried out between the received signal and the set of signals of the reception dictionary.
  • the detected signal is the one that gives the maximum correlation.
  • FIG. 2 A device 200 implementing the methods in accordance with the invention is illustrated in FIG. This device may be for example a microcomputer 200 connected to different peripherals, at least some of which may provide information to be processed according to the invention.
  • the device 200 may comprise a communication interface 2000 connected to a network (not shown).
  • the device 200 furthermore comprises storage means 2002, such as a hard disk. It may also include a reader of 2004 information carriers such as floppy disks, CD-ROMs or memory cards 2006.
  • the information carrier 2006 and the storage means 2002 may contain software implementation data of the invention. as well as the code of the invention which, once read by the device 200, will be stored on the storage means 2002.
  • the program enabling the device to implement the invention may be stored in read-only memory (by example a ROM) 2008.
  • the program can be received via the network, to be stored in the same manner as described above.
  • the device 200 is connected to a microphone 2010 via an input / output card 2012.
  • the data to be processed according to the invention will in this case be an audio signal.
  • This same device includes a 2014 screen to visualize the information to be processed or to interface with the user, who can set some modes of treatment, using a keyboard 2016, a mouse or any other way.
  • a CPU 2018 executes the instructions for implementing the invention, instructions stored in the ROM 2008 or in the other storage elements.
  • the programs and processing methods stored in one of the (non-volatile) memories, for example the ROM 2008 are transferred to a random access memory (for example, a RAM) 2020, which then contains the executable code of the invention as well as the variables necessary for the implementation of the invention.
  • a communication bus 2022 allows communication between the different sub-elements of the microcomputer 200 or linked to it.
  • the representation of the bus 2022 is not limiting and in particular, the central unit 2018 is capable of communicating instructions to any sub-element of the microcomputer 200 directly or via another sub-element of the microcomputer 200.
  • the device described here is likely to contain all or part of the treatment described in the invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Complex Calculations (AREA)

Abstract

The invention relates to a method for generating mutually orthogonal signals having a controlled spectrum, comprising the generation of a plurality of mututally orthogonal, controlled-power discrete spectra s(i) having dimension Q, i designating spectrum number. The aforementioned spectra represent time signals in the spectral range and have a modulus μ that is constant in a spectral line designation set G and zero everywhere else. The inventive method comprises the following steps: determining (20) at least part of a complex Hadamard matrix H of order dR = w in the case of spectra of real signals and dR = 2.w in the case of spectra of complex signals; determining (22) the extension P of matrix H from G and dimension Q; and obtaining (22) controlled-power spectra s(i) = μ.P(H[.][i]), wherein H[.][i] designates the i-th column of matrix H. In addition, a plurality of mutually orthogonal time signals s(i) is also generated from said discrete complex signals.

Description

PROCEDE DE GENERATION DE SIGNAUX MUTUELLEMENT ORTHOGONAUX DONT LE SPECTRE EST CONTROLE METHOD FOR GENERATING MUTUALLY ORTHOGONAL SIGNALS WHERE THE SPECTRUM IS CONTROLLED
La présente invention se rapporte à un procédé de génération de signaux mutuellement orthogonaux dont le spectre est contrôlé.The present invention relates to a method of generating mutually orthogonal signals whose spectrum is controlled.
Elle a des domaines d'application nombreux et variés, parmi lesquels le tatouage de fichiers de signaux tels que des signaux audio.It has many and varied fields of application, including the tattooing of signal files such as audio signals.
Le tatouage audio par étalement spectral utilise des signaux temporels dont le spectre est large - on parle de spectre étendu. Le tatouage utilise soit un, soit plusieurs signaux stockés dans un dictionnaire pour la modulation de symboles. Quand plusieurs signaux sont utilisés, on préfère utiliser des signaux dont le produit d'inter-corrélation est nul, car cela facilite la détection par corrélation. L'intercorrélation des signaux est une forme particulière du produit scalaire. On peut donc dire que rechercher des signaux non corrélés entre eux revient à choisir une famille de signaux mutuellement orthogonaux.Spectral spread audio tattooing uses time signals with a broad spectrum - the extended spectrum. The tattoo uses either one or more signals stored in a dictionary for symbol modulation. When several signals are used, it is preferred to use signals whose inter-correlation product is zero, as this facilitates correlation detection. Cross-correlation of signals is a particular form of the dot product. It can thus be said that to look for signals that are not correlated with one another is to choose a family of mutually orthogonal signals.
Dans le cadre du tatouage, on a besoin de signaux dont le spectre est sous contrôle, c'est-à-dire qui correspondent à un gabarit particulier. A titre d'exemple, un signal codé en AAC (codage audio avancé, en anglais "Advanced Audio Coding") à 24 kbit/s par voie occupe une bande de l'ordre deIn tattooing, we need signals whose spectrum is under control, that is to say that correspond to a particular template. For example, an AAC (Advanced Audio Coding) coded signal at 24 kbit / s per channel occupies a band in the order of
7 kHz, d'où l'intérêt de contrôler le spectre de la marque en limitant sa largeur de bande à 7 kHz. De plus, le tatouage se doit d'être aussi discret que possible, il sera donc modulé et mis en forme en tenant compte des propriétés de la psychoacoustique. Pour garantir une mise en forme précise, en dessous de la courbe de masquage garantissant l'inaudibilité de la marque, le signal à moduler doit avoir un spectre parfaitement blanc.7 kHz, hence the interest of controlling the spectrum of the mark by limiting its bandwidth to 7 kHz. In addition, the tattoo must be as discreet as possible, it will be modulated and formatted taking into account the properties of psychoacoustics. To guarantee a precise shaping, below the masking curve guaranteeing the inaudibility of the mark, the signal to be modulated must have a perfectly white spectrum.
La génération de signaux temporels réels de longueur donnée mutuellement orthogonaux se fait généralement, soit par une technique d'orthogonalisation d'une famille de signaux temporels, généralement aléatoires, soit par utilisation des lignes ou colonnes des matrices de Hadamard réelles. Chacune de ces techniques de l'art antérieur présente l'inconvénient de produire des signaux dont le spectre de puissance est difficile à contrôler. A titre d'exemple, on observe pour la technique d'orthogonalisation, des variations de dynamique de 60 dB et plus sur le spectre de puissance, le spectre étant haché et peu régulier. En outre, la technique des matrices de Hadamard réelles ne peut produire que des signaux de longueur 2 ou multiples de 4.The generation of real time signals of mutually orthogonal given length is generally done, either by an orthogonalization technique of a family of time signals, generally random, or by use of the rows or columns of the actual Hadamard matrices. Each of these techniques of the prior art has the disadvantage of producing signals whose power spectrum is difficult to control. By way of example, for the orthogonalization technique, variations of dynamics of 60 dB and more are observed on the power spectrum, the spectrum being chopped and not very regular. In addition, the technique of actual Hadamard matrices can produce only signals of length 2 or multiples of 4.
Dans les systèmes de transmission avec des mobiles à accès multiple à répartition par code (en anglais "Code Division Multiple Access"), par exemple dans les systèmes CDMA tels que la norme IS95 (International Standard 95), les signaux utilisés pour séparer les utilisateurs sont des séquences d'Hadamard orthogonales et réelles dont le spectre dépend du numéro de la séquence. Cette façon de procéder est décrite dans l'ouvrage de Pierre LESCUYER intitulé "UMTS, les origines, l'architecture, la norme", Dunod, 2ème édition, 2002. A titre d'exemple, la première ligne de la matrice d'Hadamard ne contient que des 1. Il en résulte que cette étape doit être suivie d'une étape d'étalement de spectre proprement dite, ou embrouillage, avant la modulation (pages 116 à 119 de l'ouvrage précité), ce qui augmente la complexité d'un tel système.In transmission systems with code division multiple access (Code Division Multiple Access) mobiles, for example in CDMA systems such as IS95 (International Standard 95), the signals used to separate users are orthogonal and real Hadamard sequences whose spectrum depends on the number of the sequence. This way of proceeding is described in Pierre LESCUYER's work entitled "UMTS, origins, architecture, the norm", Dunod, 2nd edition, 2002. As an example, the first line of the Hadamard matrix contains only 1. It follows that this step must be followed by a step spreading spectrum itself, or scrambling, before the modulation (pages 116 to 119 of the aforementioned work), which increases the complexity such a system.
Le document WO-A-OO 77962 décrit un procédé permettant d'engendrer des spectres complexes orthogonaux en faible nombre, typiquement sept, en discrétisant la phase de chaque échantillon complexe. Cette méthode présente notamment l'inconvénient de ne fournir qu'un nombre de séquences restreint.WO-A-0077962 discloses a method for generating orthogonal complex spectra in low numbers, typically seven, by discretizing the phase of each complex sample. This method has the disadvantage of providing only a limited number of sequences.
Pour améliorer la situation, on cherche à engendrer des signaux réels et des spectres complexes mutuellement orthogonaux de longueur arbitraire et dont les spectres de puissance puissent être contrôlables dans la mesure de la longueur des signaux engendrés et du nombre de signaux orthogonaux voulu.To improve the situation, it is sought to generate real signals and mutually orthogonal complex spectrums of arbitrary length and whose power spectra can be controllable in the measurement of the length of the signals generated and the number of orthogonal signals desired.
Ainsi, la présente invention propose un procédé de génération d'une pluralité de spectres discrets s(i) de dimension Q, mutuellement orthogonaux et à puissance contrôlée, i désignant le numéro du spectre, ces spectres représentant des signaux temporels dans le domaine spectral et étant de module μ constant dans un ensemble G de désignation de raies spectrales et nul partout ailleurs, le procédé étant remarquable en ce qu'il consiste à :Thus, the present invention provides a method of generating a plurality of discrete spectra s (i) of Q dimension, mutually orthogonal and with controlled power, where i denotes the spectrum number, these spectra representing time signals in the spectral domain and being of constant μ module in a set of spectral line designation G and zero everywhere else, the method being remarkable in that it consists of:
- déterminer au moins une partie d'une matrice de Hadamard complexe H d'ordre dR = w dans le cas de spectres de signaux réels et dR = 2.w dans le cas de spectres de signaux complexes ;determining at least a portion of a complex Hadamard matrix H of order dR = w in the case of real signal spectra and dR = 2.w in the case of complex signal spectra;
- déterminer le prolongement P de la matrice H à partir de G et de la dimension Q ; etdetermining the extension P of the matrix H from G and the dimension Q; and
- obtenir les spectres à puissance contrôlée s(i) = μ.P(H[.][i]), où H[.][i] désigne la ième colonne de la matrice H. Ainsi, l'invention permet la génération de spectres discrets mutuellement orthogonaux de longueur quelconque, en nombre voulu et à puissance contrôlée. En outre, il n'est pas nécessaire de construire la matrice de Hadamard complexe entière.to obtain the power-controlled spectra s (i) = μ.P (H [.] [i]), where H [.] [i] designates the ith column of the matrix H. Thus, the invention allows the generation mutually orthogonal discrete spectra of any length, in desired number and at controlled power. In addition, it is not necessary to construct the entire complex Hadamard matrix.
Dans un mode particulier de réalisation, l'étape de détermination d'au moins une partie de la matrice de Hadamard complexe consiste à obtenir une colonne d'une matrice des rotations calculée à partir de clés prédéterminées de rotation et de permutation appliquées à une matrice de Hadamard de référence.In a particular embodiment, the step of determining at least a portion of the complex Hadamard matrix consists in obtaining a column of a rotation matrix calculated from predetermined rotation and permutation keys applied to a matrix. of reference Hadamard.
Ce système d'utilisation de clés permet d'engendrer des familles de spectres variées et peu corrélées. Dans un mode particulier de réalisation, le procédé comporte en outre une étape de décomposition de l'ordre dR de la matrice de Hadamard de référence en un produit de facteurs et une sous-étape de calcul du plus petit commun multiple de l'ensemble de ces facteurs pour la détermination de la matrice de Hadamard de référence. Ainsi, le fait de choisir le plus petit commun multiple signifie que les phases du spectre complexe engendré seront éloignées le plus possible les unes des autres. Cela permet d'accroître la robustesse au bruit.This system of use of keys makes it possible to generate families of varied spectra and little correlated. In a particular embodiment, the method further comprises a step of decomposition of the order d R of the reference Hadamard matrix into a product of factors and a sub-step of calculating the least common multiple of the set. of these factors for the determination of the reference Hadamard matrix. Thus, choosing the least common multiple means that the phases of the complex spectrum generated will be as far apart as possible. This increases the robustness to noise.
Dans un mode particulier de réalisation, le procédé comporte en outre une étape consistant à déterminer un signalIn a particular embodiment, the method further comprises a step of determining a signal
s(i)[k] = , où : • i désigne le numéro du signal,s (i) [k] =, or : • i denotes the number of the signal,
• Q désigne un ensemble de coordonnées,• Q denotes a set of coordinates,
• X désigne le nombre de dimensions spatiales,• X is the number of spatial dimensions,
• T désigne le nombre de dimensions temporelles et • F(qJ désigne la matrice de Fourier d'ordre qα, de façon à engendrer une pluralité de signaux temporels s(i) mutuellement orthogonaux.• T denotes the number of temporal dimensions and • F (qJ denotes the Fourier matrix of order q α , so as to generate a plurality of mutually orthogonal time signals s (i).
La présente invention propose également un procédé de génération d'une famille de signaux temporels, remarquable en ce qu'il consiste à combiner des familles de signaux temporels mutuellement orthogonaux engendrés par un procédé tel que succinctement décrit ci-dessus et dont les supports spectraux sont disjoints.The present invention also proposes a method for generating a family of time signals, which is remarkable in that it consists in combining mutually orthogonal time signal families generated by a method as briefly described above and whose spectral supports are disjoint.
L'utilisation de familles de spectres complexes à spectres de puissance disjoints permet de quantifier le signal dans le domaine transformé en utilisant une modélisation progressive en fréquence du signal par des spectres complexes orthogonaux. Cette façon de procéder donne directement à chaque étape des facteurs d'échelle optimaux pour les spectres complexes, sans nécessiter de réoptimisation des facteurs précédents, contrairement à l'art antérieur, qui utilise une méthode de Gram-Schmidt pour cette réoptimisation. La présente invention propose également l'utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux engendrés par un procédé tel que succinctement décrit ci-dessus pour l'étalement spectral dans des systèmes de transmission à étalement de spectre.The use of families of complex spectra with disjoint power spectra makes it possible to quantify the signal in the transformed domain by using progressive signal frequency modeling by orthogonal complex spectra. This way of proceeding gives directly to each step optimal scale factors for the complex spectra, without requiring reoptimization of the preceding factors, contrary to the prior art, which uses a Gram-Schmidt method for this reoptimization. The present invention also provides the use of mutually orthogonal complex time signals or spectra generated by a method as briefly described above for spectral spreading in spread spectrum transmission systems.
En effet, de par leur construction, ces signaux ou spectres sont à spectre étalé dans la bande transmise et de puissance de valeur 1 , contrairement aux séquences de Hadamard utilisées dans le système américain actuel IS95 d'accès multiple à répartition par codes. Dans les codeurs audio, ils peuvent être utilisés comme dictionnaires de quantification dans les codeurs prédictifs. Dans ce cas, la quantification est effectuée par deux algorithmes rapides : d'une part, l'un par transformée de Fourier rapide pour le passage dans le domaine fréquentiel et, d'autre part, pour le produit scalaire intervenant dans la quantification. La présente invention propose également l'utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux engendrés par un procédé tel que succinctement décrit ci-dessus pour le tatouage audio et sa détection. En tatouage audio, ces spectres peuvent être directement utilisés pour le tatouage dans le domaine fréquentiel, leur spectre de puissance idéalement blanc dans la ou les bandes transmises permettant leur mise en forme précise par pondération psychoacoustique, ce qui constitue une propriété importante pour assurer le caractère inaudible du tatouage. Les spectres de l'art antérieur ne permettent pas cette mise en forme précise, vu que leur spectre de puissance présente une variation de dynamique non négligeable. Les spectres complexes de l'invention présentent également l'avantage d'être facilement modulés tels quels, dans des bandes de fréquence définies, dans les systèmes de transmission à multiplexage à accès par codes. Quant aux signaux dans le domaine temporel, en tatouage audio, ils peuvent être directement utilisés pour le tatouage à étalement de spectre, où un symbole de Kb bits est représenté par Kb signaux orthogonaux. On constate par ailleurs les mêmes avantages que ceux mentionnés ci-dessus pour les spectres complexes. La présente invention propose également l'utilisation de spectres complexes mutuellement orthogonaux à spectre de puissance contrôlé engendrés par un procédé tel que succinctement décrit ci-dessus pour le codage ou la représentation de signaux audio, les signaux audio étant quantifiés à l'aide d'un dictionnaire ou d'une famille de dictionnaires à valeurs réelles ou complexes.Indeed, by their construction, these signals or spectra are spread spectrum in the transmitted band and power of value 1, unlike the Hadamard sequences used in the current American system IS95 code division multiple access. In audio coders, they can be used as quantization dictionaries in predictive coders. In this case, the quantization is performed by two fast algorithms: on the one hand, by fast Fourier transform for the passage in the frequency domain and, on the other hand, for the scalar product involved in the quantization. The present invention also provides the use of mutually orthogonal complex time signals or complex spectra generated by a method as briefly described above for audio tattooing and its detection. In audio tattooing, these spectra can be directly used for tattooing in the frequency domain, their ideally white power spectrum in the transmitted band (s) allowing their precise shaping by psychoacoustic weighting, which is an important property to ensure the character inaudible tattoo. The spectra of the prior art do not allow this precise formatting, since their power spectrum has a significant variation in dynamics. The complex spectra of the invention also have the advantage of being easily modulated as such, in defined frequency bands, in code access multiplex transmission systems. As for the time domain signals, in audio tattooing, they can be directly used for spread spectrum tattooing, where a symbol of K b bits is represented by K b orthogonal signals. Moreover, the same advantages as those mentioned above are found for complex spectra. The present invention also provides the use of mutually orthogonal complex spectrums with controlled power spectrum generated by a method as briefly described above for encoding or representing audio signals, the audio signals being quantized by means of a dictionary or family of dictionaries with real or complex values.
En effet, dans les codeurs audio, ces spectres peuvent être utilisés comme dictionnaires de quantification pour les signaux issus d'une transformée de Fourier discrète. Dans ce cas, la quantification est par exemple effectuée par un algorithme rapide dont la structure est dérivée de la façon dont est construit le dictionnaire, dans un cas particulier de réalisation, par produits de Kronecker de matrices de base de faible dimension. La présente invention propose également l'utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux à spectre de puissance contrôlé engendrés par un procédé tel que succinctement décrit ci- dessus pour l'optimisation de données d'excitation de métrologie. Pour le calcul de la réponse impulsionnelle de salles acoustiques en métrologie, le fait que les séquences engendrées aient un spectre idéalement plat dans la bande est de nature à améliorer la précision de la détection par rapport à l'utilisation courante des séquences de pseudo-bruit engendrées par des registres à décalage, dont la fonction de corrélation possède un terme parasite par rapport à sa valeur idéale, qui est un Dirac.Indeed, in the audio coders, these spectra can be used as quantization dictionaries for the signals coming from a discrete Fourier transform. In this case, the quantization is for example performed by a fast algorithm whose structure is derived from the way in which the dictionary is constructed, in a particular embodiment, by Kronecker products of small-size basic matrices. The present invention also provides the use of mutually orthogonal complex time signals or spectrums with controlled power spectrum generated by a method as briefly described above for the optimization of metrology excitation data. For the calculation of the impulse response of acoustic rooms in metrology, the fact that the generated sequences have an ideally flat spectrum in the band is likely to improve the accuracy of the detection compared to the current use of the pseudo-noise sequences generated by shift registers, whose correlation function has a parasitic term with respect to its ideal value, which is a Dirac.
Corrélativement, l'invention propose un dispositif de génération d'une pluralité de spectres discrets s(i) de dimension Q mutuellement orthogonaux et à puissance contrôlée, i désignant le numéro du spectre, ces spectres représentant des signaux temporels dans le domaine spectral et étant de module μ constant dans un ensemble G de désignation de raies spectrales et nul partout ailleurs, le dispositif étant remarquable en ce qu'il comporte :Correlatively, the invention proposes a device for generating a plurality of discrete spectra S (i) of dimension Q that are mutually orthogonal and with controlled power, i denoting the number of the spectrum, these spectra representing time signals in the spectral domain and being of constant μ module in a set of spectral line designation G and zero anywhere else, the device being remarkable in that it comprises:
- un module pour déterminer au moins une partie d'une matrice de Hadamard complexe H d'ordre dR = w dans le cas de spectres de signaux réels et dR = 2.w dans le cas de spectres de signaux complexes ; - un module pour déterminer le prolongement P de la matrice H à partir de G et de la dimension Q ; eta module for determining at least a portion of a complex Hadamard matrix H of order dR = w in the case of real signal spectra and dR = 2.w in the case of complex signal spectra; a module for determining the extension P of the matrix H from G and the dimension Q; and
- un module pour obtenir les spectres à puissance contrôlée s(i) = μ.P(H[.][i]), où H[.][i] désigne la ième colonne de la matrice H.- a module to obtain the power-controlled spectra s (i) = μ.P (H [.] [i]), where H [.] [i] denotes the ith column of the matrix H.
La présente invention propose en outre un produit programme d'ordinateur pouvant être chargé dans un appareil programmable, remarquable en ce qu'il comporte des séquences d'instructions pour mettre en œuvre un procédé tel que succinctement décrit ci-dessus, lorsque ce programme est chargé et exécuté par l'appareil programmable.The present invention further provides a computer program product that can be loaded into a programmable apparatus, characterized in that it includes instruction sequences for implementing a method as briefly described above, when this program is loaded and executed by the programmable device.
Les caractéristiques particulières et les avantages du procédé de génération d'une famille de signaux temporels, des diverses utilisations des signaux temporels ou spectres complexes, du dispositif de génération d'une pluralité de spectres discrets et du produit programme d'ordinateur étant similaires à ceux du procédé de génération d'une pluralité de spectres discrets, ils ne sont pas répétés ici.The particular features and advantages of the method of generating a family of time signals, the various uses of time signals or complex spectra, the device for generating a plurality of discrete spectra and the computer program product being similar to those of the method of generating a plurality of discrete spectra, they are not repeated here.
D'autres aspects et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit de modes particuliers de réalisation, donnés à titre d'exemples non limitatifs. La description se réfère aux dessins qui l'accompagnent, dans lesquels :Other aspects and advantages of the invention will appear on reading the following detailed description of particular embodiments, given by way of non-limiting examples. The description refers to the accompanying drawings, in which:
- la figure 1 est un graphique représentant le spectre de puissance des signaux engendrés, dans un mode particulier de réalisation de l'invention ;FIG. 1 is a graph representing the power spectrum of the signals generated, in a particular embodiment of the invention;
- la figure 2 est un organigramme illustrant les principales étapes d'un procédé de génération de signaux temporels conforme à la présente invention, dans un mode particulier de réalisation ;FIG. 2 is a flowchart illustrating the main steps of a time signal generation method according to the present invention, in a particular embodiment;
- les figures 3 à 6 sont des organigrammes détaillant différentes opérations effectuées pour obtenir une colonne d'une matrice des rotations d'une matrice de Hadamard complexe conformément à la présente invention, dans un mode particulier de réalisation ;FIGS. 3 to 6 are flowcharts detailing various operations performed to obtain a column of a matrix of rotations of a complex Hadamard matrix according to the present invention, in a particular embodiment;
- la figure 7 est un organigramme illustrant le procédé conforme à la présente invention dans toute sa généralité ;FIG. 7 is a flowchart illustrating the process according to the present invention in all its generality;
- la figure 8 est un organigramme illustrant plus en détails le procédé dit de "calcul bande" mis en œuvre dans l'organigramme de la figure 7 ; - la figure 9 est un organigramme illustrant plus en détails l'étape dite de "préparation bande" mise en œuvre dans l'organigramme de la figure 8 ;FIG. 8 is a flowchart illustrating in more detail the so-called "band calculation" method implemented in the flowchart of FIG. 7; FIG. 9 is a flowchart illustrating in more detail the so-called "band preparation" step implemented in the flowchart of FIG. 8;
- la figure 10 est un organigramme illustrant plus en détails l'étape de calcul spectral mise en œuvre dans l'organigramme de la figure 8 ;FIG. 10 is a flowchart illustrating in greater detail the spectral calculation step implemented in the flowchart of FIG. 8;
- la figure 11 est un organigramme illustrant plus en détails l'étape dite "d'exponentielle" mise en œuvre dans l'organigramme de la figure 10 ;FIG. 11 is a flowchart illustrating in more detail the so-called "exponential" step implemented in the flowchart of FIG. 10;
- la figure 12 est un organigramme illustrant plus en détails l'étape de calcul du prolongement de la figure 9 dans le cas des spectres complexes ;FIG. 12 is a flowchart illustrating in greater detail the step of calculating the extension of FIG. 9 in the case of complex spectra;
- la figure 13 est un organigramme illustrant plus en détails l'étape de prolongement de la figure 10 dans le cas des spectres complexes ; - la figure 14 est un organigramme illustrant plus en détails l'étape de préparation du prolongement dans le cas des spectres complexes ; - la figure 15 est un organigramme illustrant plus en détails l'étape de prolongement de la figure 10 dans le cas des signaux réels ;Fig. 13 is a flowchart illustrating in more detail the step of extending Fig. 10 in the case of complex spectra; Fig. 14 is a flowchart illustrating in more detail the step of preparing the extension in the case of complex spectra; Fig. 15 is a flowchart illustrating in more detail the step of extending Fig. 10 in the case of real signals;
- les figures 16 à 19 illustrent des exemples d'application de la présente invention, dans des modes particuliers de réalisation ; et - la figure 20 représente de façon schématique un dispositif adapté à mettre en œuvre la présente invention, dans un mode particulier de réalisation.FIGS. 16 to 19 illustrate examples of application of the present invention, in particular embodiments; and - Figure 20 schematically shows a device adapted to implement the present invention, in a particular embodiment.
L'invention s'applique au cas des signaux discrets réels ou complexes. On introduit ci-dessous quelques notations et définitions qui seront utilisées dans le reste de la description.The invention applies to the case of real or complex discrete signals. Below are some notations and definitions that will be used in the rest of the description.
Par convention, les variables d'indice commencent à zéro. Ainsi, un vecteur v de dimension 3 aura trois composantes notées: v[θ], v[i] , v[2] . De même, pour les matrices, on notera m[l][c] la composante de la ligne I et de la colonne c (commençant à zéro) de la matrice m.By convention, the index variables start at zero. Thus, a vector v of dimension 3 will have three components noted: v [θ], v [i], v [2]. Similarly, for the matrices, we note m [l] [c] the component of the line I and the column c (starting at zero) of the matrix m.
Le nombre de signaux engendrés est noté Ns. Les signaux à engendrer seront notés s(i), où 0≤i<Ns, i étant la variable qui désigne le numéro du signal.The number of signals generated is noted Ns. The signals to be generated will be noted s (i), where 0≤i <Ns, where i is the variable that designates the signal number.
Chaque signal s(i) peut être vu indifféremment, soit comme un signal de longueur Ls, soit comme une application de [0;Ls-1] c N (N étant l'ensemble des entiers naturels), soit comme un vecteur de dimension Ls. On privilégiera ici cette dernière interprétation, c'est-à-dire l'interprétation vectorielle.Each signal s (i) can be seen indifferently, either as a signal of length Ls, or as an application of [0; Ls-1] c N (N being the set of natural numbers), or as a vector of dimension ls. This last interpretation, that is to say the vectorial interpretation, is preferred here.
Du point de vue vectoriel, chaque signal s(i) est un vecteur de ELs (le produit cartésien de l'espace vectoriel E à la puissance Ls) où E est soit le corps des réels 9? (dans le cas d'un signal à valeurs réelles), soit le corps des complexes C (dans le cas d'un signal à valeurs complexes). Les valeurs du signal s(i) sont notées s(i)[n], où 0≤n<Ls, n étant la variable qui désigne l'échantillon temporel.From the vectorial point of view, each signal s (i) is a vector of E Ls (the Cartesian product of the vector space E at the power Ls) where E is either the body of the reals 9? (in the case of a real-valued signal), that is the body of the complexes C (in the case of a signal with complex values). The values of the signal s (i) are denoted s (i) [n], where 0≤n <Ls, where n is the variable which designates the time sample.
Dans la suite, on utilisera des matrices de Fourier d'ordre (ou dimension) quelconque qui seront notées F(n). La matrice de Fourier d'ordre n est la matrice carrée définie par F(n) <≡ Cnxn et F(n)[l][c] = e " (1.1 )In the following, we will use Fourier matrices of any order (or dimension) which will be denoted F (n ). The Fourier matrix of order n is the square matrix defined by F (n) <≡ C nxn and F (n) [l] [c] = e "(1.1)
Cette matrice présente les propriétés suivantes : F(n)[l][c]| = 1 et t -This matrix has the following properties: F (n) [l] [c] | = 1 and t -
F(π)-F(π) = nl(n) (1.2) où F(n) désigne la matrice conjuguée de F(n) , 'F(n) désigne la matrice transposée de la matrice F(n) et l(n) désigne la matrice identité d'ordre n. On enF (π) -F (π) = n1 (n) (1.2) where F (n) denotes the conjugate matrix of F (n) , F (n) denotes the transposed matrix of the matrix F (n) and (n) denotes the identity matrix of order n. We
déduit F(-n 1, = -- ÏÇ) -deduce F ( - n 1 , = - ÏÇ ) -
'F et F sont respectivement la matrice de Transformation de Fourier Discrète (TFD) et la matrice de transformation de Fourier discrète inverse. Dans la présente invention, la matrice F sera utilisée dans deux contextes différents : - pour transformer un spectre complexe à spectre de puissance contrôlé en un signal temporel, etF and F are respectively the Discrete Fourier Transform (DFT) matrix and the inverse Discrete Fourier transform matrix. In the present invention, the matrix F will be used in two different contexts: to transform a complex spectrum with a controlled power spectrum into a time signal, and
- comme matrice de Hadamard réelle ou complexe de base pour engendrer les matrices de Hadamard d'ordre quelconque par produits de Kronecker. Le problème qu'on se propose de résoudre est de trouver une familleas a real or basic complex Hadamard matrix to generate any order Hadamard matrices by Kronecker products. The problem we are trying to solve is to find a family
S de Ns signaux telle que le produit scalaire de deux signaux s(i) et s(j), noté (s(i)|s(j)) , est nul si i est différent de j, ce qui revient à dire que les signaux sont mutuellement orthogonaux selon le produit scalaire considéré.S of Ns signals such that the scalar product of two signals s (i) and s (j), denoted (s (i) | s (j)), is zero if i is different from j, which means that the signals are mutually orthogonal according to the scalar product under consideration.
Autrement dit, en utilisant les notations mathématiques introduites précédemment, il s'agit de trouver S = {s(i)} tel que (s(i)| s(j)) = 0 <=> i ≠ j .In other words, using the mathematical notations introduced previously, it is necessary to find S = {s (i)} such that (s (i) | s (j)) = 0 <=> i ≠ j.
On considérera les produits scalaires usuels :We will consider the usual scalar products:
- dans le cas réel (E = 9î ) : (a|b)='a.b- in the real case (E = 9): (a | b) = 'a.b
- dans le cas complexe (E = C ) : (a|b)='ïï.b- in the complex case (E = C): (a | b) = 'ïï.b
On aura aussi à considérer les spectres complexes discrets s(i) <≡ CLs définis à partir des signaux temporels s(i) par : s(i) - FLs 1 • s(i) (1.3) En d'autres termes, le spectre complexe est obtenu par TFD du signal réel. Les spectres sont dits discrets car provenant de la TFD d'un signal discret, c'est-à-dire échantillonné dans le temps à une fréquence donnée Fe.It will also be necessary to consider the discrete complex spectra s (i) <≡ C Ls defined from the time signals s (i) by: s (i) - F Ls 1 • s (i) (1.3) In other words, the complex spectrum is obtained by TFD of the real signal. The spectra are said to be discrete since they come from the DFT of a discrete signal, that is to say, sampled in time at a given frequency F e .
Le spectre de puissance du signal temporel est donné en fonction du spectre complexe par :The power spectrum of the time signal is given as a function of the complex spectrum by:
P.(i)M - |s(i)[k]|2 = (s(i)[k]|s(i)[k]) = l(ïjjkj s(i)[k]P. (i) M - | s (i) [k] | 2 = (s (i) [k] | s (i) [k]) = l (ïjjkj s (i) [k]
Dans la suite, on dira donc indifféremment que le signal temporel et le spectre complexe sont à puissance contrôlée.In the following, we will say either indifferently that the time signal and the complex spectrum are controlled power.
Les matrices F(Ls) et F(Ls) étant orthogonales (équation (1.2)), le signal temporel est donné en fonction du spectre complexe par : s(i) = F(LB) s(i) (1.4) c'est-à-dire par transformée de Fourier discrète inverse du spectre complexe.Since the matrices F (Ls) and F (Ls) are orthogonal (equation (1.2)), the time signal is given as a function of the complex spectrum by: s (i) = F (LB) s (i) (1.4) c that is, inverse discrete Fourier transform of the complex spectrum.
Pour que le signal s(i) soit réel (E = 9î ), on montre qu'une condition nécessaire et suffisante est que les égalités suivantes soient vérifiées : s(i)[0] = s(i)[O] et Vk e [i-Ls - iJs(i)[k] = s(i)[Ls - k] (1.5)For the signal s (i) to be real (E = 9i), we show that a necessary and sufficient condition is that the following equalities are satisfied: s (i) [0] = s (i) [O] and Vk e [i-Ls-iJs (i) [k] = s (i) [Ls-k] (1.5)
En d'autres termes, pour que la transformation de Fourier inverse d'un spectre complexe soit réelle, le spectre complexe s(i) doit vérifier la propriété de symétrie précédente.In other words, for the inverse Fourier transform of a complex spectrum to be real, the complex spectrum s (i) must verify the previous symmetry property.
Les matrices de Hadamard complexes sont les matrices carrées H d'ordre quelconque noté d (c'est-à-dire H e Cdxd ) ayant les propriétés suivantes : ι H.H = d.l(d) (propriété d'orthogonalité) et |H[l][c]| = 1 . On remarque que les matrices de Fourier sont des matrices de Hadamard complexes. Les matrices de Hadamard complexes présentent en outre les propriétés suivantes : - si H est une matrice de Hadamard complexe, si P, Q sont des matrices de permutation, si C, D sont des matrices diagonales dont les éléments non nuls de la diagonale ont un module de 1 , alors P. C. H. D. Q est aussi une matrice de Hadamard complexe ; - si G et H sont deux matrices de Hadamard complexes d'ordres respectifs g et h, alors G ® H est une matrice de Hadamard complexe d'ordre g. h. L'opération <8> est le produit de Kronecker ou produit tensoriel.The complex Hadamard matrices are the square matrices H of any order denoted d (that is to say H e C dxd ) having the following properties: ι HH = dl (d) (orthogonality property) and | H [l] [c] | = 1. Note that Fourier matrices are complex Hadamard matrices. The complex Hadamard matrices also have the following properties: - if H is a complex Hadamard matrix, if P, Q are permutation matrices, if C, D are diagonal matrices whose non-null elements of the diagonal have a module of 1, then PCHD Q is also a complex Hadamard matrix; - If G and H are two complex Hadamard matrices of respective orders g and h, then G ® H is a complex gham Hadamard matrix. The operation <8> is the product of Kronecker or tensor product.
On rappelle que : (G ® H)[I][C] = (G[lg][cg])(H[lh][ch]) (1.6) où I = lg .h + lh et c = cg .h + ch .Remember that: (G H) [I] [C] = (G [ g ] [c g ]) (H [ h h ] [c h ]) (1.6) where I = 1 g. H + 1 h c c = g · h + h c.
On décrit à présent le principe de base de la solution proposée par la présente invention.The basic principle of the solution proposed by the present invention is now described.
Pour la solution discrète de base, on souhaite que la famille S des signaux réels recherchés vérifie les propriétés suivantes :For the basic discrete solution, it is desired that the family S of the real desired signals satisfies the following properties:
(s(i)|s(i)) = 1(s (i) | s (i)) = 1
(s(i)|s(j)) = 0 « i ≠ j (1 7) k e [Smιn -Smax] u [Ls - Smax -Ls - Smιn] « |s(i)[k]| = μ k * [Smιn -Smax] u [Ls - Smax -Ls - Smιn] « s(i)[k] = 0(s (i) | s (j)) = 0 «i ≠ j (1 7) ke [S max -S mιn] u [Ls - -LS S max - S mιn]" | s (i) [k] | Μ = k * [S max -S mιn] u [Ls - -LS S max - S mιn] "s (i) [k] = 0
Ces propriétés sont illustrées par le graphique de la figure 1 qui représente la valeur du spectre de puissance des signaux engendrés.These properties are illustrated by the graph of FIG. 1 which represents the value of the power spectrum of the signals generated.
Ces propriétés expriment le fait que les signaux temporels ont une puissance unitaire sur une période, que le spectre complexe de ces signaux est de module constant, μ, entre un index de fréquence basse Smin et un index de fréquence haute Smax et nul partout ailleurs.These properties express the fact that the time signals have a unitary power over a period, that the complex spectrum of these signals is of constant modulus, μ, between a low frequency index S m i n and a high frequency index S max and no one everywhere else.
La fréquence basse Fmin est liée à l'index Smin et à la fréquence d'échantillonnage Fe par : s 1^ mIn - F min — pThe low frequency F min is linked to the index S min and to the sampling frequency F e by: s 1 ^ mIn - F min - p
où Ls est le nombre d'échantillons de la TFD définie par l'équation (1.3).where Ls is the number of samples of the DFT defined by equation (1.3).
Les phases sont les seuls degrés de liberté du système. De plus, les signaux forment une famille libre dans l'espace des signaux de longueur Ls, ils sont orthogonaux entre eux, ou, autrement dit, ils sont non corrélés entre eux. On peut noter que le cas particulier Smin = 0 et Smax = Ls / 2, où il n'y a pas d'échantillon nul, est pris en compte dans l'équation (1.7) du fait de la périodicité du spectre complexe s(i) (période Ls). Le spectre des signaux fréquentiels est alors parfaitement blanc sur toute la bande de fréquences et la fonction de corrélation des signaux temporels orthogonaux, déduits par transformée de Fourier inverse, est égale à une distribution de Dirac, propriété intéressante dans de nombreuses applications. Les signaux temporels seront réels lorsque la propriété de symétrie avec complexe conjugué (équation (1.5)) sera vérifiée.Phases are the only degrees of freedom of the system. In addition, the signals form a free family in the space of the signals of length Ls, they are orthogonal to each other, or, in other words, they are not correlated with each other. It may be noted that the particular case S m i n = 0 and S max = Ls / 2, where there is no zero sample, is taken into account in equation (1.7) because of the periodicity of the complex spectrum s (i) (period Ls). The spectrum of signals Frequencies are then perfectly white over the entire frequency band and the correlation function of the orthogonal temporal signals, derived by inverse Fourier transform, is equal to a Dirac distribution, an interesting property in many applications. The time signals will be real when the property of symmetry with complex conjugate (equation (1.5)) will be verified.
En remarquant que les signaux temporels sont donnés par transformée de Fourier inverse des spectres complexes (équation (1.4)), on montre que :By noting that time signals are given by inverse Fourier transform of complex spectra (equation (1.4)), we show that:
(s(i)|s(j)> = (F(Ls).s(i)|F(Ls).s(j))^tI(r).tF^;.F(Ls).s(j) = Ls.('ê(ï).s(j)) = Ls.<s(i)|s(j)> .(s (i) | s (j)> = (F (Ls) .s (i) | F (Ls) .s (j)) t I (r) t F ^ ;. F (Ls) . s (j) = Ls. ('((ï) .s (j)) = Ls. <s (i) | s (j)>.
On ramène alors le problème de l'orthogonalité des signaux dans le domaine des spectres complexes s(i) .The problem of the orthogonality of the signals in the domain of complex spectra s (i) is then reduced.
Les raies spectrales en dehors de la réunion d'intervalles [Smιn---Smax]u[Ls-Smax---Ls-Smιn] étant nulles, il suffit d'assurer l'orthogonalité pour les valeurs des signaux à spectre discret s(i) pour ke[Smιn---Smax]u[Ls-Smax"-Ls-Smιn]. Notons w= 1 + Smax - Smin le nombre correspondant à la moitié du nombre de raies de module μ.If the spectral lines outside the interval set [S min- S max ] u [Ls-S max -Ls-S min ] are zero, it is sufficient to ensure the orthogonality for the signal values with discrete spectrum s (i) for ke [S min- S max ] u [Ls-S max -Ls-S min ] Let w = 1 + S max - S min be the number corresponding to half the number of μ module lines.
Cette opération, qui restreint l'étude aux valeurs non nulles, est appelée restriction. On la note R:CLs →C2w. Son opération inverse est appelée prolongement et est notée P : C2 w → CLs .This operation, which restricts the study to nonzero values, is called restriction. We write R: C Ls → C 2w . Its inverse operation is called extension and is denoted P: C 2 w → C Ls .
Dans le cas réel, il suffit de restreindre pour k e [Smιn---Smax]. Les valeurs restantes, d'indice k e [Ls-Smax---Ls-Smιn], se déduisent des précédentes par conjugaison suivant la propriété s(i)[k] = s(i)[Ls - k] des signaux réels, rappelée plus haut. On a alors : R:CLs →Cw et P : Cw → CLs . Notons r(i) la restriction de s(i). Notons dR la dimension de la restriction r(i) , c'est-à-dire r(i) e CdR . Dans le cas de signaux réels, on a dR = w et dans le cas de signaux complexes, on a dR = 2.w. On a f(i) = R(s(i)) et on cherche une famille R = {f(i)} de Ns vecteurs r(i), telle que s(i) = F(Ls).P(r(i)),In the real case, it suffices to restrict for ke [S mn --- S max ]. The remaining values, indexed ke [Ls-S max --- Ls-S mn ], are deduced from the previous ones by conjugation following the property s (i) [k] = s (i) [Ls-k] of the signals real, recalled above. We then have: R: C Ls → C w and P: C w → C Ls . Let r (i) be the restriction of s (i). R d include the size of the restriction r (i), that is to say r (i) dR e C. In the case of real signals, we have dR = w and in the case of complex signals, we have dR = 2.w. We have af (i) = R (s (i)) and we search for a family R = {f (i)} of Ns vectors r (i), such that s (i) = F (Ls) .P (r ( i)),
c'est-à-dire S = F(Ls).P(R). La satisfaction des propriétés requises pour les s(i) amène à écrire les propriétés suivantes pour les r(i) :that is, S = F (Ls) .P (R). The satisfaction of the properties required for s (i) leads to writing the following properties for r (i):
J |r(i)[p]| - μ Vi Vp [(f(i)| f(j)) = O o i ≠ jJ | r (i) [p] | - μ Vi Vp [(f (i) | f (j)) = O o i ≠ j
Ces propriétés ou contraintes sont voisines de celles des vecteurs des matrices de Hadamard complexes. La solution à ce problème est donc obtenue en choisissant pour la famille R une famille libre issue d'une matrice de Hadamard complexe H d'ordre dR multipliée par μ.These properties or constraints are close to those of the vectors of complex Hadamard matrices. The solution to this problem is thus obtained by choosing for the family R a free family resulting from a complex Hadamard matrix H of order dR multiplied by μ.
Dans le cas simple où r(i) correspond à la ième colonne de la matrice H, ce qu'on note r(i) = μ.H[.][i], on a : s(i) = F(Ls).P(μ.H[.][i]) = μ.F(Lβ).P(H[.][i])In the simple case where r (i) corresponds to the ith column of the matrix H, we write r (i) = μ.H [.] [I], we have: s (i) = F (Ls ) .P (μ.H [.] [I]) = μ.F ( Lβ) .P (H [.] [I])
(s(i)|s(j)> = Ls.['ê(i).s(j)] = Ls.['p(P(i)).P(P(j(s (i) | s (j)> = Ls. ['ê (i) .s (j)] = Ls. [' p (P (i)). P (P (j
(s(i)| S(J)) = ^ ('HTm™.) = - (('HΉW(s (i) | S (J)) = ^ ('HTm ™.) = - ((' HΉW
R RR R
Ainsi :So :
<s(i>is(i)M,,w,,(Wiω) <*: tr2 <s (i> is (i) M, w ,, (Wiω) <*: tr 2
L'analyse de dimensionnalité montre que la relation suivante doit être respectée : Ns≤dR, et, dans le cas réel, dR ≤ |Ls et dans le cas complexe, dR≤Ls. Ce sont les contraintes du système.The dimensionality analysis shows that the following relation must be respected: Ns≤dR, and, in the real case, d R ≤ | Ls and in the complex case, dR≤Ls. These are the constraints of the system.
On écrira synthétiquement que S est une famille libre de μ. F. P(H), où F est la matrice de Fourier, P est le prolongement déduit de Smax et Smin et H est la matrice de Hadamard complexe d'ordre dR déduit de Smax et Smin. On a expliqué ci-dessus comment on construit une famille S de signaux temporels s(i) ayant les propriétés de l'équation (1.7) :We will write synthetically that S is a free family of μ. F. P (H), where F is the Fourier matrix, P is the extension deduced from S max and S m i n and H is the complex Hadamard matrix of order d R deduced from S max and S m i n . It has been explained above how to construct a family S of time signals s (i) having the properties of equation (1.7):
II suffit de trouver une matrice de Hadamard complexe H puis de prendre :It is enough to find a matrix of complex Hadamard H then to take:
s(i) = μ.F(Ls).P(H[.][i]) avec μ = 1 où P est le prolongement déduit de Smax et Smιn et de la nature de E (cas réel ou cas complexe), et où F(Ls) est la matrice de Fourier d'ordre Ls, ce qui, en d'autres termes, correspond à l'opération dite "transformée de Fourier discrète inverse dans le domaine complexe", qui est souvent notée TFD(L 1 S) . On a alors souvent une des deux définitions suivantes :s (i) = μ.F (Ls) .P (H [.] [i]) with μ = 1 where P is the deduced extension of S max and S mιn and nature of E (actual case or complex cases), and where F (Ls) is the Fourier matrix of order Ls, which, in other words , corresponds to the so-called "inverse discrete Fourier transform in the complex domain", which is often denoted TFD (L 1 S) . We often have one of the following two definitions:
TFD(^(X) = -^. F(Ls).x ou TFD(L 1 s)(x) = F(Ls).x .TFD ( ^ (X) = - ^ .F (Ls) .x or TFD (L 1 s) (x) = F (Ls) .x.
Cette transformation de Fourier discrète sera avantageusement réalisée par une Transformée de Fourier Rapide, opération bien connue de l'homme du métier.This discrete Fourier transformation will advantageously be achieved by a Fast Fourier Transform, an operation well known to those skilled in the art.
Ce procédé de construction des s(i), l'objet de base de la présente invention, est schématisé sur la figure 2.This method of constructing s (i), the basic object of the present invention, is shown diagrammatically in FIG.
Le module 20 calcule la ième colonne d'une matrice des rotations d'une matrice de Hadamard complexe H cle dont la génération dépend d'une clé.The module 20 calculates the ith column of a matrix of rotations of a complex Hadamard matrix H cle whose generation depends on a key.
Les rotations sont exprimées par des nombres entiers, c'est-à-dire :Rotations are expressed as whole numbers, that is:
Hcle[.][i] e ZdR .H cle [.] [I] e Z dR .
La valeur θ permet, par la formule zθ(n) = 0ë 1 , de passer de la rotation entière au nombre complexe de module 1 correspondant. Une clé est utilisée de façon à obtenir des familles de signaux distinctes. Dans une application de la présente invention au tatouage de fichiers de signaux, cela permet d'avoir des tatouages distincts qui peuvent se superposer sans interagir.The value θ allows, by the formula z θ (n) = 0 ë 1 , to go from the entire rotation to the corresponding complex number of module 1. A key is used to obtain distinct signal families. In an application of the present invention tattooing signal files, this allows for separate tattoos that can be superimposed without interacting.
La clé est un nombre entier qui permet d'engendrer deux permutations de Ns éléments et deux fois Ns rotations entières d'ordre θ, c'est- à-dire un nombre de 1 à [NS!.ΘNS ]2 . Dans la pratique, ces nombres étant généralement très grands, on utilise les clés pour initialiser un générateur permettant d'extraire l'information nécessaire. L'introduction de la clé permet d'introduire un secret dans le processus de génération des séquences et donc de restreindre la possibilité de leur utilisation aux seuls possesseurs de la clé.The key is an integer which makes it possible to generate two permutations of Ns elements and twice Ns integer rotations of order θ, that is to say a number from 1 to [NS! .Θ NS ] 2 . In practice, since these numbers are generally very large, the keys are used to initialize a generator making it possible to extract the necessary information. The introduction of the key allows to introduce a secret in the process of generating the sequences and thus to restrict the possibility of their use to the owners of the key only.
Le module 22 transforme un vecteur de rotations de ZdR en un vecteur complexe à spectre discret de CLs .The module 22 transforms a vector of rotations of Z dR into a complex vector with a discrete spectrum of C Ls .
La transformation dépend de la nature du signal mais ne dépend pas de i.The transformation depends on the nature of the signal but does not depend on i.
Dans le cas de signaux réels :In the case of real signals:
Smιn < k < Smax S mn <k <S max
Ls - Smax < k < Ls - Smιn autrement Ls - S max <k <Ls - S mιn otherwise
Dans le cas de signaux complexes :In the case of complex signals:
Smιn < k < Smax =* s(i)[k] = μ.zθ(Hcle[k - Smιn][i])S mn <k <S max = * s (i) [k] = μ.z θ (H cle [k - S mn ] [i])
Ls - Smax ≤ k ≤ Ls - Smιn => s(i)[k] = μ.zθ(H[k + 2.Smax -M - Ls - SJi]) autrement =^> s(i)[k] = 0Ls - S max ≤ k ≤ Ls - S mn => s (i) [k] = μ.z θ (H [k + 2.S max -M-Ls-SJi]) otherwise = ^> s (i ) [k] = 0
Dans le cas où on se limite à la génération de spectres complexes mutuellement orthogonaux, la procédure est terminée à ce stade.In the case where one limits oneself to the generation of mutually orthogonal complex spectra, the procedure is finished at this stage.
Le spectre complexe s(i) peut être utilisé comme tel, ce qui a été représenté sur la figure 2 par une flèche de sortie de l'algorithme. Sinon, la génération de signaux temporels mutuellement orthogonaux est réalisée par le module 24 qui transforme un vecteur complexe s(i) dans CLs et à spectre contrôlé en un vecteur temporel à spectre discret contrôlé de ELs .The complex spectrum s (i) can be used as such, which has been shown in Figure 2 by an arrow output algorithm. Otherwise, the generation of mutually orthogonal time signals is performed by the module 24 which transforms a complex vector s (i) in C Ls and controlled spectrum into a controlled discrete spectrum time vector of E Ls .
Le module 24 est un module d'application d'une transformée de Fourier discrète inverse d'ordre Ls. Cette opération est bien connue de l'homme du métier. Elle ne dépend pas de i.The module 24 is an application module of a reverse discrete Fourier transform of order Ls. This operation is well known to those skilled in the art. It does not depend on i.
On détaille ci-dessous les opérations effectuées par le module 20 de calcul de Hcle[.][i] .The operations carried out by the calculation module of H cle [.] [I] are described below.
On a vu ci-dessus que ce module calcule une colonne de la matrice Hcle . Cela présente l'avantage d'éviter la construction de la matrice complète et donc, de simplifier et d'accélérer les calculs. Formellement, la matrice des rotations s'exprime ainsi : ~ θIt has been seen above that this module calculates a column of the matrix H cle . This has the advantage of avoiding the construction of the complete matrix and thus simplifying and accelerating calculations. Formally, the matrix of the rotations is expressed thus: ~ θ
^cIe ~ /^ - 'n0~'de ) , 0U ^cIe = RcIe hg- PcIe hg- H ref. PcIe col -RcIe col, OÙ :CIE ^ ~ / ^ - 'n ~ 0' of), CIE = 0R ^ CNIE hG PCIe hG H ref. PcIe col -RcIe col, WHERE:
2πv- 12πv- 1
- Pcie hg et Pcie coi sont les matrices de permutation correspondant aux permutations σcιe hg θt σcιe coi ; - Rcie hg et Rcie coi sont des matrices diagonales de rotations (des lignes et des colonnes) correspondant aux rotations Rcie hg[x][x] = zθ(pcie hg(x)) et RciecoiMM = zθ(Pcie coi(x))- En pratique, n'importe quelles rotations peuvent être utilisées et pas seulement les rotations d'ordre θ, c'est-à-dire que les matrices Rcie ιιg et Rcie coi peuvent aussi être définies comme les matrices diagonales Rcle hg[x][x] = e 2π/l p^(x) et Rcle col[x][x] = e 2π/l p(x) . En pratique, l'application des rotations est optionnelle ;- Pcie hg and Pcie coi are the permutation matrices corresponding to the permutations σ c ι e hg θt σ c ι e cor; - R c ia hg and CNIE coi are diagonal matrices of rotations (rows and columns) corresponding to the rotations R c ia hg [x] [x] = z θ (p c ia hg (x)) and RciecoiMM = z θ (Pcie coi (x)) - In practice, any rotations can be used and not only the rotations of order θ, that is to say that the matrices R c ι g and Rcie coi can also be defined as the diagonal matrices R cle hg [x] [x] = e 2π / lp ^ (x) and R cle [x] [x] = e 2π / lp - (x) . In practice, the application of the rotations is optional;
- Href est la matrice de Hadamard complexe de référence canoniquement construite par le procédé en fonction de dR ;- H r ef is the reference complex Hadamard matrix canonically constructed by the process as a function of d R ;
- θ est le plus petit ordre de la racine de l'unité qui permet d'exprimer les rotations par des entiers.- θ is the smallest order of the root of the unit which makes it possible to express the rotations by integers.
Le calcul devient :The calculation becomes:
L'expression des fonctions auxiliaires σcie hg, σciecoi, Pcie hg et pciecoi est triviale. Les permutations peuvent être effectuées par exemple par des algorithmes d'embrouillage bien connus en cryptographie et les rotations peuvent être initialisées par une fonction aléatoire pour introduction d'un secret. Dans le cadre de la description du procédé, on suppose ces fonctions auxiliaires calculées et connues.The expression of the auxiliary functions σ c hg, σ c iecoi, Pcie hg and p c iecoi is trivial. The permutations can be performed for example by scrambling algorithms well known in cryptography and the rotations can be initialized by a random function for introducing a secret. In the context of the description of the process, these calculated and known auxiliary functions are assumed.
Le nombre dR, qui représente l'ordre de Href, la matrice de Hadamard complexe de référence, s'écrit comme un produit de nombres. On note DF(dR)The number dR, which represents the order of H re f, the reference complex Hadamard matrix, is written as a product of numbers. We denote DF (dR)
= {f,} une décomposition de dR en un produit de facteurs f, (ainsi, dR = ) qu'on ordonne arbitrairement selon un indice i variant de 1 à Nf, où Nf désigne le nombre de facteurs de la décomposition de dR, c'est-à-dire Nf = |DF(dR )| . Dans la pratique, on peut prendre pour DF la décomposition en facteurs premiers.= {f,} a decomposition of dR into a product of factors f, (thus, d R =) arbitrarily ordered according to an index i varying from 1 to Nf, where Nf denotes the number of factors of the decomposition of dR, that is to say Nf = | DF (d R ) | . In practice, one can take for DF the decomposition into prime factors.
Par exemple, dR - 100 => DF(dR) - {2;2;5;5} et Nf - 4 .For example, d R - 100 => DF (d R ) - {2; 2; 5; 5} and Nf - 4.
La matrice de Hadamard complexe Href de référence construite par le procédé est définie par :The complex Hadamard matrix H ref of reference constructed by the method is defined by:
H ret. = R Vni l ® R Vfi , I ® --- ® R Vfm ,I = i< ®ι<Nf R "n' (1.9)H ret . = RV n il RV RV f i, I --- --- RV RV f m, I = i <ι < N N R n ((1.9)
Les matrices de base F(f ) , i = 1 , ..., Nf peuvent être des matrices deThe basic matrices F (f) , i = 1, ..., Nf can be matrices of
Fourier telles que définies plus haut. Plus généralement, on peut prendre des matrices de Hadamard complexes de taille fi. La génération de Href par un produit de Kronecker à partir de matrices de base peut être mise à profit dans le cas où le produit scalaire de tous les spectres complexes par un vecteur x est requis, soit (s(i)|x^ i = 0, ..., Ns-1 , pour effectuer les calculs avec une complexité minimale. Il en résulte un algorithme de complexité dRlog2dR ayant une structure proche de celle de la transformée d'Hadamard. Selon la définition de Href par l'équation (1.9), l'ordre de la racine de l'unité est le plus petit commun multiple de l'ensemble des facteurs de dR, d'où θ = ppcm(DF(dR)) = ppcm({fι}). Par exemple, θ(100) = 10.Fourier as defined above. More generally, we can take complex Hadamard matrices of size fi. The generation of H re f by a Kronecker product from base matrices can be exploited in the case where the scalar product of all complex spectra by a vector x is required, ie (s (i) | x ^ i = 0, ..., Ns-1, to carry out the computations with minimal complexity, resulting in a dRlog2dR complexity algorithm having a structure close to that of the Hadamard transform According to the definition of H re f by Equation (1.9), the order of the root of the unit is the smallest common multiple of the set of factors of d R , hence θ = ppcm (DF (d R )) = ppcm ({ For example, θ (100) = 10.
Si on prend pour DF la décomposition en facteurs premiers de dR, cette façon de procéder possède l'avantage que θ est le plus petit possible, ce qui signifie que les phases du spectre complexe sont le plus éloignées possible les unes des autres. Incidemment, cela permet d'accroître la robustesse au bruit.If the prime factor decomposition of dR is taken as DF, this procedure has the advantage that θ is the smallest possible, which means that the phases of the complex spectrum are as far apart as possible. Incidentally, this increases the robustness to noise.
Le calcul des matrices d'entiers Href [l][c] utilise le fait qu'un nombre n tel que 0≤n<dR se décompose de manière unique dans le système numérique déduit de DF(dR), à savoir :The computation of the matrices of integers H ref [l] [c] uses the fact that a number n such that 0≤n <dR decomposes uniquely in the numerical system deduced from DF (d R ), namely:
n = Σ MV]IM = ∑n' -b| = ni + fi-(n2 +f2-(n3 + • • •))n = Σ MV] IM = Σ n '- b | = n i + f i- ( n 2 + f 2 - (n 3 + • • • ))
"l≤i≤Nf ^ 1<j<ι J "l≤i≤Nf "l≤i≤Nf ^ 1 <j <ι J" l≤i≤Nf
Cela constitue en fait une généralisation de l'équation (1.6) au cas de la décomposition de dR en un produit de facteurs. Ainsi, ayant défini, c'est-à-dire décomposé le numéro de ligne I = ∑l,.b, et le numéro de colonne c = ∑c,. b, , on obtient, à l'issue des calculsThis is in fact a generalization of equation (1.6) to the case of the decomposition of d R into a product of factors. Thus, having defined, i.e., decomposed the line number I = Σl, .b, and the column number c = Σc ,. b, we obtain, after the calculations
"l≤i≤Nf "l≤i≤Nf suivants : "l≤i≤Nf" l≤i≤Nf following:
H1BfPl[C] θ I, .cH 1Bf Pl [C] θ I, .c
H-[I][C] = ii≤≤Iii≤≤NNff- - -ciππ.v — I ψ 1I 2*^ la valeur cherchée : θ ~ H - [I] [ C ] = ii≤≤Iii≤≤NNff- - -ciππ.v - I ψ 1 I 2 * ^ the value sought: θ ~
Le facteur — étant entier, Href est une matrice d'entiers, ce qu'onThe factor - being integer, H ref is an integer matrix, which we
cherchait effectivement à obtenir.was actually looking to get.
La figure 3 montre l'organisation du processus de calcul de la ième colonne de la matrice des rotations H[.][i] .Figure 3 shows the organization of the process of calculating the ith column of the rotation matrix H de [.] [I].
L'étape 300 de préparation consiste à : a) calculer la décomposition de dR en un produit de facteurs fi, notée DF(dR) = {fi} ; b) calculer le plus petit commun multiple de l'ensemble DF(dR), noté θ = ppcm(DF(dR)) ; c) calculer avec la clé les fonctions auxiliaires σcié,iig, σcié,coi, Pcié.iig etStep 300 for the preparation comprises: a) calculating R d of the decomposition product of factors fi, denoted DF (d R) = {fi}; b) calculate the least common multiple of the set DF (dR), denoted θ = ppcm (DF (d R )); c) calculating with the key the auxiliary functions σ c ié, i ig, σ c ié, i, P P c and
L'étape 302 consiste à effectuer la permutation σcié,coi(i) puis à calculer directement Href [.][σclé col(i)] . A cette dernière matrice est ajoutée, à l'étape 304, la contribution des rotations conformément à l'équation (1.8).Step 302 consists in performing the permutation σ c ie, cor (i) and then to calculate directly ref H [.] [Σ collar key (i)]. To this last matrix is added, at step 304, the contribution of the rotations according to equation (1.8).
Un exemple élémentaire de déroulement des opérations a) et b) est illustré sur l'organigramme de la figure 4. Lors d'une étape 400 d'initialisation, on initialise une variable n à la valeur dR, une variable D à la valeur 2, une variable i à la valeur 0 et une variable θ à la valeur 1.A basic example of workflow a) and b) is illustrated in the flowchart of Figure 4. During an initialization step 400, a variable n is initialized to the value dR, a variable D to the value 2, a variable i to the value 0 and a variable θ to the value 1.
Puis on effectue un test 402 consistant à vérifier si n est congru à zéro modulo D, c'est-à-dire si n est un multiple de D.Then we perform a test 402 consisting in checking if n is congruent to zero modulo D, that is, if n is a multiple of D.
Si le test 402 est négatif, on procède à un test 404 consistant à vérifier si n vaut 1.If the test 402 is negative, a test 404 consisting in verifying if n is 1 is carried out.
Si le test 404 est négatif, on incrémente d'une unité la valeur de la variable D (étape 406) et on retourne au test 402. Si le test 404 est positif, on attribue à la variable Nf, qui désigne le nombre de facteurs de la décomposition de dR, la valeur de i (étape 408) et l'algorithme se termine.If the test 404 is negative, the value of the variable D (step 406) is incremented by one unit and the test 402 is returned. If the test 404 is positive, the variable Nf, which designates the number of factors, is assigned. from the decomposition of dR, the value of i (step 408) and the algorithm ends.
Si le test 402 est positif, on effectue un test 410 consistant à vérifier si θ est congru à zéro modulo D.If the test 402 is positive, a test 410 is performed consisting in checking whether θ is congruent to zero modulo D.
Si le test 410 est négatif, on attribue à la variable θ la valeur de la variable D.θ (étape 412) et on passe à l'étape 414. Si le test 410 est positif, on passe directement à l'étape 414.If the test 410 is negative, the variable θ is assigned the value of the variable D.θ (step 412) and step 414 is passed. If the test 410 is positive, it goes directly to step 414.
L'étape 414 consiste à attribuer à la variable n la valeur de la variable n/D, à incrémenter d'une unité la valeur de la variable i et à attribuer à la variable fi la valeur de la variable D. On retourne ensuite au test 402. En retournant à la figure 3, l'opération 302 de calcul de la colonneStep 414 consists in assigning the variable n the value of the variable n / D, incrementing the value of the variable i by one, and assigning the variable fi the value of the variable D. Then, we return to test 402. Returning to FIG. 3, the operation 302 for calculating the column
Θ Λ Θ Λ
Href [ ][σclé col(i)] consiste à calculer les Href [l][c] = ∑ hr I c où c = σcié,coi(i). i≤i≤Nf l T J1 JH ref [] [σ key col (i)] consists in calculating the H ref [l] [c] = Σ hr I c where c = σ c ié, coi (i). i≤i≤Nf l TJ 1 J
Un exemple élémentaire de mise en œuvre de cette étape est illustré par l'organigramme de la figure 5.A basic example of implementation of this step is illustrated by the flowchart of Figure 5.
Les Ij et q sont calculés progressivement. Ainsi, lors d'une étape d'initialisation 500, on initialise une variable I à la valeur 0 et une variable c à la valeur de la fonction auxiliaire σcié,ι(i)-I j and q are calculated progressively. Thus, during an initialization step 500, a variable I is initialized to the value 0 and a variable c to the value of the auxiliary function σ c ié, ι (i) -
Puis on vérifie lors d'un test 502 si I = dR. Si le test 502 est positif, l'algorithme se termine. Sinon, on initialise une variable j à la valeur 1 et une variable a à la valeur 0 (étape 504). Ensuite, on vérifie lors d'un test 506 si j > Nf, Nf désignant le nombre de facteurs premiers de dR. Si le test 506 est positif, on attribue la valeur de la variable a à la variable Href [l][c] (étape 508), on incrémente d'une unité la valeur de la variable I (étape 510) et on retourne au test 502.Then one checks during a test 502 if I = d R. If the 502 test is positive, the algorithm ends. Otherwise, a variable j is initialized to the value 1 and a variable a to the value 0 (step 504). Then, one tests during a test 506 if j> Nf, Nf denoting the number of prime factors of dR. If the 506 test is positive, the value of the variable a to the variable H ref [1] [c] (step 508), the value of the variable I (step 510) is incremented by one unit and returns to the test 502.
Si le test 506 est négatif, on attribue la valeur de (le signe [JIf the test 506 is negative, the value of (the sign [J
désignant la partie entière) à la variable x et on calcule Ij = I - x.f, (étape 512).designating the integer part) to the variable x and calculate I j = I - xf, (step 512).
Ensuite, on attribue la valeur de à la variable y et on calcule η = c - y.fj (étape 514).Then, we assign the value of the variable y and calculate η = c - yf j (step 514).
L'étape 516 suivante consiste à attribuer la valeur de a + — - c, - I, àThe next step 516 is to assign the value of a + - - c, - I, to
la variable a.the variable a.
Puis, au cours de l'étape 518, on incrémente d'une unité la valeur de la variable j et on attribue la valeur de la variable x à la variable I ainsi que la valeur de la variable y à la variable c.Then, during step 518, the value of variable j is incremented by one and the value of variable x is assigned to variable I and the value of variable y to variable c.
On retourne ensuite au test 506.We then return to test 506.
En retournant à la figure 3, l'opération 304 consiste à calculer la colonne Hde[.][i] en calculant lesTurning back to FIG. 3, operation 304 consists of calculating the column H of [.] [I] by calculating the
Hcle [l][i] - Hrefcle lιg (l)][σcle col (i)] + pcle lιg (I) + pcle col (i) .H cle [l] [i] - h refcle lιg (l)] [σ cle (i)] + p cle lιg (I) + p cle (i).
Une réalisation de cette opération est illustrée par l'organigramme de la figure 6.One embodiment of this operation is illustrated by the flowchart of FIG.
Comme le montre la figure 6, une étape d'initialisation 600 consiste tout d'abord à initialiser une variable I à la valeur 0, une variable c à la valeur de la fonction auxiliaire σcié,coi(i), une variable h à la valeur de Href [.][c] et une variable r à la valeur de la fonction auxiliaire pcié,coi(i)-As shown in FIG. 6, an initialization step 600 firstly consists in initializing a variable I at the value 0, a variable c at the value of the auxiliary function σ c ié, coi (i), a variable h the value of H ref [c] and a variable r to the value of the auxiliary function p c ie, cor (i) [.] -
Puis lors d'un test 602, on vérifie si I = dR. Si ce test est positif, l'algorithme se termine. Sinon, on attribue à la variable Hde[l][i] la valeur de l'expression r + h[σcié,hg(l)] + Pcié,hg(l) (étape 604). On incrémente ensuite d'une unité la valeur de la variable I (étapeThen during a test 602, we check if I = d R. If this test is positive, the algorithm ends. Otherwise, the variable H of [l] [i] is assigned the value of the expression r + h [σ c ié, hg (l)] + Pcie, hg (l) (step 604). Then increment the value of variable I (step
606) puis on retourne au test 602. On expose à présent comment le procédé de base de génération de signaux temporels mutuellement orthogonaux décrit ci-dessus est appliqué dans toute sa généralité, conformément à la présente invention.606) then return to test 602. It is now explained how the basic method of generating mutually orthogonal time signals described above is applied in all its generality, according to the present invention.
On a vu ci-dessus que le procédé de base engendre des signaux temporels mutuellement orthogonaux ou des spectres complexes mutuellement orthogonaux selon un gabarit de spectre de puissance tel que représenté sur la figure 1. Cette approche était didactique et permettait d'exposer le fonctionnement de base : la génération des Hde[l][i] .It has been seen above that the basic method generates mutually orthogonal time signals or mutually orthogonal complex spectrums according to a power spectrum mask as shown in FIG. 1. This approach was didactic and made it possible to expose the operation of base: the generation of H of [l] [i].
Dans toute sa généralité, la présente invention permet d'engendrer des familles S = {s(i)} de signaux discrets mutuellement orthogonaux de l'espace A d'évolution du système :In all its generality, the present invention makes it possible to generate families S = {s (i)} of mutually orthogonal discrete signals of the system evolution space A:
A _ t γi2x xYx )Zi XZ2>< XZτ = EY1XY2X XYxXZ1 XZ2 X Zτ ayant X dimensions spatiales réelles (E = 9Î ) ou complexes (E = C) et T dimensions temporelles et d'engendrer la famille S = (s(i)} de leurs spectres complexes mutuellement orthogonaux dans :A _ t γ i 2 x x Y x) Zi XZ2><XZτ = E Y 1 XY 2 XX Yx X Z 1 X Z 2 X Z τ having X actual spatial dimensions (E = 9i) or complex (E = C) and T temporal dimensions and to generate the family S = (s (i)} of their mutually orthogonal complex spectra in:
ZpY1XY2X xYx xZτ _ pYi Xγ2χ XYxXZ1XZ2X Z1- selon des contraintes spectrales qui apparaîtront au cours de la description du procédé dans sa plus grande généralité.ZpY 1 XY 2 X xY x xZ τ _ pY i X γ 2 χ XY x XZ 1 XZ 2 XZ 1 - according to spectral constraints which will appear during the description of the process in its greater generality.
Notons [n] l'ensemble [n] = {0;1 ;2;...;n-2;n-1} des entiers positifs ou nuls inférieurs à n.Let [n] denote the set [n] = {0; 1; 2; ...; n-2; n-1} of positive or zero integers less than n.
Notons Q = [Yi]χ...χ[Yx]χ[Zi]χ... χ[Zτ] = [qo]x- --x[qx+τ-i] l'ensemble Q des coordonnées du système, c'est-à-dire que les éléments de Q sont des coordonnées. Pour des raisons pratiques, on définit les c\\ en correspondance avec les dimensions Yi et Z1 du système. Q définit les dimensions du système : |Q| , son nombre d'éléments ou coordonnées est le nombre de libertés du système A.Let Q = [Yi] χ ... χ [Y x ] χ [Zi] χ ... χ [Zτ] = [qo] x - - x [qx + τ-i] be the set Q of the coordinates of system, that is, the elements of Q are coordinates. For practical reasons, we define c \ \ in correspondence with the Y and Z dimensions of the system 1. Q defines the dimensions of the system: | Q | , its number of elements or coordinates is the number of freedoms of system A.
L'ensemble Q permet d'exprimer les valeurs d'un signal f de A comme une fonction de Q dans E, soit f : Q ^ E;x ι-> f(x) . Autrement dit, un signal est assimilable à f, un élément de l'ensemble des fonctions de Q dans E, noté F(Q1E), soit f <≡ F(Q1E). L'ensemble F(Q1E) est connu comme étant un espace vectoriel, et donc, comme précédemment, on assimilera les signaux f aux vecteurs de l'espace vectoriel F(Q1E).The set Q makes it possible to express the values of a signal f of A as a function of Q in E, ie f: Q ^ E; x ι-> f (x). In other words, a signal is comparable to f, an element of the set of functions of Q in E, denoted by F (Q 1 E), ie f <≡ F (Q 1 E). The set F (Q 1 E) is known as a vector space, and thus, as before, we will equate the signals f with vectors of the vector space F (Q 1 E).
Par définition des spectres complexes dans le domaine de Fourier, on a, pour tout signal f de F(Q1E) : etBy definition of complex spectra in the Fourier domain, for every signal F of F (Q 1 E): and
Notons QP l'ensemble des parties de Q (QP = ^(Q)), c'est-à-dire l'ensemble qui contient tous les sous-ensembles de Q. Soit G = {cga = (ga,cléa) / ga <≡ QP et a e [n]} une famille de n parties ga de Q mutuellement disjointes, c'est-à-dire telles que si a ≠ b alors ga ngb = 0. Les ga sont appelées "bandes". On leur associe une clé appelée cléa, éventuellement unique, qui permet la génération d'une grande variété de familles de signaux faiblement corrélés. G est la définition des contraintes du système : chaque contrainte cga Let QP be the set of parts of Q (QP = ^ (Q)), that is, the set that contains all the subsets of Q. Let G = {cg a = (g a , key a) / g a <≡ QP and ae [n]} a family of parts n g a Q mutually disjoint, that is to say such that if a ≠ b g has then ng b = 0. g a are called "bands". A key named key has been associated to them, possibly unique, which allows the generation of a variety of weakly correlated signals families. G is the definition of the constraints of the system: each constraint cg has
= (ga,cléa) exprime quelles sont les fréquences spatio-temporelles composant la bande ga ; les fréquences hors ga ont une amplitude nulle.= (g a , key a ) expresses what are the spatio-temporal frequencies composing the band g a ; the frequencies outside g a have a zero amplitude.
Le procédé dans toute sa généralité permet de créer n familles Sa =The process in all its generality allows to create n families S a =
{sa(i)} de signaux et Sa = {sa(i)} leurs versions dans le domaine de Fourier, ayant des spectres respectant les contraintes déterminées par G et formalisées par les propriétés suivantes :{s a (i)} of signals and S a = {s a (i)} their versions in the Fourier domain, having spectra respecting the constraints determined by G and formalized by the following properties:
1. le spectre d'une famille Sa est contrôlé par sa bande ga, soit k e ga « |s(i)[k]| = μa 1. the spectrum of a family S a is controlled by its band g a , ie keg a "| s (i) [k] | = μ a
Va e [n], Vi e Sa ,Vk e Q (1.10) k * ga « Is(J)[K]I = 0Va e [n], Vi e S a , Vk and Q (1.10) k * g a "Is (J) [K] I = 0
2. les familles sont décorrélées entre elles, soit V(a,b) e [n^a ≠ b ^ (vf e Sa,Vg e Sb,(f|g) = O et (f|g) = θ)2. the families are decorrelated between them, ie V (a, b) e [n ^ a ≠ b ^ (vf e S a , Vg e S b , (f | g) = O and (f | g) = θ )
3. les signaux d'une famille sont décorrélés entre eux, soit Va e [n], V(U) e |Sa|2,(sa(i)|sa(j)) = 0 « (sa(i)|sa(j)) = 0 « i ≠ j3. the signals of a family are decorrelated between them, either Va e [n], V (U) e | S a | 2 , (s a (i) | s a (j)) = 0 "(s a (i) | s a (j)) = 0" i ≠ j
4. la puissance d'un signal est contrôlée, soit4. The power of a signal is controlled, either
Va e [n],Vi e Sa,(sa(i)|sa(i)) = 1Va e [n], Vi e S a , (s a (i) | s a (i)) = 1
Le procédé permet, à partir des familles Sa = {sa(i)} de signaux et Sa = (sa(i)} de leurs spectres complexes, d'engendrer une famille S = {s(i)} de signaux mutuellement orthogonaux (décorrélés) et la famille S = (s(i)} de leurs spectres complexes eux-mêmes orthogonaux, et dont le spectre de puissance dans chacune des bandes ga est indépendant et quelconque.The method allows, from families S a = {s a (i)} of signals and S a = (s a (i)} of their complex spectra, to generate a family S = {s (i)} of mutually orthogonal signals (decorrelated) and the family S = (s (i)} of their complex spectra which are themselves orthogonal, and whose power spectrum in each of the bands g a is independent and arbitrary.
Le procédé permet, à partir des familles S3 = {sa(i)} de signaux et Sa = (sa(i)} de leurs spectres complexes, d'engendrer une famille S = {s(i)} de signaux selon deux méthodes différentes dont le choix dépend de l'usage auquel la famille S est destinée :The method allows, from families S 3 = {s a (i)} of signals and S a = (s a (i)} of their complex spectra, to generate a family S = {s (i)} of signals according to two different methods whose choice depends on the use to which the family S is intended:
- dépendance des bandes entre elles, ce qui signifie que l'orthogonalité dans une bande implique l'orthogonalité dans les autres bandes, et donc que les signaux de la famille S sont orthogonaux entre eux ;- Dependence of the bands between them, which means that the orthogonality in one band implies the orthogonality in the other bands, and thus that the signals of the family S are orthogonal to each other;
- indépendance des bandes entre elles, ce qui signifie que les signaux des familles Sa peuvent être combinés sans restriction et implique que les signaux de la famille S ne sont pas toujours orthogonaux deux à deux.- independence of the strips together, which means that the families S signals can be combined without restriction and implies that S family signals are not always orthogonal pairs.
L'organigramme de la figure 7 illustre le procédé conforme à la présente invention dans toute sa généralité.The flowchart of FIG. 7 illustrates the process according to the present invention in all its generality.
La contrainte G est segmentée en ses contraintes par bande ego, cgi, cg2, etc. Chaque bande ga donne lieu à la génération (via les modules 70, 71 , 72, etc.) d'un signal sa(i) et de sa variante sa(i) dans le domaine de Fourier, ayant un spectre contrôlé. Les signaux ainsi créés sont multipliés (via les modules 700, 701 , 702, etc.) par un facteur ca qui contrôle la puissance du signal dans cette bande. Les signaux sont ensuite additionnés dans un moduleThe constraint G is segmented into its constraints by ego band, cgi, cg 2 , etc. Each band g a gives rise to the generation (via the modules 70, 71, 72, etc.) of a signal s a (i) and of its variant s a (i) in the Fourier domain, having a controlled spectrum . The signals thus created are multiplied (via the modules 700, 701, 702, etc.) by a factor c a which controls the power of the signal in this band. The signals are then added in a module
7000 pour donner le spectre complexe s(i,c) et/ou les signaux s(i,c) cherché(s).7000 to give the complex spectrum s (i, c) and / or the signals s (i, c) sought (s).
Les facteurs ca peuvent être modifiés sans changer l'orthogonalité (non corrélation) des spectres et signaux, ils ne modifient que l'équilibrage de la puissance des signaux s(i,c) et s(i,c). Le procédé dans toute sa généralité illustré sur la figure 7 utilise le procédé dit de "calcul bande" (dans les modules 70, 71 , 72, etc.).The factors c a can be modified without changing the orthogonality (non correlation) of the spectra and signals, they modify only the balancing of the power of the signals s (i, c) and s (i, c). The method in all its generality illustrated in FIG. 7 uses the so-called "band calculation" method (in the modules 70, 71, 72, etc.).
Le calcul bande est illustré plus en détails sur l'organigramme de la figure 8. Il inclut une étape 80 dite de "préparation bande" qui permet de déterminer une fois pour toutes les paramètres de génération qui seront utilisés par le procédé dit de "calcul spectral" illustré par le bloc 82.The band calculation is illustrated in more detail on the flowchart of FIG. 8. It includes a step 80 called "band preparation" which makes it possible to determine once and for all the generation parameters that will be used by the so-called "calculation" method. spectral "illustrated by block 82.
Le procédé de calcul spectral permet la génération du spectre complexe sa(i) du ième signal de la bande ga. Le signal s(i) est obtenu en sortie du module 84, par une transformée de Fourier discrète inverse de son spectre complexe sa(i) , par une simple mise en œuvre de la formuleSpectral calculation method allows the generation of the complex spectrum S (i) of the ith band signal g a. The signal s (i) is obtained at the output of the module 84, by a discrete inverse Fourier transform of its complex spectrum s a (i), by a simple implementation of the formula
s(i)[k] , éventuellement optimisée selon les techniques classiques de transformation de Fourier rapide.s (i) [k], possibly optimized according to classical techniques of fast Fourier transformation.
L'étape de préparation bande est illustrée plus en détails sur l'organigramme de la figure 9. Ce mécanisme est composé d'un module dit de "calcul du prolongement" 90 qui détermine, en fonction de la contrainte cga et des dimensions du système, la dimension da,R des matrices de Hadamard (et donc le nombre maximal de signaux de la famille) et les données de prolongement prlga qui seront utilisées pour le prolongement. Le module de préparation 300 est celui décrit plus haut en liaison avec les figures 3 et 4. L'organigramme de la figure 10 montre plus en détails l'organisation de l'étape de calcul spectral mise en œuvre par le bloc 82 de la figure 8. Cette étape comprend :The band preparation step is illustrated in greater detail in the flowchart of FIG. 9. This mechanism is composed of a so-called "extension calculation" module 90 which determines, as a function of the constraint cg a and the dimensions of the system, the dimension a, R Hadamard matrices (and thus the maximum number of the family of signals) and PRLG extension data to be used for the extension. The preparation module 300 is the one described above in conjunction with FIGS. 3 and 4. The flowchart of FIG. 10 shows in greater detail the organization of the spectral calculation step implemented by the block 82 of FIG. 8. This step includes:
- l'étape 302 de calcul de Href [ .][σa de c0|(i)] illustrée sur la figure 3 et explicitée sur la figure 5 ; - l'étape 304 de calcul de Ha de[.][i] illustrée sur la figure 3 et explicitée sur la figure 6 ;step 302 of calculating H ref [.] [σ a of c0 | (i)] illustrated in FIG. 3 and explained in FIG. 5; step 304 of calculating H a of [.] [i] illustrated in FIG. 3 and explained in FIG. 6;
- une étape 106 dite "d'exponentielle" qui consiste à calculer les nombres complexes correspondant aux rotations calculées et à les normaliser par un facteur d'échelle permettant d'obtenir la propriété de puissance contrôlée. La formule est : Ha clé[l][i] = . Cette étape est illustrée plus en détails sur la figure 11 ;a so-called "exponential" step 106 which consists of calculating the complex numbers corresponding to the calculated rotations and normalizing them by a scale factor making it possible to obtain the power property controlled. The formula is: H a key [l] [i] = . This step is illustrated in more detail in Figure 11;
- une étape 108 de prolongement qui permet de constituer le spectre complexe sa(i) à puissance contrôlée cherché. Comme le montre la figure 11 , une étape 110 d'initialisation consiste tout d'abord à initialiser une variable I à la valeur 0. Puis un test 112 consiste à vérifier si la valeur de la variable I a atteint le nombre maximal da,R de signaux de la famille. Si tel est le cas, la procédure se termine. Sinon, on calculea step 108 of extension which makes it possible to constitute the complex spectrum s a (i) with controlled power sought. As shown in FIG. 11, an initialization step 110 firstly consists of initializing a variable I at the value 0. Then a test 112 consists in checking whether the value of the variable I has reached the maximum number d a , R of family signals. If this is the case, the procedure ends. Otherwise, we calculate
^^ H3 de [I][I]^^ H 3 of [I] [I]
Ha clé[l][i] = μa.e θ au cours d'une étape 114, puis on incrémente la variable I d'une unité (étape 116) et on retourne au test 112.H has key [l] [i] = μ a .e θ during a step 114, then increments the variable I by one unit (step 116) and returns to the test 112.
Les opérations de prolongement 108 (figure 10) et de calcul du prolongement 90 (figure 9) diffèrent selon la nature du signal cherché, c'est-à- dire selon qu'on cherche un signal réel (E = 9î ) ou complexe (E=C).The extension operations 108 (FIG. 10) and the calculation of the extension 90 (FIG. 9) differ according to the nature of the signal sought, that is to say according to whether a real (E = 9) or complex ( E = C).
Les organigrammes des figures 12 et 13 montrent les étapes du calcul dans le cas des signaux complexes. Ce cas est le plus simple car il n'y a pas de contrainte de symétrisation.The flow charts of FIGS. 12 and 13 show the calculation steps in the case of complex signals. This case is the simplest because there is no symmetrization constraint.
La figure 12 illustre plus en détails l'étape 90 de calcul du prolongement de la figure 9 dans le cas des signaux complexes. Lors d'une étape 120, on attribue la valeur de la bande ga à la variable prlga. Puis lors d'une étape 122, on attribue la valeur de |ga| à la variable da,R. On calculeFIG. 12 illustrates in greater detail the step 90 of calculating the extension of FIG. 9 in the case of complex signals. In a step 120, the value of the band g a is assigned to the variable prlg a . Then during a step 122, the value of | g a | to the variable d a , R. We calculate
ensuite μa = (étape 124), ce qui termine la procédure. Le respect de la propriété de puissance contrôlée, c'est-à-dire (sa(i)|sa(i)^ = 1 , amène en effet àthen μ a = (step 124), which ends the procedure. Respect for property of controlled power, that is to say (s a (i) | s a (i) ^ = 1, leads indeed to
poser μ a ask μ a
La figure 13 illustre plus en détails l'étape 108 de prolongement de la figure 10 dans le cas des spectres complexes. Au cours d'une première étape 130, on initialise la variable s(i)[.] à la valeur 0 et au cours d'une étapeFIG. 13 illustrates in greater detail step 108 of extension of FIG. 10 in the case of complex spectra. During a first step 130, the variable s (i) [.] Is initialized to the value 0 and during a step
132, on initialise une variable I à la valeur 0. Puis un test 134 consiste à vérifier si la variable I est égale à da,R. Si tel est le cas, la procédure se termine. Sinon, on calcule, au cours d'une étape 136, s(i)[pr IgJk]] = Ha clé[l][i] . On incrémente ensuite la valeur de I d'une unité (étape 138) puis on retourne au test 134.132, one initializes a variable I to the value 0. Then a test 134 consists of checking if the variable I is equal to d a, R. If this is the case, the procedure ends. Otherwise, it calculates, in a step 136, s (i) [pr IgJk]] = H key [l] [i]. The value of I is then incremented by one unit (step 138) and then returns to test 134.
Dans le cas des signaux réels, il convient d'assurer l'égalité sa(i) = sa(i). Cette égalité est vraie quand Vk e Q, sa(i)[k] = sa(i)[k] . Cette définition utilise la définition du conjugué de la coordonnée k. Cette bijection de Q dans Q est définie de la façon suivante : k = (K0 , K1 , . . . , Kx+J-1 ) -w- k = (k0 , K1 , . . . , Kx+J-1 ) f k. = 0 <=> k. = 0 où < _ . On voit que k, = k, et q, pair => q, /2 = q, 12 .In the case of real signals, it is necessary to ensure equality s a (i) = s a (i). This equality is true when Vk e Q, s a (i) [k] = s a (i) [k]. This definition uses the conjugate definition of the k coordinate. This bijection of Q in Q is defined as follows: k = (K 0 , K 1 , ..., K x + J -1 ) -w- k = (k 0 , K 1 , ..., K x + J -1 ) f k. = 0 <=> k. = 0 where <_. We see that k, = k, and q, even => q, / 2 = q, 12.
[k, ≠ O o k, = q, - k, Cette contrainte est prise en compte lors de l'étape dite de[k, ≠ O o k, = q, - k, This constraint is taken into account during the step of
"préparation du prolongement" illustrée en détails par l'organigramme de la figure 14."preparation of the extension" illustrated in detail by the flowchart of Figure 14.
On commence par des étapes d'initialisation de da,R à la valeur 0 (étape 140), des données de prolongement prlga à l'ensemble vide (étape 142) et de la variable I à la valeur 0 (étape 144).We begin with steps of initialization of d a , R at the value 0 (step 140), extension data prg a to the empty set (step 142) and variable I to the value 0 (step 144). .
On procède ensuite à un test 146 pour vérifier si I = |ga| . Si tel est leWe then proceed to a test 146 to check if I = | g a | . If this is the
1 cas, on calcule μa = , = (étape 148) et la procédure se termine. Sinon,1 case, one calculates μ a =, = (step 148) and the procedure ends. If not,
Ja,R on attribue à la variable k la valeur de ga[l] (étape 150). On remarquera que la valeur de μa est différente selon que les signaux sont réels ou complexes. Puis un test 152 consiste à déterminer si k = k . Si tel est le cas, on incrémente d'une unité la valeur de la variable I (étape 154) puis on retourne au test 146. Sinon, on vérifie si k e prlga (test 156). Si tel est le cas, on passe à l'étape 154. Sinon, on détermine lors d'un test 158 si k e prlga . Si tel est le cas, on passe à l'étape 154. Sinon, on ajoute k aux données de prolongement (étape 160), on incrémente d'une unité la valeur de da,R (étape 162) puis on passe à l'étape 154. Cette préparation du prolongement supprime les éléments de ga qui sont indésirables. Ainsi, la dimension da,R peut avoir une valeur différente de J a, R is assigned to the variable k the value of g a [l] (step 150). Note that the value of μ a is different depending on whether the signals are real or complex. Then a test 152 consists in determining if k = k. If this is the case, the value of the variable I is incremented by one (step 154) and then returns to the test 146. Otherwise, it is checked whether ke prlg a (test 156). If this is the case, proceed to step 154. Otherwise, it is determined in a test 158 whether ke prlg a . If this is the case, go to step 154. Otherwise, add k to the extension data (step 160), increment by one unit the value of d a , R (step 162) and then go to step 154. This extension of preparation removes the elements of g which is undesirable. Thus, the dimension d a , R can have a value different from
Le prolongement dans le cas des signaux réels est illustré par l'organigramme de la figure 15. La procédure est identique à celle du cas complexe illustré sur la figure 13 pour ce qui concerne les étapes 130 à 136 décrites plus haut. Dans le cas des signaux réels, l'étape 136 est en outre suivie d'une étape 164 consistant à calculer sa(i)[prlga[k]] = Ha cle[l][i] . On incrémente ensuite la variable I d'une unité (étape 166) puis on retourne au test 134.The extension in the case of real signals is illustrated by the flowchart of FIG. 15. The procedure is identical to that of the complex case illustrated in FIG. 13 with regard to the steps 130 to 136 described above. In the case of real signals, step 136 is further followed by a step 164 of calculating s a (i) [prlg a [k]] = H a cle [1] [i]. The variable I is then incremented by one unit (step 166) and then returns to test 134.
Cette procédure assure la propriété nécessaire aux réels :This procedure ensures the property necessary for the real ones:
Vk <≡ Q, sa(i)[k] = sa(i)[k] . Dans ce cas, le calcul montre que le facteur μa doit 1 valoir μa = Vk <≡ Q, s a (i) [k] = s a (i) [k]. In this case, the calculation shows that the factor μ has to be worth μ a =
Le nombre maximal de signaux de la famille S engendrée selon G est donné selon les cas d'usages :The maximum number of signals of the family S generated according to G is given according to the use cases:
- dépendance des bandes entre elles, ce qui signifie que l'orthogonalité dans une bande implique l'orthogonalité dans les autres bandes,- band dependence between them, which means that orthogonality in one band implies orthogonality in the other bands,
= min S 'a3 = min d ae[n] ae[n] a R '= min S 'a 3 = min d ae [n] ae [n] a R'
- indépendance des bandes entre elles, |S| = ]~[|Sa| = ]~[da R . ae[n] ae[n] L'invention trouve à s'appliquer dans de nombreux domaines. Un premier exemple concerne le tatouage des fichiers audio.- independence of the bands between them, | S | =] ~ [| S a | =] ~ [d a R. [n] ae [n] The invention is applicable in many fields. A first example concerns the tattooing of audio files.
Les signaux orthogonaux sont également très utiles en transmission, où ils sont adaptés aux modulations orthogonales, bi-orthogonales et CDMA. La figure 16 montre, à titre d'exemple non limitatif, que le procédé conforme à l'invention permet de fournir des signaux temporels ou leurs variantes de Fourier à spectres discrets contrôlés au niveau de la modulation des messages. A la démodulation, les données reçues du canal de transmission sont traitées afin de reconstituer les messages émis. Le procédé de la figure 16 peut être utilisé pour alimenter une mémoire morte (ROM), ce qui évite d'embarquer le procédé.Orthogonal signals are also very useful in transmission, where they are suitable for orthogonal, bi-orthogonal and CDMA modulations. FIG. 16 shows, by way of nonlimiting example, that the method according to the invention makes it possible to provide time signals or their Fourier variants with discrete spectra controlled at the level of the modulation of the messages. At the demodulation, the data received from the transmission channel are processed in order to reconstitute the messages sent. The process of Figure 16 can be used to power a read-only memory (ROM), which avoids boarding the process.
Sur la figure 16, le message binaire est modulé (au sein d'un bloc 1600) par le signal alloué à l'utilisateur #i à qui est destinée la donnée binaire. Le signal est ensuite traité pour être émis sur le canal radio mobile 1602. En réception, l'utilisateur #i effectue la corrélation du signal reçu (bloc 1604). Du fait que les signaux sont orthogonaux, l'utilisateur #i ne va détecter, dans le flux qu'il reçoit, que les données qui lui sont destinées.In FIG. 16, the binary message is modulated (within a block 1600) by the signal allocated to the user #i for whom the binary data is intended. The signal is then processed to be transmitted on the mobile radio channel 1602. In reception, the user #i performs the correlation of the received signal (block 1604). Since the signals are orthogonal, the user # i will only detect, in the stream he receives, the data that is intended for him.
Ces signaux peuvent également être utilisés en métrologie, où ils peuvent permettre d'optimiser les données d'excitation à fournir au système étudié, comme l'illustre la figure 17. Cela permet d'augmenter la pertinence du résultat de la mesure effectuée sur le système étudié. Le procédé de la figure 17 peut être utilisé pour alimenter une ROM, ce qui évite d'embarquer le procédé. Un cas typique d'utilisation en métrologie est celui de la mesure de la réponse impulsionnelle des salles acoustiques.These signals can also be used in metrology, where they can make it possible to optimize the excitation data to be supplied to the studied system, as shown in FIG. 17. This makes it possible to increase the relevance of the result of the measurement performed on the system. system studied. The method of Figure 17 can be used to power a ROM, which avoids boarding the process. A typical case of use in metrology is the measurement of the impulse response of acoustic rooms.
Pour effectuer cette mesure, on émet par un haut-parleur une longue séquence périodique de signal dont chaque période est à spectre plat ou contrôlé suivant les cas. Le signal périodique sera filtré par la réponse impulsionnelle de la salle. On récupère le signal sur un microphone pour traitement. La réponse percussionnelle de la salle est obtenue en faisant l'intercorrélation entre le signal reçu par le microphone et la séquence émise.To carry out this measurement, a long periodic signal sequence is emitted by a loudspeaker, each period of which is flat spectrum or controlled according to the case. The periodic signal will be filtered by the impulse response of the room. The signal is retrieved from a microphone for processing. The percussion response of the room is obtained by making the cross correlation between the signal received by the microphone and the transmitted sequence.
Pour obtenir une réponse de salle précise, il est nécessaire que la séquence émise ait une fonction de corrélation égale à une distribution de Dirac. C'est justement le cas des signaux temporels qui font l'objet de la présente invention.To obtain a precise room response, it is necessary that the transmitted sequence has a correlation function equal to a Dirac distribution. This is precisely the case of the time signals which are the subject of the present invention.
La corrélation est effectuée en prenant une séquence de taille double de celle de la réponse impulsionnelle désirée. Une façon efficace de réaliser la corrélation est d'effectuer la transformée de Fourier discrète du signal reçu, de multiplier le signal fréquentiel obtenu par le complexe conjugué de la transformée de Fourier de la séquence orthogonale et d'effectuer une transformation de Fourier inverse rapide du signal résultant. Comme les signaux sont engendrés dans le domaine spectral, il suffit de stocker en ROM la version fréquentielle de la séquence.Correlation is performed by taking a sequence of twice the size of the desired impulse response. An efficient way of performing the correlation is to perform the discrete Fourier transform of the received signal, to multiply the frequency signal obtained by the conjugate complex of the Fourier transform of the orthogonal sequence and to perform a fast inverse Fourier transform of the received signal. resulting signal. Like the signals are generated in the spectral domain, it is sufficient to store in ROM the frequency version of the sequence.
Ces signaux peuvent aussi être utilisés comme base pour le codage ou la représentation des signaux. Par exemple, ces signaux peuvent être utilisés en codage audionumérique comme illustré à titre d'exemple par la figure 18. L'utilisation des spectres complexes orthogonaux dans le domaine fréquentiel permet de coder le signal de parole ou audio directement dans ce domaine.These signals can also be used as a basis for encoding or representing signals. For example, these signals may be used in digital audio coding as illustrated by way of example in FIG. 18. The use of orthogonal complex spectrums in the frequency domain makes it possible to code the speech or audio signal directly in this domain.
Comme les spectres complexes utilisés ont une étendue contrôlée en fréquence, la mise en forme du bruit de quantification peut être effectuée de façon que le bruit suive fidèlement la courbe de masquage sur les bandes de fréquence spécifiées.Since the complex spectra used have a frequency-controlled extent, the quantization noise shaping can be performed so that the noise faithfully follows the masking curve over the specified frequency bands.
Le dispositif de codage illustré à la figure 18 comporte un dictionnaire dans lequel les spectres complexes générés selon le procédé de l'invention sont stockés. Ce type de dictionnaire est utilisé dans le codage ou le décodage de signaux audio pour mettre en oeuvre l'étape de quantification et de quantification inverse.The coding device illustrated in FIG. 18 comprises a dictionary in which the complex spectra generated according to the method of the invention are stored. This type of dictionary is used in the coding or decoding of audio signals to implement the quantization and inverse quantization step.
Dans un exemple particulier, les signaux sont engendrés par des produits de Kronecker de matrices de base, le produit scalaire du signal à quantifier par toutes les formes d'onde du dictionnaire peut alors être obtenu efficacement par un algorithme rapide faisant intervenir des papillons comme celui de la Transformée de Fourier Rapide (TFR) ou celui de la transformée de Hadamard réelle.In a particular example, the signals are generated by Kronecker products of base matrices, the scalar product of the signal to be quantified by all the waveforms of the dictionary can then be efficiently obtained by a fast algorithm involving butterflies such as of the Fast Fourier Transform (TFR) or that of the actual Hadamard transform.
Pour une matrice de dimension Ns engendrée par des produits de Kronecker conformément à l'équation (1.9), le débit par échantillon sera donné par :For a matrix of dimension Ns generated by Kronecker products according to equation (1.9), the flow per sample will be given by:
Débit = log2(Ns)/NsFlow = log 2 (Ns) / Ns
Pour des valeurs usuelles de Ns d'une dizaine, ce débit sera relativement faible. Pour augmenter le débit, le dictionnaire est élargi en prenant des matrices différentes comme matrices génératrices. Par exemple, pour un ordre 2, il existe 64 matrices de base possibles, les éléments de chaque matrice étant orthogonaux et choisis dans (1 , -1 , i, -i). Plus précisément, la figure 18 illustre l'utilisation des spectres complexes mutuellement orthogonaux dans un codeur prédictif temporel.For usual values of Ns of a dozen, this flow will be relatively low. To increase the rate, the dictionary is expanded by taking different matrices as generating matrices. For example, for an order 2, there are 64 possible basic matrices, the elements of each matrix being orthogonal and chosen in (1, -1, i, -i). More specifically, Figure 18 illustrates the use of mutually orthogonal complex spectra in a time-domain predictive coder.
La contribution du filtrage d'un signal émis se(n) avec une excitation nulle (bloc 180) est d'abord retranchée du signal (soustracteur 182) pour donner la cible t. La cible t dans le domaine fréquentiel est obtenue par Transformée de Fourier Rapide de t (bloc 184). Les échantillons complexes du signal sont quantifiés par un quantificateur 186 défini par un dictionnaire contenant les Ns vecteurs complexes orthogonaux s(0),...,s(Ns - 1) .The contribution of the filtering of an emitted signal s e (n) with zero excitation (block 180) is first removed from the signal (subtractor 182) to give the target t. The target t in the frequency domain is obtained by Fast Fourier Transform of t (block 184). The complex samples of the signal are quantized by a quantizer 186 defined by a dictionary containing the Ns orthogonal complex vectors s (0), ..., s (Ns - 1).
Des opérations inverses de celles qui viennent d'être décrites sont effectuées après passage dans un canal de transmission 188, pour finalement aboutir à un signal reçu srec(n).Reverse operations of those just described are carried out after passing through a transmission channel 188, finally resulting in a received signal s re c (n).
La quantification revient à minimiser le critère suivant :Quantification amounts to minimizing the following criterion:
E, = |t - ghs(i)|2 i = 0,...,Ns - 1 où h est une matrice diagonale de pondération perceptuelle dans le domaine des fréquences et g désigne le gain de normalisation. En minimisant Ej, on trouve : t ' h ' s(i) , ^ j . . . - - , . - . g = — — (ou désigne ICI la matrice transposée) s(i) h ' hs(i) et l'indice iopt qui minimise le critère d'erreur est donné par : Ns - 1 Le numérateur est égal au produit scalaire de tτhτ par toutes les formes d'onde du dictionnaire engendré par un produit de Kronecker de matrices élémentaires pour lequel un algorithme efficace du type "transformée de Hadamard" est réalisé. La structure résultante est basée sur une structure en papillon analogue à celle de la TFR. Dans le cas particulier où le gain de normalisation g est connu, le calcul de l'indice optimal se résume à calculer l'indice iopt qui maximise [tτs(i)]2 . Un exemple particulier de mise en œuvre est obtenu en segmentant le spectre en bandes de fréquence, contigϋes ou non, de longueur variable, avec éventuellement des zones d'amplitude nulle aux fréquences élevées.E, = | t - ghs (i) | 2 i = 0, ..., Ns - 1 where h is a diagonal perceptual weighting matrix in the frequency domain and g is the normalization gain. By minimizing Ej, we find: t 'h' s (i), ^ j. . . - -,. -. g = - - (or denotes ICI the transposed matrix) s (i) h 'hs (i) and the index i op t which minimizes the error criterion is given by: Ns - 1 The numerator is equal to the scalar product of t τ h τ by all the waveforms of the dictionary generated by a Kronecker product of elementary matrices for which an effective algorithm of the "Hadamard transform" type is realized. The resulting structure is based on a butterfly structure similar to that of the TFR. In the particular case where the normalization gain g is known, the computation of the optimal index amounts to computation of the index i op t which maximizes [t τ s (i)] 2 . A particular example of implementation is obtained by segmenting the spectrum into frequency bands, contiguous or not, of variable length, possibly with areas of zero amplitude at high frequencies.
Dans le premier cas, on peut par exemple coder l'ensemble du spectre par zones de fréquence croissante ou d'importance perceptuelle croissante (déduite dans ce cas des facteurs d'échelle), au moyen de familles de spectres orthogonaux complexes comme représenté sur la figure 18, chaque zone du spectre étant quantifiée par une matrice engendrée par produits deIn the first case, we can for example encode the whole spectrum in areas of increasing frequency or increasing perceptual importance (deduced in this case from scale factors), by means of families of complex orthogonal spectra as represented in FIG. FIG. 18, each zone of the spectrum being quantified by a matrix generated by
Kronecker. Les calculs de produits scalaires intervenant dans la quantification sont effectués par des transformations rapides utilisant la structure des matrices. On peut ainsi, progressivement, obtenir un train binaire hiérarchique, propriété recherchée en compression des signaux.Kronecker. Scalar product calculations involved in quantization are performed by fast transformations using the matrix structure. It is thus possible, progressively, to obtain a hierarchical binary train, the desired property of compression of the signals.
La figure 19 représente un exemple d'utilisation des signaux mutuellement orthogonaux dans le cas du tatouage audio. Les signaux ou spectres complexes sont engendrés conformément à la description donnée ci- dessus, le procédé illustré étant soit embarqué, soit fonctionnant "hors ligne", les signaux étant stockés une fois pour toutes dans une ROM.Fig. 19 shows an example of using mutually orthogonal signals in the case of audio tattooing. The complex signals or spectra are generated according to the description given above, the method illustrated being either on-board or off-line, the signals being stored once and for all in a ROM.
Si on veut transmettre un message binaire d'indice i, on va filtrer et moduler le signal d'indice i (bloc 190) et ajouter le résultat de cette opération au signal audio (additionneur 192).If we want to transmit a binary message of index i, we will filter and modulate the index signal i (block 190) and add the result of this operation to the audio signal (adder 192).
Après transmission (bloc 194), en réception, on effectue d'abord la resynchronisation puis la corrélation (bloc 196) entre le signal reçu et l'ensemble des signaux du dictionnaire de réception. Le signal détecté est celui qui donne le maximum de corrélation. Le fait que les signaux sont à spectre contrôlé permet de ne pas perturber inutilement le signal en insérant la marque potentiellement audible dans des zones du spectre qui, de toute façon, ne seront pas transmises par les codées.After transmission (block 194), on reception, the resynchronization and the correlation (block 196) are first carried out between the received signal and the set of signals of the reception dictionary. The detected signal is the one that gives the maximum correlation. The fact that the signals are spectrum controlled makes it possible not to disturb the signal unnecessarily by inserting the potentially audible mark in areas of the spectrum which, in any case, will not be transmitted by the codecs.
On pourrait en outre envisager d'utiliser les signaux obtenus conformément à l'invention dans le domaine du filtrage numérique.It could furthermore be envisaged to use the signals obtained according to the invention in the field of digital filtering.
Un dispositif 200 mettant en œuvre les procédés conformes à l'invention est illustré sur la figure 20. Ce dispositif peut être par exemple un micro-ordinateur 200 connecté à différents périphériques, dont au moins certains sont susceptibles de fournir des informations à traiter selon l'invention.A device 200 implementing the methods in accordance with the invention is illustrated in FIG. This device may be for example a microcomputer 200 connected to different peripherals, at least some of which may provide information to be processed according to the invention.
Le dispositif 200 peut comporter une interface de communication 2000 reliée à un réseau (non représenté). Le dispositif 200 comporte par ailleurs un moyen de stockage 2002, tel qu'un disque dur. Il peut aussi comporter un lecteur de supports d'informations 2004 tels que des disquettes, CD-ROM ou encore cartes mémoire 2006. Le support d'informations 2006 et le moyen de stockage 2002 peuvent contenir des données d'implantation logicielle de l'invention ainsi que le code de l'invention qui, une fois lu par le dispositif 200, sera stocké sur le moyen de stockage 2002. En variante, le programme permettant au dispositif de mettre en œuvre l'invention pourra être stocké en mémoire morte (par exemple une ROM) 2008. En seconde variante, le programme pourra être reçu par l'intermédiaire du réseau, pour être stocké de façon identique à celle décrite précédemment.The device 200 may comprise a communication interface 2000 connected to a network (not shown). The device 200 furthermore comprises storage means 2002, such as a hard disk. It may also include a reader of 2004 information carriers such as floppy disks, CD-ROMs or memory cards 2006. The information carrier 2006 and the storage means 2002 may contain software implementation data of the invention. as well as the code of the invention which, once read by the device 200, will be stored on the storage means 2002. In a variant, the program enabling the device to implement the invention may be stored in read-only memory (by example a ROM) 2008. In the second variant, the program can be received via the network, to be stored in the same manner as described above.
Le dispositif 200 est relié à un microphone 2010 par l'intermédiaire d'une carte d'entrées/sorties 2012. Les données à traiter selon l'invention seront dans ce cas du signal audio.The device 200 is connected to a microphone 2010 via an input / output card 2012. The data to be processed according to the invention will in this case be an audio signal.
Ce même dispositif comporte un écran 2014 permettant de visualiser les informations à traiter ou de servir d'interface avec l'utilisateur, qui pourra paramétrer certains modes de traitement, à l'aide d'un clavier 2016, d'une souris ou de tout autre moyen.This same device includes a 2014 screen to visualize the information to be processed or to interface with the user, who can set some modes of treatment, using a keyboard 2016, a mouse or any other way.
Une unité centrale (CPU) 2018 exécute les instructions relatives à la mise en œuvre de l'invention, instructions stockées dans la mémoire morte 2008 ou dans les autres éléments de stockage. Lors de la mise sous tension, les programmes et méthodes de traitement stockés dans une des mémoires (non volatile), par exemple la ROM 2008, sont transférés dans une mémoire vive (par exemple, une RAM) 2020, qui contient alors le code exécutable de l'invention ainsi que les variables nécessaires à la mise en œuvre de l'invention. Un bus de communication 2022 permet la communication entre les différents sous-éléments du micro-ordinateur 200 ou liés à lui. La représentation du bus 2022 n'est pas limitative et notamment, l'unité centrale 2018 est susceptible de communiquer des instructions à tout sous-élément du microordinateur 200 directement ou par l'intermédiaire d'un autre sous-élément du micro-ordinateur 200.A CPU 2018 executes the instructions for implementing the invention, instructions stored in the ROM 2008 or in the other storage elements. When powering on, the programs and processing methods stored in one of the (non-volatile) memories, for example the ROM 2008, are transferred to a random access memory (for example, a RAM) 2020, which then contains the executable code of the invention as well as the variables necessary for the implementation of the invention. A communication bus 2022 allows communication between the different sub-elements of the microcomputer 200 or linked to it. The representation of the bus 2022 is not limiting and in particular, the central unit 2018 is capable of communicating instructions to any sub-element of the microcomputer 200 directly or via another sub-element of the microcomputer 200.
Le dispositif décrit ici est susceptible de contenir tout ou partie du traitement décrit dans l'invention. The device described here is likely to contain all or part of the treatment described in the invention.

Claims

REVENDICATIONS
1. Procédé de génération d'une pluralité de spectres discrets s(i) de dimension Q, mutuellement orthogonaux et à puissance contrôlée, i désignant le numéro du spectre, lesdits spectres représentant des signaux temporels dans le domaine spectral et étant de module μ constant dans un ensemble G de désignation de raies spectrales et nul partout ailleurs, ledit procédé étant caractérisé en ce qu'il consiste à :A method for generating a plurality of discrete spectra s (i) of dimension Q, mutually orthogonal and with controlled power, i denoting the number of the spectrum, said spectra representing time signals in the spectral domain and being of constant μ module in a set G of spectral line designation and zero everywhere else, said method being characterized in that it consists of:
- déterminer (20) au moins une partie d'une matrice de Hadamard complexe H d'ordre dR = w dans le cas de spectres de signaux réels et dR = 2.w dans le cas de spectres de signaux complexes ;determining (20) at least a portion of a complex Hadamard matrix H of order dR = w in the case of real signal spectra and dR = 2.w in the case of complex signal spectra;
- déterminer (22) le prolongement P de la matrice H à partir de G et de la dimension Q ; etdetermining (22) the extension P of the matrix H from G and the dimension Q; and
- obtenir (22) lesdits spectres à puissance contrôlée s(i) = μ P(H[.][i]), où H[.][i] désigne la ième colonne de la matrice H.obtaining (22) said power-controlled spectra s (i) = μ P (H [.] [i]), where H [.] [i] denotes the ith column of the matrix H.
2. Procédé selon la revendication 1 , caractérisé en ce que l'étape (20) de détermination d'au moins une partie de la matrice de Hadamard complexe consiste à obtenir une colonne (Hcle[.][i] ) d'une matrice des rotations calculée à partir de clés prédéterminées de rotation et de permutation appliquées à une matrice de Hadamard de référence (Href ).2. Method according to claim 1, characterized in that the step (20) of determining at least a portion of the complex Hadamard matrix consists in obtaining a column (H cle [.] [I]) of a rotational matrix calculated from predetermined keys of rotation and permutation applied to a reference Hadamard matrix (H ref ).
3. Procédé selon la revendication 2, caractérisé en ce qu'il comporte en outre une étape de décomposition de l'ordre dR de ladite matrice de Hadamard de référence en un produit de facteurs (f,) et une sous-étape de calcul du plus petit commun multiple (θ) de l'ensemble desdits facteurs pour la détermination de la matrice de Hadamard de référence.3. Method according to claim 2, characterized in that it further comprises a step of decomposition of the order dR of said reference Hadamard matrix into a product of factors (f,) and a sub-step of calculating the least common multiple (θ) of all of said factors for the determination of the reference Hadamard matrix.
4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce qu'il comporte en outre une étape (24) consistant à déterminer un signal4. Method according to any one of the preceding claims, characterized in that it further comprises a step (24) of determining a signal
s(i)[k] = [kN][x[α]] où : • i désigne le numéro du signal,s (i) [k] = [ k N] [x [α]] or : • i denotes the number of the signal,
• Q désigne un ensemble de coordonnées,• Q denotes a set of coordinates,
• X désigne le nombre de dimensions spatiales,• X is the number of spatial dimensions,
• T désigne le nombre de dimensions temporelles et • F(qJ désigne la matrice de Fourier d'ordre qα, de façon à engendrer une pluralité de signaux temporels s(i) mutuellement orthogonaux.• T denotes the number of temporal dimensions and • F (qJ denotes the Fourier matrix of order q α , so as to generate a plurality of mutually orthogonal time signals s (i).
5. Procédé de génération d'une famille de signaux temporels t(i), caractérisé en ce qu'il consiste à combiner des familles de signaux temporels mutuellement orthogonaux engendrés par un procédé selon la revendication 4 et dont les supports spectraux sont disjoints.5. A method of generating a family of time signals t (i), characterized in that it consists in combining mutually orthogonal time signal families generated by a method according to claim 4 and whose spectral supports are disjoint.
6. Utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux engendrés par un procédé selon l'une quelconque des revendications précédentes pour l'étalement spectral dans des systèmes de transmission à étalement de spectre.6. Use of mutually orthogonal complex time signals or complex spectra generated by a method according to any one of the preceding claims for spectrum spreading in spread spectrum transmission systems.
7. Utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux engendrés par un procédé selon l'une quelconque des revendications 1 à 5 pour le tatouage audio et sa détection.7. Use of mutually orthogonal complex time signals or complex spectra generated by a method according to any one of claims 1 to 5 for audio tattooing and detection thereof.
8. Utilisation de spectres complexes mutuellement orthogonaux à spectre de puissance contrôlé engendrés par un procédé selon l'une quelconque des revendications 1 à 4 pour le codage ou la représentation de signaux audio, les signaux audio étant quantifiés à l'aide d'un dictionnaire ou d'une famille de dictionnaires à valeurs réelles ou complexe.8. Use of mutually orthogonal complex spectrums with controlled power spectrum generated by a method according to any one of claims 1 to 4 for coding or representing audio signals, the audio signals being quantified using a dictionary or a family of dictionaries with real or complex values.
9. Utilisation de signaux temporels ou spectres complexes mutuellement orthogonaux à spectre de puissance contrôlé engendrés par un procédé selon l'une quelconque des revendications 1 à 5 pour l'optimisation de données d'excitation de métrologie.9. Use of time signals or mutually orthogonal complex spectrums with controlled power spectrum generated by a method according to any one of claims 1 to 5 for the optimization of metrology excitation data.
10. Dispositif de génération d'une pluralité de spectres discrets s(i) de dimension Q, mutuellement orthogonaux et à puissance contrôlée, i désignant le numéro du spectre, lesdits spectres représentant des signaux temporels dans le domaine spectral et étant de module μ constant dans un ensemble G de désignation de raies spectrales et nul partout ailleurs, ledit dispositif étant caractérisé en ce qu'il comporte :10. Device for generating a plurality of discrete spectra s (i) of dimension Q, mutually orthogonal and with controlled power, i denoting the number of the spectrum, said spectra representing time signals in the spectral domain and being of constant μ module in one spectral line designation set G and zero everywhere else, said device being characterized in that it comprises:
- des moyens pour déterminer au moins une partie d'une matrice de Hadamard complexe H d'ordre dR = w dans le cas de spectres de signaux réels et dR = 2.w dans le cas de spectres de signaux complexes ;means for determining at least a portion of a complex Hadamard matrix H of order dR = w in the case of real signal spectra and d R = 2.w in the case of complex signal spectra;
- des moyens pour déterminer le prolongement P de la matrice H à partir de G et de la dimension Q ; etmeans for determining the extension P of the matrix H from G and the dimension Q; and
- des moyens pour obtenir lesdits spectres à puissance contrôlée s(i) = μ.P(H[.][i]), où H[.][i] désigne la ième colonne de la matrice H. means for obtaining said power-controlled spectra s (i) = μ.P (H [.] [i]), where H [.] [i] denotes the ith column of the matrix H.
11. Dispositif de codage de signaux audio, caractérisé en ce qu'il comporte un dictionnaire dans lequel sont stockés des spectres complexes mutuellement orthogonaux engendrés par un dispositif conforme à la revendication 10.11. Device for encoding audio signals, characterized in that it comprises a dictionary in which are stored complex mutually orthogonal spectra generated by a device according to claim 10.
12. Produit programme d'ordinateur pouvant être chargé dans un appareil programmable, caractérisé en ce qu'il comporte des séquences d'instructions pour mettre en œuvre un procédé selon l'une quelconque des revendications 1 à 5, lorsque ce programme est chargé et exécuté par l'appareil programmable. 12. A computer program product that can be loaded into a programmable device, characterized in that it comprises sequences of instructions for implementing a method according to any one of claims 1 to 5, when the program is loaded and executed by the programmable device.
EP08775694A 2007-03-09 2008-03-07 Method for generating mutually orthogonal signals having a controlled spectrum Withdrawn EP2119073A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0753737A FR2913548A1 (en) 2007-03-09 2007-03-09 METHOD FOR GENERATING MUTUALLY ORTHOGONAL SIGNALS WHERE THE SPECTRUM IS CONTROLLED
PCT/FR2008/050391 WO2008122744A1 (en) 2007-03-09 2008-03-07 Method for generating mutually orthogonal signals having a controlled spectrum

Publications (1)

Publication Number Publication Date
EP2119073A1 true EP2119073A1 (en) 2009-11-18

Family

ID=38477097

Family Applications (1)

Application Number Title Priority Date Filing Date
EP08775694A Withdrawn EP2119073A1 (en) 2007-03-09 2008-03-07 Method for generating mutually orthogonal signals having a controlled spectrum

Country Status (4)

Country Link
US (1) US8154984B2 (en)
EP (1) EP2119073A1 (en)
FR (1) FR2913548A1 (en)
WO (1) WO2008122744A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2934696A1 (en) * 2008-08-01 2010-02-05 Groupe Ecoles Telecomm Sequences of codes generation method for code division multiple access communication network, involves applying transformation operator to initial family for generating family of code sequences, where spectrum of sequence is identical
US8416641B2 (en) * 2010-04-28 2013-04-09 Semiconductor Components Industries, Llc Acoustic distance measurement system having cross talk immunity
US10868628B1 (en) * 2019-04-02 2020-12-15 Huawei Technologies Co., Ltd. Method and apparatus for generating and implementing spectrally-efficient orthogonal codes for wireless communications

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL114471A0 (en) * 1994-07-12 1996-01-31 Usa Digital Radio Partners L P Method and system for simultaneously broadcasting and analog signals
US6724741B1 (en) * 1998-06-29 2004-04-20 L-3 Communications Corporation PN code selection for synchronous CDMA
US6314125B1 (en) * 1998-12-09 2001-11-06 Qualcomm Incorporated Method and apparatus for the construction and transmission of binary quasi orthogonal vectors
EP1190517A4 (en) 1999-06-11 2006-10-04 Templex Technology Inc Communication systems and apparatus with synchronous orthogonal coding
US7242722B2 (en) * 2003-10-17 2007-07-10 Motorola, Inc. Method and apparatus for transmission and reception within an OFDM communication system
US20070036202A1 (en) * 2005-03-11 2007-02-15 Hongya Ge Code, signal and conjugate direction design for rapidly-adaptive communication receivers and electromagnetic, acoustic and nuclear array processors

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2008122744A1 *

Also Published As

Publication number Publication date
FR2913548A1 (en) 2008-09-12
US8154984B2 (en) 2012-04-10
WO2008122744A1 (en) 2008-10-16
US20100103811A1 (en) 2010-04-29

Similar Documents

Publication Publication Date Title
Rekik et al. Speech steganography using wavelet and Fourier transforms
EP2681889B1 (en) Method for modulating an oqam multi-carrier signal, and corresponding computer program and modulator
EP2603862B1 (en) Method for analyzing signals providing instantaneous frequencies and sliding fourier transforms, and device for analyzing signals
EP2962301B1 (en) Generation of a signature of a musical audio signal
WO2013141702A1 (en) Method and system for embedding and detecting a pattern
FR3098973A1 (en) A method of separating an acoustic mixing signal into a plurality of M sound contributions; Product computer program and readable medium of related information.
CN112309426A (en) Voice processing model training method and device and voice processing method and device
EP2119073A1 (en) Method for generating mutually orthogonal signals having a controlled spectrum
Gupta Banik et al. Blind key based attack resistant audio steganography using cocktail party effect
Salcic Audio watermarking
EP3200384A1 (en) Method of execution of a cryptographic calculation and application to classification by support vector machines
EP3482524B1 (en) Method for generating parameters characterizing a cryptographic protocol
Hoffmann Rate of convergence for parametric estimation in a stochastic volatility model
Adrian et al. Synthesis of perceptually plausible multichannel noise signals controlled by real world statistical noise properties
WO2012085215A1 (en) Method and system for multi-threshold multimodal authentication using secret sharing
EP2126904B1 (en) Audio encoding method and device
Kurada et al. Speech bandwidth extension using transform-domain data hiding
Hu et al. FFT-based dual-mode blind watermarking for hiding binary logos and color images in audio
Mirarab et al. A novel wavelet based ICA technique using Kurtosis
Gunjal et al. Optimised adaptive speech coder for software defined radio
Rao et al. Speech Steganography Using DWT with IPDP-MLE Approach for Defence Applications
WO2010000966A1 (en) Method of simulating an electronic circuit comprising at least one analogue part with a power spectral density
Quiñonez-Carbajal et al. Speech signal authentication and self-recovery based on DTWT and ADPCM
Angreni et al. Improved Intelligent Partitioning Scheme for Audio Data Hiding
EP1887565A1 (en) Method and device for detecting a tattooing identifier in an audio signal

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20090828

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR

RIN1 Information on inventor provided before grant (corrected)

Inventor name: LOZACH, BRUNO

Inventor name: LE GUYADER, ALAIN

Inventor name: BOLLO, JOSE

DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20110128

RAP1 Party data changed (applicant data changed or rights of an application transferred)

Owner name: ORANGE

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

INTG Intention to grant announced

Effective date: 20161012

RIN1 Information on inventor provided before grant (corrected)

Inventor name: LOZACH, BRUNO

Inventor name: LE GUYADER, ALAIN

Inventor name: BOLLO, JOSE

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20170223