WO2017080371A1 - 一种改善声学回波抵消器自适应学习的方法及装置 - Google Patents

一种改善声学回波抵消器自适应学习的方法及装置 Download PDF

Info

Publication number
WO2017080371A1
WO2017080371A1 PCT/CN2016/103714 CN2016103714W WO2017080371A1 WO 2017080371 A1 WO2017080371 A1 WO 2017080371A1 CN 2016103714 W CN2016103714 W CN 2016103714W WO 2017080371 A1 WO2017080371 A1 WO 2017080371A1
Authority
WO
WIPO (PCT)
Prior art keywords
filter coefficient
filter
time
value
double
Prior art date
Application number
PCT/CN2016/103714
Other languages
English (en)
French (fr)
Inventor
沙永涛
汪法兵
梁民
Original Assignee
电信科学技术研究院
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 电信科学技术研究院 filed Critical 电信科学技术研究院
Publication of WO2017080371A1 publication Critical patent/WO2017080371A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M9/00Arrangements for interconnection not involving centralised switching
    • H04M9/08Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic
    • H04M9/082Two-way loud-speaking telephone systems with means for conditioning the signal, e.g. for suppressing echoes for one or both directions of traffic using echo cancellers

Definitions

  • the present disclosure relates to the field of communications technologies, and in particular, to a method and apparatus for improving acoustic echo canceller (AEC) adaptive learning.
  • AEC acoustic echo canceller
  • AEC Acoustic echo canceller
  • the echo path is adaptively mathematically modeled by a filter, and the downstream received signal is filtered by the filter to synthesize a valid estimate of the echo, and then the estimate is subtracted from the received signal of the microphone. , thus completing the task of echo cancellation.
  • the near-end speech signal appears, since it is statistically uncorrelated with the far-end speech signal, its behavior is like a sudden noise, so that the coefficient of the filter will deviate from the true value corresponding to the actual echo path. . This correspondingly increases the amount of echo residual, deteriorating the performance of the AEC.
  • the microphone receiving signal contains a near-end speech signal (ie, "double-talking"), and adaptive learning of filter coefficients under the condition of "double-talking" occurs. It must be stopped until the end of the "dual talk"; otherwise, the adaptive learning of the filter coefficients will continue.
  • the existing "double-talk" detection technology will be delayed. It detects the occurrence of “dual-talking", and does not detect the true beginning of the occurrence of "dual-talking” in a timely and accurate manner. This late detection of the DTD will cause the filter to continue to be erroneously updated before, resulting in more residual echoes in the "dual talk".
  • the present disclosure provides a method and apparatus for improving adaptive learning of an acoustic echo canceler, thereby effectively avoiding the problem of AEC performance degradation caused by the latent "dual-talk" decision of the DTD.
  • a method for improving adaptive learning of an acoustic echo canceler comprising: acquiring a filter in an acoustic echo canceler during a single-ended call when a double-talk is detected The filter coefficient history value; the filter coefficient of the filter when the double-talk is made is smoothly switched from the first filter coefficient to the filter coefficient history value, and the filter coefficient obtained according to the interpolation is in the smooth switching process Performing echo cancellation, based on the historical value of the filter coefficient The echo cancellation is performed after the completion of the slip switching, wherein the first filter coefficient is a filter coefficient of the filter when the double talk is detected.
  • the filter coefficient of the filter when the double-talk is performed is smoothly switched from the first filter coefficient to the filter coefficient historical value, and the filter coefficient obtained by the interpolation is echoed during the smooth switching process.
  • performing echo cancellation after the smooth switching is completed according to the filter coefficient historical value, specifically, including: a filter coefficient historical value of the filter corresponding to the third time, and the corresponding to the first time a first filter coefficient of the filter, determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time, wherein the first time is detection
  • the third moment is a moment of smooth switching to the filter coefficient history value of the filter during double-talking; according to the first filter coefficient, the second filter coefficient, and The filter coefficient history value, smoothly switching the first filter coefficient of the filter to the filter coefficient historical value, and smoothing the switching process according to the filter coefficient obtained by the interpolation
  • echo cancellation performed after the completion of the handover in accordance with the smoothing filter coefficient historical values.
  • n 2 ⁇ n ⁇ n 3
  • a first filter coefficient representing the time n 2 a first time when the double talk is detected
  • n 3 represents the third time
  • n represents between the first time and the third time The second moment.
  • the method further includes: when detecting the single-ended call, updating the filter coefficients of the filter during the single-ended call according to a predetermined update policy, to obtain the filter coefficients of the updated filter.
  • the filter coefficient is updated in the single-ended call according to the predetermined update policy, and the filter coefficients of the updated filter are obtained, which specifically includes:
  • the filter coefficient vector with n time is calculated.
  • the filter coefficient coefficient history is value Adjusted to the calculated filter coefficient vector at time n equal.
  • the filter coefficient is updated in the single-ended call according to the predetermined update policy, and the filter coefficients of the updated filter are obtained, which specifically includes:
  • the filter coefficient coefficient history is value Adjusted to the calculated filter coefficient vector at time n equal.
  • an apparatus for improving adaptive learning of an acoustic echo canceler comprising: an acquisition module for acquiring acoustics during a single-ended call when a double-talk is detected a filter coefficient history value of the filter in the echo canceller; a smoothing switching module, configured to smoothly switch the filter coefficient of the filter from the first filter coefficient to the filter coefficient historical value when the double talk is performed, And performing echo cancellation in the smooth switching process according to the interpolation obtained filter coefficient, and performing echo cancellation after the smooth switching is completed according to the historical value of the filter coefficient, wherein the first filter coefficient is detecting double-talking The filter coefficient of the filter.
  • the smoothing switching module includes: an interpolation unit, configured to correspond to the third moment a filter coefficient history value of the filter, and a first filter coefficient of the filter corresponding to the first time, determining to correspond to a second time between the first time and the third time a second filter coefficient of the filter, wherein the first time is a time when a double talk is detected, and the third time is a filter coefficient history that is smoothly switched to the filter during double talk a time of the value; a smoothing switching unit, configured to smoothly switch the first filter coefficient of the filter to the first filter coefficient, the second filter coefficient, and the filter coefficient history value
  • the filter coefficient history value is described, and echo cancellation is performed in the smooth switching process according to the filter coefficient obtained by the interpolation, and the echo cancellation is performed after the smooth switching is completed according to the historical value of the filter coefficient.
  • the interpolation unit is according to a formula Determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time Where n 2 ⁇ n ⁇ n 3 , Representing the historical value of the filter coefficient at time n 3 , a first filter coefficient representing the time n 2 ; n 2 represents a first time when the double talk is detected, n 3 represents a third time, and n represents a second time between the first time and the third time time.
  • the device further includes: an updating module, configured to: when a single-ended call is detected, update a filter coefficient of the filter during a single-ended call according to a predetermined update policy, to obtain an updated filter. Filter coefficient.
  • the updating module is further configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Represents the far-end speech signal vector at time n-1, and e(n-1) represents the n-1 time error signal; based on the return return loss increment, the filter coefficient vector at time n is calculated. Corresponding performance index parameter ⁇ ; if the calculated performance index parameter ⁇ is greater than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • the updating module is further configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Indicates the far-end speech signal vector at time n-1, and e(n-1) represents the n-1 time error signal; based on the average value of the error signal, the filter coefficient vector at time n is calculated. Corresponding performance index parameter ⁇ ; if the calculated performance index parameter ⁇ is smaller than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • an acoustic echo canceller including the apparatus for improving acoustic echo canceler adaptive learning as described above.
  • an acoustic echo canceler comprising a processor, a memory and a transceiver, the memory being linked to the processor via a bus interface and for Storing computer instructions for use by the processor in performing operations, the transceiver being coupled to the processor and the memory via a bus interface and for receiving and transmitting data under control of the processor, wherein the computer instructions, when executed by the processor, implement the above method.
  • the beneficial effects of the present disclosure are: first, in a single-ended call, updating the filter coefficients of the filter during a single-ended call according to a predetermined update policy, and recording the filter coefficient historical value of the filter during single-ended communication. Then, the current filter coefficient of the double-talking filter is smoothly switched to the historical value of the filter coefficient, so as to avoid the problem of sudden change of the speech signal by directly using the filter coefficient history value.
  • FIG. 1 is a flow chart of a method for improving adaptive learning of an acoustic echo canceler in some embodiments of the present disclosure
  • FIG. 2 is a method for improving adaptive learning of an acoustic echo canceller in some embodiments of the present disclosure flow chart
  • FIG. 3 is a flow diagram of each execution during a "single-talk" in some embodiments of the present disclosure
  • FIG. 4 is a schematic diagram of a linear interpolation principle in some embodiments of the present disclosure.
  • FIG. 5 is a schematic diagram of an AEC basic working principle and an acoustic echo path based on an NLMS learning algorithm in some embodiments of the present disclosure
  • FIG. 6 is a flow chart of an algorithm of an NLMS-based adaptive learning mechanism that utilizes ERLE as a performance indicator parameter in some embodiments of the present disclosure
  • FIG. 7 is a block diagram of an algorithm of an NLMS-based adaptive learning mechanism that utilizes an error signal average as a performance indicator parameter in some embodiments of the present disclosure
  • FIG. 8 is a block diagram of an apparatus for improving adaptive learning of an acoustic echo canceler in some embodiments of the present disclosure
  • FIG. 9 is a block diagram of an apparatus for improving adaptive learning of an acoustic echo canceler in some embodiments of the present disclosure.
  • FIG. 10 is a block diagram showing the structure of an acoustic echo canceller in some embodiments of the present disclosure.
  • FIG. 1 illustrates a flow chart of a method for improving Acoustic Echo Cancellor (AEC) adaptive learning in some embodiments of the present disclosure, the method including steps S101 and S103.
  • AEC Acoustic Echo Cancellor
  • Step S101 When detecting the double-talking, acquire the filter coefficient historical value of the filter in the acoustic echo canceler during the single-ended call.
  • DTD Double-Talk Detection
  • the filter coefficient history value of the filter may be a single-ended call filter.
  • AEC in single-ended call Filter coefficient adaptive learning algorithms include, but are not limited to, normalized least mean square (NLMS) algorithm, affine projection algorithm (APA) or recursive least squares (RLS) algorithm, and their corresponding variable iteration steps. Long (VSS) class learning algorithm. It is of course understood that the filter coefficient adaptive learning algorithm in the single-ended call state is not limited in the embodiment of the present disclosure.
  • Step S103 smoothly switch the filter coefficient of the double-talking filter from the first filter coefficient to the filter coefficient historical value, and perform echo cancellation in the smooth switching process according to the interpolation filter coefficient, and according to the filtering
  • the coefficient coefficient history value is echo canceled after the smooth switching is completed, wherein the first filter coefficient is a filter coefficient of the filter when double talk is detected.
  • smooth switching technology includes, but is not limited to, a linear interpolation method, and of course, other methods may be used for smooth switching.
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double-talk time has been diverged by the influence of the near-end speech, that is, the filter coefficient when the double-talk time is detected as the "double talk" is If it is not appropriate, the residual echo will be heard and the near-end speech will be damaged.
  • the filter coefficient of the single-ended call filter is updated according to a predetermined update policy, and the filter coefficient history value of the filter in the single-ended call is recorded, and then The current filter coefficient of the double-talking filter is smoothly switched to the filter coefficient history value to avoid the problem of sudden change of the speech signal by directly using the filter coefficient history value.
  • FIG. 2 a flow chart of a method for improving acoustic echo canceler adaptive learning in some embodiments of the present disclosure is shown in FIG. 2, the method including step S201, step S203, and step S205.
  • Step S201 When detecting the double-talking, obtain the filter coefficient historical value of the filter in the acoustic echo canceler during the single-ended call.
  • DTD Double-Talk Detection
  • the filter coefficient history value of the filter may be a single-ended call filter.
  • the filter coefficient adaptive learning algorithm of AEC in single-talk state includes but is not limited to: normalized least mean square (NLMS) calculation Method, affine projection algorithm (APA) or recursive least squares (RLS) algorithm and its corresponding variable iteration step size (VSS) class learning algorithm, of course, it is understood that it is not limited in the embodiment of the present disclosure.
  • Filter coefficient adaptive learning algorithm in single-ended call state includes but is not limited to: normalized least mean square (NLMS) calculation Method, affine projection algorithm (APA) or recursive least squares (RLS) algorithm and its corresponding variable iteration step size (VSS) class learning algorithm, of course, it is understood that it is not limited in the embodiment of the present disclosure.
  • Filter coefficient adaptive learning algorithm in single-ended call state includes but is not limited to: normalized least mean square (NLMS) calculation
  • Step S203 determining, according to the filter coefficient history value of the filter at the third time, and the first filter coefficient of the filter at the first time, the second filter of the second time between the first time and the third time And a second filter coefficient, wherein the first time is a time when the double-talk is detected, and the third time is a time when the double-talking is smoothly switched to the filter coefficient historical value of the filter.
  • the first time corresponds to the time n 2 in the figure
  • the third time corresponds to the time n 3 in the figure
  • the second time corresponds to the time n in the figure.
  • the second filter coefficient corresponding to the figure The above filter coefficient history value corresponds to the figure
  • step S203 a linear interpolation method is adopted, and the first time and the third time are determined according to the filter coefficient history value of the filter at the third time and the first filter coefficient of the filter at the first time.
  • Step S205 Smoothly switch the first filter coefficient of the filter to the filter coefficient historical value according to the first filter coefficient, the second filter coefficient, and the filter coefficient historical value, and smoothly switch the filter coefficient according to the interpolation. Echo cancellation is performed in the process, and echo cancellation is performed after the smooth switching is completed according to the filter coefficient history value.
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double talk time has been diverged by the influence of the near-end speech, that is, the filter coefficient when detecting the double-talk time as the "double talk" is If it is not appropriate, the residual echo will be heard and the near-end speech will be damaged.
  • the filter coefficient of the filter is updated in a single-ended call according to a predetermined update policy, and the filter coefficient history value of the filter in the single-ended call is recorded. Then, the current filter coefficient of the double-talking filter is smoothly switched to the historical value of the filter coefficient, so as to avoid the problem of sudden change of the speech signal by directly using the filter coefficient history value.
  • the starting time of "dual-talking" is n 1 ; the moment when "double-talking" is detected is n 2 (n 2 >n 1 ); the time when interpolation is completed is n 3 , n 3 >n 2 , and n 3 It should be moderately spaced from n 2 . If it is too small, the signal mutation will still occur. If it is too large, the interpolation time will be too long. See Figure 4.
  • the historical filter coefficient vector of the filter is ⁇ A is AEC in the filter coefficient vector Corresponding performance indicator parameter; ⁇ is AEC in the coefficient vector Corresponding performance index parameter; T is the filter coefficient historical value vector Replacement cycle.
  • the filter coefficient history value vector A zero vector sets the counter's count Counter to zero.
  • the DTD test result is "single-talk", Will remain updated, each time in accordance with the process shown in Figure 3, to keep updating And ⁇ A to store the optimal filter coefficient history value and its corresponding performance indicator parameter value.
  • FIG. 3 a flow diagram of each execution during a "single-talk" in some embodiments of the present disclosure is illustrated, which includes steps S301-S315.
  • Step S301 Start the call once, and then proceed to step S303.
  • Step S303 It is judged whether the count of the counter has reached the replacement period T, and if YES, the process proceeds to step S305; otherwise, the process proceeds to step S313.
  • the replacement period T is a filter coefficient historical value vector.
  • the replacement period, the time value of the replacement period T can be set according to a specific situation, and the specific value of the replacement period T is not limited in this embodiment.
  • Step S305 Calculating the AEC in the filter coefficient vector is The corresponding performance index parameter ⁇ is then entered in step S307.
  • step S305 ERLE may be used as the performance index parameter ⁇ , or the average value of the error signal may be used as the performance index parameter ⁇ . It is of course understood that in the embodiment of the present disclosure, the calculation of the filter coefficient vector is not limited. The specific way of the corresponding performance indicator parameter ⁇ .
  • Step S307 The counter is cleared, and then proceeds to step S309.
  • Step S309 determining whether it is necessary to update the performance indicator parameter ⁇ A and the corresponding filter coefficient history value vector If 'Yes', the process proceeds to step S311; otherwise, the process proceeds to step S315.
  • step S309 based on the performance index parameter ⁇ calculated in step S305, it is determined whether the current recorded performance index parameter ⁇ A and the filter coefficient history value vector are required. Update.
  • the ⁇ calculated in step S305 is recorded as the optimum performance index parameter ⁇ A , and accordingly, the filter coefficient vector corresponding to the performance index parameter ⁇ is used.
  • the best filter coefficient history value vector That is, the performance index parameter ⁇ A and the filter coefficient history value vector are completed. Update.
  • Step S313 The counter is incremented by one, and then proceeds to step S315.
  • Step S315 End this call.
  • the optimum filter coefficient history value vector using the filter coefficients is utilized.
  • the method is: during the detected "dual talk", for any time n ⁇ n 2 , the filter coefficient vector of the AEC filter will be Smoothly switch to To avoid direct use It brings about a sudden change in the voice signal.
  • a smooth switching technique may include, but is not limited to, a linear interpolation method.
  • FIG 4 a schematic diagram of the linear interpolation principle in some embodiments of the present disclosure is shown in Figure 4.
  • the filter coefficient vector at time n 2 is set to
  • the filter coefficient vector at time n 3 is set to Interpolating the filter coefficients between the time n 2 and the time n 3 to obtain a filter coefficient vector when n 2 ⁇ n ⁇ n 3
  • the specific formula is as follows:
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double-talking time has been diverged by the influence of the near-end speech, that is, the filter coefficient when the double-talking time is detected is used as the filter when "dual-talking"
  • the coefficients are not appropriate and residual echoes will be heard and the near-end speech will be damaged.
  • the filter coefficient of the filter is updated in a single-ended call according to a predetermined update policy, and the filter coefficient history value of the filter in the single-ended call is recorded.
  • the current filter coefficient of the double-talking filter is smoothly switched to the historical value of the filter coefficient, so as to avoid the problem of sudden change of the speech signal by directly using the filter coefficient history value.
  • NLMS Normalized Least Mean Square Algorithm
  • ERLE Echo Return Loss Enhancement
  • the error signal is:
  • e(n) represents the error signal at time n
  • Means the filter coefficient vector at time n Indicates the far-end speech signal vector at time n
  • y(n) represents the microphone output signal at time n, where n is a positive integer.
  • the following formula calculates the filter coefficient vector at time n+1 based on the filter coefficient vector at time n, and the update formula is:
  • represents the regularization factor and ⁇ represents the step size parameter.
  • ERLE The definition of ERLE is as follows:
  • e(n) represents an error signal at time n, where n is a positive integer.
  • FIG. 6 an algorithm flow diagram of an NLMS-based adaptive learning mechanism using ERLE as a performance indicator parameter is illustrated.
  • the algorithm flow includes steps S601-S623.
  • Step S603 determining whether the DTD detection result is true. If the DTD detection result is "No", that is, single-talking, the process proceeds to step S605; if the DTD detection result is "Yes", that is, double-talking, the process proceeds to step S623.
  • Step S605 updating by using the ALC NLMS algorithm formulas (5) and (6) Then it proceeds to step S607.
  • Step S607 It is judged whether the counter of the counter reaches the replacement period T, and if YES, the process proceeds to step S609; otherwise, the process proceeds to step S621.
  • Step S609 Calculate the ERLE performance index parameter ⁇ of the AEC using the formula (7), and then proceed to step S611.
  • Step S611 The counter is cleared, and then proceeds to step S613.
  • Step S613 Compare ⁇ and ⁇ A , and if ⁇ is greater than ⁇ A , proceed to step S615; otherwise, proceed to step S617.
  • the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and the filter is filtered. History value Adjusted to the calculated filter coefficient vector at time n equal.
  • Step S619 It is judged whether or not it is finished, and if YES, the flow is ended; otherwise, the process returns to step S603.
  • Step S621 The counter is incremented by one, and then proceeds to step S617.
  • Step S623 performing interpolation using equations (3) and (4), and gradually and smoothly transitioning the filter coefficients of n 2 ⁇ n ⁇ n 3 to And stop updating.
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double talk time has been diverged by the influence of the near-end speech, that is, the filter coefficient when detecting the double-talk time as the "double talk" is If it is not appropriate, the residual echo will be heard and the near-end speech will be damaged.
  • the filter coefficient of the filter is updated in a single-ended call according to a predetermined update policy, and the filter coefficient history value of the filter in the single-ended call is recorded. Then, the current filter coefficient of the double-talking filter is smoothly switched to the historical value of the filter coefficient to avoid the problem of directly changing the historical value of the filter coefficient and causing a sudden change of the speech signal.
  • the following embodiment uses NLMS as the learning method of the adaptive filter in the AEC, and takes the average value of the error signal as the performance index parameter ⁇ .
  • the error signal average is defined as a recursive average with the following formula:
  • e bar (n) represents the average value of the error signal at time n
  • e bar (n-1) represents the average value of the error signal at time n-1
  • e(n) represents the error signal at time n
  • is the recursive smoothing factor
  • the value range is (0,1), which is usually close to 1, where n is a positive integer.
  • FIG. 7 an algorithm flow diagram of a mechanism for learning adaptive filter learning based on NLMS in AEC using an error signal average as a performance index parameter is shown in FIG.
  • the algorithm flow includes steps S701-S723.
  • Step S703 determining whether the DTD detection result is true. If the DTD detection result is 'No', that is, when the single-ended call is reached, the process proceeds to step S705; if the DTD detection result is 'Yes', that is, the double-ended call, the process proceeds to step S723. .
  • Step S705 update using the ALC NLMS algorithm formulas (5) and (6) Then it proceeds to step S707.
  • Step S707 It is judged whether the count of the counter has reached the replacement period T, and if YES, the process proceeds to step S709; otherwise, the process proceeds to step S721.
  • Step S709 Calculate the AEC error signal average value e bar performance index parameter ⁇ using Equation (8) or Equation (9), and then proceed to step S711.
  • Step S711 The counter is cleared, and then proceeds to step S713.
  • Step S713 Compare ⁇ and ⁇ A , and if ⁇ is smaller than ⁇ A , proceed to step S715; otherwise, proceed to step S717.
  • the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and the filter is filtered. History value Adjusted to the calculated filter coefficient history value vector at time n equal.
  • Step S719 It is judged whether or not it is finished, and if YES, the flow is ended; otherwise, the process returns to step S703.
  • Step S721 The counter is incremented by one, and then proceeds to step S717.
  • Step S723 performing interpolation using equations (3) and (4), and gradually and smoothly transitioning the filter coefficients of n 2 ⁇ n ⁇ n 3 to And stop updating.
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double talk time has been diverged by the influence of the near-end speech, that is, the filter coefficient when detecting the double-talk time as the "double talk" is If it is not appropriate, the residual echo will be heard and the near-end speech will be damaged.
  • first, in a single-ended call according to a predetermined update policy.
  • the filter coefficient of the filter is updated during a single-ended call, and the filter coefficient history value of the filter in the single-ended call is recorded, and then the current filter coefficient of the double-talking filter is smoothly switched to the filter.
  • the historical value of the coefficient to avoid the problem of sudden changes in the speech signal due to the direct use of the filter coefficient history value.
  • the device embodiment is the same as the above-mentioned method embodiment, and the details of the device embodiment are not described in detail in the device embodiment.
  • the apparatus includes an acquisition module 81 for acquiring acoustics during a single-ended call when a double-talk is detected. a filter coefficient history value of the filter in the echo canceller; and a smoothing switching module 83 for smoothly switching the filter coefficients of the filter from the first filter coefficient to the filter coefficient history during double talk And performing echo cancellation in the smooth switching process according to the filter coefficient obtained by the interpolation, and performing echo cancellation after the smooth switching is completed according to the historical value of the filter coefficient, wherein the first filter coefficient is detection The filter coefficient of the filter to the double talk.
  • the smoothing switching module 83 may include: an interpolation unit 831, configured to: according to a filter coefficient historical value of the filter corresponding to a third time, and a filter corresponding to the first time a filter coefficient determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time, wherein the first time is a time at which double talk is detected The third time is a time when the double-talking is smoothly switched to the filter coefficient history value of the filter; and the smoothing switching unit 833 is configured to use, according to the first filter coefficient, the second filter a coefficient and the filter coefficient history value, smoothly switching the first filter coefficient of the filter to the filter coefficient historical value, and performing echo cancellation in the smooth switching process according to the interpolation obtained filter coefficient, according to The filter coefficient history value is echo canceled after the smooth switching is completed.
  • an interpolation unit 831 configured to: according to a filter coefficient historical value of the filter corresponding to a third time, and a filter corresponding to the first time a filter coefficient determining
  • the interpolation unit 831 can be based on a formula Determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time Where n 2 ⁇ n ⁇ n 3 ,
  • N 2 represents the first filter coefficient moment
  • n 2 represents a first time point when the detected double talk
  • n 3 represents a third time
  • n represents the time between the second time and the third time first.
  • smooth switching can be implemented by other techniques in this embodiment, and is not limited to the above linear interpolation method.
  • the traditional AEC method uses the filter coefficient of detecting the double-talking time to perform echo cancellation, but actually starts to enter the true "double-talking" state before detecting the double-talking time.
  • the update of the filter coefficient that causes the detection of the double talk time has been diverged by the influence of the near-end speech, that is, the filter coefficient when detecting the double-talk time as the "double talk" is If it is not appropriate, the residual echo will be heard and the near-end speech will be damaged.
  • the filter coefficient of the filter is updated in a single-ended call according to a predetermined update policy, and the filter coefficient history value of the filter in the single-ended call is recorded. Then, the current filter coefficient of the double-talking filter is smoothly switched to the historical value of the filter coefficient, so as to avoid the problem of sudden change of the speech signal by directly using the filter coefficient history value.
  • FIG. 9 is a structural diagram of an apparatus for improving adaptive learning of an acoustic echo canceler, the apparatus comprising: an acquisition module 91 for acquiring acoustics during a single-ended call when a double-talk is detected a filter coefficient history value of the filter in the echo canceller; a smoothing switching module 93, configured to smoothly switch the filter coefficients of the filter from the first filter coefficient to the filter coefficient history when performing double talk And performing echo cancellation in the smooth switching process according to the filter coefficient obtained by the interpolation, and performing echo cancellation after the smooth switching is completed according to the historical value of the filter coefficient, wherein the first filter coefficient is detected The filter coefficient of the filter when the double-talk is made; and the updating module 95, configured to update the filter coefficient of the filter during the single-ended call according to a predetermined update policy when detecting the single-ended call, The filter coefficients of the updated filter.
  • the smoothing switching module 93 may include: an interpolation unit 931, configured to: according to a filter coefficient historical value of the filter corresponding to a third time, and a filter corresponding to the first time a filter coefficient determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time, wherein the first time is a time at which double talk is detected The third time is a time when the double-talking is smoothly switched to the filter coefficient history value of the filter; and the smoothing switching unit 933 is configured to use, according to the first filter coefficient, the second filter a coefficient and a history value of the filter coefficient, the first filter of the filter The filter coefficients are smoothly switched to the filter coefficient historical value, and echo cancellation is performed in the smooth switching process according to the filter coefficients obtained by the interpolation, and the echo cancellation is performed after the smooth switching is completed according to the filter coefficient historical value.
  • an interpolation unit 931 configured to: according to a filter coefficient historical value of the filter corresponding to a third time, and a
  • the interpolation unit 931 can be based on a formula Determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time Where n 2 ⁇ n ⁇ n 3 , Representing the historical value of the filter coefficient at time n 3 , N 2 represents the first filter coefficient moment; n 2 represents a first time point when the detected double talk, n 3 represents a third time, n represents the second time and the third time between the first time.
  • smooth switching can be implemented by other techniques in this embodiment, and is not limited to the above linear interpolation method.
  • the update module 95 is further configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Represents the far-end speech signal vector at time n-1, e(n-1) represents the error signal at time n-1; and calculates the filter coefficient vector at time n according to the return return loss increment Corresponding performance index parameter ⁇ ; and if the calculated performance index parameter ⁇ is greater than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • the update module 95 is further configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Representing the far-end speech signal vector at time n-1, e(n-1) represents the error signal at time n-1; and calculating the filter coefficient vector at time n according to the average value of the error signal Corresponding performance index parameter ⁇ ; and if the calculated performance index parameter ⁇ is smaller than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • Embodiments of the present disclosure also provide an acoustic echo canceler that includes an apparatus for improving acoustic echo canceler adaptive learning as described above.
  • the acoustic echo canceler includes a first processor 1001, a first memory 1002, and a first transceiver 1003, wherein the first processor 1001 uses Reading the program in the first memory 1002 to perform the following process: acquiring the filter coefficient history value of the filter in the acoustic echo canceler during the single-ended call when the double-talk is detected; And the filter coefficient of the filter is smoothly switched by the first filter coefficient to the filter coefficient historical value, and echo canceling is performed according to the filter coefficient obtained by the interpolation, and according to the filter The coefficient history value is echo canceled after the smooth switching is completed, wherein the first filter coefficient is a filter coefficient of the filter when double talk is detected.
  • the first transceiver 1003 is configured to receive and transmit data under the control of the first processor 1001.
  • the first processor 1001 is specifically configured to: determine, according to a filter coefficient historical value of the filter corresponding to the third time, and a first filter coefficient of the filter corresponding to the first time a second filter coefficient of the filter corresponding to the second time between the first time and the third time, wherein the first time is a time at which a double-talk is detected, and the third time a time for smoothly switching to a filter coefficient history value of the filter during double talk; and according to the first filter coefficient, the second filter coefficient, and the filter coefficient historical value
  • the first filter coefficient of the filter is smoothly switched to the filter coefficient historical value, and echo cancellation is performed in the smooth switching process according to the interpolation filter coefficient, and is smoothly switched according to the filter coefficient historical value. Echo cancellation is performed after completion.
  • the first processor 1001 is specifically configured to: according to a formula Determining a second filter coefficient of the filter corresponding to a second time between the first time and the third time Where n 2 ⁇ n ⁇ n 3 , Representing the historical value of the filter coefficient at time n 3 , N 2 represents the first filter coefficient moment; n 2 represents a first time point when the detected double talk, n 3 represents a third time, n represents the second time and the third time between the first time.
  • the first processor 1001 is specifically configured to: when detecting a single-ended call, update a filter coefficient of the filter during a single-ended call according to a predetermined update policy, to obtain an updated filter filter. Factor.
  • the first processor 1001 is specifically configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Represents the far-end speech signal vector at time n-1, and e(n-1) represents the n-1 time error signal; based on the return return loss increment, the filter coefficient vector at time n is calculated. Corresponding performance index parameter ⁇ ; if the calculated performance index parameter ⁇ is greater than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • the first processor 1001 is specifically configured to: Calculate the filter coefficient vector at time n among them Represents the filter coefficient vector at time n-1, ⁇ represents the regularization factor, and ⁇ represents the step size parameter. Indicates the far-end speech signal vector at time n-1, and e(n-1) represents the n-1 time error signal; based on the average value of the error signal, the filter coefficient vector at time n is calculated. Corresponding performance index parameter ⁇ ; if the calculated performance index parameter ⁇ is smaller than the previously recorded performance index parameter historical value ⁇ A , the performance index parameter historical value ⁇ A is adjusted to be equal to the calculated performance index parameter ⁇ , and Filter coefficient history value of the filter Adjusted to the calculated filter coefficient vector at time n equal.
  • the first processor 1001 may be a CPU (Central Processing Unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a CPLD (Complex Programmable Logic Device). , complex programmable logic devices).
  • CPU Central Processing Unit
  • ASIC Application Specific Integrated Circuit
  • FPGA Field Programmable Gate Array
  • CPLD Complex Programmable Logic Device
  • the bus architecture may include any number of interconnected buses and bridges, specifically linked by one or more processors represented by the first processor 1001 and various circuits of the memory represented by the first memory 1002. .
  • the bus architecture can also link various other circuits such as peripherals, voltage regulators, and power management circuits, which are well known in the art and, therefore, will not be further described herein.
  • the bus interface provides an interface.
  • the first transceiver 1003 can be a plurality of components, including a transmitter and a receiver, providing means for communicating with various other devices on a transmission medium.
  • the first processor 1001 is responsible for managing the bus architecture and general processing, and the first memory 1002 can store data used by the first processor 1001 in performing operations.
  • the disclosed methods and apparatus can be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • each functional unit in various embodiments of the present disclosure may be integrated into one processing unit, or may be physically included in each unit individually, or two or more units may be integrated in one unit.
  • the above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional units.
  • the above-described integrated unit implemented in the form of a software functional unit can be stored in a computer readable storage medium.
  • the above software functional units are stored in a storage medium and include instructions for causing a computer device (which may be a personal computer, server, or network device, etc.) to perform part of the steps of the methods described in various embodiments of the present disclosure.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a disk or an optical disk, and the like. The medium of the code.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Telephone Function (AREA)

Abstract

本公开提供了一种改善声学回波抵消器自适应学习的方法及装置。该方法包括:在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。

Description

一种改善声学回波抵消器自适应学习的方法及装置
相关申请的交叉引用
本申请主张在2015年11月11日在中国提交的中国专利申请号No.201510767041.8的优先权,其全部内容通过引用包含于此。
技术领域
本公开涉及通信技术领域,尤其涉及一种改善声学回波抵消器(AEC)自适应学习的方法及装置。
背景技术
作为电话会议系统和免提通信终端的重要模块之一的声学回波抵消器(AEC),用来抵消由扬声器(也可称为喇叭)到麦克风(也可称为话筒)的声学耦合反馈效应(即声学回波)。在AEC中,用一个滤波器对回波路径进行自适应地数学建模,并用该滤波器对下行接收信号进行滤波而合成一个回波的有效估计,然后在麦克风的接收信号中减去该估计,从而完成回波抵消的任务。
当近端语音信号出现时,由于它与远端语音信号统计上不相关,因而其行为犹如一个突发的噪声,使得滤波器的系数将偏离实际回波路径所对应的真值而发生发散现象。这便相应地增大了回波残留量,使AEC的性能恶化。为使AEC的工作性能稳定可靠,检测出麦克风接收信号中是否含有近端语音信号(即“双端通话”的情形),在“双端通话”发生的条件下,滤波器系数的自适应学习必须停止进行,直到“双端通话”结束时为止;否则,滤波器系数的自适应学习将持续进行。
众所周知,实际通话过程中将有以下四种情况发生:
情况A:实际为“单端通话”状态,DTD(Double-Talk Detection,双端通话检测)检测结果为“单端通话”。在此情况下,自适应滤波器的系数将持续学习并保持收敛趋势。
情况B:实际为“单端通话”状态,DTD检测结果为“双端通话”。此 情况下,自适应滤波器的系数将停止学习更新。
情况C:实际为“双端通话”状态,DTD检测结果为“双端通话”。此情况下,自适应滤波器的系数将停止学习更新。
情况D:实际为“双端通话”状态,DTD检测结果为“单端通话”。此情况下,已经收敛的滤波器系数未停止学习而错误地自适应更新、乃至发散。
由此可见:上述“情况B”的DTD误判,只会减慢AEC的学习收敛速度过程,并不会对AEC抵消回波的性能产生其它有害的影响;而上述“情况D”的DTD误判,则会对AEC抵消回波的性能产生有害的影响。
由于目前DTD在检测到“双端通话”发生时几乎均有迟后现象,那么这种无法及时而准确地检测出“双端通话”的真正开始阶段从而将实际已发生的“双端通话”继续错误判为“单端通话”的时延段,即使持续时间较短,也会导致滤波器系数的发散,对AEC性能影响很大。尽管通过调整DTD的相关参数可以在一定程度上提高DTD检测“双端通话”的及时和准确性,但从统计意义上说却无法避免误判“情况D”的发生。
鉴于语音信号的起始阶段其电平都存在一个渐强的变化过程(即从很小幅度在一定时间内逐渐增大),这便使得现有的“双端通话”检测技术均会迟后的检测到“双端通话”发生,而并非及时而准确地检测出“双端通话”发生的真正开始阶段。DTD这一迟后的检测现象将导致滤波器在此前会持续地错误更新,由此导致“双端通话”中存在更多残余回波。
发明内容
鉴于上述技术问题,本公开提供一种改善声学回波抵消器自适应学习的方法及装置,从而有效地避免DTD的“双端通话”判决迟后而引发的AEC性能下降问题。
依据本公开的一个方面,提供了一种改善声学回波抵消器自适应学习的方法,所述方法包括:在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平 滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
可选地,所述将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,具体包括:根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
可选地,根据公式
Figure PCTCN2016103714-appb-000001
确定所述第一时刻和所述第三时刻之间的所述第二时刻对应的所述滤波器的第二滤波器系数
Figure PCTCN2016103714-appb-000002
其中,n2<n<n3
Figure PCTCN2016103714-appb-000003
表示n3时刻的滤波器系数历史值,
Figure PCTCN2016103714-appb-000004
表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示所述第三时刻,n表示第所述一时刻和所述第三时刻之间的第二时刻。
可选地,所述方法还包括:在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
可选地,所述按照预定的更新策略对单端通话时所述滤波器系数进行更新,得到更新后的滤波器的滤波器系数,具体包括:
根据
Figure PCTCN2016103714-appb-000005
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000006
其中
Figure PCTCN2016103714-appb-000007
表示n-1时刻的滤波器系数矢量,δ表 示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000008
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
根据回波回程损耗增量,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000009
对应的性能指标参数λ;
若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000010
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000011
相等。
可选地,所述按照预定的更新策略对单端通话时所述滤波器系数进行更新,得到更新后的滤波器的滤波器系数,具体包括:
根据
Figure PCTCN2016103714-appb-000012
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000013
其中
Figure PCTCN2016103714-appb-000014
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000015
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
根据误差信号平均值,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000016
对应的性能指标参数λ;
若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000017
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000018
相等。
依据本公开的另一个方面,还提供了一种改善声学回波抵消器自适应学习的装置,所述装置包括:获取模块,用于在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;平滑切换模块,用于将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
可选地,所述平滑切换模块包括:插值单元,用于根据与第三时刻对应 的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;平滑切换单元,用于根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
可选地,所述插值单元根据公式
Figure PCTCN2016103714-appb-000019
确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数
Figure PCTCN2016103714-appb-000020
其中,n2<n<n3
Figure PCTCN2016103714-appb-000021
表示n3时刻的滤波器系数历史值,
Figure PCTCN2016103714-appb-000022
表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示第三时刻,n表示所述第一时刻和所述第三时刻之间的第二时刻。
可选地,所述装置还包括:更新模块,用于在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
可选地,所述更新模块进一步用于:根据
Figure PCTCN2016103714-appb-000023
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000024
其中
Figure PCTCN2016103714-appb-000025
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000026
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;根据回波回程损耗增量,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000027
对应的性能指标参数λ;若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000028
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000029
相等。
可选地,所述更新模块进一步用于:根据
Figure PCTCN2016103714-appb-000030
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000031
其中
Figure PCTCN2016103714-appb-000032
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000033
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;根据误差信号平均值,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000034
对应的性能指标参数λ;若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000035
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000036
相等。
依据本公开的又一个方面,还提供了一种声学回波抵消器,包括如上所述的改善声学回波抵消器自适应学习的装置。
依据本公开的再一个方面,还提供了一种声学回波抵消器,所述声学回波抵消器包括处理器、存储器和收发机,所述存储器通过总线接口与所述处理器链接并且用于存储由所述处理器在执行操作时所使用的计算机指令,所述收发机通过总线接口与所述处理器和所述存储器相链接并且用于在所述处理器的控制下接收和发送数据,其中所述计算机指令在由所述处理器执行时实现上述方法。
本公开的有益效果是:首先在单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
附图说明
图1为本公开的一些实施例中的改善声学回波抵消器自适应学习的方法流程图;
图2为本公开的一些实施例中的改善声学回波抵消器自适应学习的方法 流程图;
图3为本公开的一些实施例中的“单端通话”期间的每次执行的流程图;
图4为本公开的一些实施例中的线性插值原理的示意图;
图5为本公开的一些实施例中的基于NLMS学习算法的AEC基本工作原理和声学回波路径的示意图;
图6为本公开的一些实施例中的利用ERLE作为性能指标参数的基于NLMS的自适应学习机制的算法流程框图;
图7为本公开的一些实施例中的利用误差信号平均值作为性能指标参数的基于NLMS的自适应学习机制的算法流程框图;
图8为本公开的一些实施例中的改善声学回波抵消器自适应学习的装置的结构图;
图9为本公开的一些实施例中的改善声学回波抵消器自适应学习的装置的结构图;以及
图10为本公开的一些实施例中的声学回波抵消器的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开,本公开不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参见图1,图1示出了本公开的一些实施例中的改善声学回波抵消器(Acoustic Echo Cancellor,AEC)自适应学习的方法的流程图,该方法包括步骤S101和步骤S103。
步骤S101:在检测到双端通话时,获取在单端通话时声学回波抵消器中的滤波器的滤波器系数历史值。
需要说明的是,在本公开的实施例中可以采用DTD(Double-Talk Detection,双端通话检测)技术来检测双端通话,其中滤波器的滤波系数历史值可以是在单端通话时滤波器的最优滤波器系数历史值。AEC在单端通话状 态下的滤波器系数自适应学习算法包括但不限于:归一化最小均方(NLMS)算法、仿射投影算法(APA)或递归最小二乘(RLS)算法以及其相应的可变迭代步长(VSS)类学习算法。当然可以理解的是,在本公开的实施例中并不限定单端通话状态下的滤波器系数自适应学习算法。
步骤S103:将双端通话时滤波器的滤波器系数由第一滤波器系数平滑切换为滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,并根据滤波器系数历史值在平滑切换完成后进行回波抵消,其中,第一滤波器系数为检测到双端通话时滤波器的滤波器系数。
需要说明的是,上述平滑切换技术包括但不限于线性插值方法,当然也可以采用其他的方式进行平滑切换。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即将检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略对单端通话时滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
下面具体介绍采用线性插值来实现滤波器系数平滑切换的实施例。参见图2,图2中示出了本公开的一些实施例中的改善声学回波抵消器自适应学习的方法流程图,该方法包括步骤S201、步骤S203和步骤S205。
步骤S201:在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值。
需要说明的是,在本公开的实施例中可以采用DTD(Double-Talk Detection,双端通话检测)技术检测双端通话,其中滤波器的滤波器系数历史值可以是在单端通话时滤波器的最优滤波器系数历史值。AEC在单端通话状态下滤波器系数自适应学习算法包括但不限于:归一化最小均方(NLMS)算 法、仿射投影算法(APA)或递归最小二乘(RLS)算法以及其相应的可变迭代步长(VSS)类学习算法,当然可以理解的是,在本公开的实施例中并不限定单端通话状态下滤波器系数自适应学习算法。
步骤S203:根据第三时刻的滤波器的滤波器系数历史值,以及第一时刻的滤波器的第一滤波器系数,确定第一时刻和第三时刻之间的第二时刻的滤波器的第二滤波器系数,其中,第一时刻为检测到双端通话的时刻,第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻。
参见图4,在图4中,上述第一时刻对应图中的n2时刻,上述第三时刻对应图中的n3时刻,上述第二时刻对应图中的n时刻。上述第一滤波器系数对应图中的
Figure PCTCN2016103714-appb-000037
上述第二滤波器系数对应图中
Figure PCTCN2016103714-appb-000038
上述滤波器系数历史值对应图中
Figure PCTCN2016103714-appb-000039
具体地,在步骤S203中采用线性插值方法,根据第三时刻的滤波器的滤波器系数历史值,以及第一时刻的滤波器的第一滤波器系数,确定第一时刻和第三时刻之间的第二时刻的滤波器的第二滤波器系数。
步骤S205:根据第一滤波器系数、第二滤波器系数和滤波器系数历史值,将滤波器的第一滤波器系数平滑切换为滤波器系数历史值,并根据插值所得滤波器系数在平滑切换过程中进行回波抵消,根据滤波器系数历史值在平滑切换完成后进行回波抵消。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
下面的实施例仅描述滤波器系数更新方式和插值方式,其他内容可参见 上面的实施例。
下面介绍如何更新滤波器系数。假设实际回波路径为
Figure PCTCN2016103714-appb-000040
L为回波路径长度;n时刻的滤波器系数矢量为
Figure PCTCN2016103714-appb-000041
“双端通话”的起始时刻为n1;检测到“双端通话”的时刻为n2(n2>n1);插值完成的时刻为n3,n3>n2,且n3与n2间隔要适中,过小则仍会出现信号突变,过大则插值时间过长,参见图4。
滤波器的历史滤波器系数矢量为
Figure PCTCN2016103714-appb-000042
λA为AEC在滤波器系数矢量为
Figure PCTCN2016103714-appb-000043
时对应的性能指标参数;λ为AEC在系数矢量为
Figure PCTCN2016103714-appb-000044
时对应的性能指标参数;T为滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000045
的更换周期。
首先进行初始化,初始化如下:
Figure PCTCN2016103714-appb-000046
Counter=0             (2)
即在初始化后,滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000047
为零向量,将计数器的计数Counter设置为0。当DTD检测结果为“单端通话”时,
Figure PCTCN2016103714-appb-000048
会保持更新,每次均按照图3所示流程执行,以不断更新
Figure PCTCN2016103714-appb-000049
和λA来存储最佳的滤波器系数历史值及其对应的性能指标参数值。
参见图3,图3中示出了本公开的一些实施例中的“单端通话”期间的每次执行的流程图,该流程包括步骤S301-S315。
步骤S301:开始调用一次,然后进入步骤S303。
步骤S303:判断计数器的计数是否达到更换周期T,若‘是’,则进入步骤S305;否则进入步骤S313。
需要说明的是,更换周期T为滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000050
的更换周期,该更换周期T的时间值可根据具体情况进行设置,在本实施例中并不限定该更换周期T的具体值。
步骤S305:计算AEC在滤波器系数矢量为
Figure PCTCN2016103714-appb-000051
时对应的性能指标参数λ,然后进入步骤S307。
需要说明的是,步骤S305中可以用ERLE作为性能指标参数λ,或者以误差信号平均值作为性能指标参数λ。当然可以理解的是,在本公开的实施例中 并不限定计算在滤波器系数矢量为
Figure PCTCN2016103714-appb-000052
时对应的性能指标参数λ的具体方式。
步骤S307:计数器清零,然后进入步骤S309。
步骤S309:判断是否需要更新性能指标参数λA和对应的滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000053
若‘是’,则进入步骤S311;否则进入步骤S315。
也就是,在步骤S309中根据步骤S305中计算得到的性能指标参数λ,判断是否需要对当前记录的性能指标参数λA和滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000054
进行更新。
步骤S311:λA=λ,
Figure PCTCN2016103714-appb-000055
然后进入步骤S315。
也就是,将步骤S305中计算得到的λ作为最佳的性能指标参数λA进行记录,相应地,将与性能指标参数λ对应的滤波器系数矢量
Figure PCTCN2016103714-appb-000056
作为最佳的滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000057
即完成对性能指标参数λA和滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000058
的更新。
步骤S313:计数器增加一,然后进入步骤S315。
步骤S315:结束本次调用。
当DTD检测结果为“双端通话”时,
Figure PCTCN2016103714-appb-000059
将会停止更新,并冻结计数器(Counter)的值,直到“双端通话”阶段结束。结合图3,从n2时刻开始,在相关技术中的AEC做法是利用n2时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000060
来进行回波抵消,但在n1时刻(n1<n2)就开始进入到真正的“双端通话”状态,此时
Figure PCTCN2016103714-appb-000061
的更新已经受到了近端语音的影响而变得发散,以
Figure PCTCN2016103714-appb-000062
作为“双端通话”时的滤波器系数是不适当的,会导致听到残余回波,同时近端语音还会受到损伤。
在本实施例中,利用滤波器系数(收敛时)的最佳的滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000063
作为“双端通话”下的滤波器系数,其方法是:在已检测的“双端通话”期间,对任意时刻n≥n2,AEC滤波器的滤波器系数矢量将由
Figure PCTCN2016103714-appb-000064
平滑切换到
Figure PCTCN2016103714-appb-000065
以避免直接使用
Figure PCTCN2016103714-appb-000066
而带来语音信号的突变问题。需要说明的是,这种平滑切换技术可以包括但不局限于线性插值方法。
参见图4,图4中示出了本公开的一些实施例中的线性插值原理的示意图。
在图4中,n2时刻的滤波器系数矢量设为
Figure PCTCN2016103714-appb-000067
n3时刻的滤波器系数矢 量设为
Figure PCTCN2016103714-appb-000068
对n2时刻与n3时刻之间的滤波器系数进行插值,得到n2<n<n3时的滤波器系数矢量
Figure PCTCN2016103714-appb-000069
具体公式如下:
Figure PCTCN2016103714-appb-000070
其中,
Figure PCTCN2016103714-appb-000071
进而,利用公式(3),将n2<n<n3时的滤波器系数矢量
Figure PCTCN2016103714-appb-000072
Figure PCTCN2016103714-appb-000073
逐步平滑过渡至
Figure PCTCN2016103714-appb-000074
从n3时刻开始到“双端通话”结束,均利用
Figure PCTCN2016103714-appb-000075
来进行回波抵消。
每次检测到“双端通话”时,操作同上,从而解决由于DTD无法及时而准确的检测出“双端通话”真正的开始阶段而将“双端通话”误判为“单端通话”的问题。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即,将检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
下面的实施例以NLMS(Normalized Least Mean Square Algorithm,归一化最小均方算法)作为AEC中自适应滤波器的学习算法,以回波回程损耗增量(Echo Return Loss Enhancement,ERLE)作为性能指标参数λ。
基于NLMS学习算法的AEC基本工作原理如图5所示。
其中,NLMS的算法公式为:
误差信号为:
Figure PCTCN2016103714-appb-000076
上述e(n)表示n时刻的误差信号,
Figure PCTCN2016103714-appb-000077
表示n时刻的滤波器系数矢量,
Figure PCTCN2016103714-appb-000078
表示n时刻的远端语音信号矢量,y(n)表示n时刻的麦克风输出信号,其中n为正整数。
如下公式为基于n时刻的滤波器系数矢量计算得到n+1时刻的滤波器系数矢量,更新公式为:
Figure PCTCN2016103714-appb-000079
其中,δ表示正则化因子,μ表示步长参数。
ERLE的定义如下:
Figure PCTCN2016103714-appb-000080
上述e(n)表示n时刻的误差信号,其中n为正整数。
参见图6,图中示出了利用ERLE作为性能指标参数的基于NLMS的自适应学习机制的算法流程框图,该算法流程包括步骤S601-S623。
步骤S601:n=0时刻,初始化,然后进入步骤S603。
步骤S603:判断DTD检测结果是否为真,若DTD检测结果为‘否’,即单端通话,则进入步骤S605;若DTD检测结果为‘是’,即双端通话,则进入步骤S623。
步骤S605:利用AEC的NLMS算法公式(5)和(6)更新
Figure PCTCN2016103714-appb-000081
然后进入步骤S607。
步骤S607:判断计数器的计数Counter是否达到更换周期T,若‘是’,则进入步骤S609;否则进入步骤S621。
步骤S609:利用公式(7)计算AEC的ERLE性能指标参数λ,然后进入步骤S611。
步骤S611:计数器清零,然后进入步骤S613。
步骤S613:比较λ与λA,若λ大于λA,则进入步骤S615;否则进入步骤S617。
步骤S615:λA=λ,
Figure PCTCN2016103714-appb-000082
然后进入步骤S617。
也就是,若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000083
调整为与计算得到的n时刻的滤波器 系数矢量
Figure PCTCN2016103714-appb-000084
相等。
步骤S617:n=n+1,然后进入步骤S619。
步骤S619:判断是否结束,若‘是’,则结束流程;否则,返回步骤S603。
步骤S621:计数器加一,然后进入步骤S617。
步骤S623:利用公式(3)和(4)进行插值,将n2<n<n3时的滤波器系数逐步平滑过渡至
Figure PCTCN2016103714-appb-000085
并停止更新。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数的历史值而带来语音信号的突变的问题。
下面的实施例以NLMS作为AEC中自适应滤波器的学习方法,以误差信号平均值作为性能指标参数λ。
基于NLMS学习算法的AEC基本工作原理如图5所示。
将误差信号平均值定义为递归平均,公式如下:
λ=ebar(n)=α·ebar(n-1)+(1-α)·|e(n)|  (8)
λ=ebar(n)=α·ebar(n-1)+(1-α)·|e(n)|2  (9)
其中,ebar(n)表示n时刻的误差信号平均值;ebar(n-1)表示n-1时刻的误差信号平均值;e(n)表示n时刻的误差信号;α是递归平滑因子,取值范围是(0,1),通常取接近于1,其中n为正整数。
参见图7,图7中示出了利用误差信号平均值作为性能指标参数的基于NLMS为AEC中的自适应滤波器学习的机制的算法流程框图。该算法流程包括步骤S701-S723。
步骤S701:n=0时刻,初始化,然后进入步骤S703。
步骤S703:判断DTD检测结果是否为真,若DTD检测结果为‘否’,即单端通话时,则进入步骤S705;若DTD检测结果为‘是’,即双端通话时,则进入步骤S723。
步骤S705:利用AEC的NLMS算法公式(5)和(6)更新
Figure PCTCN2016103714-appb-000086
然后进入步骤S707。
步骤S707:判断计数器的计数是否达到更换周期T,若‘是’,则进入步骤S709;否则进入步骤S721。
步骤S709:利用公式(8)或公式(9)计算AEC误差信号平均值ebar性能指标参数λ,然后进入步骤S711。
步骤S711:计数器清零,然后进入步骤S713。
步骤S713:比较λ与λA,若λ小于λA,则进入步骤S715;否则进入步骤S717。
步骤S715:λA=λ,
Figure PCTCN2016103714-appb-000087
然后进入步骤S717。
也就是,若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000088
调整为与计算得到的n时刻的滤波器系数历史值矢量
Figure PCTCN2016103714-appb-000089
相等。
步骤S717:n=n+1,然后进入步骤S719。
步骤S719:判断是否结束,若‘是’,则结束流程;否则,返回步骤S703。
步骤S721:计数器加一,然后进入步骤S717。
步骤S723:利用公式(3)和(4)进行插值,将n2<n<n3时的滤波器系数逐步平滑过渡至
Figure PCTCN2016103714-appb-000090
并停止更新。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略 对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
下面介绍本公开提供的一种改善声学回波抵消器自适应学习的装置的实施例。装置实施例与上述的方法实施例属于同一构思,装置实施例中未详尽描述的细节内容,可以参考上述方法实施例。
参见图8,图8中示出了改善声学回波抵消器自适应学习的装置的结构图,该装置包括:获取模块81,用于在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;以及平滑切换模块83,用于将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,并根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
需要说明的是,上述平滑切换模块83可以包括:插值单元831,用于根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;以及平滑切换单元833,用于根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
具体地,插值单元831可以根据公式
Figure PCTCN2016103714-appb-000091
确定与所述第一时刻和第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数
Figure PCTCN2016103714-appb-000092
其中,n2<n<n3
Figure PCTCN2016103714-appb-000093
Figure PCTCN2016103714-appb-000094
表示n3时刻的滤波器系数历史值,
Figure PCTCN2016103714-appb-000095
表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示第三时刻,n表示第一时刻和第 三时刻之间的第二时刻。
当然可以理解的是,在本实施例中也可以采用其他技术实现平滑切换,并不限于上述线性插值方法。
由于在相关技术中,传统AEC做法是利用检测到双端通话时刻的滤波器系数来进行回波抵消,但其实在检测到双端通话时刻之前,就开始进入到真正的“双端通话”状态,导致检测到双端通话时刻的滤波器系数的更新已经受到了近端语音的影响而变得发散,即检测到双端通话时刻的滤波器系数作为“双端通话”时的滤波器系数是不适当的,会听到残余回波,同时近端语音还会受到损伤。而在本实施例中,首先在单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,并记录在单端通话时滤波器的滤波器系数历史值,然后将双端通话时滤波器的当前滤波器系数平滑切换为滤波器系数的历史值,以避免直接使用滤波器系数历史值而带来语音信号的突变的问题。
参见图9,图9中示出了改善声学回波抵消器自适应学习的装置的结构图,该装置包括:获取模块91,用于在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;平滑切换模块93,用于将双端通话时将所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数;以及更新模块95,用于在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
需要说明的是,上述平滑切换模块93可以包括:插值单元931,用于根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;以及平滑切换单元933,用于根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤 波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
具体地,插值单元931可以根据公式
Figure PCTCN2016103714-appb-000096
确定与所述第一时刻和第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数
Figure PCTCN2016103714-appb-000097
其中,n2<n<n3
Figure PCTCN2016103714-appb-000098
表示n3时刻的滤波器系数历史值,
Figure PCTCN2016103714-appb-000099
表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示第三时刻,n表示第一时刻和第三时刻之间的第二时刻。
当然可以理解的是,在本实施例中也可以采用其他技术实现平滑切换,并不限于上述线性插值方法。
需要说明的是,更新模块95进一步用于:根据
Figure PCTCN2016103714-appb-000100
Figure PCTCN2016103714-appb-000101
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000102
其中
Figure PCTCN2016103714-appb-000103
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000104
表示n-1时刻的远端语音信号矢量,e(n-1)表示n-1时刻的误差信号;根据回波回程损耗增量,计算得到n时刻的与滤波器系数矢量
Figure PCTCN2016103714-appb-000105
对应的性能指标参数λ;以及若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000106
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000107
相等。
需要说明的是,更新模块95进一步用于:根据
Figure PCTCN2016103714-appb-000108
Figure PCTCN2016103714-appb-000109
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000110
其中
Figure PCTCN2016103714-appb-000111
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000112
表示n-1时刻的远端语音信号矢量,e(n-1)表示n-1时刻的误差信号;根据误差信号平均值,计算得到n时刻的与滤波器系数矢量
Figure PCTCN2016103714-appb-000113
对应的性能指标参数λ;以及若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000114
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000115
相等。
本公开的实施例还提供了一种声学回波抵消器,其包括如上述所描述的改善声学回波抵消器自适应学习的装置。
参见图10,图10中示出了一种声学回波抵消器,该声学回波抵消器包括:第一处理器1001、第一存储器1002和第一收发机1003,其中第一处理器1001用于读取第一存储器1002中的程序,以执行下列过程:在检测到双端通话时,获取在单端通话时声学回波抵消器中的滤波器的滤波器系数历史值;将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,并根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
第一收发机1003用于在第一处理器1001的控制下接收和发送数据。
可选地,第一处理器1001具体用于:根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为在双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;以及根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,并根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
可选地,第一处理器1001具体用于:根据公式
Figure PCTCN2016103714-appb-000116
Figure PCTCN2016103714-appb-000117
确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数
Figure PCTCN2016103714-appb-000118
其中,n2<n<n3
Figure PCTCN2016103714-appb-000119
Figure PCTCN2016103714-appb-000120
表示n3时刻的滤波器系数历史值,
Figure PCTCN2016103714-appb-000121
表示n2时刻的第一滤波器系数;n2 表示检测到双端通话时的第一时刻,n3表示第三时刻,n表示第一时刻和第三时刻之间的第二时刻。
可选地,第一处理器1001具体用于:在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
可选地,第一处理器1001具体用于:根据
Figure PCTCN2016103714-appb-000122
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000123
其中
Figure PCTCN2016103714-appb-000124
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000125
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;根据回波回程损耗增量,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000126
对应的性能指标参数λ;若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000127
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000128
相等。
可选地,第一处理器1001具体用于:根据
Figure PCTCN2016103714-appb-000129
计算得到n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000130
其中
Figure PCTCN2016103714-appb-000131
表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
Figure PCTCN2016103714-appb-000132
表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;根据误差信号平均值,计算得到与n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000133
对应的性能指标参数λ;若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
Figure PCTCN2016103714-appb-000134
调整为与计算得到的n时刻的滤波器系数矢量
Figure PCTCN2016103714-appb-000135
相等。
可选地,第一处理器1001可以是CPU(中央处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field Programmable Gate Array,现场可编程门阵列)或CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。
其中,在图10中,总线架构可以包括任意数量的互联的总线和桥,具体由第一处理器1001代表的一个或多个处理器和第一存储器1002代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。第一收发机1003可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。第一处理器1001负责管理总线架构和通常的处理,第一存储器1002可以存储第一处理器1001在执行操作时所使用的数据。
在本公开所提供的几个实施例中,应该理解到,所揭露的方法和装置可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以单独地物理地包括在各个单元中,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代 码的介质。
以上所述的是本公开的可选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本公开所述的原理前提下还可以作出若干改进和润饰,这些改进和润饰也在本公开的保护范围内。

Claims (14)

  1. 一种改善声学回波抵消器自适应学习的方法,所述方法包括:
    在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;
    将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
  2. 根据权利要求1所述的方法,其中,所述将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,具体包括:
    根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;
    根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
  3. 根据权利要求2所述的方法,其中,根据公式
    Figure PCTCN2016103714-appb-100001
    Figure PCTCN2016103714-appb-100002
    确定与所述第一时刻和所述第三时刻之间的所述第二时刻对应的所述滤波器的第二滤波器系数
    Figure PCTCN2016103714-appb-100003
    其中,n2<n<n3,
    Figure PCTCN2016103714-appb-100004
    Figure PCTCN2016103714-appb-100005
    Figure PCTCN2016103714-appb-100006
    表示n3时刻的滤波器系数历史值,
    Figure PCTCN2016103714-appb-100007
    表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示所述第三时刻,n表示所述第一时刻和所述第三时刻之间的所述第二时刻。
  4. 根据权利要求1所述的方法,所述方法还包括:
    在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
  5. 根据权利要求4所述的方法,其中,所述按照预定的更新策略对单端通话时所述滤波器系数进行更新,得到更新后的滤波器的滤波器系数,具体包括:
    根据
    Figure PCTCN2016103714-appb-100008
    计算得到n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100009
    其中
    Figure PCTCN2016103714-appb-100010
    表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
    Figure PCTCN2016103714-appb-100011
    表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
    根据回波回程损耗增量,计算得到与n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100012
    对应的性能指标参数λ;
    若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
    Figure PCTCN2016103714-appb-100013
    调整为与计算得到的n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100014
    相等。
  6. 根据权利要求4所述的方法,其中,所述按照预定的更新策略对单端通话时所述滤波器系数进行更新,得到更新后的滤波器的滤波器系数,具体包括:
    根据
    Figure PCTCN2016103714-appb-100015
    计算得到n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100016
    其中
    Figure PCTCN2016103714-appb-100017
    表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
    Figure PCTCN2016103714-appb-100018
    表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
    根据误差信号平均值,计算得到与n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100019
    对应的性能指标参数λ;
    若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
    Figure PCTCN2016103714-appb-100020
    调整为与计算得到的n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100021
    相等。
  7. 一种改善声学回波抵消器自适应学习的装置,所述装置包括:
    获取模块,用于在检测到双端通话时,获取在单端通话时声学回波抵消器中滤波器的滤波器系数历史值;
    平滑切换模块,用于将双端通话时所述滤波器的滤波器系数由第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消,其中,所述第一滤波器系数为检测到双端通话时所述滤波器的滤波器系数。
  8. 根据权利要求7所述的装置,其中,所述平滑切换模块包括:
    插值单元,用于根据与第三时刻对应的所述滤波器的滤波器系数历史值,以及与第一时刻对应的所述滤波器的第一滤波器系数,确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数,其中,所述第一时刻为检测到双端通话的时刻,所述第三时刻为双端通话时平滑切换到所述滤波器的滤波器系数历史值的时刻;
    平滑切换单元,用于根据所述第一滤波器系数、所述第二滤波器系数和所述滤波器系数历史值,将所述滤波器的第一滤波器系数平滑切换为所述滤波器系数历史值,并根据插值所得的滤波器系数在平滑切换过程中进行回波抵消,根据所述滤波器系数历史值在平滑切换完成后进行回波抵消。
  9. 根据权利要求8所述的装置,其中,所述插值单元根据公式
    Figure PCTCN2016103714-appb-100022
    确定与所述第一时刻和所述第三时刻之间的第二时刻对应的所述滤波器的第二滤波器系数
    Figure PCTCN2016103714-appb-100023
    其中,n2<n<n3
    Figure PCTCN2016103714-appb-100024
    Figure PCTCN2016103714-appb-100025
    表示n3时刻的滤波器系数历史值,
    Figure PCTCN2016103714-appb-100026
    表示n2时刻的第一滤波器系数;n2表示检测到双端通话时的第一时刻,n3表示所述第三时刻,n表示所述第一时刻和所述第三时刻之间的第二时刻。
  10. 根据权利要求7所述的装置,其中,所述装置还包括:
    更新模块,用于在检测到单端通话时,按照预定的更新策略对单端通话时所述滤波器的滤波器系数进行更新,得到更新后的滤波器的滤波器系数。
  11. 根据权利要求10所述的装置,其中,所述更新模块进一步用于:
    根据
    Figure PCTCN2016103714-appb-100027
    计算得到n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100028
    其中
    Figure PCTCN2016103714-appb-100029
    表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
    Figure PCTCN2016103714-appb-100030
    表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
    根据回波回程损耗增量,计算得到与n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100031
    对应的性能指标参数λ;
    若计算得到的性能指标参数λ大于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
    Figure PCTCN2016103714-appb-100032
    调整为与计算得到的n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100033
    相等。
  12. 根据权利要求10所述的装置,其中,所述更新模块进一步用于:
    根据
    Figure PCTCN2016103714-appb-100034
    计算得到n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100035
    其中
    Figure PCTCN2016103714-appb-100036
    表示n-1时刻的滤波器系数矢量,δ表示正则化因子,μ表示步长参数,
    Figure PCTCN2016103714-appb-100037
    表示n-1时刻远端语音信号矢量,e(n-1)表示n-1时刻误差信号;
    根据误差信号平均值,计算得到与n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100038
    对应的性能指标参数λ;
    若计算得到的性能指标参数λ小于之前记录的性能指标参数历史值λA,则将性能指标参数历史值λA调整为与计算得到的性能指标参数λ相等,并将滤波器的滤波器系数历史值
    Figure PCTCN2016103714-appb-100039
    调整为与计算得到的n时刻的滤波器系数矢量
    Figure PCTCN2016103714-appb-100040
    相等。
  13. 一种声学回波抵消器,包括如权利要求7至12中任一项所述的改善声学回波抵消器自适应学习的装置。
  14. 一种声学回波抵消器,包括:
    处理器,
    存储器,通过总线接口与所述处理器链接,并且用于存储由所述处理器在执行操作时所使用的计算机指令,
    收发机,通过总线接口与所述处理器和所述存储器相链接,并且用于在所述处理器的控制下接收和发送数据,
    其中所述计算机指令在由所述处理器执行时实现根据权利要求1-6中任一项所述的方法。
PCT/CN2016/103714 2015-11-11 2016-10-28 一种改善声学回波抵消器自适应学习的方法及装置 WO2017080371A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510767041.8 2015-11-11
CN201510767041.8A CN106686270A (zh) 2015-11-11 2015-11-11 一种改善声学回波抵消器自适应学习的方法及装置

Publications (1)

Publication Number Publication Date
WO2017080371A1 true WO2017080371A1 (zh) 2017-05-18

Family

ID=58694727

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2016/103714 WO2017080371A1 (zh) 2015-11-11 2016-10-28 一种改善声学回波抵消器自适应学习的方法及装置

Country Status (2)

Country Link
CN (1) CN106686270A (zh)
WO (1) WO2017080371A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021114514A1 (en) * 2019-12-13 2021-06-17 Bestechnic (Shanghai) Co., Ltd. Active noise control headphones
CN110996216B (zh) * 2020-02-26 2020-06-23 恒玄科技(北京)有限公司 对耳机内均衡滤波器进行配置的方法、装置、系统及耳机

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6574337B1 (en) * 1998-11-16 2003-06-03 Oki Electric Industry, Co., Ltd. Adaptive echo canceler undoing adaptations made during double-talk
US6757384B1 (en) * 2000-11-28 2004-06-29 Lucent Technologies Inc. Robust double-talk detection and recovery in a system for echo cancelation
CN102970638A (zh) * 2011-11-25 2013-03-13 斯凯普公司 处理信号

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6574337B1 (en) * 1998-11-16 2003-06-03 Oki Electric Industry, Co., Ltd. Adaptive echo canceler undoing adaptations made during double-talk
US6757384B1 (en) * 2000-11-28 2004-06-29 Lucent Technologies Inc. Robust double-talk detection and recovery in a system for echo cancelation
CN102970638A (zh) * 2011-11-25 2013-03-13 斯凯普公司 处理信号

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
HAN, HUA ET AL.: "Modified NLMS Algorithm and Its Simulation Research in Adaptive Inverse Control", MEASUREMENT & CONTROL TECHNOLOGY, vol. 27, no. 5, 31 May 2008 (2008-05-31), ISSN: 1000-8829 *
WANG, FEI ET AL.: "Improved Transfer Logic of Two-Path Algorithm for Acoustic Echo Cancellation", JOURNAL OF COMPUTER APPLICATIONS, vol. 32, no. 7, 1 July 2012 (2012-07-01), ISSN: 1001-9081 *

Also Published As

Publication number Publication date
CN106686270A (zh) 2017-05-17

Similar Documents

Publication Publication Date Title
CN105472189B (zh) 回波消除检测器、消除回波的方法和比较发生器
US8924337B2 (en) Recursive Bayesian controllers for non-linear acoustic echo cancellation and suppression systems
EP2982102B1 (en) Echo removal
US10009478B2 (en) Nearend speech detector
KR100721034B1 (ko) 잔여 반향 필터를 사용하여 음향 반향 소거 시스템을향상시키기 위한 방법
KR102194165B1 (ko) 에코 제거기
KR20150097686A (ko) 에코 억제
EP2987313B1 (en) Echo removal
US20050220043A1 (en) Echo cancellation
CN109961798B (zh) 回声消除系统、方法、可读计算机存储介质、及终端
WO2017080371A1 (zh) 一种改善声学回波抵消器自适应学习的方法及装置
US6950842B2 (en) Echo canceller having an adaptive filter with a dynamically adjustable step size
CN115834778A (zh) 一种回声消除方法、装置、电子设备及存储介质
JP4663323B2 (ja) スパース・チャンネルのためのエコー・キャンセラ
US20120224686A1 (en) Stochastic vector based network echo cancellation
EP1887708B1 (en) Delayed adaptation structure for improved double-talk immunity in echo cancellation devices
US20050117739A1 (en) Apparatus and method for echo cancellation
Lindstrom et al. An improvement of the two-path algorithm transfer logic for acoustic echo cancellation
JP2017098861A (ja) エコーキャンセラ及びエコーキャンセル方法
Hongxing et al. Simplified RPE algorithm and its fixed-point implementation
Liu et al. An improved transfer logic of the two-path algorithm for acoustic echo cancellation
JP2023024338A (ja) 制御パラメータを用いた音響エコーキャンセル
JP2010011265A (ja) エコーキャンセラ装置及びその方法
CN113037939A (zh) 一种回声路径检测方法及电子设备、存储介质
Lindstrom et al. A method for reduced finite precision effects in parallel filtering echo cancellation

Legal Events

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

Ref document number: 16863548

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16863548

Country of ref document: EP

Kind code of ref document: A1