EP3078027A1 - Procédé de détection de la voix - Google Patents

Procédé de détection de la voix

Info

Publication number
EP3078027A1
EP3078027A1 EP14814978.4A EP14814978A EP3078027A1 EP 3078027 A1 EP3078027 A1 EP 3078027A1 EP 14814978 A EP14814978 A EP 14814978A EP 3078027 A1 EP3078027 A1 EP 3078027A1
Authority
EP
European Patent Office
Prior art keywords
frame
subframe
value
detection
threshold
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.)
Granted
Application number
EP14814978.4A
Other languages
German (de)
English (en)
Other versions
EP3078027B1 (fr
Inventor
Karim Maouche
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.)
Adeunis RF SA
Original Assignee
Adeunis RF 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 Adeunis RF SA filed Critical Adeunis RF SA
Publication of EP3078027A1 publication Critical patent/EP3078027A1/fr
Application granted granted Critical
Publication of EP3078027B1 publication Critical patent/EP3078027B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L25/84Detection of presence or absence of voice signals for discriminating voice from noise
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L2025/783Detection of presence or absence of voice signals based on threshold decision
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/78Detection of presence or absence of voice signals
    • G10L2025/783Detection of presence or absence of voice signals based on threshold decision
    • G10L2025/786Adaptive threshold

Definitions

  • the present invention relates to a voice detection method for detecting the presence of speech signals in a noisy acoustic signal from a microphone.
  • VAD Voice Activity Detection
  • VAD Voice Activity Detection
  • the invention finds a preferred, but not limiting, application with a multi-user wireless audio communication system, of the type of time-division or full-duplex communication system, between several autonomous communication terminals, that is to say say without connection to a transmission base or network, and easy to use, that is to say without intervention of a technician to establish communication.
  • Such a communication system in particular known from the documents WO10149864 A1, WO10149875 A1 and EP1843326 A1, is conventionally used in a noisy or even very noisy environment, for example in a marine environment, in the context of a sports spectacle or event. room or outdoors, on a construction site, etc.
  • the detection of voice activity generally consists in delimiting, by means of quantifiable criteria, the beginning and end of words and / or sentences in a noisy acoustic signal, in other words in a given audio stream.
  • Such detection finds applications in areas such as speech coding, noise reduction or speech recognition.
  • a method for detecting the voice in the processing chain of an audio communication system makes it possible in particular not to transmit an acoustic or audio signal during periods of silence. Therefore, the surrounding noise will not be transmitted during these periods, for the sake of improving the audio rendering of the communication or to reduce the transmission rate.
  • voice activity detection it is known to employ voice activity detection to encode the audio signal in a full manner only when the "VAD" method is used. indicates activity. Therefore, when there is no speech and we are in a period of silence, the coding rate drops significantly, which on average, over the entire signal, allows to achieve lower rates.
  • the signal indeed has a so-called fundamental frequency, generally called "pitch", which corresponds to the frequency of vibration of the vocal cords of the speaker, and which generally extends between 70 and 400 Hertz.
  • the evolution of this fundamental frequency determines the melody of speech and its extent depends on the speaker, his habits but also his physical and mental state.
  • a first method of detecting the fundamental frequency implements the search for the maximum of the autocorrelation function R (T) defined by the following relation:
  • R (x) (n) x (n + ⁇ ), 0 ⁇ ⁇ max (i).
  • This first method employing the autocorrelation function does not give satisfaction, however, when there is presence of relatively large noise. Moreover, the autocorrelation function suffers from the presence of maxima that do not correspond to the fundamental frequency or its multiples, but to sub-multiples of it.
  • a second method of detecting the fundamental frequency implements the search for the minium of the difference function D (x) defined by the following relation:
  • I I is the absolute value operator, this difference function being minimal in the vicinity of the fundamental frequency and its multiples, then the comparison of this minimum with a threshold to deduce the decision of presence of voice or not.
  • the difference function ⁇ ( ⁇ ) Compared to the autocorrelation function R (T), the difference function ⁇ ( ⁇ ) has the advantage of offering a lower computational load, making this second method more interesting for real-time applications. However, this second method does not give complete satisfaction when there is noise.
  • a third method of detecting the fundamental frequency implements the calculation, by considering a processing window of length H where H ⁇ N, of the square difference function d t (x) defined by the relation:
  • this third method consists in normalizing the square difference function d t (x) by calculating a normalized square difference function ⁇ ⁇ ( ⁇ ) corresponding to the following relation: inon
  • this third method has limitations in terms of voice detection, particularly in areas of low SNR (Signal to Noise) noise. characteristics of a very noisy environment.
  • the threshold would be the same for all the situations without it changing according to the noise level. can thus lead to cuts at the beginning of the sentence, or even non-detection of the voice, when the signal to detect is a voice, especially in a context where the noise is a diffuse audience noise in such a way that it does not look like a speech signal at all.
  • the present invention aims to provide a voice detection method that provides a detection of speech signals contained in a noisy acoustic signal, particularly in noisy environments or very noisy.
  • a voice detection method for detecting the presence of speech signals in a noisy acoustic signal x (t) from a microphone, comprising the following successive steps:
  • a prior sampling step comprising a division of the acoustic signal x (t) into a discrete acoustic signal ⁇ xj composed of a sequence of vectors associated with i-time frames of length N, N corresponding to the number of sampling points; , where each vector translates the acoustic content of the associated frame i and is composed of N samples X (M) N + I, X (ii) N + 2, XiN-i, XIN, i positive integer;
  • this step of calculating the detection function FD (x) consists of a calculation of a discrete detection function FDi (x) associated with the frames i;
  • a threshold adaptation step in said current interval as a function of values calculated from the acoustic signal x (t) established in said current interval, and in particular maximum values of said acoustic signal x (t), where this step of adapting the threshold consists in, for each frame i, adapting a threshold ⁇ specific to the frame i as a function of reference values calculated from the values of the samples of the discrete acoustic signal ⁇ xj in said frame i;
  • this step of finding the minimum of the detection function FD (x) and the comparison of this minimum with a threshold are performed by searching, on each frame i, the minimum rr (i) of the discrete detection function FDi (x ) and comparing this minium rr (i) with a threshold ⁇ , specific to the frame i;
  • step of adapting the thresholds ⁇ for each frame i comprises the following steps:
  • n 1 (X (I-I) N + O-I) L + I, X (I-I) N + O-I) L + 2, X (I-I) N + JL;
  • this method is based on the principle of an adaptive threshold, which will be relatively low during periods of noise or silence and relatively high during speech periods. As a result, false detections will be minimized and speech will be detected correctly with a minimum of cuts at the beginning and end of words.
  • the detection function FD (x) corresponds to the difference function D (x).
  • the detection function FD (x) corresponds to the normalized difference function DN (x) calculated from the difference function D (x) as follows:
  • DN (T) ⁇ ⁇ ⁇ ( ⁇ ⁇ ) if ⁇ ⁇ 0;
  • the calculation of the normalized difference function DN (T) consists of a calculation of a discrete normalized difference function DN ⁇ x) associated with the frames i, where:
  • DN j (x) ⁇ ⁇ Di T (T) if ⁇ ⁇ 0.
  • the discrete difference function DiC relating to the frame i is calculated as follows:
  • the discrete difference function Di (x) relative to the frame i is calculated as the sum of the difference functions dd p (Y) of the sub-frames of index p of the frame i, namely:
  • step c the following sub-steps are carried out on each frame i:
  • ⁇ A jj m ij _ 1 + (1 - A) m dd, where ⁇ is a predefined factor between 0 and 1;
  • the variation signals are considered smoothed envelopes established in the subframes j to make the decision (voice or no voice) on the entire frame i, making reliable the detection of speech (or voice).
  • step c) and following substep c2) the following sub-steps are performed on each frame i:
  • the maximums of variation Sjj are calculated in each subfield of index j of the frame i, where Sjj corresponds to the maximum of the variation signal calculated on a sliding window of length Lm prior to said sub-frame j, said length Lm being variable according to whether the sub-frame j of the frame i corresponds to a period of silence or presence of speech;
  • 3 ⁇ 4j ⁇ ⁇ "s i, i;
  • the variation signals are considered together and the variations of variation 5i established in the sub-frames j to choose the value of the threshold ⁇ , adaptive and thus make the decision (voice or absence of voice) on the entire frame i, reinforcing the detection of speech.
  • the couple is studied (Ai, ⁇ ,,,) to determine the value of ⁇ threshold, adaptive.
  • the normalized variation signal A'i and away from 5'ij normalized variation each constitute a main reference value Ref,, so that, when step d), it sets the value of ⁇ threshold, capable of frame i according to the torque ( ⁇ ', ⁇ ,,',,) standardized variation signals A 'li and standard variation differences 5'ij in the sub-frames j of the frame i .
  • the thresholds ⁇ chosen from these normalized signals A ' li and 5'ij will be independent of the level of the discrete acoustic signal ⁇ xj.
  • the torque is studied ( ⁇ ',,,; O'I) for determining the value of ⁇ threshold adaptive.
  • the value of the threshold ⁇ is established by partitioning the space defined by the value of the pair (A'i, ô'i), and examining the value of the torque ( ⁇ ⁇ , ⁇ ',,,) on one or more (e.g. one to three) successive subframes according to the value of the torque box ( ⁇ ⁇ , O'I).
  • the ⁇ threshold calculation procedure is based on an experimental partition the space defined by the value of the torque ( ⁇ ⁇ , ⁇ ',,,).
  • a decision mechanism that scrutinizes the value of the pair ( ⁇ ' ⁇ , ô'i) on one, two or more successive subframes according to the value area of the pair.
  • the conditions of positioning tests of the torque value ( ⁇ ' ⁇ , ô'i) depend mainly on the speech detection during the previous frame and the scanning mechanism on one, two or more successive subframes also uses an experimental partitioning.
  • the length Lm of the sliding window corresponds to the following equations:
  • - Lm LO if the sub-frame j of the frame i corresponds to a period of silence
  • the sliding window of length Lm is delayed by Mm frames of length N with respect to said sub-frame j.
  • each maximum normalized variation is calculated according to a minimization method comprising the following iterative steps:
  • step c4) the standardized variation differences 5 ', j in each subfield of index j of the frame i are calculated as follows:
  • a sub-step c6) is performed in which the maximum maxima q, j are calculated in each subfield of index j of the frame i, where q, j corresponds to at most of the maximum value ⁇ 3 ⁇ 4 calculated on a sliding window of fixed length Lq prior to said subframe j, where the sliding window of length Lq is delayed by Mq frames of length N opposite said subframe j, and where another so-called secondary reference value MRefi j per sub-frame j corresponds to said maximum maximum q, j in the sub-frame j of the frame i .
  • the ⁇ threshold fit for frame i is divided into several sub-thresholds ⁇ ,,, specific to each sub-frame of frame i j, and the value each sub-threshold ⁇ ,, is at least determined on the basis of the refi j or reference values, MRefi j calculated in the subframe j of the corresponding frame i.
  • the value of each threshold ⁇ ⁇ specific to the sub-frame j of the frame i is determined by comparing the values of the pair (A'i j , 5 ', j ) with several pairs of fixed thresholds, the value of each threshold Q i j being selected from among several fixed values as a function of the comparisons of the torque (A ', j , 5', j ) with said pairs of fixed thresholds.
  • pairs of fixed thresholds are for example determined experimentally by a distribution of the space of the values (A ', j , 5', j ) into decision zones. Complementarily, it sets the value of each Qi j threshold specific to the sub-frame to frame j i also performing a comparison of the torque (A'i, ⁇ ',,,) on one or more successive sub-frames according to the initial zone of the torque ( ⁇ ', ⁇ ,,',,).
  • the decision mechanism based on comparing the torque (A'i, O'I) with pairs of fixed thresholds is completed through another decision mechanism based on the comparison of q, with other fixed thresholds .
  • step d a so-called decision procedure is carried out comprising the following substeps, for each frame i:
  • a decision index DECi (j) is established which occupies either a state "1" of detection of a speech signal or a state "0" of non-detection of a speech signal;
  • a temporary decision VAD (i) is established based on the comparison of the decision indices DEC, (j) with logical "OR” operators, so that the temporary decision VAD (i) occupies a state "1" of detection of a speech signal if at least one of said decision indices DEC, (j) occupies this state "1" of detection of a speech signal.
  • the final decision (voice or no voice) is taken following this decision procedure, based on the temporary decision VAD (i) which is itself taken on the entire frame i, by implementing a logical "OR" operator on the decisions taken in the sub-frames j, and preferably in successive sub-frames j over a short and finite horizon from from the beginning of the frame i.
  • the following sub-steps can be performed for each frame i:
  • a maximum threshold value Lastmax is stored which corresponds to the variable value of a comparison threshold for the amplitude of the discrete acoustic signal ⁇ x ⁇ below which it is considered that the acoustic signal does not comprise a speech signal, this a variable value being determined during the last frame of index k preceding said frame i and in which the temporary decision VAD (k) has a state "1" of detection of a speech signal;
  • a maximum average value is stored which corresponds to the average maximum value of the discrete acoustic signal ⁇ xj in the subframe j of the frame i calculated as follows:
  • ay corresponds to the maximum of the discrete acoustic signal ⁇ xj contained in a frame k formed by the subframe j of the frame i and by at least one or more successive subframes that precede said subframe j;
  • is a predefined coefficient between 0 and 1 with ⁇ ⁇
  • each sub-threshold Q li is established as a function of the comparison between said maximum threshold value Lastmax and average maximum values A i and A i considered on two successive sub-frames j and j-1.
  • this decision procedure aims to further eliminate the bad detections by storing the Lastmax maximum threshold value of the updated speech signal in the last activation period and the average maximum values Ajj and ⁇ ,, ⁇ which correspond to the mean maximum value of the discrete acoustic signal ⁇ xj in the subframes j and j-1 of the frame i. Taking into account these values (Lastmax, A and A.-I), we add a condition at the level of the establishment of the threshold ⁇ , adaptive.
  • the maximum threshold value Lastmax is updated each time the process has considered that a sub-frame p of a frame k contains a speech signal, by implementing the following procedure:
  • Lastmax takes the updated value [a (A k , p + LastMax)] where a is a predefined coefficient between 0 and 1, for example between 0.2 and 0.7;
  • Lastmax takes the updated value A k , p if A k , p > Lastmax.
  • the Lastmax value is updated only during the activation periods of the process (ie the detection periods of the voice). In a speech detection situation, the value Lastmax will be worth A k , p when A k , p > LastMax. However, it is important that this update is done as follows when activating the first sub-frame p following a zone of silence: the value Lastmax will be worth [a (A k , p + LastMax)].
  • This mechanism of updating the Lastmax maximum threshold value allows the process to detect the user's voice even if the user has reduced the intensity of his voice (ie speaking less loud) compared to the last time the process detected that he had spoken.
  • Lastmax maximum threshold value is variable and is compared with the average maximum values and .1 of the discrete acoustic signal.
  • Kp is a fixed weighting coefficient between 1 and 2.
  • the method further comprises a so-called blocking phase comprising a step of switching from a state of non-detection of a speech signal to a detection state of a speech signal after having detected the presence of a speech signal on N P successive time frames i.
  • the method implements a step hangover type configured such that the transition from a situation voiceless to a situation with the presence of voice is that after N successive P frames with the presence of voice.
  • the method further comprises a so-called blocking phase comprising a step of switching from a detection state of a speech signal to a non-detection state of a speech signal after detecting no presence of a speech signal.
  • signal voiced on N A successive time frames i.
  • the method implements a step of the hangover type configured in such a way that the transition from a situation with presence of voice to a situation without voice is done only after N A successive frames without voice.
  • the process may punctually cut the acoustic signal during the sentences or even in the middle of the words spoken.
  • these failover steps implement a blocking or hangover step on a given series of frames.
  • the method comprises a step of interrupting the blocking phase in decision areas intervening at the end of words and in a non-noisy situation, said decision areas being detected by analyzing the minimum rr (i) the discrete detection function FD (T).
  • the blocking phase is interrupted at the end of a sentence or word during a particular detection in the decision space. This interruption occurs only in a situation with little or no noise.
  • the method provides for isolating a particular decision area that occurs only at the end of words and in a non-noisy situation.
  • the method also uses the minimum rr (i) of the discrete detection function FDi (x), where the discrete detection function FDi (x) corresponds to either the discrete difference function Di ( x) to the discrete normalized difference function DN Î (T).
  • the voice will be cut faster at the end of the speech, giving the system better audio quality.
  • the invention also relates to a computer program comprising code instructions able to control the execution of the steps of the voice detection method as defined above when executed by a processor.
  • the invention further relates to a recording data recording medium on which is stored a computer program as defined above.
  • Another object of the invention is to provide a computer program as defined above over a telecommunication network with a view to downloading it.
  • FIG. 1 is a block diagram of the method according to the invention.
  • FIG. 2 is a schematic view of a limiting loop implemented by a so-called hangover type decision blocking step
  • FIG. 3 illustrates the result of a voice detection method using a fixed threshold with, at the top, a representation of the curve of the minimum rr (i) of the detection function and of the fixed threshold line Qfix and at the bottom, a representation of the discrete acoustic signal ⁇ xj and of the output signal DF,;
  • FIG. 4 illustrates the result of a voice detection method according to the invention by using an adaptive threshold with, at the top, a representation of the curve of the minimum rr (i) of the detection function and the adaptive threshold line Qi and, below, a representation of the discrete acoustic signal ⁇ xj and the output signal DF ,.
  • FIG. 1 schematically illustrates the succession of the different steps necessary for detecting the presence of speech (or voice) signals in a noisy acoustic signal x (t) originating from a single microphone operating in a noisy environment.
  • the method starts with a preliminary sampling step 101 comprising a division of the acoustic signal x (t) into a discrete acoustic signal ⁇ xj composed of a sequence of vectors associated with time frames of length N, N corresponding to the number of sampling points, where each vector translates the acoustic content of the associated frame i and is composed of N samples X (M) N + I, X (M) N + 2, XIN-I, Î N, i positive integer:
  • the noisy acoustic signal x (t) is divided into frames of 240 or 256 samples, which at a sampling frequency F e of 8 kHz corresponds to time frames of 30 or 32 milliseconds.
  • the method continues with a step 102 of calculating a discrete difference function Di (x) relative to the frame i is calculated as follows:
  • each field i is subdivided into K subframes of length H, with the following relation:
  • samples of the discrete acoustic signal ⁇ xj in a subscript of index p of the frame i comprise the following H samples:
  • the discrete difference function Di (x) relative to the frame i is calculated as the sum of the difference functions dd p (Y) of the sub-frames of index p of the frame i, namely:
  • step 102 also includes calculating a discrete normalized difference function DN (x) from the discrete difference function Di (x), as follows:
  • DN j (x) 1 7 Di T (T) if ⁇ ⁇ 0.
  • step 103 in which, for each frame i:
  • n 1 (X (I-I) N + O-I) L + I, X (I-I) N + O-I) L + 2, X (I-I) N + JL;
  • ⁇ dd A ij m _ 1 + (1 - A) m dd, where ⁇ is a predefined coefficient between 0 and 1.
  • the variation signals ⁇ are calculated in each subfield of index j of the frame i, defined by:
  • the maximums of variation Sij are calculated in each subfield of index j of the frame i, where s ,,, corresponds to the maximum of the variation signal. calculated on a sliding window of length Lm prior to said subframe j.
  • the length Lm is variable according to whether the sub-frame j of the frame i corresponds to a period of silence or presence of speech, with:
  • L being a reminder of the length of subframes of index j and kO
  • k1 being positive integers with k1 ⁇ k0.
  • the sliding window length Lm is delayed by Mm frames of length N vis-à-vis said subframe j.
  • the normalized maximums of variation are also calculated in each subfield of index j of the frame i, where:
  • a step 109 the maximum maxima q, j are calculated in each subfield of index j of the frame i, where q ,,, corresponds to the maximum of the maximum value ms j calculated on a sliding window of fixed length Lq prior to said subframe j, where the sliding window of length Lq is delayed by Mq frames of length N vis-à-vis said subframe j.
  • Lq> L0, and in particular Lq kq.L with kq a positive integer and kq> kO.
  • Mq> Mm Mm.
  • each threshold Q, or sub-threshold Qij takes a fixed value chosen from six fixed values Qa, Qb, Qc, Qd, Qe, Qf, these fixed values being for example between 0.05 and 1, and in particular between 0.1 and 0.7.
  • Each threshold Q, or sub-threshold Qi is fixed at a fixed value Qa, Qb, Qc, Qd, Qe, Qf by the implementation of two analyzes: first analysis: the comparison of the values of the pair ( ⁇ ',,,, ⁇ ' ,,,) in the subscript of index j of the frame i with several pairs of fixed thresholds;
  • This decision procedure includes the following substeps, for each frame i:
  • a decision index DECi (j) is established which occupies either a state "1" of detection of a speech signal or a state "0" of non-detection of a speech signal;
  • a temporary decision VAD (i) is established based on the comparison of the decision indices DEC, (j) with logical "OR” operators, so that the temporary decision VAD (i) occupies a state "1" of detection of a speech signal if at least one of said decision indices DEC, (j) occupies this state "1" of detection of a speech signal, in other words the following relation is:
  • VAD (i) DECi (1) + DECi (2) + ... + DECi (T), where "+” is the "OR” operator.
  • the threshold ⁇ is fixed at one of the fixed values Qa, Qb, Qc, Qd , Qe, Qf and we deduce the final decision by comparing the minimum rr (i) with the threshold ⁇ , fixed at one of its fixed values (see description below).
  • the false detections arrive with an amplitude lower than that of the speech signal, the microphone being located next to the mouth of the user.
  • the maximum threshold value Lastmax deduced from the speech signal in the last activation period of the "VAD" and adding a condition in the process based on this Lastmax maximum threshold value.
  • step 109 the storage of the Lastmax maximum threshold value which corresponds to the variable (or actualized) value of a comparison threshold for the amplitude of the discrete acoustic signal ⁇ xj below which it is considered that the acoustic signal does not comprise a speech signal, this variable value being determined during the last frame of index k which precedes said frame i and in which the temporary decision VAD (k) had a state "1" of detection of a speech signal.
  • a mean maximum value is also stored which corresponds to the average maximum value of the discrete acoustic signal ⁇ xj in the sub-frame j of the frame i calculated as follows:
  • ay is the maximum of the discrete acoustic signal ⁇ xj contained in the theoretical frame k formed by the subframe j of the frame i and by at least one or more successive subframes that precede said subframe j; and ⁇ is a predefined coefficient between 0 and 1 with ⁇ ⁇
  • Lastmax takes the updated value [a (A k , p + LastMax)] where a is a predefined coefficient between 0 and 1, for example between 0.2 and 0.7;
  • Lastmax takes the updated value A k , p if A k , p > Lastmax.
  • this condition is based on the comparison between:
  • Kp is a fixed weighting coefficient between 1 and 2.
  • a step 1 1 1 for each current frame i, the minimum rr (i) of a discrete detection function FDi (x) is calculated, in which the discrete detection function FDi (x) corresponds to either the discrete difference function Di (x) is the discrete normalized difference function DN Î (T).
  • this minimum rr (i) is compared with the threshold ⁇ , specific to the frame i, to detect the presence or absence of a speech signal (yes signal voiced), with:
  • the frame i is considered as presenting a speech signal and the method delivers an output signal DF, taking the value "1" (in other words, the final decision for the frame i is "Presence of voices in the frame i");
  • the frame i is considered as not having a speech signal and the method delivers an output signal DF, taking the value "0" (in other words, the final decision for the frame i is "absence of voice in the frame i").
  • this stage 1 13 blocking decision to strengthen the decision of presence / absence of voice by implementing the following two steps:
  • this blocking step 13 makes it possible to output a decision signal of the detection of the voice D v which takes the value "1" corresponding to a decision of the detection of the voice and the value "0" corresponding to a decision of the non detection of the voice, where:
  • the decision signal of the detection of the voice D v switches from a state "1" to a state “0” if and only if the output signal DF takes the value "0" over N A successive time frames i ; and the decision signal of the detection of the voice D v switches from a state "0" to a state “1” if and only if the output signal DF takes the value "1" on N P successive time frames i .
  • the remainder of the description relates to two voice detection results obtained with a conventional method using a fixed threshold (FIG. 3) and with the method according to the invention using an adaptive threshold (FIG. 4).
  • Fig. 3 the minimum function rr (i) is compared to a fixed threshold Qfix optimally selected for voice detection.
  • Qfix optimally selected for voice detection.
  • Figure 3 (bottom) we note the form of the output signal DF, which occupies a state "1" if rr (i) ⁇ Qfix and a state "0" if rr (i)> Qfix.
  • the minimum function rr (i) is compared with an adaptive threshold Q, calculated according to the steps previously described in FIG. reference to Figure 1.
  • an adaptive threshold Q calculated according to the steps previously described in FIG. reference to Figure 1.
  • Figure 4 (bottom) we note the shape of the output signal DF, which occupies a state "1" if rr (i) ⁇ , and a state "0" if rr (i)> ⁇ ,.
  • the method according to the invention makes it possible to detect the voice in the speech presence zone "PAR" with the output signal DF, which occupies a state "1", and that this same signal DF output, several times occupies a state "1" in other areas where speech is however absent, which corresponds by false detections unwanted with the conventional method.
  • the method in accordance with the invention allows optimal detection of the voice in the speech presence zone "PAR" with the output signal DF, which occupies a state "1", and that this same output signal DF, occupies a state "0" in the other areas where speech is absent.
  • the method according to the invention provides voice detection with a sharp reduction in the number of false detections.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Telephone Function (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Procédé de détection de la voix permettant de détecter la présence de signaux de parole dans un signal acoustique x(t) bruité issu d'un microphone, comportant les étapes successives suivantes : - calcul d'une fonction de détection FD(τ) basée sur le calcul d'une fonction différence D(τ) variant en fonction du décalage τ sur une fenêtre d'intégration de longueur W débutant au temps t0, avec : - une étape d'adaptation du seuil dans ledit intervalle courant, en fonction de valeurs calculées à partir du signal acoustique x(t) établies dans ledit intervalle courant; - recherche du minimum de la fonction de détection FD(τ) et comparaison de ce minimum avec un seuil, pour (τ) variant dans un intervalle de temps déterminé dit intervalle courant pour détecter la présence ou non d'une fréquence fondamentale F0 caractéristique d'un signal de parole dans ledit intervalle courant.

Description

Procédé de détection de la voix
La présente invention se rapporte à un procédé de détection de la voix permettant de détecter la présence de signaux de parole dans un signal acoustique bruité issu d'un microphone.
Elle se rapporte plus particulièrement à un procédé de détection de la voix utilisé dans un système de communication audio sans fil mono-capteur.
L'invention se situe dans le domaine spécifique de la détection d'activité de la voix, généralement appelé « VAD » pour Voice Activity Détection, qui consiste à détecter la parole, autrement dit des signaux de parole, dans un signal acoustique issu d'un microphone.
L'invention trouve une application privilégiée, mais non limitative, avec un système de communication audio sans fils multi-utilisateurs, du type système de communication par multiplexage temporel ou full-duplex, entre plusieurs terminaux de communication autonomes, c'est-à-dire sans raccordement à une base de transmission ou à un réseau, et simple d'utilisation, c'est-à-dire sans intervention d'un technicien pour établir la communication.
Un tel système de communication, notamment connu des documents WO10149864 A1 , WO10149875 A1 et EP1843326 A1 , est classiquement employé dans un environnement bruité voire très bruité, par exemple en milieu marin, dans le cadre d'un spectacle ou d'un événement sportif en salle ou en extérieur, sur un chantier, etc.
La détection d'activité de la voix consiste généralement à délimiter au moyen de critères quantifiables, les débuts et fin de mots et/ou de phrases dans un signal acoustique bruité, autrement dit dans un flux audio donné. Une telle détection trouve des applications dans des domaines comme le codage de parole, la réduction de bruit ou encore la reconnaissance de parole.
La mise en œuvre d'un procédé de détection de la voix dans la chaîne de traitement d'un système de communication audio permet en particulier de ne pas transmettre de signal acoustique ou audio durant les périodes de silence. De ce fait, le bruit environnant ne sera pas transmis pendant ces périodes, dans un souci d'améliorer le rendu audio de la communication ou pour réduire le débit de transmission. Par exemple, dans le cadre du codage de parole, il est connu d'employer la détection d'activité de la voix pour coder le signal audio de façon pleine que lorsque le procédé « VAD » indique de l'activité. De ce fait, lorsqu'il n y a pas de parole et que l'on se trouve dans une période de silence, le débit de codage baisse significativement, ce qui en moyenne, sur tout le signal, permet d'atteindre des débits plus faibles.
II existe ainsi beaucoup de procédés de détection d'activité de la voix mais ces derniers présentent des performances médiocres ou ne fonctionnent pas du tout dans le cadre d'un environnement bruité voire très bruité, tel que dans un environnement de rencontre sportive (en extérieur ou en intérieur) avec des arbitres qui doivent communiquer en audio et sans fil. En effet, les procédés connus de détection d'activité de la voix donnent de mauvais résultats lorsque le signal de parole est entaché de bruit.
Parmi les procédés de détection d'activité de la voix connus, certains mettent en œuvre une détection de la fréquence fondamentale caractéristique d'un signal de parole, comme divulgué notamment dans le document FR 2 988 894. Dans le cas d'un signal de parole, dit signal ou son voisé, le signal présente en effet une fréquence dite fondamentale, généralement appelée « pitch », qui correspond à la fréquence de vibration des cordes vocales de la personne qui parle, et qui s'étend généralement entre 70 et 400 Hertz. L'évolution de cette fréquence fondamentale détermine la mélodie de la parole et son étendue dépend du locuteur, de ses habitudes mais aussi de son état physique et mental.
Ainsi, pour réaliser la détection d'un signal de parole, il est connu de partir du principe qu'un tel signal de parole est quasi-périodique et que, de ce fait, une corrélation ou une différence avec le signal lui-même mais décalé présentera des maximums ou des minimums au voisinage de la fréquence fondamentale et de ses multiples.
Le document « YIN, a fundamental frequency estimator for speech and music », par Alain De Cheveigne et Hideki Kawahara, Journal of the Acoustical Society of America, Vol. 1 1 1 , No. 4, pp. 1917-1930, Avril 2002, propose et développe une méthode basée sur la différence entre le signal et le même signal décalé temporellement.
Plusieurs méthodes décrites ci-après sont basées sur la détection de la fréquence fondamentale du signal de parole ou pitch dans un signal acoustique x(t) bruité. Une première méthode de détection de la fréquence fondamentale met en œuvre la recherche du maximum de la fonction d'auto-corrélation R(T) définie par la relation suivante :
R(x) = (n)x(n + τ) , 0 < τ < max(i) .
Cette première méthode employant la fonction d'auto-corrélation ne donne cependant pas satisfaction dès lors qu'il y a présence de bruit relativement important. De plus la fonction d'auto-corrélation souffre de la présence de maximums qui ne correspondent pas à la fréquence fondamentale ou à ses multiples, mais à des sous-multiples de celle-ci.
Une deuxième méthode de détection de la fréquence fondamentale met en œuvre la recherche du minium de la fonction différence D(x) définie par la relation suivante :
D (T) = x(n + τ) | , 0 < τ < max(x) ,
où I I est l'opérateur valeur absolue, cette fonction différence étant minimale au voisinage de la fréquence fondamentale et de ses multiples, puis la comparaison de ce minimum avec un seuil pour en déduire la décision de présence de voix ou non.
Par rapport à la fonction d'auto-corrélation R(T) , la fonction différence ϋ(τ) possède l'avantage d'offrir une charge de calcul plus faible, rendant ainsi cette deuxième méthode plus intéressante pour des applications en temps réel . Cependant, cette deuxième méthode ne donne pas non plus entière satisfaction dès lors qu'il y a présence de bruit.
Une troisième méthode de détection de la fréquence fondamentale met en œuvre le calcul, en considérant une fenêtre de traitement de longueur H où H<N, de la fonction différence carrée dt(x) définie par la relation :
Puis on poursuit avec la recherche du minimum de la fonction différence carrée dt(x), cette fonction différence carrée étant minimale au voisinage de la fréquence fondamentale et de ses multiples, et enfin la comparaison de ce minimum avec un seuil pour en déduire la décision de présence de voix ou non. Une amélioration connue de cette troisième méthode consiste à normaliser la fonction différence carrée dt(x) en calculant une fonction différence carrée normalisée ά^(τ) répondant à la relation suivante : inon
Bien que présentant une meilleure immunité au bruit et donnant, dans ce cadre, de meilleurs résultats de détection, cette troisième méthode présente des limites en termes de détection de voix, en particulier dans des zones de bruit à faible RSB (Rapport Signal sur Bruit) caractéristiques d'un environnement très bruité.
L'état de la technique peut également être illustré par l'enseignement de la demande de brevet FR 2 825 505 qui met en œuvre la troisième méthode de détection de la fréquence fondamentale précitée, pour l'extraction de cette fréquence fondamentale. Dans cette demande de brevet, la fonction différence carrée normalisée dj-Cr) peut être comparée à un seuil pour déterminer cette fréquence fondamentale - ce seuil pouvant être fixe ou varier en fonction du décalage temporel τ - et cette méthode présente les inconvénients précités associés à cette troisième méthode.
Il est aussi connu d'employer un procédé de détection de la voix mettant en œuvre la détection d'une fréquence fondamentale, du document « Pitch détection with average magnitude différence function using adaptive threshold algorithm for estimating shimmer and jitter », par Hae Young Kim et al., Engineering In Medicine And Biology Society, 1998, Proceedings of the 20th Annual International Conférence of the IEEE, vol.6, 29 octobre 1998, pages 3162-6164, XP010320717. Dans ce document est décrit un procédé consistant à chercher le minimum d'une fonction d'auto-corrélation, en mettant en œuvre une comparaison avec un seuil adaptatif qui est fonction de valeurs minimales et maximales du signal dans la trame courante. Cette adaptation du seuil est cependant très limitée. En effet, dans une situation d'un signal audio avec différentes valeurs de rapport signal sur bruit mais avec la même amplitude de signal, le seuil serait le même pour toutes les situations sans que celui-ci ne change en fonction du niveau de bruit, pouvant ainsi entraîner des coupures en début de phrase, voire des non détections de la voix, lorsque le signal à détecter est une voix, en particulier dans un contexte ou le bruit est un bruit de spectateurs diffus de telle façon qu'il ne ressemble pas du tout à un signal de parole.
La présente invention a pour but de proposer un procédé de détection de la voix qui offre une détection des signaux de parole contenus dans un signal acoustique bruité, en particulier dans des environnements bruités voire très bruités.
Elle propose plus particulièrement un procédé de détection de la voix qui est très adapté pour la communication (notamment entre arbitres) à l'intérieur d'un stade où le bruit est relativement très fort en niveau et est fortement non stationnaire, avec des étapes de détection qui évitent surtout les mauvaises ou fausses détections (généralement appelées « tonches ») dues aux chants des spectateurs, instruments à vent, tambours, musiques et sifflets.
A cet effet, elle propose un procédé de détection de la voix permettant de détecter la présence de signaux de parole dans un signal acoustique x(t) bruité issu d'un microphone, comportant les étapes successives suivantes :
- une étape préalable d'échantillonnage comprenant un découpage du signal acoustique x(t) en un signal acoustique discret {xj composé d'une suite de vecteurs associés à des trames i temporelles de longueur N, N correspondant au nombre de points d'échantillonnage, où chaque vecteur traduit le contenu acoustique de la trame i associée et est composé des N échantillons X(M )N+I , X(i-i )N+2, XiN-i , XÏN, i entier positif ;
- une étape de calcul d'une fonction de détection FD(x) basée sur le calcul d'une fonction différence D(x) variant en fonction du décalage τ sur une fenêtre d'intégration de longueur W débutant au temps tO, avec :
D(T) - x(n + τ) | où 0 < τ < max (τ) ;
où cette étape de calcul de la fonction de détection FD(x) consiste en un calcul d'une fonction de détection discrète FDi(x) associée aux trames i ;
- une étape d'adaptation du seuil dans ledit intervalle courant, en fonction de valeurs calculées à partir du signal acoustique x(t) établies dans ledit intervalle courant, et notamment des valeurs maximales dudit signal acoustique x(t), où cette étape d'adaptation du seuil consiste à, pour chaque trame i, adapter un seuil Ω, propre à la trame i en fonction de valeurs de référence calculées à partir des valeurs des échantillons du signal acoustique discret {xj dans ladite trame i ;
- une étape de recherche du minimum de la fonction de détection FD(x) et comparaison de ce minimum avec un seuil, pour τ variant dans un intervalle de temps déterminé dit intervalle courant pour détecter la présence ou non d'une fréquence fondamentale F0 caractéristique d'un signal de parole dans ledit intervalle courant ;
où cette étape de recherche du minimum de la fonction de détection FD(x) et la comparaison de ce minimum avec un seuil sont réalisées en recherchant, sur chaque trame i, le minimum rr(i) de la fonction de détection discrète FDi(x) et en comparant ce minium rr(i) avec un seuil Ω, propre à la trame i ;
et dans lequel l'étape d'adaptation des seuils Ω, pour chaque trame i comporte les étapes suivantes :
a) - on subdivise la trame i comprenant N points d'échantillonnage en T sous- trames de longueur L, où N est un multiple de T afin que la longueur L=N/T soit entière, et de sorte que les échantillons du signal acoustique discret {xj dans une sous-trame d'indice j de la trame i comprennent les L échantillons suivants :
X(i-i )N+(j-i )L + 1 , X(i-i )N+(j-i )L+2, X(i-i )N+jL , j entier positif compris entre 1 et T ;
b) - on calcule les valeurs maximales l i du signal acoustique discret {xj dans chaque sous-trame d'indice j de la trame i, avec :
nrii = max {X(Î-I )N+O-I )L + I , X(Î-I )N+O-I )L+2, X(Î-I )N+JL};
c)- on calcule au moins une valeur de référence Ref,j, MRef,j propre à la sous- trame j de la trame i, la ou chaque valeur de référence Ref,j, MRefij par sous- trame j étant calculée à partir de la valeur maximale rriij dans la sous-trame j de la trame i ;
d)- on établit la valeur du seuil Ω, propre à la trame i en fonction de toutes les valeurs de référence Ref,j, MRefij calculées dans les sous-trames j de la trame i. Ainsi, ce procédé est basé sur le principe d'un seuil adaptatif, qui sera relativement bas pendant les périodes de bruit ou de silence et relativement haut pendant les périodes de parole. De ce fait, les fausses détections seront minimisées et la parole sera détectée correctement avec un minimum de coupures en début et fin de mots. Avec le procédé selon l'invention, on considère les valeurs maximales ms j établies dans les sous- trames j pour prendre la décision (voix ou absence de voix) sur la trame i entière.
Selon une première possibilité, la fonction de détection FD(x) correspond à la fonction différence D(x).
Selon une seconde possibilité, la fonction de détection FD(x) correspond à la fonction différence normalisée DN(x) calculée à partir de la fonction différence D(x) comme suit :
DN(T) = 1 si x = 0 ,
DN(T) = Λ Ι Ρ( τ τ) si τ≠ 0 ; où le calcul de la fonction différence normalisée DN(T) consiste en un calcul d'une fonction différence normalisée discrète DN^x) associée aux trames i, où :
DNj(x) = 1 si x = 0 ,
DNj(x) = Λ Ι Di T (T) si τ≠ 0 .
Dans une réalisation particulière, la fonction différence discrète DiC relative à la trame i est calculée comme suit :
on subdivise la trame i en K sous-trames de longueur H, avec par exemple
^ m 3.x ^ I
K = où L J représente l'opérateur d'arrondi en partie entière, de
H
sorte que les échantillons du signal acoustique discret {xj dans une sous-trame d'indice p de la trame i comprennent les H échantillons :
X(i-i )N+(p-i )H + 1 , X(i-i )N+(p-i )H+2, X(i-i )N+PH , P entier positif compris entre 1 et K ; - pour chaque sous-trame d'indice p, on calcule la fonction différence ddp(x) suivante :
_ x Χ].+τ I
| ' - on calcule la fonction différence discrète Di(x) relative à la trame i comme la somme des fonctions différence ddp(Y) des sous-trames d'indice p de la trame i, soit :
Selon une caractéristique, lors de l'étape c), on réalise les sous- étapes suivantes sur chaque trame i :
c1 )-on calcule les enveloppes lissées des maximum dans chaque sous- trame d'indice j de la trame i, avec :
ï jj = A mij_1 + (1 - A)mj j , où λ est un coefficient prédéfini compris entre 0 et 1 ;
c2)-on calcule les signaux de variation dans chaque sous-trame d'indice j de la trame i, avec :
Δ, j = rtij j— ï jj = λ (rtij j— ïïïj j^) ;
et où au moins une valeur de référence dite principale Refij par sous-trame j est calculée à partir du signal de variation dans la sous-trame j de la trame i.
Ainsi, on considère les signaux de variation des enveloppes lissées établies dans les sous-trames j pour prendre la décision (voix ou absence de voix) sur la trame i entière, fiabilisant la détection de la parole (ou voix).
Selon une autre caractéristique, lors de l'étape c) et à la suite de la sous-étape c2), on réalise les sous-étapes suivantes sur chaque trame i :
c3)-on calcule les maximums de variation Sjj dans chaque sous-trame d'indice j de la trame i, où Sjj correspond au maximum du signal de variation calculé sur une fenêtre glissante de longueur Lm antérieure à ladite sous-trame j, ladite longueur Lm étant variable selon que la sous-trame j de la trame i correspond à une période de silence ou de présence de parole ;
c4)-on calcule les écarts de variation δ,,, dans chaque sous-trame d'indice j de la trame i, avec :
¾j = Δυ " si,i ;
et où on calcule, pour chaque sous-trame j de la trame i, deux valeurs de référence principales Refi à partir respectivement du signal de variation et de l'écart de variation 5ij. Ainsi, on considère conjointement les signaux de variation et les écarts de variation 5i établies dans les sous-trames j pour choisir la valeur du seuil Ω, adaptatif et ainsi prendre la décision (voix ou absence de voix) sur la trame i entière, renforçant la détection de la parole. Autrement dit, on étudie le couple (Ai ; δ,,,) pour déterminer la valeur du seuil Ω, adaptatif.
Avantageusement, lors de l'étape c) et à la suite de la sous-étape c4), on réalise une sous-étape c5) de calcul des signaux de variation normalisés A'l i et des écarts de variation normalisés ô'i dans chaque sous- trame d'indice j de la trame i, comme suit : l'J rn.- rn
r _ j_ _ mi,j-™i,j-si,j
J m j m j
et où, pour chaque sous-trame j d'une trame i, le signal de variation normalisé A'i et l'écart de variation normalisé 5'ij constituent chacun une valeur de référence principale Ref,,, de sorte que, lors de l'étape d), on établit la valeur du seuil Ω, propre à la trame i en fonction du couple (Δ',,,, δ',,,) des signaux de variation normalisés A'l i et des écarts de variation normalisés 5'ij dans les sous-trames j de la trame i.
De cette façon, on peut traiter la variation du seuil Ω, indépendamment des niveaux des signaux et 5i en les normalisant avec le calcul des signaux normalisés A'l i et 5'ij. Ainsi, les seuils Ω, choisis à partir de ces signaux normalisés A'l i et 5'ij seront indépendants du niveau du signal acoustique discret {xj. Autrement dit, on étudie le couple (Δ',,, ; ô'i ) pour déterminer la valeur du seuil Ω, adaptatif.
De manière avantageuse, lors de l'étape d), la valeur du seuil Ω, propre à la trame i est établie en partitionnant l'espace défini par la valeur du couple (A'i , ô'i ), et en examinant la valeur du couple (Α'^, δ',,,) sur une ou plusieurs (par exemple entre une et trois) sous-trames successives selon la zone de valeur du couple (Α'^, ô'i ).
Ainsi, la procédure de calcul du seuil Ω, se base sur une partition expérimentale de l'espace défini par la valeur du couple (Α'^, δ',,,). A cela s'adjoint un mécanisme de décision qui scrute la valeur du couple (Α'^, ô'i ) sur une, deux ou plus sous-trames successives selon la zone de valeur du couple. Les conditions de tests de positionnement de la valeur du couple (Α'^, ô'i ) dépendent surtout de la détection de parole lors de la trame précédente et le mécanisme de scrutation sur les une, deux ou plus sous-trames successives utilise aussi un partitionnement expérimental .
Selon une caractéristique, lors de la sous-étape c3), la longueur Lm de la fenêtre glissante répond aux équations suivantes :
- Lm = LO si la sous-trame j de la trame i correspond à une période de silence ;
- Lm = L1 si la sous-trame j de la trame i correspond à une période de présence de parole ;
avec L1 < L0, et notamment avec L1 =k1 .L et L0=k0.L, L étant la longueur des sous-trame d'indice j et kO, k1 étant des entiers positifs.
Selon une autre caractéristique, lors de la sous-étape c3), pour chaque calcul du maximum de variation Sjj dans la sous-trame j de la trame i, la fenêtre glissante de longueur Lm est en retard de Mm trames de longueur N vis-à-vis de ladite sous-trame j.
Selon une autre caractéristique, on réalise les perfectionnements suivants :
- lors de la sous-étape c3), on calcule également les maximums de variation normalisés s',,, dans chaque sous-trame d'indice j de la trame i, où s',,, correspond au maximum du signal de variation normalisé A'l i calculé sur une fenêtre glissante de longueur Lm antérieure à ladite sous-trame j, où :
et où chaque maximum de variation normalisé s'i est calculée selon une méthode de minimisation comprenant les étapes itératives suivantes :
- calcul de s'i(j = max {s'^ ; A, i_Mmj } et s'i(j = max {s'^ ; A, i_Mmj }
- si rem(i, Lm) = 0, où rem est l'opérateur reste de la division entière de deux entiers, alors :
s'ij = max {s'y.! ; A'j_MmJ },
¾ = A'i_MmJ
avec s'0 1 = 0 et s'0 1 = 0 ; et - lors de l'étape c4), on calcule les écarts de variation normalisés 5',j dans chaque sous-trame d'indice j de la trame i, comme suit :
De manière avantageuse, lors de l'étape c), on réalise une sous- étape c6) dans laquelle on calcule les maximums de maximale q,j dans chaque sous-trame d'indice j de la trame i, où q,j correspond au maximum de la valeur maximale η¾ calculée sur une fenêtre glissante de longueur fixe Lq antérieure à ladite sous-trame j, où la fenêtre glissante de longueur Lq est en retard de Mq trames de longueur N vis-à-vis de ladite sous-trame j, et où une autre valeur de référence dite secondaire MRefij par sous-trame j correspond audit maximum de maximale q,j dans la sous-trame j de la trame i.
Ainsi, pour éviter d'avantage les fausses détections, il est avantageux de prendre en compte également ce signal q,j (valeur de référence secondaire MRefij = qij) qui est calculé d'une façon similaire au calcul du signal Sij précité, mais qui opère sur les valeurs maximales m,,, au lieu d'opérer sur les signaux de variation A,j ou sur les signaux de variation normalisés A'ij.
Dans un mode de réalisation particulier, lors de l'étape d), le seuil Ω, propre à la trame i est découpé en plusieurs sous-seuils Ω,,, propres à chaque sous-trame j de la trame i, et la valeur de chaque sous-seuil Ω,,, est au moins établie en fonction de la ou des valeurs de référence Refij, MRefij calculées dans la sous-trame j de la trame i correspondante.
Ainsi, on a Ω, = {Ω,,ι ; Ω,,2 ; ... ; Ω,,τ} , traduisant le découpage du seuil Ω, en plusieurs sous-seuils Ω^ propres aux sous-trames j, apportant une finesse supplémentaire dans l'établissement du seuil Ω, adaptatif.
De manière avantageuse, lors de l'étape d), on établit la valeur de chaque seuil Ω^ propre à la sous-trame j de la trame i en comparant les valeurs du couple (A'ij, 5',j) avec plusieurs couples de seuils fixes, la valeur de chaque seuil Q\j étant sélectionnée parmi plusieurs valeurs fixes en fonction des comparaisons du couple (A'.j, 5',j) avec lesdits couples de seuils fixes.
Ces couples de seuils fixes sont par exemple déterminés expérimentalement par une répartition de l'espace des valeurs (A'.j, 5',j) en zones de décisions. De manière complémentaire, on établit la valeur de chaque seuil Qij propre à la sous-trame j de trame i également en réalisant une comparaison du couple (A'i , δ',,,) sur une ou plusieurs sous-trames successives selon la zone initiale du couple (Δ',,,, δ',,,).
Les conditions de tests de positionnement de la valeur du couple
(A'i , ô'i ) dépendent de la détection de parole lors de la trame précédente et le mécanisme de comparaison sur la ou les sous-trames successives utilise aussi un partitionnement expérimental.
Bien entendu, il est également envisageable que l'on établisse la valeur de chaque seuil Ω,,, propre à la sous-trame j de trame i en comparant :
- les valeurs du couple (Δ',,,, δ',,,) (les valeurs de référence principales Ref,,,) avec plusieurs couples de seuils fixes ;
- les valeurs de q,,, (la valeur de référence secondaire MRefi ) avec plusieurs autres seuils fixes.
Ainsi, le mécanisme de décision basé sur la comparaison du couple (A'i , ô'i ) avec des couples de seuils fixes, est complété par une autre mécanisme de décision basée sur la comparaison de q,,, avec des autres seuils fixes.
Avantageusement, lors de l'étape d), on réalise une procédure dite de décision comprenant les sous-étapes suivantes, pour chaque trame i :
- pour chaque sous-trame j de la trame i, on établit un indice de décision DECi(j) qui occupe soit un état « 1 » de détection d'un signal de parole soit un état « 0 » de non détection d'un signal de parole ;
- on établit une décision temporaire VAD(i) basée sur la comparaison des indices de décision DEC,(j) avec des opérateurs « OU » logiques, de sorte que la décision temporaire VAD(i) occupe un état « 1 » de détection d'un signal de parole si au moins l'un desdits indices de décision DEC,(j) occupe cet état « 1 » de détection d'un signal de parole.
Ainsi, pour éviter les détections tardives (coupures de mots en début de détection), la décision finale (voix ou absence de voix) est prise à la suite de cette procédure de décision en s'appuyant sur la décision temporaire VAD(i) qui est elle-même prise sur la trame i entière, en mettant en œuvre un opérateur « OU » logique sur les décisions prises dans les sous-trames j, et de préférence dans des sous-trames j successives sur un horizon court et fini à partir du début de la trame i. Lors de cette procédure de décision, on peut réaliser les sous- étapes suivantes, pour chaque trame i :
- on mémorise une valeur maximale de seuil Lastmax qui correspond à la valeur variable d'un seuil de comparaison pour l'amplitude du signal acoustique discret {xj en-dessous duquel on considère que le signal acoustique ne comprend pas de signal de parole, cette valeur variable étant déterminé durant la dernière trame d'indice k qui précède ladite trame i et dans laquelle la décision temporaire VAD(k) occupait un état « 1 » de détection d'un signal de parole ;
- on mémorise une valeur maximale moyenne qui correspond à la valeur maximale moyenne du signal acoustique discret {xj dans la sous-trame j de la trame i calculée comme suit :
où ay correspond au maximum du signal acoustique discret {xj contenu dans une trame k formée par la sous-trame j de la trame i et par au moins une ou plusieurs sous-trames successives qui précèdent ladite sous-trame j ; et
Θ est un coefficient prédéfini compris entre 0 et 1 avec θ < λ
- on établit la valeur de chaque sous-seuil Ql i en fonction de la comparaison entre ladite valeur maximale de seuil Lastmax et des valeurs maximales moyennes A,, et A .i considérées sur deux sous-trames j et j-1 successives.
Dans beaucoup de cas, les fausses détections arrivent avec une amplitude inférieure à celle du signal de parole (le microphone étant situé à côté de la bouche de la personne qui communique). Ainsi, cette procédure de décision vise à éliminer encore plus les mauvaises détections en mémorisant la valeur maximale de seuil Lastmax du signal de parole réactualisé dans la dernière période d'activation et les valeurs maximales moyennes Ajj et Α,,.ι qui correspondent à la valeur maximale moyenne du signal acoustique discret {xj dans les sous-trames j et j-1 de la trame i. En prenant en compte ces valeurs (Lastmax, A et A .-i), on rajoute une condition au niveau de l'établissement du seuil Ω, adaptatif.
II est important que la valeur de Θ soit choisie comme étant inférieure au coefficient λ pour ralentir les fluctuations de Ay . Lors de la procédure de décision mentionnée ci-dessus, on réactualise la valeur maximale de seuil Lastmax à chaque fois que le procédé a considéré qu'une sous-trame p d'une trame k contient un signal de parole, en mettant en œuvre la procédure suivante :
- la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période d'absence de parole, et dans ce cas Lastmax prend la valeur actualisée [a (Ak,p + LastMax)], où a est un coefficient prédéfini compris entre 0 et 1 , et par exemple compris entre 0,2 et 0,7 ;
- la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période de présence de parole, et dans ce cas Lastmax prend la valeur actualisée Ak,p si Ak,p > Lastmax.
La mise à jour de la valeur Lastmax se fait ainsi uniquement durant les périodes d'activation du procédé (autrement dit les périodes de détection de la voix). Dans une situation de détection de parole, la valeur Lastmax vaudra Ak,p lorsqu'on aura Ak,p > LastMax. Cependant, il est important que cette mise à jour soit faite comme suit lors de l'activation de la première sous-trame p qui suit une zone de silence : la valeur Lastmax vaudra [a (Ak,p + LastMax)].
Ce mécanisme d'actualisation de la valeur maximale de seuil Lastmax permet au procédé de détecter la voix de l'utilisateur même si celui-ci a réduit l'intensité de sa voix (autrement dit parle moins fort) par rapport à la dernière fois où le procédé a détecté qu'il avait parlé.
Autrement dit, pour améliorer encore plus l'élimination des fausses détections, on réalise un traitement fin dans lequel la valeur maximale de seuil Lastmax est variable et est comparée aux valeurs maximales moyennes et .1 du signal acoustique discret.
En effet, des voix lointaines pourraient être captées avec le procédé, car de telles voix présentent des fréquences fondamentales susceptibles d'être détectées, tout comme la voix de l'utilisateur. Pour faire en sorte que les voix lointaines, qui peuvent être gênantes dans plusieurs cas d'utilisation, ne soient pas prises en compte par le procédé, on considère un traitement au cours duquel on compare la valeur maximale moyenne du signal (sur deux trames successives), en l'occurrence et Α,,.-ι , avec Lastmax qui constitue un seuil variable selon l'amplitude de la voix de l'utilisateur mesurée à la dernière activation. Ainsi, on fixe la valeur du seuil Ω, à une valeur minimale très basse, lorsque le signal sera en dessous du seuil. Cette condition pour établir la valeur du seuil Ω, en fonction de la valeur maximale de seuil Lastmax est avantageusement basée sur la comparaison entre :
- la valeur maximale de seuil Lastmax ; et
- les valeurs [KpAj] et [Kp. Α,,,.ι], où Kp est un coefficient fixe de pondération compris entre 1 et 2.
De cette manière, on compare la valeur maximale de seuil Lastmax avec les valeurs maximales moyennes du signal acoustique discret {xj dans les sous-trame j et j-1 (A,,, et Α,,,.ι) pondérés d'un coefficient de pondération Kp compris entre 1 et 2, pour renforcer la détection. Cette comparaison se fait uniquement quand la trame précédente n'a pas donné lieu à une détection de voix.
De manière avantageuse, le procédé comporte en outre une phase dite de blocage comprenant une étape de basculement d'un état de non détection d'un signal de parole à un état de détection d'un signal de parole après avoir détecté la présence d'un signal de parole sur NP trames i temporelles successives.
Ainsi, le procédé met en œuvre une étape du type hangover configurée de telle façon que la transition d'une situation sans voix à une situation avec présence de voix ne se fait qu'au bout de NP trames successives avec présence de voix.
De même, le procédé comporte en outre une phase dite de blocage comprenant une étape de basculement d'un état de détection d'un signal de parole à un état de non détection d'un signal de parole après avoir détecté aucune présence d'un signal voisé sur NA trames i temporelles successives.
Ainsi, le procédé met en œuvre une étape du type hangover configurée de telle façon que la transition d'une situation avec présence de voix à une situation sans voix ne se fait qu'au bout de NA trames successives sans voix.
Sans ces étapes de basculement, le procédé risque de couper ponctuellement le signal acoustique pendant les phrases ou même au milieu des mots prononcés. Pour remédier à cela, ces étapes de basculement mettent en œuvre une étape de blocage ou de hangover sur une série donnée de trames. Selon une possibilité de l'invention, le procédé comprend une étape d'interruption de la phase de blocage dans des zones de décision intervenant en fin de mots et dans une situation non-bruitée, lesdites zones de décision étant détectées en analysant le minimum rr(i) de la fonction de détection discrète FDÎ(T) .
Ainsi, la phase de blocage est interrompue à la fin d'une phrase ou mot lors d'une détection particulière dans l'espace de décision. Cette interruption ne survient que dans une situation non ou peu bruitée. A ce titre, le procédé prévoit d'isoler une zone de décision particulière qui ne survient qu'en fin de mots et dans une situation non-bruitée. Pour renforcer la décision de détection de cette zone, le procédé utilise aussi le minimum rr(i) de la fonction de détection discrète FDi(x), où la fonction de détection discrète FDi(x) correspond soit à la fonction différence discrète Di(x) soit à la fonction différence normalisée discrète DNÎ (T) . De ce fait, la voix sera coupée plus rapidement en fin de parole, conférant ainsi au système une meilleure qualité audio.
L'invention a également pour objet un programme d'ordinateur comprenant des instructions de code aptes à commander l'exécution des étapes du procédé de détection de la voix tel que défini ci-dessus lorsqu'il est exécuté par un processeur.
L'invention a en outre pour objet un support d'enregistrement de données d'enregistrement sur lequel est stocké un programme d'ordinateur tel que défini ci-dessus.
L'invention a pour autre objet une mise à disposition d'un programme d'ordinateur tel que défini ci-dessus sur un réseau de télécommunication en vue de son téléchargement.
D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description détaillée ci-après, d'un exemple de mise en œuvre non limitatif, faite en référence aux figures annexées dans lesquelles :
- la figure 1 est un schéma synoptique du procédé conforme à l'invention ;
- la figure 2 est une vue schématique d'une boucle de limitation mis en œuvre par une étape de blocage de décision dite étape du type hangover ; - la figure 3 illustre le résultat d'un procédé de détection de la voix utilisant un seuil fixe avec, en haut, une représentation de la courbe du minimum rr(i) de la fonction de détection et de la ligne de seuil fixe Qfix et, en bas, une représentation du signal acoustique discret {xj et du signal de sortie DF, ;
- la figure 4 illustre le résultat d'un procédé de détection de la voix conforme à l'invention en utilisant un seuil adaptatif avec, en haut, une représentation de la courbe du minimum rr(i) de la fonction de détection et de la ligne de seuil adaptatif Qi et, en bas, une représentation du signal acoustique discret {xj et du signal de sortie DF,.
La description du procédé de détection de la voix est faite en référence à la figure 1 qui illustre schématiquement la succession des différentes étapes nécessaires à la détection de la présence de signaux de parole (ou voix) dans un signal acoustique bruité x(t) issu d'un microphone unique opérant dans un milieu bruité.
Le procédé commence par une étape 101 préalable d'échantillonnage comprenant un découpage du signal acoustique x(t) en un signal acoustique discret {xj composé d'une suite de vecteurs associés à des trames i temporelles de longueur N, N correspondant au nombre de points d'échantillonnage, où chaque vecteur traduit le contenu acoustique de la trame i associée et est composé des N échantillons X(M )N+I , X(M )N+2, XÏN-I , ÎN, i entier positif:
A titre d'exemple, le signal acoustique bruité x(t) est découpé en trames de 240 ou 256 échantillons, ce qui à une fréquence d'échantillonnage Fe de 8 kHz correspond à des trames temporelles de 30 ou 32 millisecondes.
Le procédé se poursuit avec une étape 102 de calcul d'une fonction différence discrète Di (x) relative à la trame i est calculée comme suit :
- on subdivise chaque trame i en K sous-trames de longueur H, avec la relation suivante :
N-max (τ) I
K = J représente l'opérateur d'arrondi en partie entière,
H
de sorte que les échantillons du signal acoustique discret {xj dans une sous- trame d'indice p de la trame i comprennent les H échantillons suivants :
X(i-i )N+(P-i )H + 1 , X(i-i )N+(p-i )H+2, X(i-i )N+PH , P entier positif compris entre 1 et K ; puis - pour chaque sous-trame d'indice p, on calcule la fonction différence ddp(x) suivante :
- on calcule la fonction différence discrète Di(x) relative à la trame i comme la somme des fonctions différence ddp(Y) des sous-trames d'indice p de la trame i, soit :
Il est également possible que l'étape 102 comprennent également le calcul d'une fonction différence normalisée discrète DN^x) à partir de la fonction différence discrète Di(x) , comme suit :
DNj(x) = 1 si x = 0 ,
DNj(x) = 1 7 Di T (T) si τ≠ 0 .
Le procédé se poursuit avec une étape 103 dans laquelle, pour chaque trame i :
- on subdivise la trame i comprenant N points d'échantillonnage en T sous- trames de longueur L, où N est un multiple de T afin que la longueur L=N/T soit entière, et de sorte que les échantillons du signal acoustique discret {xj dans une sous-trame d'indice j de la trame i comprennent les L échantillons suivants :
X(i-i )N+(j-i )L + i , X(i-i )N+(j-i )L+2, X(i-i )N+jL , j entier positif compris entre 1 et T ;
b)- on calcule les valeurs maximales η¾ du signal acoustique discret {xj dans chaque sous-trame d'indice j de la trame i, avec :
nrii = max {X(Î-I )N+O-I )L + I , X(Î-I )N+O-I )L+2, X(Î-I )N+JL};
A titre d'exemple, on subdivise chaque trame i de longueur 240 (soit N=240) en quatre sous-trame j de longueurs 60 (soit T=4, et L=60).
Ensuite, dans une étape 104, on calcule les enveloppes lissées des maximum dans chaque sous-trame d'indice j de la trame i, définis pas : ï jj = A mij_1 + (1 - A)mj j , où λ est un coefficient prédéfini compris entre 0 et 1 .
Puis, dans une étape 105, on calcule les signaux de variation Δ,,, dans chaque sous-trame d'indice j de la trame i, définis par :
Ajj = rtij j— ï jj = λ (m — ïïïi j_1). Ensuite, dans une étape 106, on calcule les signaux de variation normalisés A'l i définis par : l'j mtj mtj
Ensuite, dans une étape 107, on calcule les maximums de variation Sij dans chaque sous-trame d'indice j de la trame i, où s,,, correspond au maximum du signal de variation calculé sur une fenêtre glissante de longueur Lm antérieure à ladite sous-trame j. Lors de cette étape 106, la longueur Lm est variable selon que la sous-trame j de la trame i correspond à une période de silence ou de présence de parole, avec :
- Lm = L0 si la sous-trame j de la trame i correspond à une période de silence ;
- Lm = L1 si la sous-trame j de la trame i correspond à une période de présence de parole ;
avec L1 < L0. A titre d'exemple, L1 =k1 .L et L0=k0.L, L étant pour rappel la longueur des sous-trame d'indice j et kO, k1 étant des entiers positifs avec k1 <k0. En outre, la fenêtre glissante de longueur Lm est en retard de Mm trames de longueur N vis-à-vis de ladite sous-trame j.
Durant cette étape 106, on calcule également les maximums de variation normalisés s'ij dans chaque sous-trame d'indice j de la trame i, où :
Il est envisageable de calculer les maximums de variation normalisés s'ij selon une méthode de minimisation comprenant les étapes itératives suivantes :
- calcul de s'y = max {s'y_! ; A'j_Mmj } et s'y = max {s'y_! ; A'j_Mmj } - si rem(i, Lm) = 0, où rem est l'opérateur reste de la division entière de deux entiers, alors :
s'y = max {s'y.! ; A'j_MmJ }, s'ij = A'i_Mm,j
- fmsi
avec s'0 1 = 0 et s'0 1 = 0. Ensuite, dans une étape 108, on calcule les écarts de variation δ,,, dans chaque sous-trame d'indice j de la trame i, définis par :
δΜ = Δυ " si,i-
Dans cette même étape 108, on calcule les écarts de variation normalisés ô'i dans chaque sous-trame d'indice j de la trame i, définis par :
Ensuite, dans une étape 109, on calcule les maximums de maximale q,j dans chaque sous-trame d'indice j de la trame i, où q,,, correspond au maximum de la valeur maximale ms j calculée sur une fenêtre glissante de longueur fixe Lq antérieure à ladite sous-trame j, où la fenêtre glissante de longueur Lq est en retard de Mq trames de longueur N vis-à-vis de ladite sous- trame j. Avantageusement, Lq > L0, et notamment Lq=kq.L avec kq un entier positif et kq > kO. De plus, on a Mq > Mm.
Durant cette étape 109, il est envisageable de calculer les maximums de maximale q,j selon une méthode de minimisation comprenant les étapes itératives suivantes :
- calcul de qi(j = max {q^ ; mj_MqJ } et qu = max {q^ ; mj_MqJ }
- si rem(i, Lq) = 0, où rem est l'opérateur reste de la division entière de deux entiers, alors :
qi(j = max ; mj_MqJ }, qi(j = mi-Mm,j
- fmsi
avec q0 1 = 0 et q0 1 = 0.
Ensuite, dans une étape 1 10, on établit les valeurs de seuils Ω, propres à chaque trame i, parmi plusieurs valeurs fixes Qa, Qb, Qc, etc. De manière plus fine, on établit les valeurs des sous-seuils Ω,,, propres à chaque sous-trame j de la trame i, le seuil Q, étant découpée en plusieurs sous-seuils Qi . A titre d'exemple, chaque seuil Q, ou sous-seuil Qij prend une valeur fixe choisie parmi six valeurs fixes Qa, Qb, Qc, Qd, Qe, Qf, ces valeurs fixes étant par exemple comprises entre 0,05 et 1 , et notamment entre 0,1 et 0,7.
Chaque seuil Q, ou sous-seuil Qi est fixé à une valeur fixe Qa, Qb, Qc, Qd, Qe, Qf par la mise en œuvre de deux analyses : - première analyse : la comparaison des valeurs du couple (Δ',,,, δ',,,) dans la sous-trame d'indice j de la trame i avec plusieurs couples de seuils fixes ;
- deuxième analyse : la comparaison des maximums de maximale q,j dans la sous-trame d'indice j de la trame i avec des seuils fixes.
A la suite de ces deux analyses, une procédure dite de décision donnera la décision finale sur la présence de la voix dans la trame i. Cette procédure de décision comprend les sous-étapes suivantes, pour chaque trame i :
- pour chaque sous-trame j de la trame i, on établit un indice de décision DECi(j) qui occupe soit un état « 1 » de détection d'un signal de parole soit un état « 0 » de non détection d'un signal de parole ;
- on établit une décision temporaire VAD(i) basée sur la comparaison des indices de décision DEC,(j) avec des opérateurs « OU » logiques, de sorte que la décision temporaire VAD(i) occupe un état « 1 » de détection d'un signal de parole si au moins l'un desdits indices de décision DEC,(j) occupe cet état « 1 » de détection d'un signal de parole, autrement dit on a la relation suivante :
VAD(i) = DECi(1 ) + DECi(2) + ... + DECi(T), où "+" est l'opérateur « OU ».
Ainsi, en fonction des comparaisons faites lors des première et deuxième analyses, et en fonction de l'état de la décision temporaire VAD(i), on fixe le seuil Ω, à l'une des valeurs fixes Qa, Qb, Qc, Qd, Qe, Qf et on en déduit la décision finale en comparant le minimum rr(i) avec le seuil Ω, fixé à l'une des ses valeurs fixes (voir description ci-après).
Dans beaucoup de cas, les fausses détections (ou tonches) arrivent avec une amplitude inférieure à celle du signal de parole, le microphone étant situé à côté de la bouche de l'utilisateur. En tenant compte de ce fait, il est envisageable d'éliminer encore plus les fausses détections en mémorisant la valeur maximale de seuil Lastmax déduit du signal de parole dans la dernière période d'activation du « VAD » et en ajoutant une condition dans le procédé basée sur cette valeur maximale de seuil Lastmax.
Ainsi, dans l'étape 109 décrite précédemment, on rajoute la mémorisation de la valeur maximale de seuil Lastmax qui correspond à la valeur variable (ou actualisé) d'un seuil de comparaison pour l'amplitude du signal acoustique discret {xj en-dessous duquel on considère que le signal acoustique ne comprend pas de signal de parole, cette valeur variable étant déterminé durant la dernière trame d'indice k qui précède ladite trame i et dans laquelle la décision temporaire VAD(k) occupait un état « 1 » de détection d'un signal de parole.
Dans cette étape 109, on mémorise également une valeur maximale moyenne qui correspond à la valeur maximale moyenne du signal acoustique discret {xj dans la sous-trame j de la trame i calculée comme suit :
où ay correspond au maximum du signal acoustique discret {xj contenu dans la trame théorique k formée par la sous-trame j de la trame i et par au moins une ou plus sous-trames successives qui précèdent ladite sous-trame j ; et Θ est un coefficient prédéfini compris entre 0 et 1 avec θ < λ
Dans cette étape 109, on réactualise la valeur maximale de seuil
Lastmax à chaque fois que le procédé a considéré qu'une sous-trame p d'une trame k contient un signal de parole, en mettant en œuvre la procédure suivante :
- la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période d'absence de parole, et dans ce cas Lastmax prend la valeur actualisée [a (Ak,p + LastMax)], où a est un coefficient prédéfini compris entre 0 et 1 , et par exemple compris entre 0,2 et 0,7 ;
- la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période de présence de parole, et dans ce cas Lastmax prend la valeur actualisée Ak,p si Ak,p > Lastmax.
Puis, dans l'étape 1 10 décrite précédemment, on rajoute une condition basée sur la valeur maximale de seuil Lastmax pour fixer le seuil Ω,.
Pour chaque trame i, cette condition est basée sur la comparaison entre :
- la valeur maximale de seuil Lastmax, et
- les valeurs [Kp.A ] et [Kp. Α,,.-ι], où Kp est un coefficient fixe de pondération compris entre 1 et 2.
Il est également envisageable d'abaisser la valeur maximale de seuil Lastmax après une période de temporisation donnée (par exemple fixée entre quelques secondes et quelques dizaines de secondes) entre la trame i et la dernière trame d'indice k précitée, afin d'éviter la non détection de la parole si l'utilisateur/locuteur abaisse l'amplitude de sa voix de manière significative. Ensuite, dans une étape 1 1 1 , on calcule, pour chaque trame courante i, le minimum rr(i) d'une fonction de détection discrète FDi(x), où la fonction de détection discrète FDi(x) correspond soit à la fonction différence discrète Di(x) soit à la fonction différence normalisée discrète DNÎ(T) .
Enfin, dans une dernière étape 1 12, on compare, pour chaque trame courante i, ce minimum rr(i) avec le seuil Ω, propre à la trame i, pour détecter la présence ou non d'un signal de parole (oui signal voisé), avec :
- si rr(i) < Ω,, alors la trame i est considérée comme présentant un signal de parole et le procédé délivre un signal de sortie DF, prenant la valeur « 1 » (autrement dit, la décision finale pour la trame i est « présence de voix dans la trame i ») ;
- si rr(i) > Ω,, alors la trame i est considérée comme ne présentant pas de signal de parole et le procédé délivre un signal de sortie DF, prenant la valeur « 0 » (autrement dit, la décision finale pour la trame i est « absence de voix dans la trame i »).
En référence aux figures 1 et 2, il est envisageable d'apporter un perfectionnement au procédé, en introduisant une étape supplémentaire 1 13 de blocage de décision (ou étape de hangover), pour éviter les coupures de son dans une phrase et pendant la prononciation des mots, cette étape 1 13 de blocage de décision visant à renforcer la décision de présence/absence de voix par la mise en œuvre des deux étapes suivantes :
- basculement d'un état de non détection d'un signal de parole à un état de détection d'un signal de parole après avoir détecté la présence d'un signal de parole sur NP trames i temporelles successives ;
- basculement d'un état de détection d'un signal de parole à un état de non détection d'un signal de parole après avoir détecté aucune présence d'un signal voisé sur NA trames i temporelles successives.
Ainsi, cette étape 1 13 de blocage permet de délivrer en sortie un signal de décison de la détection de la voix Dv qui prend la valeur « 1 » correspondant à une décision de la détection de la voix et la valeur « 0 » correspondant à une décison de la non détection de la voix, où :
- le signal de décison de la détection de la voix Dv bascule d'un état « 1 » à un état « 0 » si et seulement si le signal de sortie DF, prend la valeur « 0 » sur NA trames i temporelles successives ; et - le signal de décison de la détection de la voix Dv bascule d'un état « 0 » à un état « 1 » si et seulement si le signal de sortie DF, prend la valeur « 1 » sur NP trames i temporelles successives.
En référence à la figure 2, si on suppose que l'on parte d'un état « Dv=1 », on bascule vers un état « Dv=0 » si le signal de sortie DF, prend la valeur « 0 » sur NA trames successives, sinon l'état reste à « Dv=1 » (Ni représentant le numéro de la trame au début de la série). De même, si on suppose que l'on parte d'un état « Dv=0 », on bascule vers un état « Dv=1 » si le signal de sortie DF, prend la valeur « 1 » sur NP trames successives, sinon l'état reste à « Dv=0 ».
La décision finale s'applique aux premiers H échantillons de la trame traitée. De préférence NA est supérieur à NP, avec par exemple NA=100 et NP=3, car il vaut mieux risquer de détecter du silence plutôt que de couper une conversation.
La suite de la description porte sur deux résultats de détection de voix obtenus avec un procédé classique utilisant un seuil fixe (Figure 3) et avec le procédé conforme à l'invention utilisant un seuil adaptatif (Figure 4).
Sur les figures 3 et 4 (en bas), on note que les deux procédés travaillent sur le même signal acoustique discret {xj, avec en ordonnées l'amplitude et en abscisse les échantillons. Ce signal acoustique discret {xj présente une seule zone de présence de parole « PAR », et de nombreuses zones de présence de bruits parasites tels que musique, tambours, cris de foule et sifflets. Ce signal acoustique discret {xj traduit un environnement représentatif d'une communication entre personnes (comme des arbitres) à l'intérieur d'un stade ou d'un gymnase où le bruit est relativement très fort en niveau et est fortement non stationnaire.
Sur les figures 3 et 4 (en haut), on note que les deux procédés exploitent la même fonction rr(i) correspondant pour rappel au minimum de la fonction de détection discrète FDi(x) sélectionnée.
Sur la figure 3 (en haut), la fonction minimum rr(i) est comparée à un seuil fixe Qfix sélectionné de manière optimale pour assurer la détection de la voix. Sur la figure 3 (en bas), on note la forme du signal de sortie DF, qui occupe un état « 1 » si rr(i) < Qfix et un état « 0 » si rr(i) > Qfix.
Sur la figure 4 (en haut), la fonction minimum rr(i) est comparée à un seuil adaptatif Q, calculé selon les étapes décrites précédemment en référence à la figure 1 . Sur la figure 4 (en bas), on note la forme du signal de sortie DF, qui occupe un état « 1 » si rr(i) < Ω, et un état « 0 » si rr(i) > Ω,.
On note sur la figure 3 que le procédé conforme à l'invention permet une détection de la voix dans la zone de présence de parole « PAR » avec le signal de sortie DF, qui occupe un état « 1 », et que ce même signal de sortie DF, occupe plusieurs fois un état « 1 » dans les autres zones où la parole est pourtant absente, ce qui correspond par des fausses détections non désirées avec le procédé classique.
Par contre, on note sur la figure 4 que le procédé conforme à l'invention permet une détection optimale de la voix dans la zone de présence de parole « PAR » avec le signal de sortie DF, qui occupe un état « 1 », et que ce même signal de sortie DF, occupe un état « 0 » dans les autres zones où la parole est absente. Ainsi, le procédé conforme à l'invention assure une détection de la voix avec une forte réduction du nombre de fausses détections.
Bien entendu l'exemple de mise en œuvre évoqué ci-dessus ne présente aucun caractère limitatif et d'autres améliorations et détails peuvent être apportés au procédé selon l'invention, sans pour autant sortir du cadre de l'invention où d'autres algorithmes de calcul de la fonction de détection FD(x) peuvent par exemple être utilisés.

Claims

REVENDICATIONS
1 . Procédé de détection de la voix permettant de détecter la présence de signaux de parole dans un signal acoustique x(t) bruité issu d'un microphone, comportant les étapes successives suivantes :
- une étape préalable d'échantillonnage comprenant un découpage du signal acoustique x(t) en un signal acoustique discret {xj composé d'une suite de vecteurs associés à des trames i temporelles de longueur N, N correspondant au nombre de points d'échantillonnage, où chaque vecteur traduit le contenu acoustique de la trame i associée et est composé des N échantillons X(M)N+I , x(i-i )N+2, XiN-i , XiN, i entier positif ;
- une étape de calcul d'une fonction de détection FD(x) basée sur le calcul d'une fonction différence D(x) variant en fonction du décalage τ sur une fenêtre d'intégration de longueur W débutant au temps tO, avec :
D(T) - x(n + τ) | où 0 < τ < max (τ) ;
où cette étape de calcul de la fonction de détection FD(x) consiste en un calcul d'une fonction de détection discrète FDi(x) associée aux trames i ;
- une étape d'adaptation du seuil dans ledit intervalle courant, en fonction de valeurs calculées à partir du signal acoustique x(t) établies dans ledit intervalle courant,
où cette étape d'adaptation du seuil consiste à, pour chaque trame i, adapter un seuil Ω, propre à la trame i en fonction de valeurs de référence calculées à partir des valeurs des échantillons du signal acoustique discret {xj dans ladite trame i ;
- une étape de recherche du minimum de la fonction de détection FD(x) et comparaison de ce minimum avec un seuil, pour x variant dans un intervalle de temps déterminé dit intervalle courant pour détecter la présence ou non d'une fréquence fondamentale F0 caractéristique d'un signal de parole dans ledit intervalle courant,
où cette étape de recherche du minimum de la fonction de détection FD(x) et la comparaison de ce minimum avec un seuil sont réalisées en recherchant, sur chaque trame i, le minimum rr(i) de la fonction de détection discrète FDi(x) et en comparant ce minium rr(i) avec un seuil Ω, propre à la trame i ; et dans lequel l'étape d'adaptation des seuils Ω, pour chaque trame i comporte les étapes suivantes :
a) - on subdivise la trame i comprenant N points d'échantillonnage en T sous- trames de longueur L, où N est un multiple de T afin que la longueur L=N/T soit entière, et de sorte que les échantillons du signal acoustique discret {xj dans une sous-trame d'indice j de la trame i comprennent les L échantillons suivants :
X(i-i )N+(j-i )L + 1 , X(i-i )N+(j-i )L+2, X(i-i)N+jL , j entier positif compris entre 1 et T ;
b) - on calcule les valeurs maximales l i du signal acoustique discret {xj dans chaque sous-trame d'indice j de la trame i, avec :
nrii = max {X(Î-I )N+O-I )L + I , X(Î-I )N+O-I )L+2, X(Î-I )N+JL};
c) - on calcule au moins une valeur de référence Ref,j, MRef,j propre à la sous- trame j de la trame i, la ou chaque valeur de référence Ref,j, MRefij par sous- trame j étant calculée à partir de la valeur maximale nriij dans la sous-trame j de la trame i ;
d) - on établit la valeur du seuil Ω, propre à la trame i en fonction de toutes les valeurs de référence Refij, MRefij calculées dans les sous-trames j de la trame i.
2. Procédé de détection selon la revendication 1 , dans lequel la fonction de détection FD(x) correspond à la fonction différence ϋ(τ) .
3. Procédé de détection selon la revendication 1 , dans lequel la fonction de détection FD(x) correspond à la fonction différence normalisée DN(x) calculée à partir de la fonction différence D(x) comme suit :
DN (T) = 1 si x = 0 ,
DN (T) = Λ Ι Ρ( Τ τ) si τ≠ 0 ; où le calcul de la fonction différence normalisée DN(x) consiste en un calcul d'une fonction différence normalisée discrète DNi(x) associée aux trames i, où :
DNj(x) = 1 si x = 0 , DNj(x) = 1 7 Ρ'(τ) si τ≠ 0 .
4. Procédé selon l'une quelconque des revendications 1 à 3, dans lequel la fonction différence discrète Di(x) relative à la trame i est calculée comme suit :
- on subdivise la trame i en K sous-trames de longueur H, avec par exemple
^ m 3.x ^
K = où L J représente l'opérateur d'arrondi en partie entière, de
H J
sorte que les échantillons du signal acoustique discret {xj dans une sous-trame d'indice p de la trame i comprennent les H échantillons :
X(i-i )N+(P-i )H + 1 , X(i-i )N+(p-i )H+2, X(i-i )N+PH , P entier positif compris entre 1 et K ;
- pour chaque sous-trame d'indice p, on calcule la fonction différence ddp(x) suivante :
- on calcule la fonction différence discrète Di(x) relative à la trame i comme la somme des fonctions différence ddp(Y) des sous-trames d'indice p de la trame i, soit :
5. Procédé selon l'une quelconque des revendications précédentes, dans lequel, lors de l'étape c), on réalise les sous-étapes suivantes sur chaque trame i :
c1 )-on calcule les enveloppes lissées des maximum dans chaque sous- trame d'indice j de la trame i, avec :
ï jj = A mij_1 + (1 - A)mj j , où λ est un coefficient prédéfini compris entre 0 et 1 ;
c2)-on calcule les signaux de variation dans chaque sous-trame d'indice j de la trame i, avec :
Δ, j = rtij j— ï jj = λ (rtij j— ; et où au moins une valeur de référence dite principale Refij par sous-trame j est calculée à partir du signal de variation dans la sous-trame j de la trame i.
6. Procédé selon la revendication 5, dans lequel, lors de l'étape c) et à la suite de la sous-étape c2), on réalise les sous-étapes suivantes sur chaque trame i :
c3)-on calcule les maximums de variation Sjj dans chaque sous-trame d'indice j de la trame i, où Sjj correspond au maximum du signal de variation A\ i calculé sur une fenêtre glissante de longueur Lm antérieure à ladite sous-trame j, ladite longueur Lm étant variable selon que la sous-trame j de la trame i correspond à une période de silence ou de présence de parole ;
c4)-on calcule les écarts de variation δ,,, dans chaque sous-trame d'indice j de la trame i, avec :
¾j = Δυ " si,i ;
et où on calcule, pour chaque sous-trame j de la trame i, deux valeurs de référence principales Refij à partir respectivement du signal de variation A\ i et de l'écart de variation δ, ,
7. Procédé selon la revendication 6, dans lequel, lors de l'étape c) et à la suite de la sous-étape c4), on réalise une sous-étape c5) de calcul des signaux de variation normalisés A'l i et des écarts de variation normalisés ô'i dans chaque sous-trame d'indice j de la trame i, comme suit : l'J rn.- rn
r _ j_ _ mi,j-™i,j-si,j
J m j m j
et où, pour chaque sous-trame j d'une trame i, le signal de variation normalisé A'ij et l'écart de variation normalisé 5'ij constituent chacun une valeur de référence principale Ref,,, de sorte que, lors de l'étape d), on établit la valeur du seuil Ω, propre à la trame i en fonction du couple ( '^, δ',,,) des signaux de variation normalisés A'l i et des écarts de variation normalisés 5'ij dans les sous-trames j de la trame i.
8. Procédé selon la revendication 7, dans laquelle, lors de l'étape d), la valeur du seuil Ω, propre à la trame i est établie en partitionnant l'espace défini par la valeur du couple (Α'^, δ',,,), et en examinant la valeur du couple (Α'^, δ',,,) sur une ou plusieurs sous-trames successives selon la zone de valeur du couple (A'ij, ô'ij).
9. Procédé selon l'une quelconque des revendications 6 à 8, dans lequel, lors de la sous-étape c3), la longueur Lm de la fenêtre glissante répond aux équations suivantes :
- Lm = LO si la sous-trame j de la trame i correspond à une période de silence ;
- Lm = L1 si la sous-trame j de la trame i correspond à une période de présence de parole ;
avec L1 < L0, et notamment avec L1 =k1 .L et L0=k0.L, L étant la longueur des sous-trame d'indice j et kO, k1 étant des entiers positifs.
10. Procédé selon la revendication 6, dans lequel, lors de la sous-étape c3), pour chaque calcul du maximum de variation s,,, dans la sous-trame j de la trame i, la fenêtre glissante de longueur Lm est en retard de Mm trames de longueur N vis-à-vis de ladite sous-trame j.
1 1 . Procédé selon les revendications 7 et 10, dans lequel, lors de la sous- étape c3), on calcule également les maximums de variation normalisés s'i dans chaque sous-trame d'indice j de la trame i, où s'i correspond au maximum du signal de variation normalisé A'l i calculé sur une fenêtre glissante de longueur Lm antérieure à ladite sous-trame j, où :
et où chaque maximum de variation normalisé s'ij est calculée selon une méthode de minimisation comprenant les étapes itératives suivantes :
- calcul de s'i(j = max {s'^ ; A'j_MmJ } et s'i(j = max {s'^ ; A, i_Mmj }
- si rem(i, Lm) = 0, où rem est l'opérateur reste de la division entière de deux entiers, alors :
'ij = max {s'y.! ; A'j_MmJ },
avec s'0 1 = 0 et s'0 1 = 0 ; et dans lequel, lors de l'étape c4), on calcule les écarts de variation normalisés 5'ij dans chaque sous-trame d'indice j de la trame i, comme suit :
12. Procédé selon l'une quelconque des revendications 5 à 1 1 , dans lequel, lors de l'étape c), on réalise une sous-étape c6) dans laquelle on calcule les maximums de maximale q,j dans chaque sous-trame d'indice j de la trame i, où q,j correspond au maximum de la valeur maximale ms j calculée sur une fenêtre glissante de longueur fixe Lq antérieure à ladite sous-trame j, où la fenêtre glissante de longueur Lq est en retard de Mq trames de longueur N vis- à-vis de ladite sous-trame j, et où une autre valeur de référence dite secondaire MRefi par sous-trame j correspond audit maximum de maximale q,j dans la sous-trame j de la trame i.
13. Procédé selon l'une quelconque des revendications 5 à 12, dans lequel, lors de l'étape d), le seuil Ω, propre à la trame i est découpée en plusieurs sous-seuils Ω,,, propres à chaque sous-trame j de la trame i, et la valeur de chaque sous-seuil Ω^ est au moins établie en fonction de la ou des valeurs de référence Refij, MRefij calculées dans la sous-trame j de la trame i correspondante.
14. Procédé selon les revendications 7 et 13, dans lequel, lors de l'étape d), on établit la valeur de chaque seuil Ω,,, propre à la sous-trame j de trame i en comparant les valeurs du couple (Δ',,,, δ',,,) avec plusieurs couples de seuils fixes, la valeur de chaque seuil Ω^ étant sélectionnée parmi plusieurs valeurs fixes en fonction des comparaisons du couple (Δ',,,, δ',,,) avec lesdits couples de seuils fixes.
15. Procédé selon l'une quelconque des revendications 5 à 14, dans lequel, lors de l'étape d), on réalise une procédure dite de décision comprenant les sous-étapes suivantes, pour chaque trame i :
- pour chaque sous-trame j de la trame i, on établit un indice de décision DECi(j) qui occupe soit un état « 1 » de détection d'un signal de parole soit un état « 0 » de non détection d'un signal de parole ; - on établit une décision temporaire VAD(i) basée sur la comparaison des indices de décision DEC,(j) avec des opérateurs « OU » logiques, de sorte que la décision temporaire VAD(i) occupe un état « 1 » de détection d'un signal de parole si au moins l'un desdits indices de décision DEC,(j) occupe cet état « 1 » de détection d'un signal de parole.
16. Procédé selon les revendications 13 et 15, dans lequel, lors de la procédure de décision, on réalise les sous-étapes suivantes, pour chaque trame i :
- on mémorise une valeur maximale de seuil Lastmax qui correspond à la valeur variable d'un seuil de comparaison pour l'amplitude du signal acoustique discret {xj en-dessous duquel on considère que le signal acoustique ne comprend pas de signal de parole, cette valeur variable étant déterminé durant la dernière trame d'indice k qui précède ladite trame i et dans laquelle la décision temporaire VAD(k) occupait un état « 1 » de détection d'un signal de parole ;
- on mémorise une valeur maximale moyenne A qui correspond à la valeur maximale moyenne du signal acoustique discret {xj dans la sous-trame j de la trame i calculée comme suit :
où ay correspond au maximum du signal acoustique discret {xj contenu dans une trame formée par la sous-trame j de la trame i et par au moins une ou plusieurs sous-trames successives qui précèdent ladite sous-trame j ; et
Θ est un coefficient prédéfini compris entre 0 et 1 avec θ < λ ;
- on établit la valeur de chaque sous-seuil Ql i en fonction de la comparaison entre ladite valeur maximale de seuil Lastmax et des valeurs maximales moyennes et Aj.i considérées sur deux sous-trames j et j-1 successives.
17. Procédé selon la revendication 16, dans lequel, lors de la procédure de décision, on réactualise la valeur maximale de seuil Lastmax à chaque fois que le procédé a considéré qu'une sous-trame p d'une trame k contient un signal de parole, en mettant en œuvre la procédure suivante : - la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période d'absence de parole, et dans ce cas Lastmax prend la valeur actualisée [a (Ak,p + LastMax)], où a est un coefficient prédéfini compris entre 0 et 1 , et par exemple compris entre 0,2 et 0,7 ;
- la détection d'un signal de parole dans la sous-trame p de la trame k fait suite à une période de présence de parole, et dans ce cas Lastmax prend la valeur actualisée Ak,p si Ak,p > Lastmax.
18. Procédé selon les revendications 16 ou 17, dans lequel, on établit la valeur du seuil Ω, en fonction de ladite valeur maximale Lastmax en se basant sur la comparaison entre :
- la valeur maximale de seuil Lastmax ; et
- les valeurs [KpAj] et [Kp. Α,,,.ι], où Kp est un coefficient fixe de pondération compris entre 1 et 2.
19. Procédé selon l'une quelconque des revendications précédentes, comportant en outre une phase dite de blocage comprenant une étape de basculement d'un état de non détection d'un signal de parole à un état de détection d'un signal de parole après avoir détecté la présence d'un signal de parole sur NP trames i temporelles successives.
20. Procédé selon l'une quelconque des revendications précédentes, comportant en outre une phase dite de blocage comprenant une étape de basculement d'un état de détection d'un signal de parole à un état de non détection d'un signal de parole après avoir détecté aucune présence d'un signal voisé sur NA trames i temporelles successives.
21 . Procédé selon l'une quelconque des revendications 19 et 20, comportant en outre une étape d'interruption de la phase de blocage dans des zones de décision intervenant en fin de mots et dans une situation non-bruitée, lesdites zones de décision étant détectées en analysant le minimum rr(i) de la fonction de détection discrète FDi(x).
22. Programme d'ordinateur, caractérisé en ce qu'il comprend des instructions de code aptes à commander l'exécution des étapes du procédé de détection de la voix selon l'une quelconque des revendications précédentes lorsqu'il est exécuté par un processeur.
23. Support d'enregistrement de données sur lequel est stocké le programme d'ordinateur selon la revendication 22.
24. Mise à disposition d'un programme d'ordinateur selon la revendication 22 sur un réseau de télécommunication en vue de son téléchargement.
EP14814978.4A 2013-12-02 2014-11-27 Procédé de détection de la voix Active EP3078027B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1361922A FR3014237B1 (fr) 2013-12-02 2013-12-02 Procede de detection de la voix
PCT/FR2014/053065 WO2015082807A1 (fr) 2013-12-02 2014-11-27 Procédé de détection de la voix

Publications (2)

Publication Number Publication Date
EP3078027A1 true EP3078027A1 (fr) 2016-10-12
EP3078027B1 EP3078027B1 (fr) 2018-05-23

Family

ID=50482942

Family Applications (1)

Application Number Title Priority Date Filing Date
EP14814978.4A Active EP3078027B1 (fr) 2013-12-02 2014-11-27 Procédé de détection de la voix

Country Status (7)

Country Link
US (1) US9905250B2 (fr)
EP (1) EP3078027B1 (fr)
CN (1) CN105900172A (fr)
CA (1) CA2932449A1 (fr)
ES (1) ES2684604T3 (fr)
FR (1) FR3014237B1 (fr)
WO (1) WO2015082807A1 (fr)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3014237B1 (fr) * 2013-12-02 2016-01-08 Adeunis R F Procede de detection de la voix
US10621980B2 (en) * 2017-03-21 2020-04-14 Harman International Industries, Inc. Execution of voice commands in a multi-device system
CN107248046A (zh) * 2017-08-01 2017-10-13 中州大学 一种思想政治课课堂教学质量评价装置及方法
JP6904198B2 (ja) * 2017-09-25 2021-07-14 富士通株式会社 音声処理プログラム、音声処理方法および音声処理装置
CN111161749B (zh) * 2019-12-26 2023-05-23 佳禾智能科技股份有限公司 可变帧长的拾音方法、电子设备、计算机可读存储介质
CN111261197B (zh) * 2020-01-13 2022-11-25 中航华东光电(上海)有限公司 一种复杂噪声场景下的实时语音段落追踪方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2825505B1 (fr) 2001-06-01 2003-09-05 France Telecom Procede d'extraction de la frequence fondamentale d'un signal sonore au moyen d'un dispositif mettant en oeuvre un algorithme d'autocorrelation
FR2899372B1 (fr) 2006-04-03 2008-07-18 Adeunis Rf Sa Systeme de communication audio sans fil
KR100930584B1 (ko) * 2007-09-19 2009-12-09 한국전자통신연구원 인간 음성의 유성음 특징을 이용한 음성 판별 방법 및 장치
WO2010070840A1 (fr) * 2008-12-17 2010-06-24 日本電気株式会社 Dispositif et programme de détection sonore et procédé de réglage de paramètre
FR2947124B1 (fr) 2009-06-23 2012-01-27 Adeunis Rf Procede de communication par multiplexage temporel
FR2947122B1 (fr) 2009-06-23 2011-07-22 Adeunis Rf Dispositif d'amelioration de l'intelligibilite de la parole dans un systeme de communication multi utilisateurs
US8949118B2 (en) * 2012-03-19 2015-02-03 Vocalzoom Systems Ltd. System and method for robust estimation and tracking the fundamental frequency of pseudo periodic signals in the presence of noise
FR2988894B1 (fr) * 2012-03-30 2014-03-21 Adeunis R F Procede de detection de la voix
FR3014237B1 (fr) * 2013-12-02 2016-01-08 Adeunis R F Procede de detection de la voix

Also Published As

Publication number Publication date
FR3014237A1 (fr) 2015-06-05
ES2684604T3 (es) 2018-10-03
FR3014237B1 (fr) 2016-01-08
EP3078027B1 (fr) 2018-05-23
CA2932449A1 (fr) 2015-06-11
US9905250B2 (en) 2018-02-27
US20160284364A1 (en) 2016-09-29
CN105900172A (zh) 2016-08-24
WO2015082807A1 (fr) 2015-06-11

Similar Documents

Publication Publication Date Title
EP3078027B1 (fr) Procédé de détection de la voix
JP6694426B2 (ja) ランニング範囲正規化を利用したニューラルネットワーク音声活動検出
US10412488B2 (en) Microphone array signal processing system
KR100636317B1 (ko) 분산 음성 인식 시스템 및 그 방법
EP1320087B1 (fr) Synthèse d&#39;un signal d&#39;excitation utilisé dans un générateur de bruit de confort
Palomäki et al. Techniques for handling convolutional distortion withmissing data'automatic speech recognition
US20020165713A1 (en) Detection of sound activity
US9467790B2 (en) Reverberation estimator
EP2772916B1 (fr) Procédé de débruitage d&#39;un signal audio par un algorithme à gain spectral variable à dureté modulable dynamiquement
EP0867856A1 (fr) &#34;Méthode et dispositif de detection d&#39;activité vocale&#34;
US20110238417A1 (en) Speech detection apparatus
JP2008058983A (ja) 音声コーディングにおける雑音のロバストな分類のための方法
KR101260938B1 (ko) 노이지 음성 신호의 처리 방법과 이를 위한 장치 및 컴퓨터판독 가능한 기록매체
EP3807878B1 (fr) Amélioration de la parole basée sur un réseau neuronal profond
KR101317813B1 (ko) 노이지 음성 신호의 처리 방법과 이를 위한 장치 및 컴퓨터판독 가능한 기록매체
EP1451548A2 (fr) System de detection de parole dans un signal audio en environnement bruite
CN113192535B (zh) 一种语音关键词检索方法、系统和电子装置
KR20090104558A (ko) 노이지 음성 신호의 처리 방법과 이를 위한 장치 및 컴퓨터판독 가능한 기록매체
EP3192073B1 (fr) Discrimination et atténuation de pré-échos dans un signal audionumérique
EP3627510A1 (fr) Filtrage d&#39;un signal sonore acquis par un systeme de reconnaissance vocale
Martin et al. Robust speech/non-speech detection based on LDA-derived parameter and voicing parameter for speech recognition in noisy environments
Chelloug et al. An efficient VAD algorithm based on constant False Acceptance rate for highly noisy environments
FR2988894A1 (fr) Procede de detection de la voix
JP2023540377A (ja) 音コーデックにおける、非相関ステレオコンテンツの分類、クロストーク検出、およびステレオモード選択のための方法およびデバイス

Legal Events

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

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20160628

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

AX Request for extension of the european patent

Extension state: BA ME

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

Effective date: 20170627

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G10L 25/78 20130101ALN20171124BHEP

Ipc: G10L 25/84 20130101AFI20171124BHEP

INTG Intention to grant announced

Effective date: 20171221

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

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

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

Free format text: NOT ENGLISH

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

Free format text: LANGUAGE OF EP DOCUMENT: FRENCH

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602014025940

Country of ref document: DE

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 1002143

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180615

REG Reference to a national code

Ref country code: SE

Ref legal event code: TRGR

REG Reference to a national code

Ref country code: CH

Ref legal event code: NV

Representative=s name: CABINET GERMAIN AND MAUREAU, CH

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20180523

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2684604

Country of ref document: ES

Kind code of ref document: T3

Effective date: 20181003

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG4D

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 5

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180823

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180823

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180824

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 1002143

Country of ref document: AT

Kind code of ref document: T

Effective date: 20180523

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602014025940

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

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

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20190226

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20181127

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20181130

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20181130

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180523

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20141127

Ref country code: MK

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20180523

REG Reference to a national code

Ref country code: ES

Ref legal event code: PC2A

Owner name: VOGO

Effective date: 20200629

Ref country code: DE

Ref legal event code: R082

Ref document number: 602014025940

Country of ref document: DE

Representative=s name: HOEFER & PARTNER PATENTANWAELTE MBB, DE

Ref country code: DE

Ref legal event code: R081

Ref document number: 602014025940

Country of ref document: DE

Owner name: VOGO, FR

Free format text: FORMER OWNER: ADEUNIS RF, CROLLES, FR

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20180923

REG Reference to a national code

Ref country code: CH

Ref legal event code: PUE

Owner name: VOGO, FR

Free format text: FORMER OWNER: ADEUNIS RF, FR

REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

Free format text: REGISTERED BETWEEN 20200723 AND 20200729

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20230914

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20230816

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: ES

Payment date: 20231218

Year of fee payment: 10

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: SE

Payment date: 20231117

Year of fee payment: 10

Ref country code: IE

Payment date: 20231019

Year of fee payment: 10

Ref country code: DE

Payment date: 20230915

Year of fee payment: 10

Ref country code: CH

Payment date: 20231201

Year of fee payment: 10