EP4248231A1 - Localisation perfectionnée d'une source acoustique - Google Patents

Localisation perfectionnée d'une source acoustique

Info

Publication number
EP4248231A1
EP4248231A1 EP21810072.5A EP21810072A EP4248231A1 EP 4248231 A1 EP4248231 A1 EP 4248231A1 EP 21810072 A EP21810072 A EP 21810072A EP 4248231 A1 EP4248231 A1 EP 4248231A1
Authority
EP
European Patent Office
Prior art keywords
vector
velocity vector
wall
tau1
peaks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP21810072.5A
Other languages
German (de)
English (en)
Inventor
Jérome DANIEL
Srdan KITIC
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
Orange 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 Orange SA filed Critical Orange SA
Publication of EP4248231A1 publication Critical patent/EP4248231A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/18Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using ultrasonic, sonic, or infrasonic waves
    • G01S5/22Position of source determined by co-ordinating a plurality of position lines defined by path-difference measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S3/00Direction-finders for determining the direction from which infrasonic, sonic, ultrasonic, or electromagnetic waves, or particle emission, not having a directional significance, are being received
    • G01S3/80Direction-finders for determining the direction from which infrasonic, sonic, ultrasonic, or electromagnetic waves, or particle emission, not having a directional significance, are being received using ultrasonic, sonic or infrasonic waves
    • G01S3/802Systems for determining direction or deviation from predetermined direction
    • G01S3/803Systems for determining direction or deviation from predetermined direction using amplitude comparison of signals derived from receiving transducers or transducer systems having differently-oriented directivity characteristics
    • G01S3/8034Systems for determining direction or deviation from predetermined direction using amplitude comparison of signals derived from receiving transducers or transducer systems having differently-oriented directivity characteristics wherein the signals are derived simultaneously
    • G01S3/8036Systems for determining direction or deviation from predetermined direction using amplitude comparison of signals derived from receiving transducers or transducer systems having differently-oriented directivity characteristics wherein the signals are derived simultaneously derived directly from separate directional systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S11/00Systems for determining distance or velocity not using reflection or reradiation
    • G01S11/14Systems for determining distance or velocity not using reflection or reradiation using ultrasonic, sonic, or infrasonic waves

Definitions

  • the present invention relates to the field of the localization of acoustic sources, in particular for the estimation of acoustic direction or "DoA" (Direction of Arrival) by a compact microphone system (for example a microphone capable of picking up sounds in “ambiophonic” or “ambisonic” representation below).
  • DoA Direction of Arrival
  • a possible application is for example the formation of channels or ("beamforming", which then passes through a spatial separation of audio sources, in order in particular to improve speech recognition (for example for a virtual assistant by voice interaction
  • Such processing can also be used in 3D audio coding (pre-analysis of a sound scene to code the main signals individually), or even allow the spatial editing of immersive sound content possibly in audio-visual (to artistic vocation, radiophonic, cinema, etc.) It also allows the monitoring of speakers in teleconferences or the detection of sound events (with or without associated video).
  • One category of methods is based on the analysis of the velocity vector V(f) or the intensity vector l(f) (the first being an alternative version of the second, normalized by the power of the omnidirectional reference component) , as expressed in Eq.6 and Eq.7.
  • the imaginary part (reactive part associated with the energy gradient) is considered characteristic of stationary acoustic phenomena.
  • the known method operates either on time samples filtered in sub-bands in which case they are real and the intensity vector is also, or on complex frequency samples in which case it is the part of the intensity vector which is only exploited as designating the direction of origin (or more precisely, its opposite).
  • the calculation of a so-called “diffuseness” coefficient linked to the ratio between the norm of the vector and the energy of the sound field, makes it possible to decide whether the information available at the frequency considered is rather characteristic of directional components (at which the direction of the vector determines the location) or of an "ambience” (field resulting from diffuse reverberation and/or a mixture of undifferentiated secondary sound sources).
  • WM Another method denoted “WM” below is based on the velocity vector and the statistics of the angular direction of its real part, weighted by certain factors linked to the ratio between real and imaginary parts and their standards.
  • a spherical cartography (2D histogram, for example equi-rectangular) is established by collecting values on all the frequency samples and on a certain number of time frames. The estimate is therefore essentially based on a maximum probability and is subject to a certain latency.
  • covariance Another category of so-called “covariance” methods, sometimes presented as an extension of the first, involves the calculation of a covariance matrix of the spatial components (also sometimes called the Power Spectral Density matrix or “ PSD”) by frequency sub-bands. Here again, the imaginary part is sometimes totally ignored. It should be noted that the first line (or first column) of this matrix is equivalent to the intensity vector when the spatial components are of the ambisonic type. Many of these approaches involve “subspace” methods and algorithms that are sometimes costly, especially when working on a large number of frequency subbands, and when exploiting higher spatial resolutions.
  • PSD Power Spectral Density matrix
  • vector-based or matrix-based methods attempt to discern the “directional” components associated with localizable acoustic sources or paths, on the one hand, from ambient components, on the other.
  • the localization is generally biased by the systematic interference of the direct sound with reflections associated with the same acoustic source.
  • it is the real part of the velocity vector which is mainly considered, while the imaginary part is usually ignored (or at least underused).
  • Acoustic reflections, considered annoying, are not included in the estimation problem. They therefore remain an ignored component, not modeled, without taking into account the particular interference structures induced.
  • the acoustic localization is generally estimated in angular terms only. Moreover, no effective approach seems to propose an evaluation of distance from a single pick-up point (considered as unique for a coincident or more generally "compact" microphone system, i.e. contained in a volume small in size compared to the distances from the acoustic sources, typically around ten centimeters for an ambisonic microphone).
  • a particularly advantageous approach uses the velocity vector of the sound to obtain in particular the direction of arrival of the sound, its delay (thus the distance to the source), the delays linked to possible reflections and thereby determining partition positions.
  • Such a realization makes it possible to model the interference between the direct wave and at least one indirect wave (resulting from reflection) and exploiting the manifestations of this model on the entire velocity vector (on its imaginary part as well as on its real part).
  • a process for processing sound signals acquired by at least one microphone is proposed, for localization of at least one sound source in a space comprising at least one wall, in which:
  • a generalized velocity vector V'(f) is expressed in the frequency domain, estimated from an expression of a velocity vector V(f) in which a reference component D(f), different from an omnidirectional component W(f), appears in the denominator of said expression, said expression being complex with a real part and an imaginary part, the generalized velocity vector V'(f) characterizing a composition between:
  • At least one parameter is determined from among:
  • the aforementioned generalized velocity vector V'(f) is constructed from the velocity vector V(f) which is generally expressed as a function of a component at denominator which is omnidirectional.
  • the generalized velocity vector V'(f) replaces the "conventional" velocity vector V(f) within the meaning of the aforementioned document FR1911723, with then a "reference" component in the denominator which is different from an omnidirectional component, This reference component can indeed be more “selective" towards the direction of arrival of the sound.
  • the direction of arrival of the sound making it possible to calculate the reference component can be obtained as a first approximation by using the conventional velocity vector V(f) by example during a first iteration of an iterative process gradually converging towards an exact DoA.
  • the method may comprise, as indicated above, a plurality of iterations in at least part of which the generalized velocity vector V'(f) is used with, in its denominator, a reference component D (f) determined based on an approximation of the direction of the direct path (DoA) obtained at a previous iteration. In most situations, these iterations converge to a fairer DoA direction.
  • Such a method can then comprise a first iteration in which the “conventional” velocity vector V(f) is used instead of the generalized velocity vector V′(f).
  • the velocity vector V(f) is expressed in the frequency domain by making the omnidirectional component W(f) appear in the denominator. It is then possible to determine at least, at the end of this first iteration, a first approximation of the direction of the direct path (DoA).
  • the generalized velocity vector V'(f) is used, estimated from an expression of the velocity vector V(f) in the denominator of which the omnidirectional component W(f) is replaced by the reference component D(f), the latter being spatially more selective than the omnidirectional component W(f).
  • the reference component D(f) is more selective in a direction corresponding to the aforementioned first approximation of the direction of the direct path (DoA).
  • the iterations can be repeated until convergence is reached according to a predetermined criterion.
  • a predetermined criterion can be a criterion of causality to identify with a reasonable degree of certainty at least first sound reflections on obstacles (or "partitions" above) in the sound propagation environment between the microphone and a source.
  • An inverse transform is also applied, from frequencies to time, to said expression of the generalized velocity vector V'(f) to obtain, in the time domain, a succession of peaks each linked to a reflection on at least one wall, in addition to a peak linked to an arrival of sound along said direct path (DoA), and
  • the second case is followed by the implementation of the following steps, the acquired signals being delivered in the form of successive frames of samples:
  • a score for the presence of a sound attack in the frame is estimated (in accordance for example with an equation of the type Eq.53 in the appendix), and
  • the frames with scores higher than a threshold are selected to process the sound signals acquired in the selected frames.
  • the “classic” velocity vector V(f) can be expressed in the frequency domain by ambisonic components of order 1 in a form of the type:
  • V(f) 1/W(f) [X(f), Y(f), Z(f)] T ,
  • V(f) being the omnidirectional component
  • V'(f) expressed in the frequency domain by ambisonic components of order 1
  • V(f) 1/D(f) [X(f), Y(f), Z(f)] T ,
  • the order considered here is 1, which makes it possible to express the components of the velocity vector in a three-dimensional frame, but other embodiments are possible with in particular a higher ambisonic order.
  • an estimate of the direction of the direct path assimilated to the first vector U0 can be determined from an average over a set of frequencies of the real part of the generalized velocity vector V'(f) expressed in the frequency domain (in accordance with the formalism of equation Eq.24 applied here of course to the generalized velocity vector V'(f)).
  • V1 V'(TAU1) - ( (V'(TAU1) . V'(2.TAU1 )) / 1
  • 2 ) V'(0), The vector U1 then being given by: U1 V1 /
  • the space comprises a plurality of walls:
  • peaks linked to a reflection on a wall of said plurality of walls are identified, each identified peak having a temporal abscissa function of a first delay TAUn of the acoustic path resulting from the reflection on the wall n corresponding, with respect to the direct path,
  • At least one parameter is determined from:
  • a first part of peaks can be pre-selected at the smallest positive temporal abscissas, to identify in this part the peaks each associated with a single reflection on a wall.
  • the signals acquired by the microphone are in the form of a succession of samples, it is possible more generally to apply to these samples a weighting window with decreasing exponential variation over time (as will be seen later with reference to FIG. 5A).
  • this window can be placed at the very start of the sound attack (or even just before the start of the attack). This avoids the discomfort of multiple reflections.
  • the application of such a weighting window makes it possible to obtain a less biased first estimate of the parameters U0, dO, etc. resulting from the exploitation of the expression of the velocity vector in the time domain, in particular when it is a question of the “classic” velocity vector, for example within the framework of a first iteration of the method. Indeed, in certain situations where the cumulative magnitude of the reflections is greater than that of the direct sound, the estimation of the aforementioned parameters may be biased. These situations can be detected when peaks are observed at negative temporal abscissas (curve at the top of FIG. 5B) in the temporal expression of the velocity vector.
  • the application of a weighting window of the aforementioned type makes it possible to reduce these peaks to positive abscissae as illustrated by the bottom curve of FIG. 5B, and to give less biased estimates.
  • this embodiment is optional insofar as the use of the generalized velocity vector instead of the "conventional" velocity vector already allows a practically unbiased estimation of the parameters U0, dO, etc., including included in this type of situation. Nevertheless, such processing can take place for example for a first iteration of the method with the “conventional” velocity vector or even in the second case, mentioned above, of non-convergence of the iterative processing.
  • q(f) exp (-
  • Such an embodiment makes it possible to select the most usable frequency bands for determining the aforementioned parameters.
  • the present invention also relates to a device for processing sound signals, comprising a processing circuit arranged for the implementation of the above method.
  • FIG. 4 schematically presents such a processing circuit which can then comprise:
  • an IN input interface to receive SIG signals acquired by the microphone (which may include several piezoelectric pads to compose these signals, for example in an ambisonic context),
  • processor PROC cooperating with a working memory MEM to process these signals in particular to work out the expression of the generalized velocity vector in order to derive therefrom the desired parameters dO, U0, etc., the values of which can be delivered by the output interface OUT.
  • Such a device can be in the form of a module for locating a sound source in a 3D environment, this module being connected to a microphone (sound antenna type, or other). Conversely, it can be a sound rendering engine based on a given position of a source in a virtual space (comprising one or more walls) in augmented reality.
  • the present invention also relates to a computer program comprising instructions for implementing the above method, when these instructions are executed by a processor of a processing circuit.
  • FIGS. 3A, 3B and 7 illustrate an example of a possible flowchart of the algorithm of such a program.
  • a non-transitory recording medium readable by a computer, on which such a program is recorded.
  • the generalized velocity vector and the "classic" generalized vector are designated without distinction by the same term “velocity vector”, with the same notation V (V(f); V(t )) notably in the equations presented in the appendix.
  • V' V'(f); V'(t)
  • FIG. 5B the principles underlying the formalism used in document FR1911723 and included here in the equations given in the appendix are recalled.
  • Figure 1 shows, by way of illustration, various parameters involved in locating a sound source according to one embodiment.
  • FIG. 2 shows by way of illustration the various successive peaks exhibited by the temporal expression of a velocity vector after its inverse frequency-to-time transform ("IDFT").
  • IDFT inverse frequency-to-time transform
  • Figure 3A shows the beginning steps of an algorithmic processing to determine the relevant parameters U0, dO, etc.
  • FIG. 3B shows the continuation of the processing steps of FIG. 3A.
  • Figure 4 schematically shows a device within the meaning of the invention according to one embodiment.
  • Figure 5A shows a weighting window of the samples of the acquired signals, exponentially decreasing over time, according to one embodiment.
  • Figure 5B compares a time expression after IDFT of the velocity vector:
  • Figures 6A [Fig. 6A], 6B [Fig. 6B] and 6C [Fig. 6C], represent the shape of the linked peaks present in the temporal expression of the generalized velocity vector V′(t), as iterations of the method described later with reference to FIG.
  • Figure 6D illustrates very schematically and by way of illustration the form of the reference component D(f) appearing in the denominator of the expression of the generalized velocity vector V'(f), over several successive iterations of the process, and
  • Figure 7 schematically represents the steps of an iterative method within the meaning of the invention, according to an embodiment given here by way of example.
  • the velocity vector can be calculated in a manner known per se. However, some specific settings can be recommended to improve the final results obtained.
  • frequency spectra B(f) of Ambisonic signals are first typically obtained by Short Term Fourier Transform (or STFT for “Short Term Fourier Transform”) for a succession of time frames b(t), generally overlapping (with addition/overlap for example).
  • a velocity vector is then calculated for all the frequency samples as a ratio of the directional components X(f), Y(f) and Z(f):
  • the characteristic of the source signal is substantially removed to highlight the characteristics of the acoustic channel, if indeed the spectral composition of the audio signal excites a substantial amount of useful frequencies (e.g. over a wide frequency band).
  • This impulse response is called SRIR for "Spatial Room Impulse Response" and is generally represented as a series of temporal peaks:
  • the effect of interference between the direct sound and at least one reflection is inspected on the expression of the complex velocity vector, so as to estimate relevant parameters for defining the position of the sound source. .
  • the frequency expression of the ambisonic field follows, if the later part, given by the expression Eq.16, is neglected.
  • the short-term velocity vector is then expressed by the equation Eq.17, or even by the equation Eq.18 according to a regularized version with a non-zero EPSILON term so as to avoid values (quasi) infinite when the component in the denominator is (almost) zero.
  • the component W (specific to the classical velocity vector) can be replaced by the reference component D to express the generalized velocity vector.
  • the short-term analysis makes it possible to observe, over time and according to the dynamic evolution of the source signal, frequency fingerprints (denoted “FDW” below), characteristics of sub-mixtures of fronts d wave within the spatial impulse response.
  • a characteristic submix (smx for “submix”), for a given observation, is modeled according to Eq.19, in the time and frequency domains.
  • the implicit model h smx (t) is plausibly similar to the beginning of the spatial impulse response h early (t) at least in terms of directions and relative delays of fronts d 'wave.
  • the implicit relative gain parameters g n being impacted by the temporal windowing and the dynamic characteristics of the signal, they do not occur necessarily conform to those of the impulse response.
  • the affine segment (real part) is on a line containing the unit vectors U0 and U1 pointing to the direct and indirect waves respectively, and the two segments are orthogonal to the median plane of these two vectors (and thus the imaginary part of the vector l' is always itself since it is on the linear segment). Furthermore, assuming a homogeneous distribution of the phase shifts between the waves (therefore a representative sweep of the frequencies), according to a calculation of statistics, the average of the real part of the velocity vector is equal to the vector U0 as expressed in Eq.24 and the maximum probability is an average of U0 and U1 weighted by the respective amplitude of the waves as expressed in Eq.25.
  • a solution to this problem consists in operating a time-frequency analysis that is more temporally selective (i.e. with shorter time windows) to have the chance of seeing a simpler acoustic mixture appear during the attacks.
  • amplitude transients, signal rise
  • the delays associated with successive reflections may be too close together to isolate the effect of the first reflection in its interference with the direct sound.
  • a first step consists in converting the fingerprint of the velocity vector in the time domain (or “TDW”, for “Time-Domain Velocity Vector”), by means of an Inverse Fourier Transform as presented in Eq.31.
  • TDW Time-Domain Velocity Vector
  • This has the effect of condensing the effects of frequency cyclicity associated with certain axes and which manifest themselves in complex peregrinations of the velocity vector, in more parsimonious data and therefore more easily analysable.
  • Such a conversion causes series of peaks to appear at regular time intervals, peaks of which the most important are easily detectable and extractable (see for example FIG. 5B).
  • the attenuation parameter g1 (this being likely to be modified by the time-frequency analysis parameters, in particular by the shape of an analysis window and by its temporal placement relative to the acoustic events The estimation of this parameter is therefore of less utility in the application contexts considered here).
  • Equation Eq.B2 For the generalized velocity vector V', we find a slightly different equation in equation Eq.B2 at the end of the appendix, this equation also being denoted Eq.35b because it corresponds to equation Eq.35 but given here for the generalized velocity vector. Moreover, at the end of the appendix are given the equations specific to the generalized velocity vector V' and the correspondence with a previously written equation specific to the classical velocity vector, is indicated by a "b" after the equation number ( Eq.xxb).
  • Figure 2 illustrates such a series in the simplified case of two reflections interfering with a direct sound.
  • Each marker (respectively round, cross, diamond) indicates by its ordinate the contribution of the vectors U0, U1, U2 (characteristics of the direct sound, of a first reflection and of a second reflection respectively) to the temporal imprint TDVV as a function of temporal abscissas. It can thus be seen that the reception of the direct sound is characterized by the first peak at time zero and of amplitude 1, illustrated by a circle.
  • the interference of a first reflection (delay TAU1) with the direct path causes a first series of peaks in TAU1 , 2xTAU1 , 3xTAU1 , etc., which are marked here by a cross at one end and a circle at the other end (top-bottom).
  • the interference of a second reflection (TAU2 delay) with the direct path causes a second series of peaks in TAU2, 2xTAU2, 3xTAU2, etc., marked here by a diamond at one end and a circle at the other end.
  • an element of the "crossed series” that is to say the interference between the reflections (first delay: TAU1 +TAU2, then 2TAU1 +TAU2, then TAU1 +2TAU2, etc.).
  • the first case is detected if there are positive integers k or partially null giving TAUnew according to Eq.40, otherwise we fall into the second case and the set of identified reflections is increased by introducing the new delay TAUN+1, associated with a direction which can be estimated in the manner described in the case of a single reflection.
  • the inverse Fourier transform gives a “bidirectional” TDW time imprint, with series generally developing both towards the positive times and towards negative times (top curve of FIG. 5B for illustration).
  • Such a situation in which one or more reflection gains would be greater than 1 can be encountered, for example, when the direct wave has an amplitude less than the sum of the amplitudes of the waves resulting from the reflections on one or more partitions.
  • the main peak at time zero no longer corresponds strictly to the vector uO, but to a mixture of the latter with a more or less significant proportion of the vectors designating the directions of the reflections. This leads to a location bias (of the ‘estimated DoA’).
  • Another symptom is that the main peak then has a norm different from 1 in general, and more often less than 1.
  • the invention proposes a robust method, particularly in this type of situation. It proposes to adjust the expression of the velocity vector by conferring spatial selectivity towards the DoA on the D component which appears in its denominator instead of the usual omnidirectional component W.
  • Equation Eq.B6 Starting from the equation Eq.B6 at the end of the appendix, a particular relationship is retained between two successive vectors of a series, in particular between the first two vectors V'(TAUn) and V'(2.TAUn) , the most salient.
  • the equation Eq.B7 thus shows a factor (-Gn/BETAn) denoted here "RHO" and whose equation Eq.B8 proposes an estimate as a scalar product of the first two aforementioned vectors of the same series V'( TAUn) and V'(2.TAUn), this scalar product being divided by the squared norm of the first.
  • Equation Eq.BI O By reintegrating the RHO factor into the equation Eq.B6, the obtained equation Eq.B9 can be rearranged to give the equation Eq.BI O.
  • the vector Un in particular, the vector U1 if we focus on the first reflection and its associated series
  • a factor NUO/Gn which is positive (except a priori rare situation such as a reflection with phase inversion): it can therefore be obtained by normalization of the left side V'(TAUn)-RHO.V'(0).
  • the global factor NUO is likely to integrate other influencing factors than the reference directivity, for example an overall reduction in amplitude which could be caused by a limitation of the frequency bandwidth of the signal source, and/or its partial masking by noise (although the latter effect is generally more complex to model). It is interesting to note that finally, the direction of the vector U1 (or more generally Un) can be estimated in the same way and this for any cause of this overall reduction in amplitude NUO.
  • step S721 calculations presented above are carried out from the frequency expression of the classical velocity vector V(f) until the estimation of the temporal expression of the classical velocity vector V(t ).
  • step S731 the analysis of the temporal expression of the classical velocity vector V(t) is carried out as a time series of peaks.
  • a modified velocity vector V′(f), then V′(t) in the time domain is calculated (step S781 ), on the basis of these filtered ambisonic data.
  • the method can be reiterated again by taking the estimate of the coarse DoA(n) obtained previously (S752) to determine a reference component D(f) (denoted D(n) for the iteration n of the method at step S762) whose directivity makes it possible to represent the direction of the direct sound more selectively than its estimate D(n-1) at the previous iteration and to replace (S772) the latter D(n- 1 ) in the estimation of the generalized velocity vector V'(f), then V'(t) at step S782.
  • the directivity of a reference component “captures” the estimated direction of the direct sound more selectively than a reference component at a previous iteration.
  • the process can thus be repeated until the peaks at negative times are lower in amplitude or in energy than the chosen threshold THR, as illustrated in FIG. 6C.
  • the first step S71 begins with the construction of the conventional velocity vector in the frequency domain V(f) with the omnidirectional component W(f) in its denominator.
  • V(t) in the time domain is estimated.
  • a signal structure is identified representing the temporal expression of the classical velocity vector V(t) with peaks such that the NRJ energy of this signal structure at negative temporal abscissas (t ⁇ 0) remains below a fixed threshold THR (arrow KO), then the present acoustic situation already makes it possible to derive an unbiased DoA directly from the classical velocity vector.
  • step S781 the temporal expression of the generalized vector V'(t) is estimated to determine in test S732 whether there remains significant energy (greater than the threshold THR) in the structure of the signal of this expression V'(t ) at negative time abscissas. If such is not the case (arrow KO at the output of test S732) the process can stop at this first iteration by giving the DoA parameters, etc. at step S742. Otherwise, the method is repeated, by updating the index n of iterations of the method, at step S791 (here, the steps referenced S79x being relative to the iterations of the method, such as the incrementation of the index n ( step S793) or the determination of the termination of the process S792-S794).
  • a new reference component D(n) is estimated at step S762, to replace the old reference component D (n-1) to the denominator of the generalized velocity vector V'(f) in step S772.
  • its expression in the time domain V'(t) is determined in step S782.
  • the comparison of its signal structure (in energy with respect to the threshold THR) to the test S733 is repeated, to determine whether the new DoA which can be estimated therefrom would be biased or not. If this is not the case (arrow KO at the output of the S733 test), then the parameters, in particular of DoA, etc. can be obtained.
  • step S743 here after three iterations as in the illustrative example of FIGS. 6A to 6C. Otherwise (OK arrow at the output of test S733), the method must be reiterated again from step S752 with the last estimated DoA, even coarse and possibly biased.
  • the 0 component ( ) typically derives from a matrixing (or a vector-weighted sum D 0 ) of the ambisonic components: [0140] WHERE
  • - B(f) is a vector of signals describing an ambisonic field in the frequency domain such as for example in the case of a plane wave carrying a signal S(f) and coming from a direction described by the unit vector so that for the mixture of direct and indirect waves considered we have is the vector of the spherical harmonic coefficients
  • - D 0 can be a vector of the 'steering vector' type causing a beamforming ("formation of way” or “formation of beam” in French) oriented in general in a particular direction 0 (which can also be designated by a unit vector so that by defining a 'steering gain' such as:
  • the spherical function g O (un) is axially symmetric, the available degrees of freedom only influencing the proportion between positive and negative lobes (if any) in addition to the orientation.
  • the main lobe (a priori in the targeted direction) does not necessarily have symmetry, and secondary lobes can have more varied shapes and orientations. So despite the notation D 0 , the beamforming is not only parameterized by the targeted main direction 0.
  • the gain is then expressed as a polynomial Pbeamshape(.) of the product scalar (a variant of Legendre polynomial):
  • the gbeamshape diagonal coefficients can take into account: - on the one hand, the choice of ambisonic encoding convention, therefore the calculation of spherical harmonic functions
  • the iterations of the method can stop at step S794. If not (OK arrow at the output of test S792), the method can be executed for a following iteration at step S793 starting with an incrementation of the iteration counter n.
  • the frames where signal attacks are localized are those which make it possible to observe an acoustic mixture involving only the earliest wave fronts: the direct sound and one or more reflections ( so that the aforementioned “sum of the gammas” remains less than 1 according to Eq.38).
  • the temporal imprint is of a unidirectional nature, which is evidenced by peaks only for positive times after application of the decreasing exponential window (lower part of FIG. 5B). It is also observed that in practice the energy of the observed signal decreases very quickly with the exponential, the numerical impact - on the estimates - of a truncation of the said signal becomes quite negligible beyond a relatively short time. of truncation. In other words, one obtains in the shorter term the advantages of a long-term analysis which encompasses both the entire exciter signal and its reverberation. Indeed, the observed “TDW” conforms to the interference model without the errors due to the dynamics of the signal. It is therefore a double property possessed by the weighting by such a window, which ideally makes it possible to obtain an exploitable temporal imprint.
  • the ALPHA attenuation preferably by seeking a compromise between a sufficiently low value to ensure one idirectionality of the imprint temporal and a value that is not too low to avoid reducing the chances of detecting and estimating indirect waves.
  • An iterative process (for example by dichotomy) can be implemented to adjust the attenuation value. From a threshold value of attenuation, when the temporal imprint obtained is detected as bidirectional, therefore a priori with a biased vector U0, the analysis is repeated with a stronger attenuation, otherwise at least the estimate of U0 and if the following peaks are not very discernible (because reduced with the attenuation) then the analysis is repeated with an intermediate attenuation between the two previous ones, and so on if necessary until the vector U1 can be estimated.
  • An initial DFT size that is generally larger than this analysis window is chosen.
  • time-frequency de-noising for example by defining a mask (time-frequency filter, possibly binary), so as to avoid introducing elements from other ambient and/or diffuse field sources into the interference footprint. It is necessary to calculate the impulse response of the mask (result of the inverse transform) to control the influence of the mask on the analysis of the peaks. It can alternatively be integrated into a frequency weighting of the imprint of a frame considered to be stored, so as to subsequently calculate a weighted average of frequency imprints corresponding a priori to similar interfering mixtures (typically on signal attacks, by checking that the source concerned has not moved, which can be guessed through an estimation of the delays).
  • the peaks are then extracted and observed, for example according to the norm
  • the peak at time zero is by construction equal to the average of the velocity vector over its complete spectrum (the real part canceling out by Hermitian symmetry), or even its real part if we do not considers only positive frequencies. We can estimate that it is then useless to calculate an Inverse Transform of the FDW to have an estimate of DoA if we are only interested in the direct sound. However, the temporal examination of the TDW makes it possible to detect whether this DoA is reliable (criterion of development towards positive and increasing times).
  • the frequency and time imprints of the W are not always identifiable with an ideal model of interfering wave mixing. It may be that the source signal does not sufficiently or not always excite a significant range of frequencies at key moments, due to a lack of transmitted power, possibly taking into account competition from other components of the sound field captured (insufficient SNR or SIR) . This can be linked to a more or less diffuse background sound (other sound sources), microphonic noise.
  • step S1 the Fourier transform is calculated (from time to frequency) of the Ambisonic signals which may be in the form of a succession of “frames” (blocks of successive samples).
  • step S2 a dynamic mask can be applied to some of the frequency bands for which the signal to noise ratio is below a threshold (some frequency bands can in fact be highly noisy, for example by a noise inherent in the microphone or other, so that the exploitation of a signal picked up in this frequency band is compromised).
  • the search for noise by frequency band is carried out in step S3 preferentially on the "omni" component W, and the frequency bands altered by the noise (beyond a threshold for example such as SNR ⁇ OdB) are masked (that is to say set to zero) in step S4.
  • a threshold for example such as SNR ⁇ OdB
  • step S5 the velocity vector V(f) is calculated in the frequency domain, for example by equation Eq.6 (or even in the form of Eq.11, Eq.18 or Eq.20 ).
  • weights q(f) calculated as described below are applied to give more or less importance to frequency bands f.
  • the optimum weights are iteratively calculated as a function of U0 and V(f).
  • the various weights q(f) are set to 1.
  • U0 is determined for each frame k, such that:
  • this first estimate of U0(k) is rough. It is refined iteratively by calculating the weights with respect to the previous determination of U0(k) using the equation Eq.49 based on the imaginary part of the vector V(f), and where the vector m is a unit vector , normal to the plane defined by the vector U0 and a normal to the wall (the direction z of figure 1 for example).
  • the vector m is estimated iteratively also as a function of U0 in step S9, then the weights are calculated by Eq.49 in step S10.
  • the weights found are applied in step S7, and the estimation of U0 is refined until convergence at the output of the test S11. At this stage, U0(k) was estimated for the different frames.
  • U1 can be deduced therefrom, by a relation of the Eq.41 type described above.
  • U1 is determined by the equations Eq.50 to Eq.52, having previously applied an inverse transform IDFT (from frequency to time) in step S12 to the vector Vbar(f) found in step S7, to obtain a time representation V(t) of the velocity vector.
  • IDFT from frequency to time
  • Vbar(f) found in step S7
  • the various delays, TAU1 , then TAU2 are then determined in step S15 (by removing modules from V(t)k to be compared in Eq.51 with those corresponding to the delay TAU1 ), etc.
  • the delay TAUm is given by the component tmax found at each iteration m, divided by the sampling frequency fs according to Eq.52, taking into account that the times t and tmax(k) are first expressed in terms of the index sample (time zero being taken as a reference for the zero index).
  • the step S18 may consist in further selecting the “good” frames, representative of a sound attack with first reflections.
  • the criterion D(k) for selecting such frames can be illustrated by way of example by equation Eq.53 where C(f)i (k) designates a magnitude (amplitude in absolute value) detected on the ambisonic channel i , to the time-frequency sample (t, f) resulting from the first transform (time to frequency) of frame k.
  • Epsilon designates a nonzero positive value to avoid a zero in the denominator in the absence of a signal.
  • F designates the total number of frequency sub-bands used.
  • step S22 It is thus possible to retain at step S22 only the frames whose criterion D(k) calculated from Eq.53 is not smaller than 90% of the maximum Dmax found at step S21 among the criteria of all frames D(k).
  • the values D(k) are calculated for all the frames, then at step S19, the processing delivers the U0(k), dO(k), D(k ) for the different frames.
  • the values D(k) are collected to identify at step S21 the highest and to eliminate at step S22 the frames whose value D(k) is less than 0.9 Dmax.
  • the vector U0 which is retained is preferably here the median (rather than the mean) among the vectors U0 of the different frames retained.
  • the distance d0 retained is also the median value among the distances d0 of the various frames retained.
  • the velocity vector can be replaced by a ratio between components of a “coincident” type spatial acoustic representation in the frequency domain and work in a coordinate system characteristic of said spatial representation.
  • TDVV can be used more generally in association with Artificial intelligence methods, including neural networks.
  • Some training strategies envisaged (for example on fingerprints from models or windowed SRIR, and not necessarily from original signals) can allow the network to learn to exploit the succession of frames to improve detections and estimates compared to to given room situations.
  • step S761 where D(1) would simply be calculated as a function of the angular sector considered), these iterative methods being carried out in parallel for each of these sectors.
  • the parameters to be optimized are the beamforming parameters, formulated for example as the coefficients of the matrix D involved in the equations Eq. A1 and A4, or as the direction Theta (0) and the beam shape parameters (gbeamshape) of equation EQ.A5 when opting for axial symmetry or in the case where one is restricted to the order 1;
  • DoA a principle of adjustment of the parameters tested (during the iterations) because typically a reorientation of the acoustic beam in the last estimated DoA is not always a sufficiently robust choice: it is then necessary, rather than stopping the algorithm for lack of improvement, start again from one of the stored situations (and a priori the best from the point of view of the minimization criterion) and adjust the parameters along another axis (for example a directivity shape parameter) or another combination of axes.
  • another axis for example a directivity shape parameter
  • the parameters ultimately targeted are not directly those which are optimized, but they derive therefrom. It should be noted that there is then potentially a multiplicity of sets of beamforming parameters which could all be 'optimal' in the sense that they induce compliance with a causal model. Consequently, they all then make it possible to deduce the same set of parameters Un in an a priori exact manner.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Circuit For Audible Band Transducer (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)

Abstract

L'invention concerne le traitement de signaux sonores acquis par au moins un microphone, par exemple de type ambisonique, pour localiser au moins une source sonore dans un espace comportant au moins une paroi. On applique une transformée temps fréquences aux signaux acquis, et, à partir des signaux acquis, on exprime dans le domaine fréquentiel un vecteur vélocité généralisé V(f), complexe avec une partie réelle et une partie imaginaire, ce vecteur ayant à son dénominateur une composante différente d'une composante omnidirectionnelle W(f). En particulier, ce vecteur caractérise une composition entre : * un premier trajet acoustique, direct entre la source et le microphone, représenté par un premier vecteur U0, et * au moins un deuxième trajet acoustique issu d'une réflexion sur la paroi et représenté par un deuxième vecteur U1, le deuxième trajet ayant, au microphone, un premier retard TAU1, par rapport au trajet direct. En fonction du retard TAU1, du premier vecteur U0 et du deuxième vecteur U1, on détermine au moins un paramètre parmi une direction (DoA) du trajet direct, une distance d0 de la source au microphone, une distance z0 de la source à ladite paroi.

Description

Description Titre : Localisation perfectionnée d’une source acoustique [0001] La présente invention relève du domaine de la localisation de sources acoustiques, notamment pour l’estimation de direction acoustique ou « DoA » (Direction of Arrival) par un système microphonique compact (par exemple un microphone apte à capter des sons en représentation « ambiophonique » ou « ambisonique » ci-après). [0002] Une application possible est par exemple la formation de voies ou (« beamforming », qui passe alors par une séparation spatiale de sources audio, afin notamment d’améliorer la reconnaissance de la parole (par exemple pour un assistant virtuel par interaction vocale). Un tel traitement peut aussi intervenir dans le codage audio 3D (pré-analyse d’une scène sonore pour coder des signaux principaux de façon individuelle), ou encore permettre l’édition spatiale de contenu sonore immersif éventuellement en audio-visuel (à vocation artistique, radiophonique, cinéma, etc.). Elle permet aussi le suivi de locuteur en téléconférence ou la détection d’événements sonores (avec ou sans vidéo associée). [0003] Dans l’état de l’art qui s’intéresse aux encodages de type ambisonique (ou équivalents), l’essentiel des approches se base sur les composantes spatiales issues d’une analyse fréquentielle (une représentation temps-fréquence typiquement issue d’un traitement par transformée de Fourier à court terme ou « STFT », ou une représentation de signaux temporels à bande étroite issue d’un banc de filtres). [0004] Les signaux ambisoniques à l’ordre 1 sont rassemblés sous forme vectorielle suivant l’équation Eq.1 donnée en ANNEXE ci-après. La convention d’encodage de Eq.1 est présentée ici par commodité mais sans restriction car les conversions avec d’autres conventions peuvent être implémentées tout aussi bien. Ainsi lorsque le champ est assimilable à une onde plane unique venant d’une direction décrite par le vecteur unitaire U1 (donc la direction DoA de la source) et portant le signal émis s1 (t), on peut l’écrire selon l’équation Eq.2 (ANNEXE).
[0005] En pratique, les signaux sont analysés dans le domaine fréquentiel, trame après trame, ce qui donne l’expression Eq.3 (ANNEXE), et pour le cas d’une onde unique sous la forme Eq.4, et par extension pour N ondes sous la forme Eq.5.
[0006] Une catégorie de méthodes s’appuie sur l’analyse du vecteur vélocité V(f) ou du vecteur intensité l(f) (le premier étant une version alternative du second, normalisée par la puissance de la composante de référence omnidirectionnelle), comme exprimé en Eq.6 et Eq.7.
[0007] Les méthodes qui exploitent des échantillons fréquentiels complexes basent l’estimation de la localisation essentiellement sur l’information contenue dans la partie réelle de tels vecteurs (liée à l’intensité active et caractéristique de la propagation d’onde en ce qu’elle est directement liée au gradient du champ de phase).
[0008] La partie imaginaire (partie réactive associée au gradient d’énergie) est quant à elle considérée caractéristique de phénomènes acoustiques stationnaires.
[0009] On voit en effet que dans le cadre d’une onde plane seule, le vecteur vélocité se résume à V = U1 .
[0010] La méthode connue (dite « DirAC ») opère soit sur des échantillons temporels filtrés en sous-bandes auquel cas ils sont réels et le vecteur intensité l’est aussi, soit sur des échantillons fréquentiels complexes auquel cas c’est la partie réelle du vecteur intensité qui est seule exploitée comme désignant la direction de provenance (ou plus précisément, son opposée). En complément, le calcul d’un coefficient dit de « diffuseness », lié au rapport entre norme du vecteur et l’énergie du champ sonore, permet de décider si l’information disponible à la fréquence considérée est plutôt caractéristique de composantes directionnelles (auquel cas la direction du vecteur détermine la localisation) ou bien d’une « ambiance » (champ issu de réverbération diffuse et/ou d’un mélange de sources sonores secondaires indifférenciées). [0011] Une autre méthode notée ci-après « WM » s’appuie sur le vecteur vélocité et les statistiques de la direction angulaire de sa partie réelle, pondérée par certains facteurs liés au ratio entre parties réelles et imaginaires et leurs normes. Une cartographie sphérique (histogramme 2D, par exemple équi-rectangulaire) est établie par collecte de valeurs sur l’ensemble des échantillons fréquentiels et sur un certain nombre de trames temporelles. L’estimation se fonde donc essentiellement sur un maximum de probabilité et est soumise à une certaine latence.
[0012] Une autre catégorie de méthodes dite de la « covariance », présentée parfois comme une extension de la première, met en jeu le calcul d’une matrice de covariance des composantes spatiales (également parfois nommée matrice de Densité Spectrale de Puissance ou « PSD ») par sous-bandes fréquentielles. Là encore, la partie imaginaire est parfois totalement ignorée. Il faut noter que la première ligne (ou première colonne) de cette matrice est équivalente au vecteur intensité lorsque les composantes spatiales sont de type ambisonique. Bon nombre de ces approches font intervenir des méthodes « sous-espaces » et des algorithmes parfois coûteux surtout lorsqu’ils travaillent sur une quantité importante de sous- bandes fréquentielles, et lorsqu’ils exploitent des résolutions spatiales plus élevées.
[0013] Ces méthodes « basées vecteur » ou « basées matrice » s’attachent à discerner les composantes « directionnelles » associées à des sources ou chemins acoustiques localisables, d’une part, de composantes d’ambiance, d’autre part.
[0014] Parmi les limites observées de telles méthodes, elles sont gênées par l’interférence du son direct (qui indique la direction de la source acoustique) avec les réflexions, même dans le cas d’une unique source acoustique simultanément active. Au-delà d’un certain degré de présence d’un effet de salle par exemple, elles ne peuvent pas donner une estimation raisonnable assez souvent et/ou l’estimation est trop souvent biaisée. Lorsque l’objet comprenant le dispositif de captation (microphone ambisonique par exemple) et de localisation acoustique est placé par exemple sur une table ou près d’un mur (et/ou si c’est le cas de la source acoustique), de telles surfaces de réflexion ont tendance à induire un biais angulaire systématique. [0015] En effet, la localisation est en général biaisée par l’interférence systématique du son direct avec des réflexions associées à la même source acoustique. Lorsqu’elle est basée sur le vecteur vélocité, c’est la partie réelle du vecteur vélocité qui est essentiellement considérée cependant que la partie imaginaire est habituellement ignorée (ou tout au moins sous utilisée). Les réflexions acoustiques, considérées comme gênantes, ne sont pas intégrées dans la problématique d’estimation. Elles restent donc une composante ignorée, non modélisée, sans prendre en compte les structures d’interférence particulières induites.
[0016] Ainsi, pour des applications du type précité, la localisation acoustique est en général estimée en termes seulement angulaires. D’ailleurs, aucune approche efficace ne semble proposer une évaluation de distance à partir d’un seul point de captation (considéré comme unique pour un système microphonique coïncident ou plus généralement « compact », c’est-à-dire contenu dans un volume de dimension petite par rapport aux distances des sources acoustiques, soit typiquement de l’ordre de la dizaine de centimètres pour un microphone ambisonique).
[0017] Pourtant, certains contextes applicatifs requièrent l’information additionnelle de distance de la source en plus de sa direction (donc une localisation 3D en XYZ). Ce sont par exemple :
- la navigation virtuelle dans des environnements réels captés en 3D (car la modification appropriée de l’angle et l’intensité d’une source dépend de la translation XYZ relative entre cet objet et le microphone),
- la localisation de sources pour identifier des locuteurs (notamment pour une enceinte connectée ou autre),
- la surveillance, les dispositifs d’alerte dans des environnements domestique ou industriel, ou autres.
[0018] Une approche particulièrement avantageuse, présentée dans le document FR1911723, utilise le vecteur vélocité du son pour obtenir notamment la direction d’arrivée du son, son retard (donc la distance à la source), les retards liés à des réflexions éventuelles et la détermination ainsi de positions de cloisons. Une telle réalisation permet de modéliser l’interférence entre l’onde directe et au moins une onde indirecte (issue de réflexion) et exploiter les manifestations de ce modèle sur l’intégralité du vecteur vélocité (sur sa partie imaginaire comme sur sa partie réelle).
[0019] Néanmoins, cette technique, quoique déjà opérationnelle, peut encore faire l’objet de perfectionnements.
[0020] L’invention vient améliorer la situation.
[0021] Il est proposé un procédé de traitement de signaux sonores acquis par au moins un microphone, pour une localisation d’au moins une source sonore dans un espace comportant au moins une paroi, dans lequel :
- On applique une transformée temps fréquences aux signaux acquis,
- A partir des signaux acquis, on exprime dans le domaine fréquentiel un vecteur vélocité généralisé V’(f), estimé à partir d’une expression d’un vecteur vélocité V(f) dans laquelle une composante de référence D(f), différente d’une composante omnidirectionnelle W(f), apparait au dénominateur de ladite expression, ladite expression étant complexe avec une partie réelle et une partie imaginaire, le vecteur vélocité généralisé V’(f) caractérisant une composition entre :
* un premier trajet acoustique, direct entre la source et le microphone, représenté par un premier vecteur U0, et
* au moins un deuxième trajet acoustique issu d’une réflexion sur la paroi et représenté par un deuxième vecteur U1 , le deuxième trajet ayant, au microphone, un premier retard TAU1 , par rapport au trajet direct,
- En fonction du retard TAU1 , du premier vecteur U0 et du deuxième vecteur U1 , on détermine au moins un paramètre parmi :
* une direction (DoA) du trajet direct,
* une distance dO de la source au microphone,
* une distance zO de la source à ladite paroi.
[0022] Ainsi, le vecteur vélocité généralisé V’(f), précité, est construit à partir du vecteur vélocité V(f) qui s’exprime généralement en fonction d’une composante au dénominateur qui est omnidirectionnelle. Le vecteur vélocité généralisé V’(f) remplace le vecteur vélocité « classique » V(f) au sens du document FR1911723 précité, avec alors une composante « de référence » au dénominateur qui est différente d’une composante omnidirectionnelle, Cette composante de référence peut en effet être plus « sélective » vers la direction d’arrivée du son. Dans un exemple de réalisation présenté plus loin notamment en référence aux figures 6A à 6D et 7, la direction d’arrivée du son permettant de calculer la composante de référence peut être obtenue en première approximation en utilisant le vecteur vélocité classique V(f) par exemple lors d’une première itération d’un procédé itératif convergeant progressivement vers une DoA exacte.
[0023] Il a alors été observé au sens de la présente invention que la détermination des paramètres précités DoA, dO, zO, notamment, est plus juste et/ou plus précise en utilisant un tel vecteur vélocité généralisé V’(f) avec une composante de référence plus pertinente, à la place du vecteur vélocité V(f). En particulier, ce procédé est plus robuste notamment dans les situations où une forte réflexion sonore est due à une cloison disposée près du microphone ou d’une source sonore active.
[0024] On a cité ci-dessus les paramètres précités DoA, dO, zO. Il convient d’indiquer que dans un mode de réalisation typiquement, l’expression du vecteur vélocité généralisé permet aussi de déterminer notamment le retard TAU1 , présenté plus haut.
[0025] Dans un mode de réalisation, le procédé peut comprendre, comme indiqué plus haut, une pluralité d’itérations dans une partie au moins desquelles on utilise le vecteur vélocité généralisé V’(f) avec à son dénominateur une composante de référence D(f) déterminée en fonction d’une approximation de la direction du trajet direct (DoA) obtenue à une itération précédente. Dans la plupart des situations, ces itérations convergent vers une direction DoA plus juste.
[0026] Un tel procédé peut comprendre alors une première itération dans laquelle on utilise le vecteur vélocité « classique » V(f) à la place du vecteur vélocité généralisé V’(f). Comme décrit dans le document FR1911723, le vecteur vélocité V(f) s’exprime dans le domaine fréquentiel en faisant apparaitre au dénominateur la composante omnidirectionnelle W(f). Il est alors possible de déterminer au moins, à l’issue de cette première itération, une première approximation de la direction du trajet direct (DoA).
[0027] Ainsi, pour au moins une deuxième itération ultérieure à la première itération, on utilise le vecteur vélocité généralisé V’(f), estimé à partir d’une expression du vecteur vélocité V(f) au dénominateur de laquelle la composante omnidirectionnelle W(f) est remplacée par la composante de référence D(f), cette dernière étant spatialement plus sélective que la composante omnidirectionnelle W(f).
[0028] Par exemple, dans un mode de réalisation, la composante de référence D(f) est plus sélective dans une direction correspondant à la première approximation précitée de la direction du trajet direct (DoA).
[0029] Les itérations peuvent être répétées jusqu’à atteindre une convergence selon un critère prédéterminé. En particulier, il peut s’agir d’un critère de causalité pour identifier avec un degré de certitude raisonnable tout au moins de premières réflexions sonores sur des obstacles (ou « cloisons » ci-dessus) dans l’environnement de propagation du son entre le microphone et une source.
[0030] Dans une forme de réalisation particulière, à chaque itération :
- On applique en outre une transformée inverse, des fréquences vers le temps, à ladite expression du vecteur vélocité généralisé V’(f) pour obtenir, dans le domaine temporel, une succession de pics liés chacun à une réflexion sur au moins une paroi, outre un pic lié à une arrivée du son selon ledit trajet direct (DoA), et
- On réalise une nouvelle itération s’il apparait dans la succession de pics un signal dont l’abscisse temporelle est inférieure à celle du pic de trajet direct et dont l’amplitude est supérieure à un seuil choisi (éventuellement adaptatif), le critère de causalité étant vérifié si l’amplitude du signal est inférieure audit seuil. L’obtention de cette succession de pics peut être en lien typiquement avec le formalisme présenté dans l’équation Eq.B4=39b donnée en annexe, et décrit plus loin en référence à la figure 2, mais ici appliqué bien entendu au vecteur vélocité généralisé V’(f).
[0031] Il peut être mis fin aux itérations précitées du procédé, par exemple :
- dans un premier cas où l’amplitude du signal précité est inférieure au seuil choisi, et
- dans un deuxième cas où la répétition des itérations n’entraine pas de diminution significative de l’amplitude de ce signal.
[0032] Dans un exemple de réalisation, il est fait suite au deuxième cas par la mise en œuvre des étapes suivantes, les signaux acquis étant délivrés sous forme de trames successives d’échantillons :
- Pour chaque trame, on estime un score de présence d’une attaque sonore dans la trame (conformément par exemple à une équation du type Eq.53 de l’annexe), et
- On sélectionne les trames à scores supérieurs à un seuil pour traiter les signaux sonores acquis dans les trames sélectionnées.
[0033] En effet, si la convergence vers une solution de DoA n’est pas aisée du fait de la proximité de cloisons entraînant des premières réflexions sonores immédiates, il peut être préférable de rechercher la réaction immédiate de ces cloisons à une attaque sonore (en début d’émission d’un son).
[0034] Relativement aux expressions respectives des vecteurs vélocité « classique » et « généralisé » et dans une réalisation où les signaux acquis sont captés par un microphone ambisonique, le vecteur vélocité « classique » V(f) peut être exprimé dans le domaine fréquentiel par des composantes ambisoniques d’ordre 1 sous une forme de type :
V(f)= 1/W(f) [X(f), Y(f), Z(f)]T,
W(f) étant la composante omnidirectionnelle, tandis que le vecteur vélocité généralisé V’(f), exprimé dans le domaine fréquentiel par des composantes ambisoniques d’ordre 1 , se présente sous une forme de type : V(f)= 1/D(f) [X(f), Y(f), Z(f)]T,
D(f) étant la composante de référence, précitée, différente de la composante omnidirectionnelle.
[0035] L’ordre considéré est ici de 1 , ce qui permet d’exprimer les composantes du vecteur vélocité dans un repère tridimensionnel, mais d’autres réalisations sont possibles avec notamment un ordre ambisonique plus élevé.
[0036] Dans une réalisation, une estimation de la direction du trajet direct assimilée au premier vecteur U0, peut être déterminée à partir d’une moyenne sur un ensemble de fréquences de la partie réelle du vecteur vélocité généralisé V’(f) exprimé dans le domaine fréquentiel (conformément au formalisme de l’équation Eq.24 appliqué ici bien entendu au vecteur vélocité généralisé V’(f)).
[0037] Ainsi, déjà l’expression du vecteur vélocité dans le domaine fréquentiel permet de donner une estimation du vecteur U0.
[0038] Dans une réalisation plus avancée toutefois :
- On applique une transformée inverse, des fréquences vers le temps, au vecteur vélocité généralisé pour l’exprimer dans le domaine temporel V’(t),
- On recherche au moins un maximum dans l’expression du vecteur vélocité généralisé V’(t)max en fonction du temps, après une durée du trajet direct, et
- On en déduit le premier retard TAU1 , correspondant au temps donnant le maximum V’(t)max.
[0039] Dans cette réalisation en outre, on peut alors :
- estimer le deuxième vecteur U1 en fonction de valeurs du vecteur vélocité normalisé V’ relevées aux indices temporels t=0, TAU1 et 2xTAU1 , pour définir un vecteur V1 tel que :
V1 = V’(TAU1) - ( (V’(TAU1) . V’(2.TAU1 )) / 1| V’(TAU1 ) ||2 ) V’(0), Le vecteur U1 étant alors donné par : U1 = V1 / ||V11|. [0040] Ensuite :
- On peut déterminer des angles respectifs PHIO et PHI1 du premier vecteur UO et du deuxième vecteur U1 , par rapport à ladite paroi, tels que :
PHI0=arcsin(U0.nR) et PHI1 =arcsin(U1 .nR), où nR est un vecteur unitaire et normal à la paroi, et
- La distance dO entre la source et le microphone peut être déterminée en fonction du premier retard TAU1 par une relation du type : dO = (TAU1xC)/((cosPHI0/cosPHI1 )-1 ), où C est la vitesse du son.
[0041] En outre, la distance zO de la source à ladite paroi peut alors être déterminée par une relation du type : zO = dO (sinPHIO - sinPHI1 )/2
[0042] On peut ainsi déterminer tous les paramètres pertinents quant à la localisation de la source (de la figure 1 par exemple), ici dans le cas où une seule paroi est présente, mais ce modèle peut être généralisé à la présence de plusieurs parois.
[0043] Ainsi dans une réalisation où l’espace comprend une pluralité de parois :
- On applique une transformée inverse, des fréquences vers le temps, au vecteur vélocité généralisé pour l’exprimer dans le domaine temporel V’(t) sous la forme d’une succession de pics (formalisme correspondant en première approche à l’équation Eq.39b de l’annexe),
- On identifie, dans la succession de pics, des pics liés à une réflexion sur une paroi de ladite pluralité de parois, chaque pic identifié ayant une abscisse temporelle fonction d’un premier retard TAUn du trajet acoustique issu de la réflexion sur la paroi n correspondante, par rapport au trajet direct,
- En fonction de chaque premier retard TAUn, du premier vecteur U0 et de chaque deuxième vecteur Un représentant un trajet acoustique issu d’une réflexion sur une paroi n, on détermine au moins un paramètre parmi :
* la direction (DoA) du trajet direct, * la distance dO de la source au microphone, et
* au moins une distance zn de la source à la paroi n.
[0044] Comme on peut l’observer sur la figure 5B qui est un exemple appliqué au vecteur vélocité « classique » mais pouvant s’adapter au vecteur vélocité généralisé, l’expression du vecteur vélocité (classique comme généralisé), après transformée inverse (fréquences vers temps), présente une succession de pics, laquelle est illustrée aussi sur la figure 2 à titre didactique, où des maximas sont atteints pour des valeurs multiples des retards précités (TAU1 , 2TAU1 , etc. ; TAU2, 2TAU2, etc.) entre le trajet direct et les trajets issus d’au moins une réflexion sur une paroi, ainsi que pour des combinaisons de ces retards (TAU1 +TAU2, 2TAU1 +TAU2, TAU1 +2TAU2, etc.).
[0045] On peut alors exploiter ces pics pour identifier en particulier les pics liés au moins à une réflexion sur une paroi n et qui ont donc des abscisses temporelles multiples (x1 , x2, x3, etc.) du retard TAUn associé à cette paroi n.
[0046] Comme les combinaisons de retards différents peuvent complexifier l’identification des retards simples (TAU1 , TAU2, TAU3, etc.) et la présence de parois associées, on peut présélectionner une première partie de pics à des abscisses temporelles positives les plus petites, pour identifier dans cette partie les pics associés chacun à une réflexion sur une paroi (sans avoir ainsi la combinaison de retards différents TAU1 +TAU2, 2TAU1 +TAU2, TAU1 +2TAU2, etc. qui peut apparaitre après les premiers pics). Une telle réalisation suppose toutefois que le critère de causalité précité est atteint (sans quoi des pics « secondaires » peuvent aussi être obtenus par combinaisons des retards avec des multiplicateurs négatifs, de sorte que leurs combinaisons avec des retards « positifs » peuvent se retrouver à des abscisses temporelles positives petites).
[0047] Ainsi dans le cas d’une situation idéale où les pics liés à une réflexion sur une paroi n ont possiblement des abscisses temporelles multiples du retard TAUn associé à cette paroi n, on peut effectuer une présélection d’une première partie de pics à des abscisses temporelles positives les plus petites, pour identifier dans cette partie les pics associés chacun à une seule réflexion sur une paroi.
[0048] Dans la réalisation où les signaux acquis par le microphone se présentent sous la forme d’une succession d’échantillons, on peut appliquer plus généralement à ces échantillons une fenêtre de pondération à variation exponentielle décroissante dans le temps (comme on le verra plus loin en référence à la figure FIG.5A).
[0049] Eventuellement en complément, on peut placer cette fenêtre en tout début d’attaque sonore (voire juste avant le début d’attaque). On évite ainsi la gêne des réflexions multiples.
[0050] L’application d’une telle fenêtre de pondération permet d’obtenir une première estimation moins biaisée des paramètres U0, dO, etc. issus de l’exploitation de l’expression du vecteur vélocité dans le domaine temporel, notamment lorsqu’il s’agit du vecteur vélocité « classique », par exemple dans le cadre d’une première itération du procédé. En effet, dans certaines situations où la magnitude cumulée des réflexions est plus grande pour que celle du son direct, l’estimation des paramètres précités peut être biaisée. Ces situations peuvent être détectées lorsqu’il est observé des pics à des abscisses temporelles négatives (courbe en haut de la figure 5B) dans l’expression temporelle du vecteur vélocité. L’application d’une fenêtre de pondération du type précité permet de ramener ces pics à des abscisses positives comme illustré par la courbe du bas de la figure 5B, et de donner des estimations moins biaisées.
[0051] Il convient de retenir néanmoins que cette réalisation est optionnelle dans la mesure où l’utilisation du vecteur vélocité généralisé à la place du vecteur vélocité « classique » permet déjà une estimation pratiquement non biaisée des paramètres U0, dO, etc., y compris dans ce type de situation. Néanmoins, un tel traitement peut intervenir par exemple pour une première itération du procédé avec le vecteur vélocité « classique » ou encore dans le deuxième cas, précité, de non- convergence du traitement itératif.
[0052] Dans une réalisation, on peut en outre appliquer itérativement une pondération q(f), associée chacune à une bande de fréquences f, au vecteur vélocité (généralisé ou classique) dans le domaine fréquentiel selon une expression du type: q(f) = exp (- |lm(V(f)).m|/ (|| lm(V(f)) ||), où lm(V(f)) est la partie imaginaire du vecteur vélocité (classique ou généralisé, et noté ici simplement « V(f) »), et m est un vecteur unitaire normal au plan défini par le vecteur U0 et une normale à la paroi (typiquement l’axe Z de la figure 1 commentée en détail plus loin).
[0053] Une telle réalisation permet de sélectionner les bandes de fréquences les plus exploitables pour la détermination des paramètres précités.
[0054] La présente invention vise aussi un dispositif de traitement de signaux sonores, comportant un circuit de traitement agencé pour la mise en œuvre du procédé ci-avant.
[0055] A titre illustratif, la figure 4 présente schématiquement un tel circuit de traitement pouvant comporter alors :
[0056] - une interface d’entrée IN pour recevoir des signaux SIG acquis par le microphone (pouvant comporter plusieurs pastilles piézoélectriques pour composer ces signaux, par exemple en contexte ambisonique),
[0057] - un processeur PROC coopérant avec une mémoire de travail MEM pour traiter ces signaux notamment pour élaborer l’expression du vecteur vélocité généralisé afin d’en tirer les paramètres souhaités dO, U0, etc., dont des valeurs peuvent être délivrées par l’interface de sortie OUT.
[0058] Un tel dispositif peut se présenter sous la forme d’un module de localisation d’une source sonore dans un environnement 3D, ce module étant connecté à un microphone (type antenne sonore, ou autre). Inversement, il peut s’agir d’un moteur de rendu sonore en fonction d’une position donnée d’une source dans un espace virtuel (comportant une ou plusieurs parois) en réalité augmentée.
[0059] La présente invention vise aussi un programme informatique comportant des instructions pour la mise en œuvre du procédé ci-avant, lorsque ces instructions sont exécutées par un processeur d’un circuit de traitement. [0060] Par exemple, les figures 3A, 3B et 7 illustrent un exemple d’ordinogramme possible de l’algorithme d’un tel programme.
[0061] Selon un autre aspect, il est proposé un support d’enregistrement non transitoire, lisible par un ordinateur, sur lequel est enregistré un tel programme.
[0062] Dans la description détaillée qui va suivre, on désigne indistinctement le vecteur vélocité généralisé et le vecteur généralisé « classique », par le même vocable de « vecteur vélocité », avec la même notation V (V(f) ;V(t)) notamment dans les équations présentées en annexe. Lorsqu’il est question spécifiquement du vecteur vélocité généralisé, il est désigné explicitement sous ce vocable et noté V’ (V’(f) ; V’(t)). Dans une première partie de la description jusqu’à la figure 5B, on rappelle les principes qui sont à la base du formalisme utilisé dans le document FR1911723 et repris ici dans les équations données en annexe.
[0063] Plus généralement, d’autres caractéristiques, détails et avantages apparaîtront à la lecture de la description détaillée ci-après, et à l’analyse des dessins annexés, sur lesquels :
[0064] La figure 1 [Fig. 1] montre à titre illustratif différents paramètres intervenant pour une localisation d’une source sonore selon un mode de réalisation.
[0065] La figure 2 [Fig. 2] montre à titre illustratif les différents pics successifs que présente l’expression temporelle d’un vecteur vélocité après sa transformée inverse des fréquences vers le temps (« IDFT »).
[0066] La figure 3A [Fig. 3A] montre les étapes de début d’un traitement algorithmique pour déterminer les paramètres pertinent U0, dO, etc.,
[0067] Et la figure 3B [Fig. 3B] montre la suite des étapes du traitement de la figure 3A.
[0068] La figure 4 [Fig. 4] montre schématiquement un dispositif au sens de l’invention selon un mode de réalisation. [0069] La figure 5A [Fig. 5A] montre une fenêtre de pondération des échantillons des signaux acquis, exponentiellement décroissante dans le temps, selon un mode de réalisation.
[0070] La figure 5B [Fig. 5B] compare une expression temporelle après IDFT du vecteur vélocité :
- sans traitement préalable des échantillons par la fenêtre de pondération (courbe du haut),
- et avec traitement par la fenêtre (courbe du bas).
[0071] Les figures 6A [Fig. 6A], 6B [Fig. 6B] et 6C [Fig. 6C], représentent l’allure des pics liés présents dans l’expression temporelle du vecteur vélocité généralisé V’(t), au fur et à mesure d’itérations du procédé décrit plus loin en référence à la figure 7,
[0072] La figure 6D [Fig. 6D] illustre très schématiquement et à titre illustratif la forme de la composante de référence D(f) apparaissant au dénominateur de l’expression du vecteur vélocité généralisé V’(f), au fil de plusieurs itérations successives du procédé, et
[0073] La figure 7 [Fig. 7] représente schématiquement les étapes d’un procédé itératif au sens de l’invention, selon une forme de réalisation donnée ici à titre d’exemple.
[0074] Le vecteur vélocité peut être calculé de façon connue en soi. Quelques paramétrages particuliers peuvent être recommandés toutefois pour l’amélioration des résultats finaux obtenus.
[0075] Habituellement, des spectres fréquentiels B(f) de signaux ambisoniques sont d’abord obtenus typiquement par Transformée de Fourier à Court Terme (ou STFT pour « Short Term Fourier Transform ») pour une succession de trames temporelles b(t), en général chevauchantes (avec addition/recouvrement par exemple). Ici, l’ordre des composantes ambisoniques peut être m=1 pour quatre composantes (sans perte de généralité toutefois, les calculs pouvant s’adapter à des ordres plus élevés). [0076] Alors, pour chacune des trames temporelles, un vecteur vélocité est calculé ensuite pour l’ensemble des échantillons fréquentiels comme ratio des composantes directionnelles X(f), Y(f) et Z(f) :
- sur la composante omnidirectionnelle W(f) (équation Eq.6 de l’ANNEXE), pour le vecteur vélocité classique, ou
- sur une composante de référence D(f), pour le vecteur vélocité généralisé, D(f) remplaçant W(f) dans l’équation Eq.6 de l’ANNEXE.
[0077] On peut envisager des réalisations introduisant en outre un lissage temporel ou une consolidation par somme pondérée, comme décrit plus loin.
[0078] Avec un tel ratio (X(f)/W(f), Y(f)/W(f), Z(f)/W(f) ; X(f)/D(f), Y(f)/D(f), Z(f)/D(f)), on fait disparaître substantiellement la caractéristique du signal source pour mettre en évidence les caractéristiques du canal acoustique, si tant est que la composition spectrale du signal audio excite une quantité substantielle de fréquences utiles (par exemple sur une large bande de fréquences).
[0079] Dans les applications présentées précédemment, on peut considérer la situation d’une source acoustique aux caractéristiques stables (en position et en rayonnement, au moins sur quelques trames consécutives) émettant un signal s(t), dans un environnement acoustique stable (parois et objets réfléchissants, éventuellement diffractant, etc., donc responsables de ce qu’on désigne usuellement par « effet de salle » même si l’on peut se trouver en dehors d’une « salle » en tant que telle). Ces signaux sont captés par un microphone de type ambisonique. Les signaux ambisoniques b(t) résultent de l’encodage spatial combiné de différentes versions du signal s(t) selon ses trajets direct et indirects, ce que l’on nomme « effet du canal acoustique ». Cela se traduit par la convolution du signal par une réponse impulsionnelle spatiale h(t) dont chaque canal (ou dimension) est associé à une composante ambisonique, comme exprimé dans l’équation Eq.8 de l’ANNEXE.
[0080] Cette réponse impulsionnelle est nommée SRIR pour « Spatial Room Impulse Response » et se représente généralement comme une série de pics temporels :
- le premier pic, situé au temps t=TAU0 (temps de propagation), correspondant au son direct,
- le deuxième pic, à t=TAU1 correspond à une première réflexion, etc.
[0081] Ainsi on doit pouvoir lire dans ces pics la direction de provenance de ces fronts d’onde, avec en première approximation l’expression du vecteur un donné dans l’équation Eq.9-1. En pratique, la réponse impulsionnelle spatiale est une donnée inconnue, mais il est exposé ici comment remonter indirectement à certaines de ses caractéristiques, à travers le vecteur vélocité, calculé sur la base du signal ambisonique b(t).
[0082] Pour le mettre en évidence, on décrit d’abord le lien entre la réponse impulsionnelle h(t), le signal émis s(t), et les signaux ambisoniques b(t) (Eq.9-2) sur un intervalle temporel observé, choisi. Pour être exacte, cette expression suppose une absence de tout bruit de mesure et d’autres sources acoustiques dont le signal serait capté directement ou indirectement sur l’intervalle temporel considéré. Ainsi, tout le signal direct et indirect de la source est capté sur cet intervalle temporel.
[0083] On montre qu’en opérant une Transformée de Fourier sur tout cet intervalle temporel, le vecteur vélocité qui en découle est uniquement caractéristique de la réponse impulsionnelle spatiale. Cette transformée dite LT (car « plus long terme » qu’une STFT) convertit b(t), s(t) et h(t) en B(f), S(f) et H(f) selon l’équation Eq.10. Ce support temporel peut correspondre à une fenêtre temporelle s’étendant sur plusieurs trames de signal consécutives.
[0084] On déduit alors, de l’expression de la convolution dans le domaine des fréquences, celle du vecteur vélocité, calculé à l’équation Eq.11 . Cette expression Eq.11 devient caractéristique du canal acoustique (autrement dit, de l’effet de salle) et non plus du signal émis, pour peu que celui-ci présente une énergie non-nulle (en pratique, détectable) pour chaque fréquence f, sur la période temporelle considérée.
[0085] En pratique et comme il a été évoqué, une modalité fréquente est de procéder à une analyse temps-fréquence par trame, où chaque Transformée de Fourier à Court Terme s’applique à un fenêtrage temporel qui ne vérifie pas a priori que le signal observé résulte entièrement et seulement d’un produit de convolution de l’équation Eq.9. Cela fait qu’au sens strict, le vecteur vélocité ne peut pas s’écrire sous une forme qui ne caractérise que le canal acoustique (comme la partie droite de l’équation Eq.11 ). Cependant il en est fait ici autant que possible l’approximation (équation Eq.20 introduite plus loin) dans le cadre de cette description, tout en exploitant des avantages de l’analyse à court terme présentée ci-après.
[0086] On cherche à des étapes ultérieures une succession de pics d’énergie qui caractérisent d’une part le trajet direct du signal émis depuis la source et reçu par le microphone, puis les premières réflexions sur une ou plusieurs parois, tant que ces réflexions sont identifiables. On peut se concentrer alors sur ce qui est caractéristique du début de la réponse impulsionnelle spatiale, à savoir en premier lieu le premier pic temporel, dont on déduit la direction du son direct, et éventuellement les pics temporels suivants, caractéristiques des premières réflexions.
[0087] Pour ce faire, on inspecte l’effet d’une interférence entre le son direct et au moins une réflexion, sur l’expression du vecteur vélocité complexe, de façon à estimer des paramètres pertinents pour définir la position de la source sonore.
[0088] On introduit un modèle simplifié d’un trajet direct (n=0) combiné à N réflexions spéculaires (n=1 ,...,N) pour le début de la réponse impulsionnelle comme présenté dans l’équation Eq.12., où gn , TAUn, et Un, sont respectivement l’atténuation, le retard et la direction de provenance de l’onde d’indice n (nième réflexion) arrivant au système microphonique. Dans la suite, pour des raisons de simplification mais sans restriction de généralité, on considère des retards et atténuation relatifs au son direct, ce qui revient à poser les termes de l’équation Eq.13 pour n=0.
[0089] L’expression fréquentielle correspondante est donnée à l’équation Eq.14, avec le cas particulier de gammao = 1 pour le son direct. Bien entendu, la variable gamman, quel que soit n supérieur à 0, est fonction de la fréquence f.
[0090] Il s’en suit l’expression fréquentielle du champ ambisonique, si on néglige la partie plus tardive, donnée par l’expression Eq.16. [0091] Le vecteur vélocité à court-terme s’exprime alors par l’équation Eq.17, ou encore par l’équation Eq.18 selon une version régularisée avec un terme EPSILON non nul de façon à éviter des valeurs (quasi) infinies lorsque la composante au dénominateur est (presque) nulle. Dans l’équation Eq.17 ou Eq.18, la composante W (propre au vecteur vélocité classique) peut être remplacée par la composante de référence D pour exprimer le vecteur vélocité généralisé. En réalité, dans le cas général, D remplace W au dénominateur, l’expression du vecteur vélocité classique V correspondant au cas particulier où D=W. Toutefois, pour la commodité de l’exposé ici, il est présenté dans les premières équations de l’annexe des notations relatives au cas particulier où D=W, données pour le vecteur vélocité classique mais facilement transposables au vecteur vélocité généralisé en conservant à l’esprit que D y remplace W.
[0092] L’analyse à court-terme permet d’observer, au cours du temps et selon l’évolution dynamique du signal source, des empreintes fréquentielles (notées « FDW » ci-après), caractéristiques de sous-mélanges de fronts d’onde au sein de la réponse impulsionnelle spatiale. Un sous-mélange caractéristique (smx pour « submix »), pour une observation donnée, est modélisé selon Eq.19, dans les domaines temporel et fréquentiel.
[0093] Dans l’approche décrite ci-après, on s’attache à caractériser l’empreinte fréquentielle FDW comme découlant d’un modèle implicite de sous-mélange Hsmx par l’approximation exprimée en Eq.20 (qui n’est en générale pas une égalité exacte sauf situations particulières). L’expression de l’équation Eq.20 est donnée ici en pratique pour le vecteur vélocité classique et peut être adaptée pour le vecteur vélocité généralisé en remplaçant H_W par le matriçage du vecteur H par une matrice D0 décrite plus loin.
[0094] En particulier à des instants d’attaque du signal, le modèle implicite hsmx (t) s’apparente plausiblement au début de la réponse impulsionnelle spatiale hearly (t) au moins en termes de directions et retards relatifs de fronts d’onde. Les paramètres implicites de gains relatifs gn étant quant à eux impactés par le fenêtrage temporel et les caractéristiques dynamiques du signal, ils ne se présentent pas nécessairement comme conformes à ceux de la réponse impulsionnelle. S’intéressant ici prioritairement à l’onde directe (qui fournit la DoA) et à une ou quelques réflexions précoces, il est considéré essentiellement les situations où l’observation en est caractéristique.
[0095] A des fins d’illustration notamment, il est exposé ci-après un exemple de traitement ne tenant en compte qu’une seule réflexion avec estimation dans le domaine fréquentiel du vecteur vélocité classique, le cas du vecteur vélocité généralisé étant présenté plus loin. On traite ici le cas d’une interférence simple (essentiellement entre le son direct et une première réflexion), et on montre comment déterminer les paramètres cherchés en mettant en lumière une structure spatio-fréquentielle particulière, en regardant non seulement la partie réelle mais aussi la partie imaginaire du vecteur vélocité. En effet, le champ ambisonique s’écrit selon Eq.21 , et on en déduit le vecteur vélocité selon Eq.22. Il découle de cette expression que les parties réelles et imaginaires parcourent des segments parallèles dans l’espace 3D (respectivement affine et linéaire) lorsque les fréquences parcourent le spectre audio considéré comme présenté dans Eq.23. Le segment affine (partie réelle) est sur une droite contenant les vecteurs unitaires U0 et U1 pointant vers les ondes respectivement directe et indirecte, et les deux segments sont orthogonaux au plan médian de ces deux vecteurs (et donc la partie imaginaire du vecteur l’est toujours elle-même puisqu’elle se trouve sur le segment linéaire). Par ailleurs, en supposant une distribution homogène des déphasages entre les ondes (donc un balayage représentatif des fréquences), selon un calcul de statistiques, la moyenne de la partie réelle du vecteur vélocité est égale au vecteur U0 comme exprimé en Eq.24 et le maximum de probabilité est une moyenne de U0 et U1 pondérée par l’amplitude respective des ondes comme exprimé en Eq.25. Les détections de DoA basées sur un maximum de probabilité sont donc entachées d’un biais angulaire systématique, donnant une direction intermédiaire entre le son direct et sa direction. Les équations Eq.23 montrent que ce balayage spatial se fait avec une périodicité fréquentielle égale à l’inverse du retard TAU1 entre les deux ondes. Il est donc possible d’extraire les directions U0 et U1 ainsi que le retard TAU1 à partir des observations, lorsque de telles structures spatio- fréquentielles peuvent être observées. Il est présenté plus loin une autre réalisation d’estimation de ces paramètres dans le domaine temporel (description en lien avec la figure 2).
[0096] En disposant d’un a priori sur l’orientation de la surface de réflexion par rapport au repère du microphone, on peut alors déduire de l’estimation de U0, U1 , TAU1 , l’information de distance absolue d de la source par rapport au microphone, et éventuellement l’altitude des deux. En effet, en notant dO la distance de la source S0 au microphone M, et d1 celle de son image-miroir S1 par rapport à la surface de réflexion R comme illustré sur la figure 1 , la surface R est orthogonale au plan formé par les vecteurs U0 et U1. Les trois points (M,S0,S1 ) sont dans un même plan orthogonal à la surface R. Il reste à définir un paramètre à déterminer pour définir l’orientation (ou inclinaison) du plan de réflexion. Dans le cas d’une réflexion par le sol ou le plafond (détectée ainsi parce que U1 pointe vers le sol ou le plafond), on peut exploiter l’hypothèse que celui-ci est horizontal et parallèle au plan X-Y du repère du microphone ambisonique. Alors les distances dO et d1 sont liées par la relation Eq.26, laquelle donne d’ailleurs directement la distance du microphone M à l’axe (S0,S1 ), PHIO et PHI1 étant les angles d’élévation respectifs des vecteurs U0 et U1.
[0097] On a en outre une estimation du retard TAU1 du son réfléchi relativement au son direct, ce qui permet d’accéder à une autre relation Eq.27 entre les distances, puisque que leur différence traduit le retard de trajet acoustique, avec un facteur c qui est la vitesse du son.
[0098] En exprimant d1 en fonction de dO, cette dernière quantité devient la seule inconnue, qui peut être estimée selon Eq.28. On obtient également la distance de la source au plan de réflexion, c’est-à-dire sa hauteur ou altitude zO par rapport au sol selon Eq.29, ainsi que celle du microphone en Eq.30.
[0099] Les différents paramètres U0, U1 , PHIO, PHI1 , d1 , dO, etc. sont illustrés sur la figure 1 dans l’exemple d’une réflexion sur un sol. Bien entendu, des paramètres similaires peuvent être déduits quant à une réflexion sur un plafond. De la même manière, des paramètres similaires peuvent être déduits quant à une réflexion sur toute autre surface de réflexion R dont l’orientation par rapport au référentiel du microphone est connue, orientation que l’on caractérise par la normale OR (vecteur unitaire orthogonal à la surface R). Il suffit de redéfinir les angles PHIO et PHI1 par rapport à la surface réfléchissante R, de façon générale en tant que PHI0=arcsin(U0.nR) et PHI1 =arcsin(U1 .nR). On peut ainsi déterminer par le vecteur U1 associé à chaque cas de réflexion des positions respectives de ces obstacles, pour des applications de réalité augmentée ou en robotique pour une estimation de localisation par détection acoustique.
[0100] Dans les cas où l’orientation nR de la surface de réflexion n’est pas connue a priori, il est possible de l’estimer complètement si l’on dispose, par des observations à différents moments, d’estimations des paramètres de front d’onde associées à au moins deux positions de source, pour lesquelles on détecte une réflexion par ce même plan de réflexion. On dispose ainsi d’un premier jeu de paramètres (U0, U1 , TAU1 ) et d’au moins un deuxième (U0’, U1 ’, TAII1 ’). Comme U0 et U1 définissent un plan orthogonal au plan R, leur produit vectoriel définit un axe de ce plan R, et il en est de même d’un produit vectoriel tiré de U0’ et U’1 .
[0101] Ces produits vectoriels respectifs (non-colinéaires) définissent à eux deux l’orientation du plan R.
[0102] Toutefois, une limitation du modèle à seulement deux ondes interférantes (un son direct et une onde réfléchie) est qu’il peut être difficile de discriminer les différentes premières réflexions sur les cloisons. Par ailleurs, le comportement spatio-fréquentiel du vecteur vélocité se complexifie rapidement lorsque des réflexions supplémentaires sont introduites. En effet, le parcours des parties réelles et imaginaires se combinent alors, et de façon non triviale, suivant plusieurs axes :
- dans des plans parallèles pour une onde directe et deux réflexions,
- ou dans tout l’espace en général.
[0103] Ces distributions spatio-fréquentielle complexes rendent trop fastidieuse la détermination des paramètres du modèle lorsque plusieurs surfaces de réflexion sont à considérer. [0104] Une solution à ce problème consiste à opérer une analyse temps-fréquence plus sélective temporellement (c’est-à-dire avec des fenêtres temporelles plus courtes) pour avoir la chance de voir se manifester un mélange acoustique plus simple lors des attaques d’amplitude (transitoires, montée du signal), c’est-à-dire réduire le nombre de réflexions interférant avec le son direct dans le mélange présent dans la trame en question. Cependant dans certaines situations, les retards associés aux réflexions successives peuvent être trop proches les uns des autres pour isoler l’effet de la première réflexion dans son interférence avec le son direct.
[0105] Il est proposé alors ci-après un traitement permettant de séparer facilement les effets de multiples interférences et de caractériser celles-ci. Une première étape consiste à convertir l’empreinte du vecteur vélocité dans le domaine temporel (ou « TDW », pour "Time-Domain Velocity Vector"), au moyen d’une Transformée de Fourier Inverse comme présenté en Eq.31 . Cela a pour effet de condenser les effets de cyclicité fréquentielle associée à certains axes et qui se manifestent en de complexes pérégrinations du vecteur vélocité, en des données plus parcimonieuses et donc plus facilement analysables. En effet une telle conversion fait apparaître des séries de pics à intervalles temporels réguliers, pics dont les plus importants sont facilement détectables et extractibles (voir par exemple la figure 5B).
[0106] Une propriété remarquable est que par construction (du fait de la Transformée de Fourier inverse) le vecteur en t=0 est égal à la moyenne du vecteur vélocité dans le domaine fréquentiel (moyenne de sa partie réelle si on ne considère que le demi-spectre des fréquences positives). Une telle observation est pertinente pour l’estimation de la DoA principale U0.
[0107] Repartant du modèle fréquentiel du vecteur vélocité pour deux ondes interférences (son direct et une réflexion), on peut reformuler utilement le dénominateur grâce au développement de Taylor de l’Eq.32. Avec les conditions sur x et gammal données dans l’Eq.32, on arrive à l’expression Eq.33 du vecteur vélocité (classique), et sous condition que la réflexion est d’amplitude moindre que le son direct (g1 <g0=1 , ce qui est le cas en général pour des débuts d’attaque du son), la Transformée de Fourier inverse de cette expression converge et se formule comme exprimé dans l’équation Eq.34, où l’on identifie un premier pic en t=0 qui donne U0 (la direction du son direct), puis une série de pics caractéristiques de l’interférence de la réflexion avec le son direct.
[0108] Ces pics sont placés en des instants t=kTAU1 multiples (entiers non nuis k>0) du retard TAU1 , et sont d’amplitude exponentiellement décroissante en norme (selon le gain g1 ). En utilisant le vecteur vélocité classique, ils sont associés tous à des directions colinéaires à la différence U0-U1 , donc orthogonales au plan médian entre ces deux vecteurs, et de direction (signe) alternante. L’avantage d’avoir converti le vecteur vélocité dans le domaine temporel est la présentation de façon parcimonieuse et quasi-immédiate des paramètres recherchés (figure 2).
[0109] Ainsi, il est possible de déterminer, outre la DoA principale U0 :
- le retard TAU1 , possiblement pour plusieurs parois distinctes,
- puis un vecteur colinéaire à U0-U1 que l’on normalise en un vecteur unitaire n, dont on peut se servir, avec l’équation Eq.41 par exemple (donnée pour le vecteur vélocité classique), pour
- déduire U1 comme étant le symétrique de U0 par rapport à leur plan médian, et
- optionnellement, le paramètre d’atténuation g1 (celui-ci étant susceptible d’être modifié par les paramètres d’analyse temps-fréquence, en particulier par la forme d’une fenêtre d’analyse et par son placement temporel relativement aux événements acoustiques observés. L’estimation de ce paramètre est donc de moindre utilité dans les contextes d’application visés ici).
[0110] L’observation des pics temporels suivants permet de vérifier s’ils sont sensiblement conformes à la même série (retards multiples TAU1 , retards multiples TAU2, etc.) et donc caractéristiques de la même interférence, sans quoi il faut par exemple déterminer la présence de multiples réflexions.
[0111] On distingue ci-après un cas à « conditions favorables » où, dans le cas de N réflexions, on applique le développement de Taylor pour donner le vecteur vélocité classique selon Eq.35, sous condition que la somme sur N des gammas à l’équation Eq.35 reste inférieure à 1 . La série de Taylor, qui traduit le dénominateur dans l’expression initiale, peut se réécrire en utilisant la loi multinomiale de l’équation Eq.36, ce qui permet de réorganiser l’expression du modèle de vecteur vélocité classique V en somme de plusieurs séries, avec des « séries croisées » représentées par le terme SC de Eq.37. Pour le vecteur vélocité généralisé V’, on retrouve une équation légèrement différente dans l’équation Eq.B2 à la fin de l’annexe, cette équation étant notée également Eq.35b car elle correspond à l’équation Eq.35 mais donnée ici pour le vecteur vélocité généralisé. D’ailleurs à la fin de l’annexe sont données les équations propres au vecteur vélocité généralisé V’ et la correspondance avec une équation précédemment écrite et propre au vecteur vélocité classique, est indiquée par un « b » après le numéro d’équation (Eq.xxb).
[0112] Sous la condition Eq.38 pour le vecteur vélocité classique et toute fréquence f (équation Eq.B3=38b pour le vecteur vélocité généralisé), on en déduit par Transformée de Fourier inverse la série temporelle suivante Eq.39 (équation Eq.B4=39b pour le vecteur vélocité généralisé), avec des séries à retards combinés SARC. On identifie un premier pic en t=0 qui donne U0 (la direction du son direct), puis pour chaque réflexion une série de pics caractéristiques de l’interférence de cette réflexion avec le son direct. Sur la figure 2 par exemple, ces pics sont placés à des abscisses temporelles positives successives, TAU, 2TAU, 3TAU, etc., multiples du retard TAU entre la réflexion sur une paroi et le trajet direct.
[0113] Il apparait ensuite (pour des abscisses temporelles plus grandes) des séries caractéristiques d’interférences entre plusieurs réflexions sur plusieurs parois et le son direct, dont les retards sont d’autres combinaisons (avec facteurs entiers positifs) de leurs différents retards.
[0114] En effet, la Figure 2 illustre une telle série dans le cas simplifié de deux réflexions interférant avec un son direct. Chaque marqueur (respectivement rond, croix, losange) indique par son ordonnée la contribution des vecteurs U0, U1 , U2 (caractéristiques du son direct, d’une première réflexion et d’une deuxième réflexion respectivement) à l’empreinte temporelle TDVV en fonction des abscisses temporelles. On voit ainsi que la réception du son direct est caractérisée par le premier pic au temps zéro et d’amplitude 1 , illustrée par un rond. L’interférence d’une première réflexion (retard TAU1 ) avec le trajet direct occasionne une première série de pics en TAU1 , 2xTAU1 , 3xTAU1 , etc., qui sont marqués ici par une croix à une extrémité et un rond à l’autre extrémité (haut-bas). L’interférence d’une deuxième réflexion (retard TAU2) avec le trajet direct occasionne une deuxième série de pics en TAU2, 2xTAU2, 3xTAU2, etc., marqués ici par un losange à une extrémité et un rond à l’autre extrémité. Intervient ensuite un élément des « séries croisées », c’est-à-dire les interférences entre les réflexions (premier retard : TAU1 +TAU2, puis 2TAU1 +TAU2, puis TAU1 +2TAU2, etc.). Ces séries croisées, dont l’expression est accessible mais longue à écrire dans un cas général, ne sont pas explicitées ici par souci de concision, d’autant qu’elles n’ont pas besoin d’être exploitées pour estimer les paramètres pertinents dans le traitement présenté ici.
[0115] On décrit ci-après l’analyse de l’empreinte temporelle par estimation séquentielle des paramètres.
[0116] L’estimation des paramètres du modèle d’après une série temporelle calculée se fait de façon similaire au cas d’une seule réflexion précédemment décrit. On se place d’abord dans la situation la plus générale (excluant des cas particuliers traités ensuite), correspondant à un cas favorable lorsque les retards ne se « chevauchent » pas : les séries décrites ci-dessus ne connaissent alors pas de coïncidence temporelle, c’est-à-dire que tout pic identifiable appartient à une seule d’entre elles. Donc en relevant les pics temporels par retard croissant à partir de t=0, tout nouveau pic détecté, de retard TAUnew, peut être soit attribué à une série déjà identifiée, soit définir le début d’une nouvelle série. En effet, compte-tenu d’un ensemble de retards caractéristiques de réflexions déjà identifiées, le premier cas se détecte s’il existe des entiers positifs k ou pour partie nuis donnant TAUnew selon Eq.40, sans quoi on tombe dans le deuxième cas et l’on augmente le jeu des réflexions identifiées en introduisant le nouveau retard TAUN+1 , associé à une direction que l’on peut estimer de la manière décrite dans le cas d’une réflexion seule.
[0117] En pratique, il peut ne pas être nécessaire de chercher à expliquer de nombreux pics temporels. On se restreint à de premiers pics observés, d’autant plus qu’ils sont les plus facilement détectables car d’amplitudes (ou magnitudes, en valeur absolue) plus importantes que les suivants. Ainsi, les situations où des retards ont des multiples communs mais sont de rang Ki ; Kj élevés (ou non faibles) peuvent être analysées en fonction de l’amplitude par le traitement ci-dessus.
[0118] Tant que la somme des modules de gains implicites gn (n>0) est inférieure à 1 (Eq.38 pour le vecteur vélocité classique), la Transformée de Fourier inverse (Eq.31 ) donne une empreinte temporelle unidirectionnelle se développant sur les temps positifs.
[0119] Si en revanche la somme des modules de gains implicites gn (n>0) est supérieure à 1 , la Transformée de Fourier inverse donne une empreinte temporelle TDW « bidirectionnelle », avec des séries se développant en général à la fois vers les temps positifs et vers les temps négatifs (courbe du haut de la figure 5B à titre d’illustration). Une telle situation dans laquelle un ou plusieurs gains de réflexion seraient plus grands que 1 peut se rencontrer par exemple quand l’onde directe est d’amplitude moins grande que la somme des amplitudes des ondes issues des réflexions sur une ou plusieurs cloisons. Dans ce « cas défavorable », le pic principal au temps zéro ne correspond plus strictement au vecteur uO, mais à un mélange de celui-ci avec une proportion plus ou moins importante des vecteurs désignant les directions des réflexions. Cela entraîne un biais de localisation (de la ‘DoA estimée’). Un autre symptôme est que le pic principal a alors une norme différente de 1 en général, et plus souvent inférieure à 1 .
[0120] L’invention vient proposer un procédé robuste notamment dans ce type de situation. Elle propose d’aménager l’expression du vecteur vélocité en conférant une sélectivité spatiale vers la DoA à la composante D qui apparait à son dénominateur à la place de la composante omnidirectionnelle W habituelle.
[0121] En conférant une figure de directivité à la composante de référence D, l’atténuation relative associée à chaque réflexion d’indice n est affectée au dénominateur par un facteur BETAn, en même temps qu’un facteur global NU0 est calculé (équation Eq.B1 de l’annexe), ce qui aboutit à une expression du vecteur vélocité généralisé donnée par l’équation Eq.B2=35b pour un modèle à N réflexions, comme introduit ci-avant pour le cas du vecteur vélocité généralisé. On notera que la condition pour un développement en série de Taylor tel que présenté dans le membre de droite de l’équation, est maintenant donnée par l’équation Eq.B3=38b. On comprend bien que grâce aux facteurs d’atténuation supplémentaires BETAn, cette condition est plus facilement respectée dans plus de situations. Il est rappelé qu’un indicateur du respect de cette condition et du modèle qui en découle, est le caractère causal de la série temporelle globale. Sous cette condition vérifiée pour l’ensemble des fréquences, le modèle de vecteur vélocité généralisé dans le domaine temporel se décline alors sous la forme de l’équation Eq.B4=39b qui fait apparaître (de façon similaire au cas du vecteur vélocité classique, à l’équation Eq.39) :
- un premier pic en t=0 donc la direction donne la DoA, le vecteur U0 s’obtenant par normalisation de l’équation Eq.B5,
- autant de séries temporelles que de réflexions, chacune associée à l’interférence entre une réflexion et le son direct, et dont la valeur des vecteurs observés à intervalles réguliers TAUn, est reportée dans l’équation Eq.B6,
- et des séries à retards combinés notées SARC qui ne sont pas utilisées dans la procédure d’estimation qui suit.
[0122] Partant de l’équation Eq.B6 en fin d’annexe, on retient une relation particulière entre deux vecteurs successifs d’une série, notamment entre les deux premiers vecteurs V’(TAUn) et V’(2.TAUn), les plus saillants. L’équation Eq.B7 fait ainsi apparaître un facteur (-Gn/BETAn) noté ici « RHO » et dont l’équation Eq.B8 propose une estimation en tant que produit scalaire des deux premiers vecteurs précités de la même série V’(TAUn) et V’(2.TAUn), ce produit scalaire étant divisé par la norme au carré du premier. En réintégrant le facteur RHO dans l’équation Eq.B6, l’équation Eq.B9 obtenue peut être réorganisée pour donner l’équation Eq.BI O. Celle-ci montre dans son membre de droite, le vecteur Un (en particulier, le vecteur U1 si l’on se focalise sur la première réflexion et sa série associée), affecté par un facteur NUO/Gn qui est positif (sauf situation a priori rare telle qu’une réflexion avec inversion de phase) : il peut donc être obtenu par normalisation du membre de gauche V’(TAUn)-RHO.V’(0). [0123] Par ailleurs, le facteur global NUO est susceptible d’intégrer d’autres facteurs d’influence que la directivité de référence, par exemple une réduction globale d’amplitude qui pourrait être provoquée par une limitation de la bande passante fréquentielle du signal source, et/ou son masquage partiel par du bruit (bien que ce dernier effet soit en général plus complexe à modéliser). Il est intéressant de noter que finalement, la direction du vecteur U1 (ou plus généralement Un) peut être estimée de la même façon et ce pour une cause quelconque de cette réduction globale d’amplitude NUO.
[0124] On notera par ailleurs que ce mode d’estimation s’applique également au vecteur vélocité classique (auquel cas il faut simplement considérer que BETAn=1 ).
[0125] On décrit ci-après un exemple de réalisation pratique utilisant le vecteur vélocité généralisé, pour déterminer des paramètres tels que la DoA notamment.
[0126] Dans cet exemple de réalisation décrit ici à titre illustratif en référence aux figures 6A à 6D, et 7, une première estimation des retards (étape S71 de la figure 7) est effectuée avec le vecteur vélocité classique, calculé « normalement » : V(f) = 1/W(f) [X(f), Y(f), Z(f)]T par exemple ici sur des composantes ambisoniques du premier ordre.
[0127] A l’étape S721 , des calculs présentés ci-avant sont menés à partir de l’expression fréquentielle du vecteur vélocité classique V(f) jusqu’à l’estimation de l’expression temporelle du vecteur vélocité classique V(t).
[0128] A l’étape S731 , l’analyse de l’expression temporelle du vecteur vélocité classique V(t) est réalisée en tant que série temporelle de pics. Dans cette analyse, on détermine en particulier s’il est possible de l’identifier effectivement (à des perturbations mineures près) à une série temporelle de type unidirectionnel se développant uniquement dans les temps positifs (comme une véritable « réponse causale »), comme décrit par les équations Eq.39 et Eq.40 de l’annexe.
[0129] Si on trouve, dans l’analyse de l’expression du vecteur vélocité classique V(t) dans le domaine temporel, des structures de pics dans des temps négatifs (par exemple supérieures en énergie ou en amplitude à un seuil THR choisi), comme typiquement les pics présents en abscisses négatives de la figure 6A, alors cela signifie qu’on ne peut pas raisonnablement l’identifier à l’équation Eq.39 et donc que l’estimation de la DoA donnée par le pic V(t=O) est biaisée. Qui plus est, cela est symptomatique du fait que la condition de convergence de la série de Taylor permettant d’aboutir à l’équation Eq.39 n’est pas remplie, et donc du fait que la quantité d’ondes indirectes mélangées au son direct dans le dénominateur du calcul de V(f), est proportionnellement trop importante. Dans l’amélioration proposée ici, on réduit cette proportion d’ondes indirectes par filtrage spatial. Cela signifie qu’il faut améliorer une directivité (celle rentrant en jeu au dénominateur) dans l’estimation du vecteur vélocité V(f).
[0130] On applique alors un filtrage spatial aux données ambisoniques obtenues pour former un faisceau dans la direction (DoA) estimée à l’étape S751 en tant que V(t==0) d’après le vecteur vélocité obtenu précédemment (étape S71 ). En effet, tout en étant probablement erronée, cette première estimation est susceptible de fournir une approximation certes grossière mais suffisante pour orienter ce faisceau vers la provenance du son direct et atténuer les réflexions venant de secteurs angulaires plus lointains.
[0131] On calcule un vecteur vélocité modifié V’(f), puis V’(t) dans le domaine temporel (étape S781 ), sur la base de ces données ambisoniques filtrées.
[0132] On détermine au test S732 s’il reste encore des pics d’abscisses temporelles inférieures à 0 dans l’expression temporelle de vecteur vélocité modifié V’(t). On peut déterminer que la structure de signal présente dans les abscisses temporelles négatives (estimée par exemple en énergie (référencée « NRJ » sur la figure 7) et donnée par exemple par l’intégrale du signal aux temps négatifs) reste supérieure à un seuil THR, comme illustré à titre d’exemple sur la figure 6B, même si l’on peut noter une amélioration relativement à la figure 6A précédente.
[0133] Dans ce cas, on peut réitérer le procédé à nouveau en prenant l’estimation de la DoA(n) grossière obtenue précédemment (S752) pour déterminer une composante de référence D(f) (notée D(n) pour l’itération n du procédé à l’étape S762) dont la directivité permet de représenter la direction du son direct de façon plus sélective que son estimation D(n-1 ) à l’itération précédente et remplacer (S772) cette dernière D(n-1 ) dans l’estimation du vecteur vélocité généralisé V’(f), puis V’(t) à l’étape S782. Ainsi, la directivité d’une composante de référence « capte » plus sélectivement la direction estimée du son direct qu’une composante de référence à une itération précédente. Dans cet exemple de réalisation, on ne dispose pas forcément des ordres ambisoniques supérieurs à 1 et pourtant on peut ajuster à la fois l’orientation et la forme de la directivité pour capter mieux le son direct et ce en captant moins certaines réflexions par exemple.
[0134] Le procédé peut ainsi être réitéré jusqu’à ce que les pics à des temps négatifs soient inférieurs en amplitude ou en énergie au seuil choisi THR, comme illustré sur la figure 6C.
[0135] Ainsi, il est conféré successivement une sélectivité croissante vis-à-vis du son direct à la composante qui est au dénominateur du vecteur vélocité (classique puis généralisé) au fur et à mesure des itérations, dans son expression à l’ordre 1 . Dans la figure 6D, on est alors passé de la composante W omnidirectionnelle sous forme d’une sphère (en gris clair), à une composante D(1 ) plus sélective et ayant dans cet exemple la forme d’une super-cardioïde en gris plus foncé, puis à D(2) ayant une forme de super-cardioïde plus étroite en gris sombre.
[0136] En reprenant plus en détail le procédé illustré sur la figure 7, la première étape S71 commence par la construction du vecteur vélocité classique dans le domaine fréquentiel V(f) avec la composante omnidirectionnelle W(f) à son dénominateur. A l’étape S721 , il est estimé son expression V(t) dans le domaine temporel. Ensuite, si au test S731 , il est identifié une structure de signal représentant l’expression temporelle du vecteur vélocité classique V(t) avec des pics de sorte que l'énergie NRJ de cette structure de signal à des abscisses temporelles négatives (t<0) reste inférieure à un seuil fixé THR (flèche KO), alors la situation acoustique présente permet déjà de dériver directement du vecteur vélocité classique une DoA non biaisée. Dans ce cas, il peut être déterminé les paramètres DoA, U0, U1 , etc. à l’étape S741 comme décrit précédemment. Sinon (flèche OK en sortie du test S731 ), l’estimation de la DoA directement par le vecteur vélocité classique est biaisée, et il doit être procédé à au moins une première itération (n=1 ) dans laquelle le vecteur vélocité est affiné pour déterminer un vecteur vélocité généralisé, comme suit. [0137] A partir de cette estimation de DoA, même biaisée (obtenue à l’étape S751 ), on estime une composante de référence D(1 ) à l’étape S761 dans le domaine fréquentiel, pour remplacer à l’étape S771 la composante omnidirectionnelle W(f) dans l’expression du vecteur vélocité, maintenant « généralisé », V’(f). A l’étape S781 , l’expression temporelle du vecteur généralisé V’(t) est estimée pour déterminer au test S732 s’il reste une énergie significative (supérieure au seuil THR) dans la structure du signal de cette expression V’(t) à des abscisses temporelles négatives. Si tel n’est pas le cas (flèche KO en sortie du test S732) le procédé peut s’arrêter à cette première itération en donnant les paramètres DoA, etc. à l’étape S742. Sinon, le procédé est réitéré, en mettant à jour l’indice n d’itérations du procédé, à l’étape S791 (ici, les étapes référencées S79x étant relatives aux itérations du procédé, comme l’incrémentation de l’indice n (étape S793) ou la détermination de l’arrêt du procédé S792-S794).
[0138] Comme précédemment, en fonction de la DoA grossière estimée à l’itération précédente (étape S752), il est estimé une nouvelle composante de référence D(n) à l’étape S762, pour remplacer l’ancienne composante de référence D(n-1 ) au dénominateur du vecteur vélocité généralisé V’(f) à l’étape S772. De cette nouvelle expression du vecteur vélocité généralisé V’(f) dans le domaine fréquentiel, on détermine son expression dans le domaine temporel V’(t) à l’étape S782. On réitère la comparaison de sa structure de signal (en énergie par rapport au seuil THR) au test S733, pour déterminer si la nouvelle DoA qui peut en être estimée serait biaisée ou non. Si tel n’est pas le cas (flèche KO en sortie du test S733), alors on peut obtenir les paramètres notamment de DoA, etc. à l’étape S743, ici après trois itérations comme dans l’exemple illustratif des figures 6A à 6C. Sinon (flèche OK en sortie du test S733), le procédé doit être réitéré à nouveau à partir de l’étape S752 avec la DoA dernièrement estimée, même grossière et possiblement biaisée.
[0139] Il est décrit ci-après un exemple de calcul possible de la composante de référence D(f) à partir d’une DoA estimée précédemment. Dans un formalisme tel que celui présenté dans les équations de l’annexe, la composante 0( ) dérive typiquement d’un matriçage (ou d’une somme pondérée par un vecteur D0) des composantes ambisoniques: [0140] OÙ
- B(f) est un vecteur de signaux décrivant un champ ambisonique dans le domaine fréquentiel tel que par exemple dans le cas d’une onde plane portant un signal S(f) et provenant d’une direction décrite par le vecteur unitaire de sorte que pour le mélange d’ondes directes et indirectes considéré on a est le vecteur des coefficients harmoniques sphériques
- D0 peut être un vecteur de type ‘steering vector’ provoquant un beamforming (« formation de voie » ou « formation de faisceau » en français) orienté en général dans une direction particulière 0 (qu’on peut désigner aussi par un vecteur unitaire de sorte que en définissant un gain de ‘steering gain’ tel que :
[0141] Jusqu’à l’ordre 1 , la fonction sphérique gO(un) est à symétrie axiale, les degrés de liberté disponibles n’influençant que la proportion entre lobes positif et négatif (le cas échéant) en plus de l’orientation. A partir de l’ordre 2 et suivant les coefficients du vecteur D0, le lobe principal (a priori dans la direction ciblée) n’a pas forcément de symétrie, et des lobes secondaires peuvent avoir des formes et orientations plus variées. Donc en dépit de la notation D0, le beamforming n’est pas uniquement paramétré par la direction principale ciblée 0.
[0142] Dans le cas particulier d’une directivité formée à symétrie axiale, il est de la forme .
[0143] Le gain s’exprime alors comme un polynôme Pbeamshape(.) du produit scalaire (une variante de polynôme de Legendre) :
[0144] Les coefficients diagonaux gbeamshape peuvent prendre en compte : - d’une part, le choix de convention d’encodage ambisonique, donc de calcul des fonctions harmoniques sphériques
- et d’autre part, des critères pour jouer sur la forme du faisceau (ou « beam ») en affinant la forme choisie du faisceau grâce au choix de ces coefficients diagonaux (finesse et proportion des lobes principal et secondaires, par exemple).
[0145] On peut se référer utilement pour ces aspects au document de thèse de Jérôme Daniel (2000), notamment aux pages 182 à 186 et à la figure 3.14, où les outils proposés pour le décodage spatial sont directement applicables à la construction de directivité à partir de signaux ambisoniques comme présenté ici pour la composante de référence D.
[0146] Selon un tel formalisme, on retiendra qu’il est possible de définir des coefficients de gain pour conférer une sélectivité à la composante D(f) exprimée ci- dessus en fonction de gbeamshape-
[0147] En référence à nouveau à la figure 7, il convient de noter que selon les situations acoustiques, il se peut qu’on ne trouve aucune forme du vecteur vélocité généralisé V’(t) dans le domaine temporel ayant une bonne allure de type « causal », et donc une bonne estimation de DoA. En référence à nouveau à la figure 7, il est ajouté à titre d’exemple un critère d’arrêt pour sortir des itérations du procédé quand il n’améliore plus la forme du signal illustrant le vecteur vélocité généralisé V’(t) dans le domaine temporel. Ainsi, si à la fin d’une itération précédente, au test S733, l’énergie de ce signal est toujours supérieure au seuil THR dans les abscisses temporelles négatives (t<0), et si les itérations du procédé n’améliorent pas (ou plus) l’estimation du vecteur vélocité généralisé V’(t), ce qui peut se manifester à la fois par :
- des énergies de signal supérieures au seuil THR pour les temps négatifs, et
- des énergies de signal ne décroissant pas d’une itération n-1 à la suivante n (flèche KO en sortie du test S792), alors les itérations du procédé peuvent s’arrêter à l’étape S794. [0148] Sinon (flèche OK en sortie du test S792), le procédé peut être exécuté pour une itération suivante à l’étape S793 en commençant par une incrémentation du compteur d’itération n.
[0149] Pour minimiser l’occurrence du cas où le procédé doit s’arrêter à l’étape S794, par faute de convergence vers une solution de DoA non biaisée, dans une telle situation acoustique la « pire », il est possible de reprendre l’enseignement du document précité FR1911723, pour des solutions permettant par exemple d’isoler les meilleures trames pour augmenter les chances d’une détermination non biaisée (trames d’attaque de signal par exemple).
[0150] En effet, comme décrit dans le document FR1911723, en fonction de l’importance relative de ce problème, on peut évaluer à quel point le vecteur U0 offre une estimation de DoA raisonnable (faiblement biaisée), fournissant donc un facteur de confiance sur l’estimation et permettant de retenir préférentiellement l’estimation faite sur certaines trames. Lorsque le risque de biais d’estimation s’avère excessif, on peut sélectionner les trames les moins exposées à ce problème, comme décrit plus loin en référence aux figures 3A et 3B.
[0151] Les réalisations décrites ci-après peuvent s’appliquer alors à l’estimation du vecteur vélocité classique notamment, par exemple lors d’une première itération du procédé décrit précédemment en référence à la figure 7. Etant déjà décrits dans le document FR1911723, ces traitement à appliquer au vecteur vélocité classique sont alors rappelés ci-après.
[0152] On peut procéder donc à l’observation des premiers pics pour une salle donnée par l’analyse fréquentielle de sous-trames temporelles. Les trames où se localisent des attaques du signal (montée d’énergie, transitoire, etc.) sont celles qui permettent d’observer un mélange acoustique impliquant seulement les fronts d’onde les plus précoces : le son direct et une ou plusieurs réflexions (de sorte que la « somme des gammas » précitée reste inférieure à 1 selon Eq.38).
[0153] S’agissant de trames contenant les attaques du signal, on peut ajuster (éventuellement de façon dynamique) la fenêtre temporelle pour l’analyse fréquentielle, en lui donnant par exemple une forme asymétrique et globalement décroissante, de sorte que la « bosse » de la fenêtre donne plus de poids à la montée du signal (attaque, transitoire) donc au son direct, et progressivement moins de poids (par exemple, mais sans obligation, de façon approximativement exponentielle). Ainsi on réduit artificiellement l’amplitude des fronts d’onde plus tardifs par rapport aux fronts d’onde plus précoces, et on s’approche de la condition de convergence la série de Taylor assurant un développement temporel unidirectionnel.
[0154] Il est présenté ci-après à titre d’exemple un fenêtrage temporel de type exponentiel décroissant, à appliquer sur le signal analysé, afin de ramener l’analyse de l’empreinte temporelle qui en découle à un cas favorable sans biais substantiel sur l’estimation des directions d’arrivée des ondes. On pose l’opération, valable à partir d’un temps to désigné comme le temps 0 par commodité, et correspondant de préférence à l’instant d’une attaque de signal, précédée de silence, comme à l’équation Eq.42, avec ALPHA>0, et, en y réintégrant la forme convolutive impliquant s(t) et h(t), on trouve la forme de l’équation Eq.43.
[0155] L’équation Eq.44 fait intervenir alors la propriété de l’exponentielle pour laquelle ce choix se justifie, pour aboutir à la forme donnée à Eq.45, ce qui revient à établir l’équation Eq.46.
[0156] Donc si l’on modélise la réponse impulsionnelle par un ensemble de réflexions spéculaires s’ajoutant au son direct, on obtient, l’équation Eq.47.
[0157] Ainsi, si la somme des gamma est supérieure ou égale à 1 (avec une possibilité de « série bidirectionnelle »), il est toujours possible de déterminer un facteur d’atténuation ALPHA tel que la somme des gains ainsi « adaptés » (Eq.48) devienne inférieure à 1 .
[0158] On constate alors que l’empreinte temporelle est de nature unidirectionnelle, ce qui est mis en évidence par des pics uniquement pour des temps positifs après application de la fenêtre à exponentielle décroissante (partie inférieure de la figure 5B). On observe aussi qu’en pratique l’énergie du signal observé décroit très vite avec l’exponentielle, l’impact numérique -sur les estimations- d’une troncature dudit signal devient tout à fait négligeable au-delà d’un temps relativement court de troncature. En d’autres termes, on obtient à plus court terme les avantages d’une analyse à long terme qui englobe à la fois tout le signal excitateur et sa réverbération. En effet, le « TDW » observé est conforme au modèle d’interférence sans les erreurs dues à la dynamique du signal. C’est donc une double propriété que possède la pondération par une telle fenêtre, qui permet idéalement d’obtenir une empreinte temporelle exploitable.
[0159] En pratique, ne connaissant pas à l’avance l’amplitude des réflexions, il convient de déterminer l’atténuation ALPHA, en cherchant de préférence un compromis entre une valeur suffisamment basse pour assurer l’un idirectionnal ité de l’empreinte temporelle et une valeur qui n’est pas trop basse pour éviter d’amoindrir les chances de détection et d’estimation des ondes indirectes. Par exemple, on peut déterminer cette valeur en termes de facteur d’atténuation 3EXP par une durée tExp qui soit physiquement représentative des phénomènes observés (typiquement 5ms) de sorte que ALPHA = - (log 3EXP)/ tExp
[0160] Un processus itératif (par exemple par dichotomie) peut être mis en œuvre pour ajuster la valeur d’atténuation. A partir d’une valeur d’atténuation seuil, lorsque l’empreinte temporelle obtenue est détectée comme bidirectionnelle donc a priori avec un vecteur U0 biaisé, on réitère l’analyse avec une atténuation plus forte, sinon on adopte au moins l’estimation de U0 et si les pics suivants sont peu discernables (car diminués avec l’atténuation) alors on réitère l’analyse avec une atténuation intermédiaire entre les deux précédentes, et ainsi de suite s’il le faut jusqu’à pouvoir estimer le vecteur U1 .
[0161] Néanmoins, l’approche d’une fenêtre à décroissance exponentielle peut être sensible aux perturbations notamment en début de fenêtrage où elles sont amplifiées de façon importante. Une perturbation autre qu’un bruit peut être simplement la réverbération de la source elle-même au début du fenêtrage si elle a été activée peu de temps avant. On peut alors introduire des traitements de débruitage pour réduire de telles perturbations.
[0162] On peut prévoir de manière générale des fenêtres temporelles de formes et/ou tailles différentes, voire un chevauchement entre fenêtres avec recouvrement afin de maximiser les chances d’obtenir une « empreinte favorable ». [0163] On choisit une taille de DFT initiale généralement plus grande que cette fenêtre d’analyse.
[0164] Bien entendu, on se place dans le contexte de traitement de signaux audionumériques, échantillonnés à une fréquence d’échantillonnage donnée, sous la forme de blocs successifs (ou « trames ») d’échantillons.
[0165] On peut prévoir optionnellement encore un prétraitement avec détection d’attaque, de transitoire, etc., puis dé-bruitage temps-fréquence par exemple par définition d’un masque (filtre temps-fréquence, éventuellement binaire), de façon à éviter d’introduire dans l’empreinte d’interférence des éléments issus d’autres sources d’ambiance et/ou de champ diffus. Il convient de calculer la réponse impulsionnelle du masque (résultat de la transformée inverse) pour contrôler l’influence du masque sur l’analyse des pics. On peut alternativement l’intégrer dans une pondération fréquentielle de l’empreinte d’une trame considérée à mémoriser, de façon à calculer ultérieurement une moyenne pondérée d’empreintes fréquentielles correspondant a priori à des mélanges interférants semblables (typiquement sur des attaques de signal, en vérifiant que la source concernée n’a pas bougé, ce que l’on peut deviner à travers une estimation des retards).
[0166] Ainsi, on procède ensuite à l’extraction des pics et à leur observation, par exemple d’après la norme |V(t)| : un pic maximum, puis le suivant, donnent TAU1 (en général), etc.
[0167] On procède ensuite au diagnostic de l’empreinte temporelle, en détectant (d’après {tau_n} et V(sum(k_n.tau_n))) :
- si on a un re-bouclage temporel (une sorte d’ « aliasing » circulaire) du fait du choix d’une FFT sur un support temporel trop court,
- si on a bien une série unidirectionnelle progressive, ou au contraire une série bidirectionnelle, ou encore si on est dans un cas particulier d’une série sans atténuation notable (quand la somme des gains sum(gn) reste proche de 1 ) ou encore d’une série rétrograde (quand au moins un gain g_n implicite > 1 ). [0168] On peut alors :
- attribuer une note de « bonne trame » ou de « bonne empreinte » (permettant une estimation fiable, a priori sans biais de DoA, car unidirectionnelle), et la mémoriser,
- faire l’estimation (Un) et
- ajuster l’analyse en amont au besoin par le choix d’une fenêtre temporelle adaptée.
[0169] On a décrit ci-avant une analyse de l’empreinte temporelle mais une analyse fréquentielle peut être opérée plus simplement comme suit.
[0170] Il est facile de montrer mathématiquement que le pic au temps zéro est par construction égal à la moyenne du vecteur vélocité sur son spectre complet (la partie réelle s’annulant par symétrie hermitienne), ou encore de sa partie réelle si on ne considère que les fréquences positives. On peut estimer qu’il est alors inutile de calculer une Transformée inverse du FDW pour avoir une estimation de DoA si on ne s’intéresse qu’au son direct. L’examen temporel du TDW permet cependant de détecter si cette DoA est fiable (critère de développement vers les temps positifs et croissants).
[0171] Ce cas favorable s’observe plus plausiblement lors d’attaques du signal source, lorsque le mélange est encore peu complexe. De manière générale il suffit d’opérer l’estimation sur ces moments.
[0172] Par ailleurs, en pratique, les empreintes fréquentielle et temporelle du W ne sont pas toujours identifiables à un modèle idéal de mélange d’ondes interférantes. Il se peut que le signal source n’excite pas suffisamment ou pas toujours aux moments-clés une plage significative de fréquences, faute de puissance émise, éventuellement compte tenu de la concurrence d’autres composantes du champ sonore capté (SNR ou SIR insuffisant). Ceci peut être lié à un fond sonore d’ambiance plus ou moins diffus (autres sources sonores), bruit microphonique.
[0173] On peut alors pratiquer l’un au moins de ces traitements ou plusieurs de ces traitements en combinaison :
- sélection d’échantillons temps-fréquence avec détection d’attaque selon des algorithmes évolués,
- lissage du vecteur vélocité sur plusieurs trames (moyenne de V(f) pondérée par exemple par les |W(f)|2 des trames en question et un facteur d’oubli éventuellement dynamique), éventuellement en passant par le vecteur intensité,
- procéder à une moyenne de V(f) pondérée par |W(f)|2 sur une sélection de trames d’attaque (si les retards extraits sont identiques), pour compléter l’empreinte fréquentielle et consolider l’empreinte temporelle.
Pour des raisons d’économie de calcul, on peut préconiser en outre de ne réaliser les calculs de TDW, voire, en amont, de FDVV, que pour des trames que l’on détecte comme étant plus consistantes en information : par exemple les trames d’attaque si l’on est dans des situations où elles sont détectables par des traitements simples, auquel cas on a même intérêt à positionner la fenêtre d’analyse sur la montée du signal.
[0174] Pour la bonne estimation de retards non entiers (retard fractionnaire et ses multiples dans la série temporelle), on peut envisager une estimation de pic par interpolation inter-échantillons et/ou une analyse fréquentielle locale (en isolant le pic sur un voisinage resserré temporellement) et affiner le retard d’après la réponse en phase.
[0175] On peut effectuer une sélection préalable de pics temporels d’après une estimation courante des retards caractéristiques des séries.
[0176] Ainsi, on peut résumer les étapes mises en œuvre dans un exemple de réalisation possible comme illustré sur les figures 3A et 3B. A l’étape S1 , on calcule la transformée de Fourier (de temporel à fréquentiel) des signaux ambisoniques qui peuvent être sous forme d’une succession de « trames » (blocs d’échantillons successifs). Pour chaque trame k transformée (étape S2), on peut appliquer un masque dynamique à certaines des bandes de fréquences pour lesquelles le rapport signal à bruit est inférieur à un seuil (certaines bandes de fréquences pouvant en effet être fortement bruitées par exemple par un bruit inhérent au microphone ou autre, de sorte que l’exploitation d’un signal capté dans cette bande de fréquences est compromise). En particulier, la recherche de bruit par bande de fréquences est opérée à l’étape S3 préférentiellement sur la composante « omni » W, et les bandes de fréquences altérées par le bruit (au-delà d’un seuil par exemple tel que SNR<OdB) sont masquées (c’est-à-dire mises à zéro) à l’étape S4.
[0177] Ensuite à l’étape S5, le vecteur vélocité V(f) est calculé dans le domaine fréquentiel par exemple par l’équation Eq.6 (ou encore sous la forme de Eq.11 , Eq.18 ou Eq.20).
[0178] Dans un exemple de réalisation ici, on applique des poids q(f) calculés comme décrit plus loin pour donner plus ou moins d’importance à des bandes de fréquences f. Une telle réalisation permet d’exprimer le vecteur vélocité V(f) dans des bandes de fréquences où son évolution est significative. Pour ce faire, on calcule itérativement les poids optimums en fonction de U0 et V(f). Ainsi, en revenant au traitement algorithmique de la figure 3A, à l’étape S6, les différents poids q(f) sont mis à 1 . A l’étape S7, on applique la pondération q(f) appliquée à V(f) par bande, de sorte que Vbar(f) = q(f)V(f). A l’étape S8, on détermine U0 pour chaque trame k, tel que :
U0(k) = E(Re(Vbar(f))), où E(x) est ici à titre d’exemple l’espérance de x, ce qui s’apparente ainsi à une moyenne sur l’ensemble des fréquences de la partie réelle du vecteur vélocité estimé Vbar(f).
[0179] Bien entendu, cette première estimation de U0(k) est grossière. Elle est affinée itérativement en calculant les poids par rapport à la détermination précédente de U0(k) en utilisant l’équation Eq.49 s’appuyant sur la partie imaginaire du vecteur V(f), et où le vecteur m est un vecteur unitaire, normal au plan défini par le vecteur U0 et une normale à la paroi (la direction z de la figure 1 par exemple). Le vecteur m est estimé itérativement aussi en fonction de U0 à l’étape S9, puis les poids sont calculés par Eq.49 à l’étape S10. Les poids trouvés sont appliqués à l’étape S7, et l’estimation de U0 est affinée jusqu’à convergence en sortie du test S11 . A cette étape on a estimé U0(k) pour les différentes trames.
[0180] On peut en déduire U1 , par une relation du type Eq.41 décrite précédemment. Dans la variante décrite ici, on détermine U1 par les équations Eq.50 à Eq.52, en ayant préalablement appliqué une transformée inverse IDFT (de fréquentielle vers temporelle) à l’étape S12 au vecteur Vbar(f) trouvé à l’étape S7, pour obtenir une représentation temporelle V(t) du vecteur vélocité. Une telle réalisation permet, comme vu précédemment en référence à la figure 2, d’identifier les différents retards TAU1 , TAU2, etc. en cas de différentes surfaces réfléchissantes. Le premier retard TAU1 est identifié car il s’agit d’un premier pic de V(t) dans le temps qui suit l’instant de réception du trajet direct. Ainsi, dans l’équation Eq.51 , tmax(k) est l’instant qui maximise le module de V(t)k calculé pour la trame k.
[0181] Au test S13, on vérifie pour chaque trame que le module de V(t=O) est bien supérieur à celui de V(t) pour t>0. Une trame ne vérifiant pas cette condition est éliminée à l’étape S14. On détermine ensuite à l’étape S15 les différents retards, TAU1 , puis TAU2 (en retirant des modules de V(t)k à comparer dans Eq.51 ceux correspondant au retard TAU1 ), etc. Le retard TAUm est donné par la composante tmax trouvée à chaque itération m, divisée par la fréquence d’échantillonnage fs conformément à Eq.52, tenant compte que les temps t et tmax(k) sont d’abord exprimés en termes d’indice d’échantillon (le temps zéro étant pris comme référence pour l’indice zéro). On peut alors calculer également les vecteurs U1 , U2, etc., avec l’équation Eq.50.
[0182] Les autres paramètres peuvent être déterminés également, notamment dO donné par Eq.28 à l’étape S16 (en vérifiant ensuite au test S17 une cohérence avec des données de salle classique telle que d0min=0, et d0max=5m ; sinon la trame comporte une erreur et peut être rejetée à l’étape S14).
[0183] L’étape S18 peut consister à sélectionner davantage les « bonnes » trames, représentatives d’une attaque de son avec de premières réflexions. Le critère D(k) de sélection de telles trames peut être illustré à titre d’exemple par l’équation Eq.53 où C(f)i(k) désigne une magnitude (amplitude en valeur absolue) détectée sur le canal ambisonique i, à l’échantillon temps fréquence (t, f) issu de la première transformée (temps vers fréquences) de la trame k. Epsilon désigne une valeur positive non nulle pour éviter un zéro au dénominateur en absence de signal. F désigne le nombre total de sous-bandes de fréquences utilisées.
[0184] On peut ainsi ne retenir à l’étape S22 que les trames dont le critère D(k) calculé à partir de Eq.53 n’est pas plus petit que 90% du maximum Dmax trouvé à l’étape S21 parmi les critères de toutes les trames D(k). [0185] Ainsi, à l’étape S18, les valeurs D(k) sont calculées pour l’ensemble des trames, puis à l’étape S19, le traitement délivre les U0(k), dO(k), D(k) pour les différentes trames. A l’étape S20, les valeurs D(k) sont collectées pour identifier à l’étape S21 la plus élevée et éliminer à l’étape S22 les trames dont la valeur D(k) est inférieur à 0,9 Dmax.
[0186] Enfin, à l’étape S23, le vecteur U0 qui est retenu est préférentiellement ici le médian (plutôt que le moyen) parmi les vecteurs U0 des différentes trames retenues. La distance dO retenue est aussi la valeur médiane parmi les distances dO des différentes trames retenues.
[0187] Bien entendu la présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d’exemple ; elle s’étend à d’autres variantes.
[0188] On a décrit ci-avant une application à un traitement de signaux ambisoniques d’ordre 1 (FOA). L’ordre peut être supérieur pour un enrichissement en termes de résolution spatiale.
[0189] En effet, on a décrit ci-avant une représentation ambisonique d’ordre 1 , mais il est possible de prévoir des ordres supérieurs. Dans ce cas, le calcul vecteur vélocité est augmenté des ratios des composantes directionnelles d’ordres supérieurs sur la composante W(f), et les vecteurs Un sont implicitement augmenté d’autant de dimensions. L’augmentation des dimensions (au-delà de 3) et donc de la résolution spatiale permet de mieux différencier les vecteurs U0, U1 , ... Un entre eux, et de détecter plus facilement, dans l’empreinte temporelle, les pics V(k*TAUn) qui sont proportionnels à (UO-Un), même lorsque les vecteurs U0 et Un sont proches angulairement, ce qui arrive dans le cas de réflexions rasantes (lorsque la source est lointaine et/ou proche du sol par exemple). Cela permet donc d’estimer plus finement les paramètres recherchés U0, U1 , dO, etc. il convient de préciser en outre que le fait de ne garder ici que les trois composantes d’ordre 1 (X, Y, Z) au numérateur est indépendant du fait qu’on exploite éventuellement des composantes d’ordre(s) supérieur(s) disponibles pour construire la composante de référence au dénominateur. On peut dans tous les cas (quel que soit le dénominateur) envisager une amélioration du traitement ci-avant (de même que le traitement présenté dans FR1911723) en ajoutant des composantes d’ordre(s) supérieur(s) au numérateur, augmentant ainsi la dimensionnalité du vecteur vélocité et permettant notamment de mieux différencier ses pics dans le domaine temporel.
[0190] Plus généralement, on peut remplacer le vecteur vélocité par un ratio entre composantes d’une représentation acoustique spatiale de type « coïncident » dans le domaine fréquentiel et travailler dans un système de coordonnées caractéristique de ladite représentation spatiale.
[0191] Pour pallier les cas par exemple de plusieurs sources, le calcul de TDVV peut être exploité plus généralement en association avec des méthodes d’intelligence Artificielle, dont les réseaux de neurones. Quelques stratégies d’entraînement envisagées (par exemple sur des empreintes issues de modèles ou de SRIR fenêtrées, et pas forcément d’après des signaux originaux) peuvent permettre que le réseau apprenne à exploiter la succession de trames pour améliorer les détections et estimations par rapport à des situations de salles données.
[0192] Par ailleurs, on a décrit ci-avant en référence aux figures 6A à 6D et 7, la possibilité d’estimer dans un premier temps le vecteur vélocité classique V(f) pour déterminer une première estimation grossière de la DoA et d’affiner ensuite l’estimation du vecteur vélocité généralisé V’(f) à partir de cette estimation grossière pour donner une DoA plus exacte. Bien entendu, il s’agit simplement d’un exemple de réalisation possible. Dans une variante par exemple, il est possible de découper d’emblée l’espace en plusieurs secteurs, de donner ainsi une directivité à la composante au dénominateur D(f) dans chacun de ces secteurs, et d’essayer une convergence du calcul de la DoA avec des procédés itératifs (du type de la figure 7 à partir de l’étape S761 où D(1 ) serait simplement calculée en fonction du secteur angulaire considéré), ces procédés itératifs étant menés en parallèle pour chacun de ces secteurs. Il s’agit d’un exemple possible de réalisation. Alternativement, on peut retenir le « meilleur » secteur angulaire (ou les quelques meilleurs) selon le critère de validité du modèle causal présenté ci-avant, puis optimiser les estimations dans la ou les directions retenues, y compris en termes de variantes de forme du dénominateur. En effet, de façon plus générale, on peut envisager en outre d’évaluer en première étape et/ou lors d’étapes ultérieures une pluralité de vecteurs vélocité généralisés, respectivement associés à des directivités (au dénominateur) diversement formées.
[0193] De façon plus générale, la recherche d’un formation de faisceau ou « beamforming » qui donne une direction d’arrivée du son ou DoA fiable peut être abordée comme un problème général d’optimisation et avoir recours à ce titre à une variété de stratégies. On peut identifier donc :
- un critère de minimisation (une fonction à minimiser) qui traduit/prédit la validité du modèle causal. De façon un peu simpliste et donc améliorable, il s’agit dans la description ci-avant de la recherche d’énergie relative du signal dans les abscisses temporelles négatives ;
- les paramètres à optimiser sont les paramètres de beamforming, formulés par exemple comme les coefficients de la matrice D impliquée dans les équations Eq. A1 et A4, ou bien comme la direction Theta (0) et les paramètres de forme de faisceau (gbeamshape) de l’équation EQ.A5 lorsqu’on opte pour une symétrie axiale ou dans le cas où on est restreint à l’ordre 1 ;
- un jeu (ou des jeux) de paramètres initiaux, typiquement une directivité « omni » ( gbeamshape =[1 0...]) ; ou bien une directivité favorable mémorisée au cours d’utilisations antérieures ; ou bien une multiplicité de directivités pointant dans un ensemble de directions représentatives de l’espace, voire traduisant en plus différentes formes de directivité ;
- un principe d’ajustement des paramètres testés (au cours des itérations) car typiquement une réorientation du faisceau acoustique dans la dernière DoA estimée n’est pas toujours un choix suffisamment robuste : il faut alors, plutôt qu’arrêter l’algorithme faute d’amélioration, repartir de l’une des situations mémorisées (et a priori la meilleure du point de vue du critère de minimisation) et ajuster les paramètres suivant un autre axe (par exemple un paramètre de forme de directivité) ou une autre combinaison d’axes.
[0194] De façon plus générale, des approches usuelles dont par exemple celle du gradient stochastique, ou des optimisations par lots (‘batch’ en anglais) peuvent être envisagées, le nombre d’itérations induites pouvant néanmoins impliquer un coût important.
[0195] Il convient d’ajouter toutefois que contrairement à des tâches courantes d’optimisation, les paramètres visés in fine (les vecteurs Un typiquement) ne sont pas directement ceux qui sont optimisés, mais ils en découlent. On notera qu’il y a alors potentiellement une multiplicité de jeux de paramètres de beamforming qui pourraient être tous autant ‘optimaux’ dans le sens où ils induisent le respect d’un modèle causal. Dès lors, ils permettent tous alors de déduire le même jeu de paramètres Un de façon a priori exacte.
ANNEXE

Claims

Revendications
[Revendication 1] Procédé de traitement de signaux sonores acquis par au moins un microphone, pour une localisation d’au moins une source sonore dans un espace comportant au moins une paroi, dans lequel :
- On applique une transformée temps fréquences aux signaux acquis,
- A partir des signaux acquis, on exprime dans le domaine fréquentiel un vecteur vélocité généralisé V’(f), estimé à partir d’une expression d’un vecteur vélocité V(f) dans laquelle une composante de référence D(f), différente d’une composante omnidirectionnelle W(f), apparait au dénominateur de ladite expression, ladite expression étant complexe avec une partie réelle et une partie imaginaire, le vecteur vélocité généralisé V’(f) caractérisant une composition entre :
* un premier trajet acoustique, direct entre la source et le microphone, représenté par un premier vecteur U0, et
* au moins un deuxième trajet acoustique issu d’une réflexion sur la paroi et représenté par un deuxième vecteur U1 , le deuxième trajet ayant, au microphone, un premier retard TAU1 , par rapport au trajet direct,
- En fonction du retard TAU1 , du premier vecteur U0 et du deuxième vecteur U1 , on détermine au moins un paramètre parmi :
* une direction (DoA) du trajet direct,
* une distance dO de la source au microphone,
* une distance zO de la source à ladite paroi.
[Revendication 2] Procédé selon la revendication 1 , comprenant une pluralité d’itérations dans une partie au moins desquelles on utilise le vecteur vélocité généralisé V’(f) avec à son dénominateur une composante de référence D(f) déterminée en fonction d’une approximation de la direction du trajet direct (DoA) obtenue à une itération précédente.
[Revendication 3] Procédé selon la revendication 2, comprenant une première itération dans laquelle on utilise le vecteur vélocité V(f) à la place du vecteur vélocité généralisé V’(f), le vecteur vélocité V(f) s’exprimant dans le domaine fréquentiel et faisant apparaitre au dénominateur la composante omnidirectionnelle W(f), afin de déterminer au moins, à l’issue de cette première itération, une première approximation de la direction du trajet direct (DoA), et dans lequel, pour au moins une deuxième itération ultérieure à la première itération, on utilise le vecteur vélocité généralisé V’(f), estimé à partir d’une expression du vecteur vélocité V(f), au dénominateur de laquelle la composante de référence D(f) remplace la composante omnidirectionnelle W(f), la composante de référence D(f) étant spatialement plus sélective que la composante omnidirectionnelle W(f).
[Revendication 4] Procédé selon la revendication 3, dans lequel la composante de référence D(f) est plus sélective que la composante omnidirectionnelle W(f), dans une direction correspondant à ladite première approximation de la direction du trajet direct (DoA).
[Revendication 5] Procédé selon l'une des revendications 2 à 4, dans lequel les itérations sont répétées jusqu’à atteindre une convergence selon un critère prédéterminé de causalité.
[Revendication 6] Procédé selon la revendications 5, dans lequel à chaque itération :
- On applique en outre une transformée inverse, des fréquences vers le temps, à ladite expression du vecteur vélocité généralisé V’(f) pour obtenir, dans le domaine temporel, une succession de pics liés chacun à une réflexion sur au moins une paroi, outre un pic lié à une arrivée du son selon ledit trajet direct (DoA), et
- On réalise une nouvelle itération s’il apparait dans la succession de pics un signal dont l’abscisse temporelle est inférieure à celle du pic de trajet direct et dont l’amplitude est supérieure à un seuil choisi, le critère de causalité étant vérifié si l’amplitude du signal est inférieure audit seuil.
[Revendication 7] Procédé selon l'une des revendications 5 et 6, dans lequel il est mis fin aux itérations :
- dans un premier cas où l’amplitude dudit signal est inférieure au seuil choisi, et
- dans un deuxième cas où la répétition des itérations n’entraine pas de diminution significative de l’amplitude dudit signal.
[Revendication 8] Procédé selon la revendication 7, dans lequel il est fait suite au deuxième cas par la mise en œuvre des étapes suivantes, les signaux acquis étant délivrés sous forme de trames successives d’échantillons :
- Pour chaque trame, on estime (S18) un score de présence d’une attaque sonore dans la trame (Eq.53), et
- On sélectionne (S22) les trames à scores supérieurs à un seuil pour traiter les signaux sonores acquis dans les trames sélectionnées.
[Revendication 9] Procédé selon l’une des revendications précédentes, dans lequel les signaux acquis sont captés par un microphone ambisonique, et dans lequel le vecteur vélocité V(f) est exprimé dans le domaine fréquentiel par des composantes ambisoniques d’ordre 1 sous une forme de type : V(f)= 1/W(f) [X(f), Y(f), Z(f)]T,
W(f) étant la composante omnidirectionnelle, et le vecteur vélocité généralisé V’(f) est exprimé dans le domaine fréquentiel par des composantes ambisoniques d’ordre 1 sous une forme de type :
V(f)= 1/D(f) [X(f), Y(f), Z(f)]T,
D(f) étant ladite composante de référence, différente de la composante omnidirectionnelle.
[Revendication 10] Procédé selon l’une des revendications précédentes, dans lequel une estimation de la direction du trajet direct, assimilée au premier vecteur U0, est déterminée à partir d’une moyenne sur un ensemble de fréquences de la partie réelle du vecteur vélocité généralisé V’(f) exprimé dans le domaine fréquentiel (Eq.24).
[Revendication 11] Procédé selon l'une des revendications précédentes, dans lequel :
- On applique une transformée inverse, des fréquences vers le temps, au vecteur vélocité généralisé pour l’exprimer dans le domaine temporel V’(t),
- On recherche au moins un maximum dans l’expression du vecteur vélocité généralisé V’(t)max en fonction du temps, après une durée du trajet direct, et
- On en déduit le premier retard TAU1 , correspondant au temps donnant le maximum V’(t)max.
[Revendication 12] Procédé selon la revendication 11 , dans lequel :
- on estime le deuxième vecteur U1 en fonction de valeurs du vecteur vélocité normalisé V’ relevées aux indices temporels t=0, TAU1 et 2xTAU1 , pour définir un vecteur V1 tel que :
V1 = V’(TAU1 ) - ( (V’(TAU1 ) . V’(2.TAU1 )) / 1| V’(TAU1 ) ||2 ) V’(0),
Le vecteur U1 étant alors donné par : U1 = V1 / ||V11|.
[Revendication 13] Procédé selon la revendication 12, dans lequel :
- On détermine des angles respectifs PHIO et PHI1 du premier vecteur U0 et du deuxième vecteur U1 , par rapport à ladite paroi, tels que :
PHI0=arcsin(U0.nR) et PHI1 =arcsin(U1 .nR), où nR est un vecteur unitaire et normal à la paroi, et
- La distance dO entre la source et le microphone est déterminée en fonction du premier retard TAU1 par une relation du type : dO = (TAU1xC)/((cosPHI0/cosPHI1 )-1 ), où C est la vitesse du son.
[Revendication 14] Procédé selon la revendication 13, dans lequel la distance zO de la source à ladite paroi est déterminée par une relation du type : z0 = d0 (sinPH10 - sinPHI1 )/2
[Revendication 15] Procédé selon l'une des revendications précédentes, dans lequel, l’espace comprenant une pluralité de parois :
- On applique une transformée inverse, des fréquences vers le temps, au vecteur vélocité généralisé pour l’exprimer dans le domaine temporel V’(t) sous la forme d’une succession de pics (Eq.39b, FIG.2),
- On identifie, dans la succession de pics, des pics liés à une réflexion sur une paroi de ladite pluralité de parois, chaque pic identifié ayant une abscisse temporelle fonction d’un premier retard TAUn du trajet acoustique issu de la réflexion sur la paroi n correspondante, par rapport au trajet direct,
- En fonction de chaque premier retard TAUn, du premier vecteur U0 et de chaque deuxième vecteur Un représentant un trajet acoustique issu d’une réflexion sur une paroi n, on détermine au moins un paramètre parmi :
* la direction (DoA) du trajet direct,
* la distance dO de la source au microphone, et
* au moins une distance zn de la source à la paroi n.
[Revendication 16] Procédé selon la revendication 15, dans lequel les pics liés à une réflexion sur une paroi n ont des abscisses temporelles multiples du retard TAUn associé à cette paroi n, et dans lequel on présélectionne une première partie de pics à des abscisses temporelles positives les plus petites, pour identifier dans ladite partie les pics associés chacun à une seule réflexion sur une paroi.
[Revendication 17] Dispositif de traitement de signaux sonores, comportant un circuit de traitement pour la mise en œuvre du procédé selon l’une des revendications précédentes.
[Revendication 18] Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l’une des revendications 1 à 16, lorsque lesdites instructions sont exécutées par un processeur d’un circuit de traitement.
EP21810072.5A 2020-11-19 2021-10-15 Localisation perfectionnée d'une source acoustique Pending EP4248231A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2011874A FR3116348A1 (fr) 2020-11-19 2020-11-19 Localisation perfectionnée d’une source acoustique
PCT/FR2021/051801 WO2022106765A1 (fr) 2020-11-19 2021-10-15 Localisation perfectionnée d'une source acoustique

Publications (1)

Publication Number Publication Date
EP4248231A1 true EP4248231A1 (fr) 2023-09-27

Family

ID=75108412

Family Applications (1)

Application Number Title Priority Date Filing Date
EP21810072.5A Pending EP4248231A1 (fr) 2020-11-19 2021-10-15 Localisation perfectionnée d'une source acoustique

Country Status (7)

Country Link
US (1) US20240012093A1 (fr)
EP (1) EP4248231A1 (fr)
JP (1) JP2023550434A (fr)
KR (1) KR20230109670A (fr)
CN (1) CN116472471A (fr)
FR (1) FR3116348A1 (fr)
WO (1) WO2022106765A1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3102325A1 (fr) * 2019-10-18 2021-04-23 Orange Localisation perfectionnée d’une source acoustique

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2998438A1 (fr) * 2012-11-16 2014-05-23 France Telecom Acquisition de donnees sonores spatialisees
FR3067511A1 (fr) * 2017-06-09 2018-12-14 Orange Traitement de donnees sonores pour une separation de sources sonores dans un signal multicanal
FR3081641A1 (fr) * 2018-06-13 2019-11-29 Orange Localisation de sources sonores dans un environnement acoustique donne.

Also Published As

Publication number Publication date
FR3116348A1 (fr) 2022-05-20
US20240012093A1 (en) 2024-01-11
KR20230109670A (ko) 2023-07-20
JP2023550434A (ja) 2023-12-01
WO2022106765A1 (fr) 2022-05-27
CN116472471A (zh) 2023-07-21
WO2022106765A8 (fr) 2023-05-04

Similar Documents

Publication Publication Date Title
EP3807669B1 (fr) Localisation de sources sonores dans un environnement acoustique donné
EP3822654B1 (fr) Procédé de reconnaissance audio et procédé, appareil et dispositif de positionnement audio cible
JP4406428B2 (ja) 信号分離装置、信号分離方法、信号分離プログラム及び記録媒体
US7626889B2 (en) Sensor array post-filter for tracking spatial distributions of signals and noise
EP3635718B1 (fr) Traitement de donnees sonores pour une separation de sources sonores dans un signal multicanal
EP3281026B1 (fr) Procédé de séparation de sources pour signaux parcimonieux
EP2680262A1 (fr) Procédé de débruitage d&#39;un signal acoustique pour un dispositif audio multi-microphone opérant dans un milieu bruité
EP4046390A1 (fr) Localisation perfectionnee d&#39;une source acoustique
Foy et al. Mean absorption estimation from room impulse responses using virtually supervised learning
WO2022106765A1 (fr) Localisation perfectionnée d&#39;une source acoustique
EP3025342B1 (fr) Procédé de suppression de la réverbération tardive d&#39;un signal sonore
EP0410826B1 (fr) Procédé itératif d&#39;estimation de mouvement, entre une image de référence et une image courante, et dispositif pour la mise en oeuvre de ce procédé
WO2023156316A1 (fr) Localisation d&#39;une source acoustique en mouvement
CN115267672A (zh) 声源检测和定位的方法
Firoozabadi et al. Combination of nested microphone array and subband processing for multiple simultaneous speaker localization
Traa Multichannel source separation and tracking with phase differences by random sample consensus
Al-Ali et al. Enhanced forensic speaker verification performance using the ICA-EBM algorithm under noisy and reverberant environments
CN111627425B (zh) 一种语音识别方法及系统
WO2022207994A1 (fr) Estimation d&#39;un masque optimise pour le traitement de donnees sonores acquises
Massé et al. A Robust Denoising Process for Directional Room Impulse Responses with Diffuse Reverberation Tails
EP3934282A1 (fr) Procédé de conversion d&#39;un premier ensemble de signaux représentatifs d&#39;un champ sonore en un second ensemble de signaux et dispositif électronique associé
CN116756486A (zh) 基于声光电磁多源数据融合的海上目标识别方法及装置
Aparicio A Geometric Deep Learning Approach to Sound Source Localization and Tracking
Díaz-Guerra Aparicio et al. A Geometric Deep Learning Approach to Sound Source Localization and Tracking

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

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

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

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

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

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20230512

AK Designated contracting states

Kind code of ref document: A1

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

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

Owner name: ORANGE

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)