[go: up one dir, main page]

CN111883155B - Echo cancellation method, device and storage medium - Google Patents

Echo cancellation method, device and storage medium Download PDF

Info

Publication number
CN111883155B
CN111883155B CN202010700907.4A CN202010700907A CN111883155B CN 111883155 B CN111883155 B CN 111883155B CN 202010700907 A CN202010700907 A CN 202010700907A CN 111883155 B CN111883155 B CN 111883155B
Authority
CN
China
Prior art keywords
signal
layer
far
neural network
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010700907.4A
Other languages
Chinese (zh)
Other versions
CN111883155A (en
Inventor
马路
赵培
苏腾荣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haier Uplus Intelligent Technology Beijing Co Ltd
Original Assignee
Haier Uplus Intelligent Technology Beijing Co Ltd
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 Haier Uplus Intelligent Technology Beijing Co Ltd filed Critical Haier Uplus Intelligent Technology Beijing Co Ltd
Priority to CN202010700907.4A priority Critical patent/CN111883155B/en
Publication of CN111883155A publication Critical patent/CN111883155A/en
Application granted granted Critical
Publication of CN111883155B publication Critical patent/CN111883155B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L21/0216Noise filtering characterised by the method used for estimating noise
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0208Noise filtering
    • G10L2021/02082Noise filtering the noise being echo, reverberation of the speech

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Filters That Use Time-Delay Elements (AREA)

Abstract

The invention provides an echo cancellation method, an echo cancellation device and a storage medium, wherein the echo cancellation method comprises the following steps: obtaining a predicted echo signal through a nonlinear filter based on a far-end signal, wherein the nonlinear filter is constructed based on a neural network, and in the process that the nonlinear filter carries out forward calculation on the far-end signal based on the neural network, the nonlinear filter carries out nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function; and performing echo cancellation on a near-end signal input by the microphone according to the predicted echo signal. The invention solves the problems of poor nonlinear echo suppression effect and high processing complexity in the scheme of realizing echo cancellation by combining linear filtering with nonlinear processing, improves the estimation precision of nonlinear echo, and further improves the echo cancellation effect.

Description

Echo cancellation method, device and storage medium
Technical Field
The present invention relates to the field of artificial intelligence, and in particular, to an echo cancellation method, apparatus, and storage medium.
Background
The voice signal processing technology is a key technology in the field of man-machine interaction at present, and the echo cancellation algorithm can realize the cancellation of self-playing voice signals received by a microphone of equipment, is a key algorithm for whole voice signal processing and voice enhancement, has extremely important effect on voice recognition at the back end, and is a key technology for voice signal processing.
FIG. 1 is a schematic diagram of echo cancellation, as shown in FIG. 1, in an echo cancellation method in open source tool Web instant messaging (Web Real-Time Communication, webRTC), an adaptive filter is used to complete the estimation of echo, thereby canceling linear echo; suppression of residual nonlinear echoes is accomplished using nonlinear processing. The method can well eliminate the linear echo, but the nonlinear echo and the time delay estimation error can introduce the residual echo, and although the nonlinear processing can inhibit the residual echo to a certain extent, the inhibition degree is limited, and certain residual echo still exists, particularly the echo in a complex environment and the nonlinear echo introduced by a device loudspeaker, so that the final echo elimination effect is influenced, and the processing performance of the whole sound signal is further influenced. In addition, the nonlinear processing in the conventional echo cancellation method has high computational complexity, and takes up half of the computation time of the whole echo cancellation algorithm.
Disclosure of Invention
The embodiment of the invention provides an echo cancellation method, an echo cancellation device and a storage medium, which are used for at least solving the problems of poor nonlinear echo suppression effect and high processing complexity in a scheme for realizing echo cancellation by combining linear filtering with nonlinear processing.
According to an embodiment of the present invention, there is provided an echo cancellation method including: obtaining a predicted echo signal through a nonlinear filter based on a far-end signal, wherein the nonlinear filter is constructed based on a neural network, and in the process that the nonlinear filter carries out forward calculation on the far-end signal based on the neural network, the nonlinear filter carries out nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function; and performing echo cancellation on a near-end signal input by the microphone according to the predicted echo signal.
In at least one example embodiment, the method further comprises: determining an error signal based on the predicted echo signal and a desired input signal; and adjusting the weight coefficient of the neural network according to the error signal.
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, the input layer, the output layer, and the output layerEach of the hidden layers has one or more nodes, and adjusting the weighting coefficients of the neural network according to the error signal includes: calculating the adjusted weight coefficient according to the error signal e (k) Wherein e (k) =d (k) -o (k), o (k) being the predicted echo signal, d (k) being the desired input signal,/o>Representing the weight coefficient from the ith node of the l-1 layer to the jth node of the l layer in the neural network at the moment k, +.>The weight coefficient from the ith node of the first layer to the jth node of the first layer in the neural network at the moment k+1 is represented, mu is an adjustment step length, deltaw represents the change of the weight coefficient, and the weight coefficient is calculated by solving the error signal e (k)>Is obtained.
In at least one exemplary embodiment, before determining an error signal from the predicted echo signal and the desired input signal, and adjusting the weighting coefficients of the neural network according to the error signal, further comprising: performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively; in the case where the near-end is silent and the far-end is silent, the steps of determining an error signal from the predicted echo signal and a desired input signal, and adjusting the weighting coefficients of the neural network based on the error signal, are entered, wherein the desired input signal comprises: the near-end signal input by the microphone in the case where the near-end has no sound and the far-end has sound.
In at least one exemplary embodiment, before obtaining a predicted echo signal based on the far-end signal through a nonlinear filter, and performing echo cancellation on a near-end signal input by a microphone according to the predicted echo signal, the method further comprises: performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively; and under the condition that the far end has sound, entering a step of obtaining a predicted echo signal through a nonlinear filter based on the far end signal, and carrying out echo cancellation on a near end signal input by a microphone according to the predicted echo signal.
In at least one exemplary embodiment, performing double-ended detection on the near-end signal and the far-end signal, respectively, to determine whether the near-end and the far-end are voiced, respectively, includes: respectively acquiring a first energy value of the near-end signal and a second energy value of the far-end signal; determining that the near end has no sound when the first energy value is below a first sound determination threshold, and determining that the near end has sound when the first energy value is not below the first sound determination threshold; and determining that the far end has no sound if the second energy value is lower than a second sound judgment threshold value, and determining that the far end has sound if the second energy value is not lower than the second sound judgment threshold value.
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, deriving the predicted echo signal by a nonlinear filter based on the far-end signal includes: and taking the far-end signal as an input signal of a node of the input layer of the neural network, and performing forward calculation on the far-end signal, wherein in the forward calculation, the output values of the nodes of the previous layer are weighted and summed according to the weight coefficient from the nodes of the previous layer to the nodes of the current layer by layer to obtain a predicted value, and nonlinear processing is performed on the predicted value to obtain the output value of the nodes of the current layer until the output value of the nodes of the output layer is obtained to serve as the predicted echo signal.
According to another embodiment of the present invention, there is provided an echo cancellation device including: the nonlinear filter is used for obtaining a predicted echo signal based on a far-end signal, wherein the nonlinear filter is constructed based on a neural network, and in the process of performing forward calculation on the far-end signal based on the neural network, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function; and the echo cancellation module is used for performing echo cancellation on the near-end signal input by the microphone according to the predicted echo signal.
In at least one example embodiment, the apparatus further comprises: an error determination module for determining an error signal from the predicted echo signal and a desired input signal and inputting the error signal to the nonlinear filter; the nonlinear filter is used for adjusting the weight coefficient of the neural network according to the error signal.
In at least one example embodiment, the apparatus further comprises a double-ended detection module for: performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively; turning on the function of the nonlinear filter to adjust the weighting coefficient of the neural network according to the error signal in the case that the near end has no sound and the far end has sound, wherein the desired input signal includes: the near-end signal input by the microphone in the case where the near-end has no sound and the far-end has sound; and/or, under the condition that the far end has sound, starting the function of echo cancellation of the near-end signal input by the microphone by the echo cancellation module according to the predicted echo signal.
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, the nonlinear filter deriving a predicted echo signal based on a far-end signal by: and taking the far-end signal as an input signal of a node of the input layer of the neural network, and performing forward calculation on the far-end signal, wherein in the forward calculation, the output values of the nodes of the previous layer are weighted and summed according to the weight coefficient from the nodes of the previous layer to the nodes of the current layer by layer to obtain a predicted value, and nonlinear processing is performed on the predicted value to obtain the output value of the nodes of the current layer until the output value of the nodes of the output layer is obtained to serve as the predicted echo signal.
According to a further embodiment of the invention, there is also provided a storage medium having stored therein a computer program, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
According to the application, the far-end signal is input into the nonlinear filter constructed based on the neural network to obtain the predicted echo signal, and the near-end signal input into the microphone is subjected to echo cancellation according to the predicted echo signal. In the embodiment of the application, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward computation based on the neural network in the process of performing the forward computation on the far-end signal, so that the nonlinear filter can replace the combination of the traditional linear adaptive filter and the nonlinear processing module, the nonlinear processing of independent nonlinear residual echo cancellation is avoided, the estimation precision of the nonlinear echo is improved, and the echo cancellation effect is further improved, thereby solving the problems of poor nonlinear echo suppression effect and high processing complexity in the scheme of realizing echo cancellation by combining linear filtering with nonlinear processing.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this specification, illustrate embodiments of the application and together with the description serve to explain the application and do not constitute a limitation on the application. In the drawings:
FIG. 1 is a schematic diagram of echo cancellation;
fig. 2 is a flowchart of an echo cancellation method according to embodiment 1 of the present application;
fig. 3 is a block diagram of the structure of an echo cancellation device according to embodiment 2 of the present application;
fig. 4 is an exemplary structural block diagram of an echo canceling device according to embodiment 2 of the present application;
fig. 5 is a schematic diagram of an echo cancellation algorithm based on nonlinear adaptive filtering according to embodiment 4 of the present application;
FIG. 6 is a flowchart of a nonlinear adaptive filtering algorithm based on BP neural network according to embodiment 4 of the present application;
fig. 7 is a coefficient update flowchart of a BP neural network-based nonlinear filter according to embodiment 4 of the present application.
Detailed Description
The application will be described in detail hereinafter with reference to the drawings in conjunction with embodiments. It should be noted that, without conflict, the embodiments of the present application and features of the embodiments may be combined with each other.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
Example 1
In this embodiment, an echo cancellation method is provided, fig. 2 is a flowchart of the echo cancellation method according to embodiment 1 of the present application, and as shown in fig. 2, the flowchart includes the following steps:
Step S202, obtaining a predicted echo signal based on a far-end signal through a nonlinear filter, for example, may be based on the far-end signal, and estimating the echo signal through the nonlinear filter to obtain the predicted echo signal, where the nonlinear filter is constructed based on a neural network, and in the process that the nonlinear filter performs forward computation on the far-end signal based on the neural network, performing nonlinear processing on a weighted summation result of each node in the forward computation based on a nonlinear function;
step S204, performing echo cancellation on the near-end signal input by the microphone according to the predicted echo signal.
In Acoustic Echo Cancellation (AEC), far-end signals refer to voice signals of far-end (e.g., opposite-end participants of a voice conference, located at other sites) personnel, which are typically communicated to the current site via a communication line; the near-end signal refers to a signal collected by a near-end microphone, which is a superposition of a voice signal collected by the near-end microphone when a participant speaks in a current conference place and a voice signal of a far-end (for example, a counterpart participant of a voice conference and other conference places) person is played through a near-end speaker (a speaker of the current conference place) and then convolved with an echo path of a room of the local conference place. Through the step S202, the echo signal generated after the remote signal is emitted by the speaker of the local conference site and passes through the echo path of the local conference site room can be estimated by the nonlinear filter, so that the estimated predicted echo signal is eliminated from the near-end signal collected by the microphone of the local conference site, and the echo is eliminated. Because the echo generated by the near-end microphone after the far-end signal is emitted by the local loudspeaker and reflected by the complex and changeable wall surface belongs to indirect echo, and the indirect echo is a nonlinear signal, the nonlinear filter in the embodiment is realized by further carrying out nonlinear processing on the weighted summation result of each node, and the echo path corresponding to the nonlinear echo can be fully simulated, so that more accurate echo estimation is carried out, and the method can be better used for echo cancellation of the nonlinear echo.
According to the scheme, a far-end signal is input into a nonlinear filter constructed based on a neural network to obtain a predicted echo signal, and echo cancellation is performed on a near-end signal input into a microphone according to the predicted echo signal. In the embodiment of the invention, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward computation based on the neural network in the process of performing the forward computation on the far-end signal, so that the nonlinear filter can replace the combination of the traditional linear adaptive filter and the nonlinear processing module, the nonlinear processing of independent nonlinear residual echo cancellation is avoided, the estimation precision of the nonlinear echo is improved, and the echo cancellation effect is further improved, thereby solving the problems of poor nonlinear echo suppression effect and high processing complexity in the scheme of realizing echo cancellation by combining linear filtering with nonlinear processing.
In order to implement an adaptive nonlinear filter, the weighting parameters of the neural network may be adjusted according to the error between the predicted echo signal and the near-end signal. Thus, in at least one example embodiment, the method may further comprise: determining an error signal based on the predicted echo signal and a desired input signal; and adjusting the weight coefficient of the neural network according to the error signal. As an exemplary embodiment, adjusting the weighting coefficients of the neural network according to the error signal may be achieved by: and carrying out back propagation on the error signals in the neural network, and sequentially adjusting weight coefficients between nodes of adjacent layers of the neural network.
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, determining an error signal from the predicted echo signal and a desired input signal includes: calculating an error signal e (k) =d (k) -o (k), where o (k) is the predicted echo signal, d (k) is the desired input signal, and the calculation method of o (k) may be, for example, using a neural network with 10 input nodes, 1 hidden layer, 3 nodes, and 1 output node f 1 And f 2 The non-linear activation functions used by the hidden layer and the output layer are respectively represented, the non-linear activation functions used can be the same or different, and g (k) represents the magnitude gain calculated by the kth update. Because if the neural network uses a network such as SigmoidThe class of nonlinear activation functions, the output is typically a fraction between-1 and 1, and the magnitude of the echo value to be predicted is mostly outside this range, so that it is necessary to multiply a data gain, which can be obtained by calculating the maximum value of the data in each input node, to the same data range, namely: g (k) =max (x i (k))。
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, adjusting the weight coefficient of the neural network according to the error signal includes: calculating the adjusted weight coefficient according to the error signal e (k)Wherein e (k) =d (k) -o (k), o (k) being the predicted echo signal, d (k) being the desired input signal,/o>Representing the weight coefficient from the ith node of the l-1 layer to the jth node of the l layer in the neural network at the moment k, +.>The weight coefficient from the ith node of the first layer to the jth node of the first layer in the neural network at the moment k+1 is represented, mu is an adjustment step length, deltaw represents the change of the weight coefficient, and the weight coefficient is calculated by solving the error signal e (k)>Is obtained.
Therefore, the weight of the output layer changes to:
wherein d k Representing the desired output value of output node k, o k Is the predicted value of the output node k, g is the data gain described above, and for the layer 3 network shown in this embodiment, Δw j,k The weight change from the intermediate node j to the node K of the output layer is represented, and the number of output layers k=1.
The weight of the intermediate hidden layer varies as:
wherein o is i Output of input node i representing the upper layer, o j Representing the output of the current layer node j, K represents the total number of output nodes, for this embodiment the output node is the predicted echo signal, so k=1. For the layer 3 network of this embodiment, Δw i,j Representing the change in weight of the input node i to the intermediate node j.
In this embodiment, whether the near end and the far end have sound can be determined by double-end detection, and the adjustment of the weight coefficient is only performed when the near end is silent and the far end has sound, because the expected input signal excludes the influence of the sound of the near end user in this case, and the adjustment of the weight coefficient based on the result is more accurate. In at least one exemplary embodiment, before determining an error signal from the predicted echo signal and the desired input signal, and adjusting the weight coefficient of the neural network according to the error signal, the method may further include:
performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively;
In the case where the near-end is silent and the far-end is silent, the steps of determining an error signal from the predicted echo signal and a desired input signal, and adjusting the weighting coefficients of the neural network based on the error signal, are entered, wherein the desired input signal comprises: the near-end signal input by the microphone in the case where the near-end has no sound and the far-end has sound.
In this embodiment, whether the near end and the far end have sound can be determined by double-end detection, and the echo cancellation is controlled to be performed only when the far end has sound, because the echo cancellation is most necessary in this case. In at least one exemplary embodiment, before obtaining a predicted echo signal based on the far-end signal through a nonlinear filter, and performing echo cancellation on a near-end signal input to a microphone according to the predicted echo signal, the method may further include:
performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively;
and under the condition that the far end has sound, entering a step of obtaining a predicted echo signal through a nonlinear filter based on the far end signal, and carrying out echo cancellation on a near end signal input by a microphone according to the predicted echo signal.
The process of double-end detection of the near-end signal and the far-end signal, respectively, to determine whether the near-end and the far-end are voiced may be implemented in various ways, for example, by energy value determination, or by correlation operation, etc. In at least one exemplary embodiment, performing double-ended detection on the near-end signal and the far-end signal, respectively, to determine whether the near-end and the far-end are voiced, respectively, may include:
respectively acquiring a first energy value of the near-end signal and a second energy value of the far-end signal;
determining that the near end has no sound when the first energy value is below a first sound determination threshold, and determining that the near end has sound when the first energy value is not below the first sound determination threshold;
and determining that the far end has no sound if the second energy value is lower than a second sound judgment threshold value, and determining that the far end has sound if the second energy value is not lower than the second sound judgment threshold value.
In at least one exemplary embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, step S202 may include the operations of:
And taking the far-end signal as an input signal of a node of the input layer of the neural network, and performing forward calculation on the far-end signal, wherein in the forward calculation, the output values of the nodes of the previous layer are weighted and summed according to the weight coefficient from the nodes of the previous layer to the nodes of the current layer by layer to obtain a predicted value, and nonlinear processing is performed on the predicted value to obtain the output value of the nodes of the current layer until the output value of the nodes of the output layer is obtained to serve as the predicted echo signal.
In the process of performing weighted summation on the output values of the nodes of the previous layer according to the weight coefficients from the nodes of the previous layer to the nodes of the current layer to obtain the predicted value, the calculation of the output value of the nodes of each layer can be expressed as follows:wherein k represents the kth iteration, +.>And->Output values of the node j of the first layer and the node i of the first-1 layer of the preceding layer, respectively,/->Representing the weight coefficients between layer i and layer j, N representing the number of layer i nodes, f (x) representing a nonlinear function with an argument x, an exemplary nonlinear activation function being a Sigmoid function, namely:
From the description of the above embodiments, it will be clear to a person skilled in the art that the method according to the above embodiments may be implemented by means of software plus the necessary general hardware platform, but of course also by means of hardware, but in many cases the former is a preferred embodiment. Based on such understanding, the technical solution of the present invention may be embodied essentially or in a part contributing to the prior art in the form of a software product stored in a storage medium (e.g. ROM/RAM, magnetic disk, optical disk) comprising instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the method according to the embodiments of the present invention.
Example 2
In this embodiment, an echo cancellation device is further provided, and the device is used to implement the foregoing embodiments and preferred implementation manners, which are not described in detail. As used below, the term "module" may be a combination of software and/or hardware that implements a predetermined function. While the means described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware, is also possible and contemplated.
Fig. 3 is a block diagram of the structure of an echo cancellation device according to embodiment 2 of the present invention, and as shown in fig. 3, the device includes:
the nonlinear filter 32 is configured to obtain a predicted echo signal based on a far-end signal, where the nonlinear filter 32 is configured based on a neural network, and in a process of performing forward computation on the far-end signal by the nonlinear filter 32 based on the neural network, a weighted summation result of each node in the forward computation is subjected to nonlinear processing based on a nonlinear function;
and the echo cancellation module 34 is configured to perform echo cancellation on the near-end signal input by the microphone according to the predicted echo signal.
According to the scheme, a far-end signal is input into a nonlinear filter constructed based on a neural network to obtain a predicted echo signal, and echo cancellation is performed on a near-end signal input into a microphone according to the predicted echo signal. In the embodiment of the invention, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward computation based on the neural network in the process of performing the forward computation on the far-end signal, so that the nonlinear filter can replace the combination of the traditional linear adaptive filter and the nonlinear processing module, the nonlinear processing of independent nonlinear residual echo cancellation is avoided, the estimation precision of the nonlinear echo is improved, and the echo cancellation effect is further improved, thereby solving the problems of poor nonlinear echo suppression effect and high processing complexity in the scheme of realizing echo cancellation by combining linear filtering with nonlinear processing.
In order to implement an adaptive nonlinear filter, the weighting parameters of the neural network may be adjusted according to the error between the predicted echo signal and the near-end signal. Thus, as shown in an exemplary block diagram of the echo cancellation device according to embodiment 2 of the present invention in fig. 4, the device may further include:
an error determination module 42 for determining an error signal from the predicted echo signal and a desired input signal and inputting the error signal to the nonlinear filter 32;
the nonlinear filter 32 is configured to adjust a weight coefficient of the neural network according to the error signal.
As shown in an exemplary block diagram of the echo cancellation device according to embodiment 2 of the present invention of fig. 4, in at least one exemplary embodiment, the device may further comprise a double-ended detection module 44 for: performing double-end detection on the near-end signal and the far-end signal respectively to determine whether sound exists at the near end and the far end respectively; turning on the function of the nonlinear filter 32 to adjust the weighting coefficients of the neural network in response to the error signal in the case where the near end is silent and the far end is silent, wherein the desired input signal comprises: the near-end signal input by the microphone in the case where the near-end has no sound and the far-end has sound; and/or, in the case that the far end has sound, turning on the function of echo cancellation of the near end signal input by the microphone by the echo cancellation module 34 according to the predicted echo signal.
In at least one example embodiment, the neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, the nonlinear filter 32 deriving a predicted echo signal based on a far-end signal by:
and taking the far-end signal as an input signal of a node of the input layer of the neural network, and performing forward calculation on the far-end signal, wherein in the forward calculation, the output values of the nodes of the previous layer are weighted and summed according to the weight coefficient from the nodes of the previous layer to the nodes of the current layer by layer to obtain a predicted value, and nonlinear processing is performed on the predicted value to obtain the output value of the nodes of the current layer until the output value of the nodes of the output layer is obtained to serve as the predicted echo signal.
It should be noted that each of the above modules may be implemented by software or hardware, and for the latter, it may be implemented by, but not limited to: the modules are all located in the same processor; alternatively, the above modules may be located in different processors in any combination.
Example 3
An embodiment of the invention also provides a storage medium having a computer program stored therein, wherein the computer program is arranged to perform the steps of any of the method embodiments described above when run.
Alternatively, in the present embodiment, the above-described storage medium may be configured to store a computer program for performing the steps of:
step S1, obtaining a predicted echo signal through a nonlinear filter based on a far-end signal, wherein the nonlinear filter is constructed based on a neural network, and in the process that the nonlinear filter carries out forward calculation on the far-end signal based on the neural network, the nonlinear filter carries out nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function;
and S2, performing echo cancellation on the near-end signal input by the microphone according to the predicted echo signal.
Alternatively, in the present embodiment, the storage medium may include, but is not limited to: a usb disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing a computer program.
Example 4
Because the traditional echo cancellation method based on adaptive filtering adopts a linear filtering method, only linear echo can be cancelled; although nonlinear processing can suppress nonlinear echoes to a certain extent, the suppression degree is limited, and particularly for echoes in complex environments and nonlinear echoes introduced by equipment speakers, a large amount of residual echoes can be introduced, and the nonlinear processing adopted for eliminating the residual echoes has high computational complexity, so that the performance of echo elimination is seriously affected, and the performance of whole sound signal processing and voice enhancement is further affected.
In order to improve the estimation accuracy of nonlinear echo and further improve the effect of echo cancellation, the embodiment provides an echo cancellation method based on BP (Back Propagation) neural network nonlinear adaptive filtering, wherein a BP neural network is used for constructing a nonlinear adaptive filter to estimate echo signals received by a microphone, and the echo cancellation method replaces the original two modules of linear adaptive filtering and nonlinear processing. Meanwhile, double-end detection of the voice is finished by double-end detection, echo cancellation is performed only when the far end has sound, and echo estimation is performed only when the near end has no voice, so that the influence of the existence of the voice on the estimation of the echo is avoided. Because of the nonlinear characteristic of the neural network, the method has stronger environment modeling capability, and nonlinear echo can be well predicted, so that the performance of echo cancellation is improved. It should be noted that, only the BP neural network is described herein as an example, and the description should not constitute limitation of the type of the neural network, and the method is applicable to various types of neural networks.
Fig. 5 is a schematic diagram of an echo cancellation algorithm based on nonlinear adaptive filtering according to embodiment 4 of the present invention. As shown in fig. 5, the algorithm processing flow based on the neural network mainly involves two modules of double-ended detection (Double Talk Detection, DTD) and nonlinear adaptive filter.
The double-end detection mainly detects far-end and near-end signals, echo cancellation is performed only when the far-end has sound, and echo estimation is performed only when the near-end has no sound, so that the influence of the existence of sound on the estimation of the echo is avoided. One typical double-ended detection method is to calculate the energy of the far-end and near-end signals, respectively.
The nonlinear adaptive filter is mainly used for estimating echo signals which are reflected by the environment and received by a microphone of the nonlinear adaptive filter.
Fig. 6 is a nonlinear adaptive filtering structure diagram based on a BP neural network according to embodiment 4 of the present invention, and the flow of the echo cancellation algorithm based on the filter structure mainly includes the following steps:
s601, extracting an input signal: the input samples are sequentially stored in a delay unit (register unit), and the length of the filter is set by an application scene. Here, a BP network is assumed in which the number of nodes in the input layer is n=10, the number of hidden layers is 1, the number of nodes is 3, and the number of nodes in the output layer is 1. It should be noted that this embodiment is only described by way of example, and should not be construed as the scheme is applicable to only the neural network in this configuration.
S602, forward calculation: the data in the filter register is multiplied by the corresponding tap coefficients in sequence, and the initial value of the tap coefficients can be set to be a random decimal number between-1 and 1, or can be set to be 1. Each hidden layer node can calculate a predicted value, the predicted value is processed in a nonlinear way through a nonlinear unit, and the calculated results of different hidden layer nodes are calculated through a weight network to obtain a final outputThe calculation of the output value for each level of nodes can be expressed as:
where k represents the kth iteration,and->Output values of the node j of the first layer and the node i of the first-1 layer of the preceding layer, respectively,/->Representing the weight coefficients between the nodes i and j of the layer 1, N represents the number of the nodes of the layer 1, f (x) represents a nonlinear function with an independent variable x, and nonlinear processing is performed on the result of weighted summation, and one exemplary nonlinear activation function is a Sigmoid function, namely:
assuming that the number of input nodes is 10, the number of intermediate nodes is 3, and the number of output nodes is 1, after 3 layers of forward transmission, the final output predicted value obtained by calculation can be expressed as:
wherein,,the weight coefficients representing the nodes 1 of the second layer node j to the third layer output layer are 1 in the number of output nodes because only one prediction output is considered.
S603, error calculation: the desired input signal d (k) is subtracted from the predicted signal o (k) to obtain an error value. The desired input signal d (k) is controlled by double-ended detection, and is calculated when there is a signal at the far end and no signal at the near end. The calculated error expression can be expressed as:
where e (k) represents the desired signal d (k) and the predicted signal o (k) (i.e., the neural network output value, i.e., the predicted value calculated by the filter network) Difference of f 1 And f 2 The non-linear activation functions used by the hidden layer and the output layer are respectively represented, the non-linear activation functions used can be the same or different, and g (k) represents the magnitude gain calculated by the kth update. Because if a neural network uses a nonlinear activation function such as Sigmoid, the output is typically a fraction between-1 and 1, and the magnitude of the echo to be predicted is mostly outside this range, it is necessary to multiply a data gain, which can be obtained by calculating the maximum value of the data in each input node, to the same data range, namely: g (k) =max (x i (k))。
S604, backward calculation: and carrying out counter propagation on the calculated error, and sequentially adjusting each weight coefficient of the filter. Updating the filter coefficients, namely: The weight coefficients from the first layer node i to the first layer node j at the moment k are represented, Δw represents an error value, and μ is an adjustment step size. Wherein the change Deltaw of the weight coefficient is obtained by weighting the error signal e (k)>Is obtained. Therefore, the weight of the output layer changes to:
wherein d k Representing the desired output value of output node k, o k Is the predicted value of the output node k, g is the data gain described above, and for the layer 3 network shown in this embodiment, Δw j,k The weight change from the intermediate node j to the node K of the output layer is represented, and the number of output layers k=1.
The weight of the intermediate hidden layer varies as:
wherein o is i Output of input node i representing the upper layer, o j Representing the output of the current layer node j, K represents the total number of output nodes, for this embodiment the output node is the predicted echo signal, so k=1. For the layer 3 network of this embodiment, Δw i,j Representing the change in weight of the input node i to the intermediate node j.
The flow of updating coefficients of the nonlinear filter based on the BP neural network in the echo cancellation algorithm according to the present embodiment is shown in fig. 7.
The echo cancellation method based on the BP neural network nonlinear filtering of the embodiment utilizes the nonlinear characteristic of the BP neural network to estimate nonlinear echo, replaces the traditional echo cancellation method based on a linear self-adaptive filter and nonlinear processing, and has the following advantages:
Better echo cancellation performance: the method adopts the neural network to realize the nonlinear self-adaptive filter, replaces the conventional linear self-adaptive filter, can utilize the nonlinear fitting characteristic of the neural network to finish the estimation of nonlinear echo, and can further improve the performance of echo cancellation;
the algorithm has the advantages of simple structure: the method adopts the nonlinear filter based on BP neural network to realize echo estimation, replaces the linear self-adaptive filter and nonlinear processing module required by conventional echo cancellation, thus having simpler calculation structure, definite physical meaning of module function and easy realization.
It will be appreciated by those skilled in the art that the modules or steps of the invention described above may be implemented in a general purpose computing device, they may be concentrated on a single computing device, or distributed across a network of computing devices, they may alternatively be implemented in program code executable by computing devices, so that they may be stored in a memory device for execution by computing devices, and in some cases, the steps shown or described may be performed in a different order than that shown or described, or they may be separately fabricated into individual integrated circuit modules, or multiple modules or steps within them may be fabricated into a single integrated circuit module for implementation. Thus, the present invention is not limited to any specific combination of hardware and software.
The above description is only of the preferred embodiments of the present invention and is not intended to limit the present invention, but various modifications and variations can be made to the present invention by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the principle of the present invention should be included in the protection scope of the present invention.

Claims (9)

1.一种回声消除方法,其特征在于,包括:1. An echo cancellation method, characterized in that it comprises: 基于远端信号,通过非线性滤波器得到预测回声信号,其中,所述非线性滤波器基于神经网络构建,且所述非线性滤波器基于所述神经网络对所述远端信号进行前向计算的过程中,基于非线性函数对所述前向计算中各节点的加权求和结果进行非线性处理;Based on the far-end signal, a predicted echo signal is obtained through a nonlinear filter. The nonlinear filter is constructed based on a neural network, and during the forward calculation of the far-end signal based on the neural network, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function. 根据所述预测回声信号对麦克风输入的近端信号进行回声消除;Echo cancellation is performed on the near-end signal input to the microphone based on the predicted echo signal; 其中,所述方法还包括:The method further includes: 根据所述预测回声信号和期望的输入信号确定误差信号;The error signal is determined based on the predicted echo signal and the expected input signal; 根据所述误差信号调整所述神经网络的权重系数;The weight coefficients of the neural network are adjusted based on the error signal; 其中,所述神经网络包括输入层、输出层以及所述输入层和所述输出层之间的一个或多个隐藏层,所述输入层、所述输出层以及所述隐藏层中的每一层具有一个或多个节点,根据所述误差信号调整所述神经网络的权重系数包括:The neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer. Each of the input layer, the output layer, and the hidden layers has one or more nodes. Adjusting the weight coefficients of the neural network according to the error signal includes: 根据所述误差信号e(k)计算调整后的所述权重系数其中,e(k)=d(k)-o(k),o(k)为所述预测回声信号,d(k)为所述期望的输入信号,表示k时刻所述神经网络中第l-1层的第i个节点到第l层第j个节点的所述权重系数,表示k+1时刻所述神经网络中第l-1层的第i个节点到第l层第j个节点的所述权重系数,μ为调整步长,Δw表示所述权重系数的变化,通过对所述误差信号e(k)求所述权重系数的偏导得到。The adjusted weighting coefficients are calculated based on the error signal e(k). Where e(k) = d(k) - o(k), o(k) is the predicted echo signal, and d(k) is the desired input signal. Let represent the weight coefficients from the i-th node in the (l-1)-th layer to the j-th node in the l-th layer of the neural network at time k. This represents the weight coefficients from the i-th node to the j-th node in the (l-1)-th layer of the neural network at time k+1, where μ is the adjustment step size and Δw represents the change in the weight coefficients. The weight coefficients are calculated from the error signal e(k). The partial derivative is obtained. 2.根据权利要求1所述的方法,其特征在于,在根据所述预测回声信号和期望的输入信号确定误差信号,以及根据所述误差信号调整所述神经网络的权重系数之前,还包括:2. The method according to claim 1, characterized in that, before determining the error signal based on the predicted echo signal and the desired input signal, and before adjusting the weight coefficients of the neural network based on the error signal, it further comprises: 分别对所述近端信号和所述远端信号进行双端检测,以分别确定近端和远端是否有声音;The near-end signal and the far-end signal are subjected to dual-end detection to determine whether there is sound at the near end and the far end, respectively. 在所述近端没有声音而所述远端有声音的情况下,进入根据所述预测回声信号和期望的输入信号确定误差信号,以及根据所述误差信号调整所述神经网络的权重系数的步骤,其中,所述期望的输入信号包括:在所述近端没有声音而所述远端有声音的情况下所述麦克风输入的所述近端信号。In the case where there is no sound at the near end but sound at the far end, the process proceeds to the steps of determining an error signal based on the predicted echo signal and a desired input signal, and adjusting the weight coefficients of the neural network based on the error signal, wherein the desired input signal includes the near-end signal input by the microphone when there is no sound at the near end but sound at the far end. 3.根据权利要求1所述的方法,其特征在于,在基于远端信号,通过非线性滤波器得到预测回声信号,以及根据所述预测回声信号对麦克风输入的近端信号进行回声消除之前,还包括:3. The method according to claim 1, characterized in that, before obtaining the predicted echo signal based on the far-end signal through a nonlinear filter, and before performing echo cancellation on the near-end signal input to the microphone according to the predicted echo signal, it further includes: 分别对所述近端信号和所述远端信号进行双端检测,以分别确定近端和远端是否有声音;The near-end signal and the far-end signal are subjected to dual-end detection to determine whether there is sound at the near end and the far end, respectively. 在所述远端有声音的情况下,进入基于远端信号,通过非线性滤波器得到预测回声信号,以及根据所述预测回声信号对麦克风输入的近端信号进行回声消除的步骤。If there is sound at the far end, the process proceeds to the steps of obtaining a predicted echo signal based on the far-end signal through a nonlinear filter, and then performing echo cancellation on the near-end signal input to the microphone based on the predicted echo signal. 4.根据权利要求2或3所述的方法,其特征在于,分别对所述近端信号和所述远端信号进行双端检测,以分别确定近端和远端是否有声音包括:4. The method according to claim 2 or 3, characterized in that, performing dual-end detection on the near-end signal and the far-end signal respectively to determine whether there is sound at the near end and the far end includes: 分别获取所述近端信号的第一能量值和所述远端信号的第二能量值;The first energy value of the near-end signal and the second energy value of the far-end signal are obtained respectively; 在所述第一能量值低于第一声音判定阈值的情况下,确定所述近端没有声音,在所述第一能量值不低于第一声音判定阈值的情况下,确定所述近端有声音;If the first energy value is lower than the first sound determination threshold, it is determined that there is no sound at the proximal end; if the first energy value is not lower than the first sound determination threshold, it is determined that there is sound at the proximal end. 在所述第二能量值低于第二声音判定阈值的情况下,确定所述远端没有声音,在所述第二能量值不低于第二声音判定阈值的情况下,确定所述远端有声音。If the second energy value is lower than the second sound determination threshold, it is determined that there is no sound at the far end; if the second energy value is not lower than the second sound determination threshold, it is determined that there is sound at the far end. 5.根据权利要求1-3中任一项所述的方法,其特征在于,所述神经网络包括输入层、输出层以及所述输入层和所述输出层之间的一个或多个隐藏层,所述输入层、所述输出层以及所述隐藏层中的每一层具有一个或多个节点,基于远端信号,通过非线性滤波器得到预测回声信号包括:5. The method according to any one of claims 1-3, characterized in that the neural network comprises an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, and obtaining the predicted echo signal based on the far-end signal through a nonlinear filter comprises: 将所述远端信号作为所述神经网络的所述输入层的节点的输入信号,对所述远端信号进行前向计算,其中,在所述前向计算中,逐层根据前一层的节点到当前层的节点的权重系数对所述前一层的节点的输出值进行加权求和得到预测值,并对所述预测值进行非线性处理得到所述当前层的节点的输出值,直到得到所述输出层的节点的输出值作为所述预测回声信号。The far-end signal is used as the input signal of the node of the input layer of the neural network. Forward computation is performed on the far-end signal. In the forward computation, the output value of the node of the previous layer is weighted and summed layer by layer according to the weight coefficient of the node from the previous layer to the node of the current layer to obtain the predicted value. The predicted value is then nonlinearly processed to obtain the output value of the node of the current layer. This process continues until the output value of the node of the output layer is obtained as the predicted echo signal. 6.一种回声消除装置,其特征在于,包括:6. An echo cancellation device, characterized in that it comprises: 非线性滤波器,用于基于远端信号得到预测回声信号,其中,所述非线性滤波器基于神经网络构建,且所述非线性滤波器基于所述神经网络对所述远端信号进行前向计算的过程中,基于非线性函数对所述前向计算中各节点的加权求和结果进行非线性处理;A nonlinear filter is used to obtain a predicted echo signal based on a far-end signal. The nonlinear filter is constructed based on a neural network, and during the forward calculation of the far-end signal based on the neural network, the nonlinear filter performs nonlinear processing on the weighted summation result of each node in the forward calculation based on a nonlinear function. 回声消除模块,用于根据所述预测回声信号对麦克风输入的近端信号进行回声消除;An echo cancellation module is used to cancel the echo of the near-end signal input to the microphone based on the predicted echo signal; 其中,所述装置还包括:The device further includes: 误差确定模块,用于根据所述预测回声信号和期望的输入信号确定误差信号;An error determination module is used to determine an error signal based on the predicted echo signal and the desired input signal; 所述非线性滤波器用于根据所述误差信号调整所述神经网络的权重系数;The nonlinear filter is used to adjust the weight coefficients of the neural network according to the error signal; 其中,所述神经网络包括输入层、输出层以及所述输入层和所述输出层之间的一个或多个隐藏层,所述输入层、所述输出层以及所述隐藏层中的每一层具有一个或多个节点,所述非线性滤波器还用于根据所述误差信号e(k)计算调整后的所述权重系数其中,e(k)=d(k)-o(k),o(k)为所述预测回声信号,d(k)为所述期望的输入信号,表示k时刻所述神经网络中第l-1层的第i个节点到第l层第j个节点的所述权重系数,表示k+1时刻所述神经网络中第l-1层的第i个节点到第l层第j个节点的所述权重系数,μ为调整步长,Δw表示所述权重系数的变化,通过对所述误差信号e(k)求所述权重系数的偏导得到。The neural network includes an input layer, an output layer, and one or more hidden layers between the input layer and the output layer. Each of the input layer, the output layer, and the hidden layers has one or more nodes. The nonlinear filter is further used to calculate the adjusted weight coefficients based on the error signal e(k). Where e(k) = d(k) - o(k), o(k) is the predicted echo signal, and d(k) is the desired input signal. Let represent the weight coefficients from the i-th node in the (l-1)-th layer to the j-th node in the l-th layer of the neural network at time k. This represents the weight coefficients from the i-th node to the j-th node in the (l-1)-th layer of the neural network at time k+1, where μ is the adjustment step size and Δw represents the change in the weight coefficients. The weight coefficients are calculated from the error signal e(k). The partial derivative is obtained. 7.根据权利要求6所述的装置,其特征在于,还包括双端检测模块,用于:7. The apparatus according to claim 6, characterized in that it further comprises a dual-end detection module, used for: 分别对所述近端信号和所述远端信号进行双端检测,以分别确定近端和远端是否有声音;The near-end signal and the far-end signal are subjected to dual-end detection to determine whether there is sound at the near end and the far end, respectively. 在所述近端没有声音而所述远端有声音的情况下,开启所述非线性滤波器根据所述误差信号调整所述神经网络的权重系数的功能,其中,所述期望的输入信号包括:在所述近端没有声音而所述远端有声音的情况下所述麦克风输入的所述近端信号;和/或,在所述远端有声音的情况下,开启所述回声消除模块根据所述预测回声信号对麦克风输入的近端信号进行回声消除的功能。When there is no sound at the near end but sound at the far end, the nonlinear filter is activated to adjust the weight coefficients of the neural network according to the error signal. The desired input signal includes: the near-end signal input by the microphone when there is no sound at the near end but sound at the far end; and/or, when there is sound at the far end, the echo cancellation module is activated to cancel the echo of the near-end signal input by the microphone according to the predicted echo signal. 8.根据权利要求6-7中任一项所述的装置,其特征在于,所述神经网络包括输入层、输出层以及所述输入层和所述输出层之间的一个或多个隐藏层,所述输入层、所述输出层以及所述隐藏层中的每一层具有一个或多个节点,所述非线性滤波器通过以下方式基于远端信号得到预测回声信号:8. The apparatus according to any one of claims 6-7, characterized in that the neural network comprises an input layer, an output layer, and one or more hidden layers between the input layer and the output layer, each of the input layer, the output layer, and the hidden layers having one or more nodes, and the nonlinear filter obtains the predicted echo signal based on the far-end signal in the following manner: 将所述远端信号作为所述神经网络的所述输入层的节点的输入信号,对所述远端信号进行前向计算,其中,在所述前向计算中,逐层根据前一层的节点到当前层的节点的权重系数对所述前一层的节点的输出值进行加权求和得到预测值,并对所述预测值进行非线性处理得到所述当前层的节点的输出值,直到得到所述输出层的节点的输出值作为所述预测回声信号。The far-end signal is used as the input signal of the node of the input layer of the neural network. Forward computation is performed on the far-end signal. In the forward computation, the output value of the node of the previous layer is weighted and summed layer by layer according to the weight coefficient of the node from the previous layer to the node of the current layer to obtain the predicted value. The predicted value is then nonlinearly processed to obtain the output value of the node of the current layer. This process continues until the output value of the node of the output layer is obtained as the predicted echo signal. 9.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至5任一项中所述的方法。9. A storage medium, characterized in that the storage medium stores a computer program, wherein the computer program is configured to execute the method described in any one of claims 1 to 5 when it is run.
CN202010700907.4A 2020-07-17 2020-07-17 Echo cancellation method, device and storage medium Active CN111883155B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010700907.4A CN111883155B (en) 2020-07-17 2020-07-17 Echo cancellation method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010700907.4A CN111883155B (en) 2020-07-17 2020-07-17 Echo cancellation method, device and storage medium

Publications (2)

Publication Number Publication Date
CN111883155A CN111883155A (en) 2020-11-03
CN111883155B true CN111883155B (en) 2023-10-27

Family

ID=73154551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010700907.4A Active CN111883155B (en) 2020-07-17 2020-07-17 Echo cancellation method, device and storage medium

Country Status (1)

Country Link
CN (1) CN111883155B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113114865A (en) * 2021-04-09 2021-07-13 苏州大学 Combined function linkage type kernel self-response nonlinear echo cancellation method
US11776556B2 (en) * 2021-09-27 2023-10-03 Tencent America LLC Unified deep neural network model for acoustic echo cancellation and residual echo suppression
CN114743558B (en) * 2022-04-29 2025-08-05 北京达佳互联信息技术有限公司 Echo cancellation model training method and device and echo cancellation method and device
CN115883736B (en) * 2022-11-24 2025-09-19 北京小米移动软件有限公司 Echo cancellation method, device and storage medium
CN120343131B (en) * 2025-06-19 2025-10-28 荣耀终端股份有限公司 Method for echo cancellation, electronic device, storage medium and program product

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7672445B1 (en) * 2002-11-15 2010-03-02 Fortemedia, Inc. Method and system for nonlinear echo suppression
WO2018190547A1 (en) * 2017-04-14 2018-10-18 한양대학교 산학협력단 Deep neural network-based method and apparatus for combined noise and echo removal
WO2019045474A1 (en) * 2017-09-04 2019-03-07 삼성전자주식회사 Method and device for processing audio signal using audio filter having non-linear characteristics
EP3474280A1 (en) * 2017-10-19 2019-04-24 Nxp B.V. Signal processor for signal enhancement and associated methods
CN110197669A (en) * 2018-02-27 2019-09-03 上海富瀚微电子股份有限公司 A kind of audio signal processing method and device
WO2020042706A1 (en) * 2018-08-31 2020-03-05 大象声科(深圳)科技有限公司 Deep learning-based acoustic echo cancellation method
CN111091805A (en) * 2019-11-15 2020-05-01 佳禾智能科技股份有限公司 Feedback type noise reduction method based on neural network
CN111161752A (en) * 2019-12-31 2020-05-15 歌尔股份有限公司 Echo cancellation method and device
CN111292759A (en) * 2020-05-11 2020-06-16 上海亮牛半导体科技有限公司 A method and system for stereo echo cancellation based on neural network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9672821B2 (en) * 2015-06-05 2017-06-06 Apple Inc. Robust speech recognition in the presence of echo and noise using multiple signals for discrimination
US20190222691A1 (en) * 2018-01-18 2019-07-18 Knowles Electronics, Llc Data driven echo cancellation and suppression

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7672445B1 (en) * 2002-11-15 2010-03-02 Fortemedia, Inc. Method and system for nonlinear echo suppression
WO2018190547A1 (en) * 2017-04-14 2018-10-18 한양대학교 산학협력단 Deep neural network-based method and apparatus for combined noise and echo removal
WO2019045474A1 (en) * 2017-09-04 2019-03-07 삼성전자주식회사 Method and device for processing audio signal using audio filter having non-linear characteristics
EP3474280A1 (en) * 2017-10-19 2019-04-24 Nxp B.V. Signal processor for signal enhancement and associated methods
CN110197669A (en) * 2018-02-27 2019-09-03 上海富瀚微电子股份有限公司 A kind of audio signal processing method and device
WO2020042706A1 (en) * 2018-08-31 2020-03-05 大象声科(深圳)科技有限公司 Deep learning-based acoustic echo cancellation method
CN111091805A (en) * 2019-11-15 2020-05-01 佳禾智能科技股份有限公司 Feedback type noise reduction method based on neural network
CN111161752A (en) * 2019-12-31 2020-05-15 歌尔股份有限公司 Echo cancellation method and device
CN111292759A (en) * 2020-05-11 2020-06-16 上海亮牛半导体科技有限公司 A method and system for stereo echo cancellation based on neural network

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Mhd Modar Halimeh 等.A Neural Network-Based Nonlinear Acoustic Echo Canceller.《 IEEE Signal Processing Letters 》.2019,第 1827 - 1831页. *
崔海徽等.基于前馈神经网络的自适应回声消除方法.声学技术.2004,第第23卷卷(第第2期期),第121-124页. *
武玉伟编著.《深度学习基础与应用》.北京理工大学出版社,2020,第173页. *

Also Published As

Publication number Publication date
CN111883155A (en) 2020-11-03

Similar Documents

Publication Publication Date Title
CN111883155B (en) Echo cancellation method, device and storage medium
CN111756942B (en) Communication apparatus and method and computer-readable medium for performing echo cancellation
US12073847B2 (en) System and method for acoustic echo cancelation using deep multitask recurrent neural networks
CN111292759B (en) A method and system for stereo echo cancellation based on neural network
CN112863535B (en) Residual echo and noise elimination method and device
Zhang et al. Deep learning for acoustic echo cancellation in noisy and double-talk scenarios
Fazel et al. Deep Multitask Acoustic Echo Cancellation.
Fazel et al. CAD-AEC: Context-aware deep acoustic echo cancellation
CN110444214A (en) Speech processing model training method, device, electronic equipment and storage medium
Van Waterschoot et al. Double-talk-robust prediction error identification algorithms for acoustic echo cancellation
CN109686381A (en) Signal processor and related method for signal enhancement
CN111213359B (en) Echo canceller and method for echo canceller
Bhattacharjee et al. Fast and efficient acoustic feedback cancellation based on low rank approximation
CN116980814A (en) Signal processing methods, devices, electronic equipment and storage media
Mohanaprasad et al. Wavelet-based ICA using maximum likelihood estimation and information-theoretic measure for acoustic echo cancellation during double talk situation
US20240135954A1 (en) Learning method for integrated noise echo cancellation system using multi-channel based cross-tower network
JP3673727B2 (en) Reverberation elimination method, apparatus thereof, program thereof, and recording medium thereof
CN116246606B (en) An active noise control system and method based on convolutional recurrent neural network
Diana et al. Hybrid metaheuristic method of ABC kernel filtering for nonlinear acoustic echo cancellation
Zhang et al. Deep multi-task network for delay estimation and echo cancellation
Carline et al. An Investigation on Adaptive Algorithms for Echo Cancellation of Acoustic Signals
Liu et al. A Deep Hybrid Model for Stereophonic Acoustic Echo Control
CN116420315B (en) Methods and apparatus for variable pitch echo cancellation
RU2722220C1 (en) Device for multichannel adaptive echo signal compensation
Van Huynh A new method for a nonlinear acoustic echo cancellation system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant