A method and device for suppressing echo in terminal communication

By using linear filtering and nonlinear suppression techniques in terminal communication, the target near-end signal is generated, which solves the problems of poor echo suppression effect and duplex suppression, and improves the communication quality.

CN113938548BActive Publication Date: 2024-12-24ALIBABA GROUP HOLDING LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202010605405.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-06-29
Publication Date
2024-12-24
Estimated Expiration
2040-06-29

AI Technical Summary

Technical Problem

The prior art has poor effect in the echo suppression process and is prone to duplex suppression.

Method used

By acquiring the remote signal and the current near-end signal, input the preset target linear filtering model to generate an estimated echo signal, perform echo cancellation, and perform nonlinear echo suppression of the residual signal according to the terminal communication mode to generate the target near-end signal.

Benefits of technology

The echo suppression effect is improved, duplex suppression is avoided, and the communication quality of terminal communication is significantly improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113938548B_ABST
    Figure CN113938548B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides an echo suppression method and device for terminal communication. During the terminal communication process, after receiving a far-end signal sent by a far-end terminal, the local terminal can input the far-end signal into a linear filtering model for filtering to generate an estimated echo signal, and then perform echo cancellation on the current near-end signal collected by a microphone of the local terminal according to the estimated echo signal to generate a residual signal. Then, the residual signal can be further echo suppressed according to the communication mode of the terminal communication, so that the near-end signal is first linearly echo cancelled through a linear filtering mode, and then nonlinear echo suppression is performed, thereby improving the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to an echo suppression method for terminal communication and an echo suppression device for terminal communication. Background Art

[0002] Echo refers to the echo generated during voice communication, that is, the user can hear his or her own voice transmitted back by the other party during a voice call. Echo cancellation and echo suppression are methods of reducing echoes during, for example, communication. The purpose is to improve signal quality by preventing echoes from being generated or removing / reducing echoes after they already exist. However, the current echo cancellation process is prone to duplex suppression or insufficient noise estimation, resulting in more echoes. Duplex suppression refers to the phenomenon that when two parties speak at the same time during voice communication, the voice of the other party is suppressed. Therefore, there is a need for a method that can eliminate echoes generated during voice communication without causing duplex suppression. Summary of the invention

[0003] The technical problem to be solved by the embodiments of the present application is to provide an echo suppression method for terminal communication, so as to solve the problem that in the echo suppression process in the prior art, the echo suppression effect is poor and duplex suppression is easy to occur.

[0004] Correspondingly, an embodiment of the present application also provides an echo suppression device for terminal communication to ensure the implementation and application of the above method.

[0005] In order to solve the above problem, the embodiment of the present application discloses a method for echo suppression of terminal communication, including:

[0006] Get the far-end signal and the current near-end signal;

[0007] Inputting the far-end signal into a preset target linear filter model to generate an estimated echo signal;

[0008] Performing echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal;

[0009] According to the current communication mode of the terminal, echo suppression is performed on the residual signal to generate a target near-end signal.

[0010] Optionally, performing echo suppression on the residual signal according to a current communication mode of the terminal to generate a target near-end signal includes:

[0011] determining a target suppression mode corresponding to a communication mode of the terminal;

[0012] Acquire a current suppression mode for the residual signal, and switch the current suppression mode to a target suppression mode;

[0013] Acquiring an echo suppression coefficient of the target suppression mode;

[0014] The echo suppression coefficient is used to perform echo suppression on the residual signal to generate a target near-end signal.

[0015] Optionally, the communication mode includes a duplex communication mode and a simplex communication mode, and the determining a target suppression mode corresponding to the communication mode of the terminal includes:

[0016] When the communication mode is the duplex communication mode, determining that the suppression mode for the residual signal is a first suppression mode, where the first suppression mode is a mode for reducing echo suppression performed on the residual signal;

[0017] When the communication mode is the simplex communication mode, it is determined that the suppression mode for the residual signal is the second suppression mode, and the second suppression mode is a mode for increasing the echo suppression for the residual signal.

[0018] Optionally, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and performing echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal includes:

[0019] The estimated echo signal is used to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal.

[0020] Optionally, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the target linear filter model is generated in the following manner:

[0021] Determine a residual echo signal for the far-end echo signal using the far-end echo signal and the estimated echo signal;

[0022] Determining a target step size for a preset initial linear filter model according to the residual echo signal;

[0023] The initial linear filter model is iterated according to the residual echo signal and the target step size to generate a target linear filter model.

[0024] Optionally, determining a target step size for a preset initial linear filter model according to the residual echo signal includes:

[0025] Comparing the residual echo signal with a preset echo signal to generate an echo residual value;

[0026] The target step length is determined using the residual echo signal and the echo residual value.

[0027] Optionally, iterating the initial linear filter model according to the residual echo signal and the target step size to generate a target linear filter model includes:

[0028] Determine a deviation value for the initial linear filter model using the residual echo signal and the target step size;

[0029] The initial linear filter model is iterated according to the deviation value to generate a target linear filter model.

[0030] The embodiment of the present application also discloses an echo suppression device for terminal communication, including:

[0031] A signal acquisition module is used to acquire a far-end signal and a current near-end signal;

[0032] A linear filtering module, used for inputting the far-end signal into a preset target linear filtering model to generate an estimated echo signal;

[0033] an echo cancellation module, configured to perform echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal;

[0034] The echo suppression module is used to perform echo suppression on the residual signal according to the current communication mode of the terminal to generate a target near-end signal.

[0035] Optionally, the echo suppression module includes:

[0036] A suppression mode determination submodule, used to determine a target suppression mode corresponding to the communication mode of the terminal;

[0037] A suppression mode switching submodule, used for acquiring a current suppression mode for the residual signal, and switching the current suppression mode to a target suppression mode;

[0038] An echo suppression coefficient acquisition submodule, used to acquire the echo suppression coefficient of the target suppression mode;

[0039] The echo suppression submodule is used to perform echo suppression on the residual signal by using the echo suppression coefficient to generate a target near-end signal.

[0040] Optionally, the suppression mode determination submodule is specifically used for:

[0041] When the communication mode is the duplex communication mode, determining that the suppression mode for the residual signal is a first suppression mode, where the first suppression mode is a mode for reducing echo suppression performed on the residual signal;

[0042] When the communication mode is the simplex communication mode, it is determined that the suppression mode for the residual signal is the second suppression mode, and the second suppression mode is a mode for increasing the echo suppression for the residual signal.

[0043] Optionally, the echo suppression module includes:

[0044] A suppression mode switching submodule, used for acquiring a current suppression mode for the residual signal, and switching the current suppression mode to the suppression mode;

[0045] A suppression coefficient acquisition submodule, used to acquire the echo suppression coefficient of the target suppression mode;

[0046] The echo suppression submodule is used to perform echo suppression on the residual signal by using the echo suppression coefficient to generate a target near-end signal.

[0047] Optionally, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the echo cancellation module is specifically configured to:

[0048] The estimated echo signal is used to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal.

[0049] Optionally, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the target linear filter model is generated by the following modules:

[0050] a residual echo signal determining module, configured to determine a residual echo signal for the far-end echo signal by using the far-end echo signal and the estimated echo signal;

[0051] A target step length determination module, used to determine a target step length for a preset initial linear filter model according to the residual echo signal;

[0052] The model iteration module is used to iterate the initial linear filter model according to the residual echo signal and the target step size to generate a target linear filter model.

[0053] Optionally, the target step length determination module includes:

[0054] An echo residual value generating submodule, used for comparing the residual echo signal with a preset echo signal to generate an echo residual value;

[0055] The target step length determination submodule is used to determine the target step length using the residual echo signal and the echo residual value.

[0056] Optionally, the model iteration module includes:

[0057] a deviation value determination submodule, configured to determine a deviation value for the initial linear filter model using the residual echo signal and the target step size;

[0058] The model iteration submodule is used to iterate the initial linear filtering model according to the deviation value to generate a target linear filtering model.

[0059] The present application also discloses an electronic device, including:

[0060] one or more processors; and

[0061] One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, cause the apparatus to perform one or more of the methods described above.

[0062] The embodiments of the present application also disclose one or more machine-readable media on which instructions are stored, which, when executed by one or more processors, enable the processors to perform one or more of the methods described above.

[0063] The embodiments of the present application include the following advantages:

[0064] In an embodiment of the present application, during the terminal communication process, after receiving the far-end signal sent by the far-end terminal, the local terminal can input the far-end signal into a linear filtering model for filtering to obtain an estimated echo signal, and then perform echo cancellation on the current near-end signal collected by the local terminal microphone according to the estimated echo signal to generate a residual signal. Then, the residual signal can be further echo suppressed according to the communication mode of the terminal communication, so that the near-end signal is first linearly echo cancelled through the linear filtering mode, and then nonlinear echo suppression is performed, thereby improving the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication. BRIEF DESCRIPTION OF THE DRAWINGS

[0065] Figure 1 This is a flowchart of the steps of Embodiment 1 of a method for echo suppression in terminal communication of the present application;

[0066] Figure 2 is a schematic diagram of signal transmission in an embodiment of the present application;

[0067] Figure 3 This is a flowchart of the steps of Embodiment 2 of a method for echo suppression in terminal communication of the present application;

[0068] Figure 4 It is a schematic diagram of the structure of the echo processing in the embodiment of the present application;

[0069] Figure 5 It is a structural block diagram of an embodiment of an echo suppression device for terminal communication of the present application. DETAILED DESCRIPTION

[0070] In order to make the above-mentioned objects, features and advantages of the present application more obvious and easy to understand, the present application is further described in detail below in conjunction with the accompanying drawings and specific implementation methods.

[0071] The local terminal may be a user terminal used by a local user, and the remote terminal may be a user terminal communicating with the local terminal. During the communication process, the user terminal may include at least one local terminal and at least one remote terminal. For example, when a user is conducting voice communication, the communication mode may be one-to-one; when conducting a video conference, the communication modes may be one-to-many, many-to-many, and many-to-one; when conducting online teaching, the communication mode may be one-to-many, and so on.

[0072] During the communication between terminals, acoustic echo or line echo is likely to occur due to problems such as environment and equipment, so these echoes need to be eliminated to ensure better communication quality for users in communication. For the local terminal, it is necessary to process the far-end signal sent by the far-end terminal and reduce the noise of the near-end signal collected by the local microphone, so that the near-end signal sent to the far-end terminal is a clean signal, otherwise it is easy to cause an echo at the far-end terminal, reducing the communication quality.

[0073] Therefore, one of the core concepts of the embodiments of the present application is to first perform linear echo elimination on the near-end signal through a linear filtering mode, and then use nonlinear echo suppression to improve the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication.

[0074] Reference Figure 1 , shows a flowchart of a first embodiment of an echo suppression method for terminal communication of the present application, which may specifically include the following steps:

[0075] Step 101, obtaining a far-end signal and a current near-end signal;

[0076] As an example, taking a one-to-one communication method as an example, after the remote terminal collects the user's voice signal through a microphone, it can be sent to the local terminal. When the local terminal receives the far-end signal sent by the remote terminal, it can collect the local near-end signal through the microphone and send it to the remote terminal, thereby realizing communication between the local terminal and the remote terminal.

[0077] like Figure 2As shown, a schematic diagram of signal transmission in an embodiment of the present application is shown, wherein M is the microphone of the remote terminal, L is the speaker of the remote terminal, M' is the microphone of the local terminal, and L' is the speaker of the local terminal. After M collects the voice signal of the remote user and performs echo processing, the remote signal x(n) can be sent to the local terminal. After M' collects the current near-end signal d(n), it needs to perform echo processing to generate the target near-end signal y(n), and then send the target near-end signal to the remote terminal to realize terminal communication.

[0078] Step 102, inputting the far-end signal into a preset target linear filter model to generate an estimated echo signal;

[0079] After receiving the far-end signal sent by the far-end terminal, the local terminal can input the trained target linear filter model to perform linear echo cancellation, thereby obtaining an estimated echo signal, through which the near-end signal collected by the local terminal can be echo-cancelled. The estimated echo signal can be an echo estimation value generated by the linear filter model according to the far-end signal, which is used to cancel the echo signal of the far-end signal.

[0080] Step 103, performing echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal;

[0081] In a specific implementation, the current near-end signal may include an echo signal generated when a far-end signal is played in a local terminal speaker, and an effective voice signal of a local user collected by a microphone. The current near-end signal may be echo-cancelled according to an estimated echo signal generated by a linear filtering model, thereby obtaining a residual signal after linear echo cancellation.

[0082] Step 104: Perform echo suppression on the residual signal according to the current communication mode of the terminal to generate a target near-end signal.

[0083] In the specific implementation, nonlinear echo suppression is introduced in the local terminal, and nonlinear echo suppression is further performed on the near-end signal after linear echo cancellation. Different suppression modes can be used for different communication modes of the terminal to perform nonlinear echo suppression on the residual signal.

[0084] Specifically, after the local terminal determines the target suppression mode corresponding to the current communication mode, it further performs nonlinear echo suppression on the residual signal according to the target suppression mode, thereby generating the final target near-end signal. The echo signal is doubly eliminated through linear echo elimination and nonlinear echo suppression, which improves the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication.

[0085] In an embodiment of the present application, during the terminal communication process, after receiving the far-end signal sent by the far-end terminal, the local terminal can input the far-end signal into a linear filtering model for filtering to obtain an estimated echo signal, and then perform echo cancellation on the current near-end signal collected by the local terminal microphone according to the estimated echo signal to generate a residual signal. Then, the residual signal can be further echo suppressed according to the communication mode of the terminal communication, so that the near-end signal is first linearly echo cancelled through the linear filtering mode, and then nonlinear echo suppression is performed, thereby improving the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication.

[0086] Reference Figure 3 , shows a flowchart of the steps of Embodiment 2 of a method for echo suppression in terminal communication of the present application, which may specifically include the following steps:

[0087] Step 301, acquiring a far-end signal and a current near-end signal, wherein the current near-end signal includes a far-end echo signal corresponding to the far-end signal;

[0088] In a specific implementation, the current near-end signal may include a far-end echo signal generated when the far-end signal is played in the local terminal speaker, and a valid voice signal of the local user collected by the microphone. The far-end echo signal needs to be echo-cancelled to obtain a clean near-end signal.

[0089] Step 302, inputting the far-end signal into a preset target linear filter model to generate an estimated echo signal;

[0090] After receiving the far-end signal sent by the far-end terminal, the local terminal can input the trained target linear filter model to perform linear echo cancellation, thereby obtaining an estimated echo signal, through which the near-end signal collected by the local terminal can be echo-cancelled. The estimated echo signal can be an echo estimation value generated by the linear filter model according to the far-end signal, which is used to cancel the echo signal of the far-end signal.

[0091] In an optional embodiment of the present application, in the process of echo processing of the near-end signal, the linear filter model can be adaptively learned, and the fixed learning step size can be adjusted to the adaptive learning step size, so that the linear filter model is continuously optimized while the linear echo cancellation is performed, so that the effect of the linear echo cancellation is better. The training process of the linear filter model may include the following steps:

[0092] Firstly, a far-end echo signal and an estimated echo signal are used to determine a residual echo signal for the far-end echo signal. Then, a target step size for a preset initial linear filter model is determined according to the estimated echo signal. Then, the initial linear filter model is iterated according to the residual echo signal and the target step size to generate a target linear filter model.

[0093] It should be noted that, in an ideal state, the difference between the far-end echo signal and the estimated echo signal is 0, and the linear filter model can be continuously optimized by the echo error between the two until the echo error is minimized and the model iteration is stopped.

[0094] In a specific implementation, the far-end signal is input into the initial linear filtering model to obtain the estimated echo signal, and then the residual echo signal between the estimated echo signal and the far-end echo signal is calculated. The residual echo signal can be compared with the preset echo signal to generate an echo residual value, and then the residual echo signal and the echo residual value are used to determine the target step size of the linear filtering model.

[0095] The preset echo signal may be a pre-set error range for evaluating the filtering effect of the linear filtering model. Ideally, it may be 0, indicating that the estimated echo signal generated by the filter is the same as the far-end echo signal, and the far-end echo signal can be completely eliminated. In the embodiment of the present application, when the residual echo signal satisfies the preset echo signal, it can be determined that the current linear filtering model effect meets the requirements.

[0096] After the target step length is obtained, the residual echo signal and the target step length can be used to determine the deviation value for the initial linear filter model, and the initial linear filter model can be iterated according to the deviation value to generate the target linear filter model. Optionally, during the iteration process, the linear filter model can be iterated by gradient descent. When the deviation value meets the threshold, the model iteration can be stopped to obtain the target linear filter model, and then the fixed step length is adjusted to the adaptive learning step length, so that the linear filter model can achieve both echo cancellation and self-learning in the actual echo cancellation process, and self-optimize while ensuring linear echo cancellation, so that the effect of linear echo cancellation is better.

[0097] In one example, the linear filtering model can be expressed by the following formula:

[0098]

[0099] Wherein, W is a linear filter model, which is obtained by adding a deviation value to the previous W; X is the far-end signal; E is the residual signal; Xpow is the energy information of the far-end signal; μ is the step size of the linear filter model, which can be:

[0100]

[0101] The numerator of the step size μ can be the residual echo signal, and the denominator can be the echo residual value. During the iteration process, the energy information of the far-end signal and the far-end signal are both quantitative, and the linear filter model can be continuously updated according to the residual echo signal and the echo residual value until the error between the estimated echo signal after filtering and the set echo signal satisfies the threshold, and the iteration of the linear filter model is stopped to obtain the target linear filter model.

[0102] Step 303, using the estimated echo signal to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal;

[0103] In a specific implementation, the current near-end signal may include a far-end echo signal corresponding to the far-end information and a valid voice signal of the local user. After the far-end signal is input into a linear filter model to obtain an estimated echo signal, the far-end echo signal may be echo-cancelled according to the estimated echo signal to obtain a cleaner valid voice signal of the local user.

[0104] It should be noted that the estimated echo signal in this step may be a target estimated echo signal obtained by performing linear filtering on the far-end signal by the linear filtering model after the linear filtering model reaches an optimum.

[0105] Step 304: Perform echo suppression on the residual signal according to the current communication mode of the terminal to generate a target near-end signal.

[0106] In an optional embodiment of the present application, a target suppression mode corresponding to the communication mode of the terminal can be determined, and then a current suppression mode for the residual signal is obtained, and the current suppression mode is switched to the target suppression mode, and then an echo suppression coefficient of the target suppression mode is obtained, and the echo suppression coefficient is used to perform echo suppression on the residual signal to generate a target near-end signal.

[0107] Among them, the communication mode includes a duplex communication mode and a simplex communication mode. When the communication mode is the duplex communication mode, the suppression mode for the residual signal is determined to be the first suppression mode, and the first suppression mode is a mode for reducing the echo suppression of the residual signal; when the communication mode is the simplex communication mode, the suppression mode for the residual signal is determined to be the second suppression mode, and the second suppression mode is a mode for increasing the echo suppression of the residual signal.

[0108] In a specific implementation, the communication mode of the terminal may include a duplex communication mode, a half-duplex communication mode, and a simplex communication mode. Among them, the duplex communication mode allows data to be transmitted in two directions at the same time. It is equivalent to the combination of two simplex communication modes in terms of capability. For example, it can simultaneously (instantaneously) perform bidirectional transmission of signals (A→B and B→A), which means that A→B is simultaneously B→A, which is instantaneously synchronous and four-wire. Simplex means that only Party A is allowed to transmit information to Party B, while Party B cannot transmit to Party A. Half-duplex data transmission means that data can be transmitted in two directions on a signal carrier, but not at the same time. For example, using a technology with half-duplex transmission on a local area network, a workstation can send data online and then immediately receive data online from the direction in which the data was just transmitted. Like full-duplex transmission, half-duplex involves a bidirectional line, a two-wire system.

[0109] For the echo processing process in the present application, different communication modes may correspond to different nonlinear echo suppression modes. For the duplex communication mode, since both parties in communication speak at the same time, the suppression of echoes may be reduced to avoid duplex suppression; for the simplex communication mode, since data transmission only allows one-way transmission, the suppression of echoes may be increased to avoid echoes.

[0110] In a specific implementation, nonlinear echo suppression may include a plurality of suppression modes with different suppression degrees, and different suppression modes correspond to different echo suppression coefficients. Then, the current suppression mode for the residual signal may be first obtained, the current suppression mode may be switched to the suppression mode, and then the echo suppression coefficient of the target suppression mode may be obtained. Then, the echo suppression coefficient may be used to perform echo suppression on the residual signal to generate a target near-end signal.

[0111] In one example, the suppression mode may include mode 0, mode 1, and mode 2. Mode 0 is a conservative mode, and the corresponding echo suppression coefficient is small; mode 1 is a normal mode, and the corresponding echo suppression coefficient is in the middle; mode 2 is an aggressive mode, and the corresponding echo suppression coefficient is large. When it is detected that the communication mode of the terminal is a duplex communication mode, the target suppression mode is determined to be mode 0, and the current suppression mode (mode 1 or mode 2) is switched to mode 0, reducing the echo suppression of the residual signal to avoid duplex suppression; when it is detected that the communication mode of the terminal is a simplex communication mode, the target suppression mode is determined to be mode 2, and the current suppression mode (mode 0 or mode 1) is switched to mode 2, increasing the echo suppression of the residual signal, and further performing nonlinear echo suppression on the near-end signal to improve the echo suppression effect.

[0112] It should be noted that the embodiments of the present application include but are not limited to the above examples. It is understandable that under the guidance of the ideas of the embodiments of the present invention, those skilled in the art can make settings according to actual conditions, and the present invention is not limited to this.

[0113] In an embodiment of the present application, during the terminal communication process, after receiving the far-end signal sent by the far-end terminal, the local terminal can input the far-end signal into a linear filtering model for filtering to obtain an estimated echo signal, and then perform echo cancellation on the current near-end signal collected by the local terminal microphone according to the estimated echo signal to generate a residual signal. Then, the residual signal can be further echo suppressed according to the communication mode of the terminal communication, so that the near-end signal is first linearly echo cancelled through the linear filtering mode, and then nonlinear echo suppression is performed, thereby improving the echo suppression effect while avoiding duplex suppression, thereby greatly improving the communication quality of the terminal communication.

[0114] In order to enable those skilled in the art to better understand the embodiments of the present application, the embodiments of the present application are described below by using an example:

[0115] like Figure 4 As shown, a schematic diagram of the structure of the echo processing in the embodiment of the present application is shown. The linear filtering model can be a filter set in the local terminal, and the filter can include a forward filter and a backward filter. In the process of linear filtering, the step size of the filter can be updated by adaptive learning, so that the stabilized backward filter is copied to the forward filter, and the filter is updated to ensure the effect of echo cancellation. In addition, a duplex detection module is also included, which includes DTD (Double Talk Detect) for checking the communication mode of the terminal; NLP (Nolinear Process) is used to perform nonlinear echo suppression on the near-end signal.

[0116] The signals involved in the echo processing process include:

[0117] x(n) is the far-end signal;

[0118] s(n) is the effective voice signal collected by the local terminal;

[0119] b(n) is a far-end echo signal, which may be an echo signal of the far-end signal collected by the microphone after the local speaker plays the far-end signal;

[0120] d(n) is the near-end signal, i.e., the effective speech signal collected by the local terminal and the far-end echo signal, i.e., the sum of s(n) and b(n);

[0121] y(n) is the initial estimated echo signal, which can be used to adaptively update the linear filter model;

[0122] y'(n) is the target estimated echo signal, which is the echo estimation value generated after linear filtering of the far-end signal when the step size of the linear filtering model reaches the optimal step size. The difference from y(n) is that y'(n) is the estimated echo signal generated by the optimized filter, which is closer to the far-end echo signal. In an ideal case, y'(n) is equal to b(n);

[0123] e(n) is a residual signal, which may be a signal obtained after linear filtering is performed on the near-end signal.

[0124] The echo processing process can be as follows: the local terminal performs FFT (Fast Fourier Transform) on the far-end signal x(n), inputs it into the forward filter, and performs IFFT (Inverse Fast Fourier Transform) to generate an initial estimated echo signal y(n) (i.e., an echo estimation value). At the same time, the local terminal collects the near-end signal s(n) through a microphone, and uses the initial estimated echo signal y(n) to perform linear echo cancellation, such as: the intermediate near-end echo signal f(n) = s(n) + b(n) - y(n).

[0125] At the same time, the residual echo signal, that is, the difference between b(n) and y(n), is calculated, and then the step size of the filter is updated according to the residual echo signal and the initial estimated echo signal y(n). While ensuring linear echo cancellation, self-optimization is performed so that linear echo cancellation can be adaptively learned according to the actual echo signal, further improving the effect of echo cancellation. Specifically, after obtaining the residual echo signal, the filter can be fed back in reverse for iteration, and the stabilized backward filter can be copied to the forward filter to achieve adaptive update of the filter, and the target estimated echo signal y'(n) is generated after the update.

[0126] After the filter generates the target estimated echo signal y'(n) to complete the linear echo cancellation of the near-end signal d(n), the obtained residual signal e(n) can be output to the duplex detection module, and the communication mode of the current terminal is obtained by DTD. When it is detected that the communication mode of the terminal is the duplex communication mode, the target suppression mode is determined to be mode 0, and the current suppression mode of NLP (mode 1 or mode 2) is switched to mode 0, reducing the echo suppression of the residual signal and avoiding the duplex suppression. When it is detected that the communication mode of the terminal is the simplex communication mode, the target suppression mode is determined to be mode 2, and the current suppression mode of NLP (mode 0 or mode 1) is switched to mode 2, increasing the echo suppression of the residual signal, and further performing nonlinear echo suppression on the near-end signal to improve the echo suppression effect.

[0127] It should be noted that, for the method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present application are not limited by the described order of actions, because according to the embodiments of the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present application.

[0128] Reference Figure 5 , shows a structural block diagram of an embodiment of an echo suppression device for terminal communication of the present application, which may specifically include the following modules:

[0129] The signal acquisition module 501 is used to acquire the far-end signal and the current near-end signal;

[0130] A linear filtering module 502, configured to input the far-end signal into a preset target linear filtering model to generate an estimated echo signal;

[0131] An echo cancellation module 503 is used to perform echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal;

[0132] The echo suppression module 504 is configured to perform echo suppression on the residual signal according to the current communication mode of the terminal to generate a target near-end signal.

[0133] In an optional embodiment of the present invention, the echo suppression module 504 includes:

[0134] A suppression mode determination submodule, used to determine a target suppression mode corresponding to the communication mode of the terminal;

[0135] A suppression mode switching submodule, used for acquiring a current suppression mode for the residual signal, and switching the current suppression mode to a target suppression mode;

[0136] An echo suppression coefficient acquisition submodule, used to acquire the echo suppression coefficient of the target suppression mode;

[0137] The echo suppression submodule is used to perform echo suppression on the residual signal by using the echo suppression coefficient to generate a target near-end signal.

[0138] In an optional embodiment of the present invention, the suppression mode determination submodule is specifically used for:

[0139] When the communication mode is the duplex communication mode, determining that the suppression mode for the residual signal is a first suppression mode, where the first suppression mode is a mode for reducing echo suppression performed on the residual signal;

[0140] When the communication mode is the simplex communication mode, it is determined that the suppression mode for the residual signal is the second suppression mode, and the second suppression mode is a mode for increasing the echo suppression for the residual signal.

[0141] In an optional embodiment of the present invention, the echo suppression module 504 includes:

[0142] A suppression mode switching submodule, used for acquiring a current suppression mode for the residual signal, and switching the current suppression mode to the suppression mode;

[0143] A suppression coefficient acquisition submodule, used to acquire the echo suppression coefficient of the target suppression mode;

[0144] The echo suppression submodule is used to perform echo suppression on the residual signal by using the echo suppression coefficient to generate a target near-end signal.

[0145] In an optional embodiment of the present invention, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the echo cancellation module 503 is specifically configured to:

[0146] The estimated echo signal is used to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal.

[0147] In an optional embodiment of the present invention, the current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the target linear filter model is generated by the following modules:

[0148] a residual echo signal determining module, configured to determine a residual echo signal for the far-end echo signal by using the far-end echo signal and the estimated echo signal;

[0149] A target step length determination module, used to determine a target step length for a preset initial linear filter model according to the residual echo signal;

[0150] The model iteration module is used to iterate the initial linear filter model according to the residual echo signal and the target step size to generate a target linear filter model.

[0151] In an optional embodiment of the present invention, the target step length determination module includes:

[0152] An echo residual value generating submodule, used for comparing the residual echo signal with a preset echo signal to generate an echo residual value;

[0153] The target step length determination submodule is used to determine the target step length using the residual echo signal and the echo residual value.

[0154] In an optional embodiment of the present invention, the model iteration module includes:

[0155] a deviation value determination submodule, configured to determine a deviation value for the initial linear filter model using the residual echo signal and the target step size;

[0156] The model iteration submodule is used to iterate the initial linear filtering model according to the deviation value to generate a target linear filtering model.

[0157] As for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0158] The present application also provides a device, including:

[0159] one or more processors; and

[0160] One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, enable the device to perform the method described in the embodiments of the present application.

[0161] The embodiments of the present application also provide one or more machine-readable media on which instructions are stored, which, when executed by one or more processors, enable the processors to execute the methods described in the embodiments of the present application.

[0162] The various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referenced to each other.

[0163] Those skilled in the art will appreciate that the embodiments of the present application can be provided as methods, devices, or computer program products. Therefore, the present application can adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application can adopt the form of a computer program product implemented on one or more machine-readable media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0164] The embodiments of the present application are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0165] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing terminal device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce a manufactured product including an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0166] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0167] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the embodiments of the present application.

[0168] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or terminal device including the elements.

[0169] The above is a detailed introduction to an echo suppression method for terminal communication and an echo suppression device for terminal communication provided by the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core idea of ​​the present application. At the same time, for those skilled in the art, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as limiting the present application.

Claims

1. A method for echo suppression in terminal communication, characterized in that: include: Get the far-end signal and the current near-end signal; Inputting the far-end signal into a preset target linear filter model to generate an estimated echo signal; Performing echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal; According to the current communication mode of the terminal, echo suppression is performed on the residual signal to generate a target near-end signal; The current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the target linear filter model is generated in the following manner: Determine a residual echo signal for the far-end echo signal using the far-end echo signal and the estimated echo signal; Determining a target step size for a preset initial linear filter model according to the residual echo signal; The initial linear filter model is iterated according to the residual echo signal and the target step size to generate a target linear filter model.

2. The method according to claim 1, characterized in that: The performing echo suppression on the residual signal according to the current communication mode of the terminal to generate a target near-end signal includes: determining a target suppression mode corresponding to a communication mode of the terminal; Acquire a current suppression mode for the residual signal, and switch the current suppression mode to a target suppression mode; Acquiring an echo suppression coefficient of the target suppression mode; The echo suppression coefficient is used to perform echo suppression on the residual signal to generate a target near-end signal.

3. The method according to claim 2, characterized in that The communication mode includes a duplex communication mode and a simplex communication mode, and the determining of a target suppression mode corresponding to the communication mode of the terminal includes: When the communication mode is the duplex communication mode, determining that the suppression mode for the residual signal is a first suppression mode, where the first suppression mode is a mode for reducing echo suppression performed on the residual signal; When the communication mode is the simplex communication mode, it is determined that the suppression mode for the residual signal is the second suppression mode, and the second suppression mode is a mode for increasing the echo suppression for the residual signal.

4. The method according to claim 1, characterized in that: The current near-end signal includes a far-end echo signal corresponding to the far-end signal, and performing echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal includes: The estimated echo signal is used to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal.

5. The method according to claim 1, characterized in that Determining a target step size for a preset initial linear filter model according to the residual echo signal includes: Comparing the residual echo signal with a preset echo signal to generate an echo residual value; The target step length is determined using the residual echo signal and the echo residual value.

6. The method according to claim 1 or 5, characterized in that: The iterating the initial linear filter model according to the residual echo signal and the target step size to generate a target linear filter model includes: Determine a deviation value for the initial linear filter model using the residual echo signal and the target step size; The initial linear filter model is iterated according to the deviation value to generate a target linear filter model.

7. An echo suppression device for terminal communication, characterized in that: include: A signal acquisition module is used to acquire a far-end signal and a current near-end signal; A linear filtering module, used for inputting the far-end signal into a preset target linear filtering model to generate an estimated echo signal; an echo cancellation module, configured to perform echo cancellation on the current near-end signal according to the estimated echo signal to generate a residual signal; An echo suppression module, configured to perform echo suppression on the residual signal according to a current communication mode of the terminal, and generate a target near-end signal; The current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the target linear filter model is generated by the following modules: a residual echo signal determining module, configured to determine a residual echo signal for the far-end echo signal by using the far-end echo signal and the estimated echo signal; A target step length determination module, used to determine a target step length for a preset initial linear filter model according to the residual echo signal; The model iteration module is used to iterate the initial linear filter model according to the residual echo signal and the target step size to generate a target linear filter model.

8. The device according to claim 7, characterized in that The echo suppression module comprises: A suppression mode determination submodule, used to determine a target suppression mode corresponding to the communication mode of the terminal; A suppression mode switching submodule, used for acquiring a current suppression mode for the residual signal, and switching the current suppression mode to a target suppression mode; An echo suppression coefficient acquisition submodule, used to acquire the echo suppression coefficient of the target suppression mode; The echo suppression submodule is used to perform echo suppression on the residual signal by using the echo suppression coefficient to generate a target near-end signal.

9. The device according to claim 8, characterized in that The suppression mode determination submodule is specifically used for: When the communication mode is a duplex communication mode, determining that the suppression mode for the residual signal is a first suppression mode, where the first suppression mode is a mode for reducing echo suppression performed on the residual signal; When the communication mode is a simplex communication mode, it is determined that the suppression mode for the residual signal is a second suppression mode, and the second suppression mode is a mode for increasing echo suppression of the residual signal.

10. The device according to claim 7, characterized in that The current near-end signal includes a far-end echo signal corresponding to the far-end signal, and the echo cancellation module is specifically configured to: The estimated echo signal is used to perform echo cancellation on the far-end echo signal in the current near-end signal to generate a residual signal.

11. The device according to claim 7, characterized in that The target step length determination module comprises: An echo residual value generating submodule, used for comparing the residual echo signal with a preset echo signal to generate an echo residual value; The target step length determination submodule is used to determine the target step length using the residual echo signal and the echo residual value.

12. The device according to claim 7 or 11, characterized in that The model iteration module includes: a deviation value determination submodule, configured to determine a deviation value for the initial linear filter model using the residual echo signal and the target step size; The model iteration submodule is used to iterate the initial linear filtering model according to the deviation value to generate a target linear filtering model.

13. An electronic device, characterized in that: include: one or more processors; and One or more machine-readable media having instructions stored thereon, when executed by the one or more processors, cause the electronic device to perform the method as claimed in any one of claims 1-6.

14. A machine-readable medium having instructions stored thereon, which, when executed by one or more processors, cause the processors to perform the method according to any one of claims 1 to 6.