Acoustic echo cancellation based on one or more diagonal regularized correlation matrices and related devices, methods and computer programs
By employing an adaptive filter with a diagonally regularized correlation matrix on mobile devices, the high computational complexity of acoustic echo cancellation in multi-channel and stereo AEC is addressed, achieving robust and low-complexity echo cancellation effects and improving the user experience.
Patent Information
- Application Number
- CN202511170817.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-08-21
- Filing Date
- 2025-08-20
- Publication Date
- 2026-03-03
AI Technical Summary
Existing acoustic echo cancellation technologies suffer from high computational complexity and practical implementation difficulties when used for spatial audio communication and teleconference on mobile devices, especially in multi-channel and stereo AEC.
An adaptive filter based on a diagonal regularized correlation matrix is employed. The gain vector is determined iteratively and updated filter coefficients are generated. Regularized reference power levels are used to reduce echo. Subband adaptive filters are used to process the signal, ensuring robust and computationally efficient AEC operation.
It achieves stable echo cancellation under stereo playback signal conditions, reduces the utilization of the central processing unit, reduces battery consumption and device heat generation, adapts to dynamic changes, and provides an intelligent and efficient multi-channel and stereo AEC solution.
Smart Images

Figure CN121600945A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates generally to digital signal processing, and more specifically, but not limited to, acoustic echo cancellation based on one or more diagonally regularized correlation matrices, as well as related apparatus, methods, and computer programs. Background Technology
[0002] In this article, the term "acoustic echo cancellation" (AEC) refers to a technique used to improve audio quality (such as speech quality) by removing or at least reducing echoes, reverberation, unwanted additional sounds, etc., from the audio signal (such as speech quality) in a manner that relies on the presence of a reference signal.
[0003] Recently, spatial audio communication and teleconference on mobile devices have been developing. When these devices are used in integrated hands-free (IHF) mode (i.e., using the device's built-in speakers to play audio), multi-channel acoustic echo cancellation (MCAEC) can be used to make this communication scenario possible. This means eliminating acoustic echoes from more than one speaker on the device from the signals recorded by the device's (multiple) internal microphones. To perform AEC on multiple speakers, an adaptive filter capable of processing multiple speaker signals is needed. A typical case is stereo playback, thus there are two speaker signals ("reference signals") that need to be canceled. Current mobile devices typically have two independent playback channels.
[0004] Because the acoustic echo impulse response can be quite long (e.g., 0.2 seconds) compared to the sampling rate of modern high-quality audio systems (e.g., 48 kHz), time-domain filter implementations can be highly complex (e.g., requiring thousands of taps). Therefore, AEC filters are typically implemented via frequency-domain techniques such as filter banks and Weighted Overlap Addition (WOLA), which can leverage the low complexity of the Fast Fourier Transform. In such implementations, multiple adaptive filters can be applied in parallel to each frequency bin.
[0005] However, in at least some cases, the practical implementation of AEC solutions for spatial audio communication and teleconference on mobile devices can be very challenging.
[0006] Therefore, at least in some cases, it may be beneficial to enhance or improve AEC technologies (such as multi-channel AEC and / or stereo AEC). Summary of the Invention
[0007] The scope of protection sought with respect to the various exemplary embodiments of the invention is set forth in the independent claims. Exemplary embodiments and features (if any) described in this specification that do not fall within the scope of the independent claims should be interpreted as examples that aid in understanding the various exemplary embodiments of the invention.
[0008] Example embodiments of the user equipment include at least one processor, at least one memory, at least one microphone, and at least one speaker. The at least one memory stores instructions that, when executed by the at least one processor, cause the user equipment to obtain at least a microphone signal captured by the at least one microphone. The microphone signal is based on one or more near-end signals and one or more playback signals reproduced by the at least one speaker. When executed by the at least one processor, the instructions also cause the user equipment to obtain one or more sub-band signal sequences based on at least one or more playback signals. When executed by the at least one processor, the instructions also cause the user equipment to process the obtained one or more sub-band signal sequences using at least one or more sub-band adaptive filters. The sub-band adaptive filters are obtained by iteratively determining a gain vector and generating updated filter coefficients, such that the filter coefficients of the sub-band adaptive filters at the current iteration time step are obtained by determining a gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the sub-band adaptive filters obtained at previous iteration time steps. When executed by the at least one processor, the instructions also cause the user equipment to reduce echo in the obtained microphone signal by using at least one or more outputs from the one or more sub-band adaptive filters. The gain vector is determined by dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of the reference signal's regularized reference power level.
[0009] In the example embodiment, as an alternative or addition to the above example embodiment, the vector of regularized reference power levels is a weighted average of the power levels of one or more reference signals from one or more previous time steps.
[0010] In the example embodiment, as an alternative or addition to the above example embodiment, the vector of regularized reference power levels is based on adding positive values to a weighted average of the power levels of one or more reference signals from one or more previous time steps.
[0011] In an example embodiment, as an alternative or addition to the example embodiment described above, determining the gain vector includes determining a weighted correlation matrix between reference vectors from one or more previous time steps. The weighted correlation matrix is obtained by dividing the elements of the reference vectors from one or more previous time steps by the corresponding elements of a vector that regularizes the reference power level.
[0012] In the example embodiments, as an alternative or addition to the above example embodiments, determining the gain vector further includes determining the regularized inverse matrix of the weighted correlation matrix.
[0013] In an example embodiment, as an alternative or addition to the above example embodiment, reducing the echo in the obtained microphone signal includes obtaining a second error by multiplying a first error by the gain obtained from the inner product of the gain vector and the reference vector.
[0014] In the example embodiment, as an alternative or addition to the above example embodiment, the first element of the vector of regularized reference power levels is different from the second element of the vector of regularized reference power levels.
[0015] In the example embodiments, as an alternative or addition to the above example embodiments, the reference signal is based on at least one of one or more playback signals.
[0016] Example embodiments of the method include obtaining a microphone signal captured by at least one microphone included in a user equipment by means of a device. The microphone signal is based on one or more near-end signals and one or more playback signals reproduced by at least one speaker included in the user equipment. The method also includes obtaining one or more sub-band signal sequences by means of the device based on one or more playback signals. The method further includes processing the obtained one or more sub-band signal sequences by means of a device using one or more sub-band adaptive filters. The sub-band adaptive filters of the one or more sub-band adaptive filters are obtained by iteratively determining a gain vector and generating updated filter coefficients, such that the filter coefficients of the sub-band adaptive filters at the current iteration time step are obtained by determining a gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the sub-band adaptive filters obtained at a previous iteration time step. The method also includes reducing echo in the obtained microphone signal by means of the device using one or more outputs from the one or more sub-band adaptive filters. The gain vector is determined based on dividing the elements of a reference vector associated with a reference signal by the corresponding elements of a vector of regularized reference power levels of the reference signal.
[0017] Example embodiments of the apparatus include means for performing a method according to any of the example embodiments described above.
[0018] Example embodiments of the computer program include instructions for causing a user equipment to perform at least the following: obtaining a microphone signal captured by at least one microphone included in the user equipment, the microphone signal being based on one or more near-end signals and one or more playback signals reproduced by at least one speaker included in the user equipment; obtaining one or more sub-band signal sequences based on the one or more playback signals; processing the obtained one or more sub-band signal sequences using one or more sub-band adaptive filters, wherein the sub-band adaptive filters of the one or more sub-band adaptive filters are obtained by iteratively determining a gain vector and generating updated filter coefficients, such that the filter coefficients of the sub-band adaptive filters at the current iteration time step are obtained by determining a gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the sub-band adaptive filters obtained at a previous iteration time step; and reducing the echo in the obtained microphone signal by using one or more outputs from the one or more sub-band adaptive filters, wherein the gain vector is determined based on dividing the elements of a reference vector associated with a reference signal by the corresponding elements of a vector of regularized reference power levels of the reference signal. Attached Figure Description
[0019] The accompanying drawings, included to provide a further understanding of the embodiments and forming part of this specification, illustrate embodiments and, together with the description, help to explain the principles of the embodiments. In the drawings:
[0020] Figure 1 Example embodiments of the subject matter described herein are illustrated, showing example systems in which various embodiments of the present disclosure may be implemented;
[0021] Figure 2 Example embodiments of the subject matter described herein are illustrated, showing user equipment in which various embodiments of the present disclosure may be implemented;
[0022] Figure 3 Example embodiments of the subject matter described herein are shown, illustrating methods for user equipment; and
[0023] Figure 4 Example embodiments of the subject matter described herein are shown, illustrating implementations of this disclosure.
[0024] In the accompanying drawings, the same reference numerals are used to denote the same parts. Detailed Implementation
[0025] Reference will now be made in detail to embodiments, examples of which are illustrated in the accompanying drawings. The detailed description provided below, in conjunction with the drawings, is intended as a description of the present example and is not intended to represent the only form in which the present example can be constructed or utilized. This specification sets forth the functionality of the example and the sequence of steps for constructing and operating the example. However, the same or equivalent functionality and sequence can be achieved through different examples.
[0026] Figure 1 An example system 100 is illustrated, in which various embodiments of this disclosure can be implemented. System 100 may include one or more cellular communication protocols, such as a fifth-generation (5G) or sixth-generation (6G) network or a network 110 other than a 6G wireless network. Alternatively or additionally, system 100 may include means for short-range wireless communication networks, such as a wireless local area network (WLAN) or Furthermore, the system may include a wired or fiber optic communication network. An example representation of system 100 is shown, depicting user equipment 200 and user equipment 250 communicating with each other, for example, to provide audio communication, such as spatial audio communication and / or teleconferencing services. User equipment 200 is located at a first location 120 (e.g., a first room), and user equipment 250 is located at a second location 130 (e.g., a second room). Since this disclosure is from the perspective of user equipment 200, the first location 120 may be referred to as the near end, and the second location 130 may be referred to as the far end.
[0027] User equipment 200 (and user equipment 250) may include, for example, mobile communication devices, mobile phones, smartphones, tablet computers, smartwatches, smart glasses, smart audio headsets, AR / VR / XR (augmented reality, virtual reality, extended reality) devices, any handheld device, portable device and / or wearable device, television, vehicle infotainment unit, or any combination thereof. User equipment 200 may also be referred to as user equipment (UE).
[0028] Various example embodiments will be discussed below. At least some of these example embodiments described herein can allow the use of adaptive filters to enhance multi-channel AEC and / or stereo AEC. At least some of these example embodiments provide a method called the diagonal inverse correlation matrix approximation, which ensures robust and computationally efficient AEC operation regardless of the conditions of the stereo playback signal.
[0029] Furthermore, at least some of the example embodiments described herein allow for significantly lower central processing unit (CPU) usage. This improvement in computational efficiency contributes to a better user experience by reducing battery consumption and device heat generation.
[0030] Furthermore, at least some of the example embodiments described herein may not require parameter tuning and therefore can work "out of the box".
[0031] Furthermore, at least some of the example embodiments described herein can exhibit robustness to dynamic changes in stereo playback and echo paths, making them suitable for a variety of real-world scenarios.
[0032] Therefore, at least some of the example embodiments described herein enable intelligent and efficient solutions for multi-channel AEC and / or stereo AEC, thereby providing improved performance and easier implementation.
[0033] Figure 2 This is a block diagram of user equipment 200 according to an example embodiment, and Figure 4 Figure 400 shows that it can be made by Figure 2 The example implementation of this disclosure is performed by user equipment 200.
[0034] User equipment 200 includes one or more processors 202, one or more memories 204 including computer program code or instructions, one or more microphones 206, and one or more speakers 208. User equipment 200 may also include other elements, such as one or more transceivers 210 configured to enable user equipment 200 to send and / or receive information to / from other devices, and Figure 2 Other elements not shown. In one example, user equipment 200 may use transceiver 210 to send or receive signaling information and data according to at least one cellular communication protocol. Transceiver 210 may be configured to provide at least one wireless radio connection, such as a 3GPP (3rd Generation Partnership Project) mobile broadband connection (e.g., 5G or 6G). Transceiver 210 may include or be configured to be coupled to at least one antenna to send and / or receive radio frequency signals.
[0035] Although user equipment 200 is depicted as including only one processor 202, user equipment 200 may include more processors. In embodiments, memory 204 is capable of storing instructions, such as operating systems and / or various applications. Furthermore, memory 204 may include a storage device that can be used to store at least a portion of, for example, the information and data used in the disclosed embodiments.
[0036] Furthermore, processor 202 is capable of executing stored instructions or code. In embodiments, processor 202 may be embodied as a multi-core processor, a single-core processor, or a combination of one or more multi-core processors and one or more single-core processors. For example, processor 202 may be embodied as one or more of a variety of processing devices, such as a coprocessor, microprocessor, controller, digital signal processor (DSP), processing circuitry system with or without an additional DSP, or various other processing devices including integrated circuits, such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), microcontroller units (MCUs), hardware accelerators, dedicated computer chips, neural network (NN) chips, artificial intelligence (AI) accelerators, tensor processing units (TPUs), neural processing units (NPUs), etc., or any combination thereof. In embodiments, processor 202 may be configured to perform hard-coded functions. In embodiments, processor 202 is embodied as an executor of software instructions, wherein the instructions may configure processor 202 to perform the algorithms and / or operations described herein when the instructions are executed.
[0037] Memory 204 may be embodied as one or more volatile memory devices, one or more non-volatile memory devices, and / or a combination of one or more volatile memory devices and non-volatile memory devices. For example, memory 204 may be embodied as a semiconductor memory, such as read-only memory (ROM), mask ROM, programmable ROM (PROM), erasable PROM (EPROM), flash ROM, random access memory (RAM), etc.
[0038] In the following text, q represents the signal power vector, g represents the gain vector, and y represents the signal power vector. N This represents the microphone signal at frame n. This represents a reference vector or input vector of length L. Let e represent the echo filter with L taps at the nth frame. n This represents the prior error signal. C represents the posterior error signal. n Let represent the inverse correlation matrix at n, λ represent the exponential weighting (also known as the forgetting factor), v represent the vector of intermediate calculation results, and P≥1 represent the memory order for each frequency cell. When there are multiple speakers 208, the reference input vector x n It can be formed by splicing reference vectors corresponding to different speakers 208. When multiple microphones 206 are present, the user equipment 200 can independently apply this disclosure to each microphone signal to obtain different adaptive filters suitable for eliminating echoes from each microphone signal.
[0039] In general (with full computation for P>1), at least some of the following equations can be applied to adaptive filters: First (for example, during startup initialization): q0 = 0 L And w0 = 0 L For each frame n = 1, 2, ...: q n,P [l]=λ P |x n-P ,[l]| 2 +λq n-1,P [l](if n≥P), for each 1≤l≤L; Q n-1,P-1 =diag(q) n-1,P-1 )+∈I; and
[0040] When P = 1, the above simplifies to: First: q0 = 0 L And w0 = 0 L . For each frame n = 1, 2, ...: q n,0 [l]=λ|x n-1 [l]| 2 +λq n-1,0 [l](if n≥1), for each 1≤l≤L; Q n-1,0 =diag(q) n-1,0 )+∈I; and
[0041] When executed by at least one processor 202, instructions stored in at least one memory 204 cause the user equipment 200 to obtain at least a microphone signal 401 captured by at least one microphone 206. The microphone signal may include, for example, audio, speech, voice, music, sound, noise, etc., or any combination thereof. The microphone signal 401 is based on one or more near-end signals and one or more playback signals reproduced by at least one speaker 208.
[0042] When executed by at least one processor 202, the instructions also cause the user equipment 200 to obtain one or more sub-band signal sequences based on at least one or more playback signals, for example via time-frequency transformation (such as short-time Fourier transform or WOLA method). The full-time domain implementation corresponds to the case of a single sub-band.
[0043] When executed by at least one processor 202, the instructions also cause the user equipment 200 to process the acquired one or more subband signal sequences using at least one or more subband adaptive filters.
[0044] The subband adaptive filter in one or more subband adaptive filters determines the gain vector g iteratively. n (Box 404) and generate the updated filter coefficients w n (Boxes 405-406) are used to obtain, for example, for each subband adaptive filter, the filter coefficients of the subband adaptive filter at the current iteration time step are obtained by determining the gain vector and adding the complex conjugate product of the determined gain vector and the error value (e.g., prior error 407) to the filter coefficients of the subband adaptive filter obtained at the previous iteration time step, for example, such that... Determine the gain vector g n It is based on the reference vector x associated with the reference signal. n The elements of (box 402) are divided by the vector q of the regularized reference power level of the reference signal. n The corresponding element, such as Or make v n Based on calculation
[0045] In at least some embodiments, the reference signal may be based on at least one of one or more playback signals (in the subband domain). For example, the reference signal may be equal to the playback signal, or the reference signal may be equal to, for example, the playback signal divided by the square root of a noise power estimate based on, for example, prior error information (to improve noise robustness).
[0046] It should be noted that when referring to audio signals, the term "power" can refer to instantaneous power or average power. Signal x n The instantaneous power at time n can be expressed as the square of the signal magnitude |x|. n | 2 The average power of a signal can refer to the weighted sum of the squares of the signal's magnitudes at multiple time points. For example, it could be an exponentially weighted average, such as... However, in addition to the squared magnitude, compressed magnitude can also be used, such as |xn | a , of which 0 <a≤2。
[0047] It should also be noted that when referencing real values, the complex conjugate of the real value is the same as the real value. Similarly, the conjugate transpose of a real vector is the same as the transpose of the real vector. Therefore, as long as the error value is a real value, multiplying the gain vector by the complex conjugate of the error value can be understood as multiplying the gain vector by the error value.
[0048] When executed by at least one processor 202, the instructions also cause the user equipment 200 to reduce the echo in the acquired microphone signal 401 at least by using one or more outputs from one or more sub-band adaptive filters.
[0049] In at least some embodiments, the vector of regularized reference power levels is based on a weighted average of the power levels of one or more reference signals from one or more previous time steps, for example, such that q n,P [l]=λ P |x n-P [l]| 2 +λq n-1,P [l], or q nP [l]=α1|x n-P [l]| 2 +…+α K |x n-K+1-P [l]| 2 .
[0050] In at least some embodiments, the vector of regularized reference power levels is based on adding a positive value to a weighted average of the power levels of one or more reference signals from one or more previous time steps, for example, such that Q... n-1,P-1 =diag(q) n-1,P-1 )+∈I. At least in some embodiments, this positive value can be different for each element of the vector of regularized reference power levels, for example, such that Q... n-1,P-1 =diag(q) n-1,P-1 +∈) and a vector such that ∈ is a positive value.
[0051] In at least some embodiments, determining the 404 gain vector may include determining the gain vector from one or more previous time steps X. n-1,P-1 The weighted correlation matrix between reference vectors The weighted correlation matrix is obtained by dividing the elements of the reference vectors from one or more previous time steps by the corresponding elements of the vector of regularized reference power levels, such as by calculating...
[0052] In at least some embodiments, determining the 404 gain vector may further include determining the regularized inverse matrix of the weighted correlation matrix, for example, determining the matrix
[0053] In at least some embodiments, reducing the echo in the obtained microphone signal 401 may include obtaining a second error (e.g., a posteriori error 408) by multiplying a first error (e.g., prior error 407) by the gain obtained from the inner product of the gain vector and the reference vector.
[0054] In at least some embodiments, the first element of the vector of regularized reference power levels may be different from the second element of the vector of regularized reference power levels.
[0055] The implementation example is discussed in more detail below.
[0056] In the following text, P ≥ 1.
[0057] As described above, microphone signal 401 can be received based on one or more near-end signals and one or more playback signals reproduced by one or more speakers 208, a set of one or more sub-band signal sequences can be obtained based on one or more playback signals, and echo in the microphone signal can be reduced using an adaptive filter output.
[0058] The subband adaptive filter discussed above can be an effective way to perform the following calculations based on the diagonal regularized correlation matrix for each frequency band:
[0059] Filter coefficients w n (Box 406) can minimize the past discounted error metric.
[0060] This disclosure aims to avoid situations where matrix R... n These are problems that may occur under unusual or poor conditions.
[0061] To achieve this, this disclosure can use a method for matrix inverse. A technique for diagonal regularization is employed, which provides the desired robustness to poor conditions and has significantly reduced complexity.
[0062] In this disclosure, a small integer P (less than L) can be chosen, and the covariance matrix can be divided into two terms such that: The second term can be approximated by a diagonal matrix with the same diagonal elements, i.e., by: Q n,P=diag(q) n,P )+∈I Where ∈ can be zero or a positive value, and where q n,P It can be a vector, where the m-th component of the vector is the exponential average of the power of the m-th component of the reference signal: This could lead to approximate covariance: Where X n,P =[x n x n-1 …x n-P+1 ] can be an L×P matrix, and Λ P It can have diagonal terms 1, λ, ..., λ P-1 A P×P diagonal matrix.
[0063] The exponentially average power vector components can be recursively obtained as follows: q n,P [m]=λ P |x n-P [n]| 2 +λq n-1,P [m]
[0064] In this invention, the filter coefficients at time n can be obtained as follows: Since P << L is chosen, this update can be expressed using the Woodbury matrix identity with reduced complexity. This yields the following expression: This approximation can have reduced complexity because it uses the inverse of a P×P matrix instead of an L×L matrix. This is attributed to the use of regularization with ∈>0 and the approximation. The inherent regularization in the matrix can make the method more robust to ill-conditioned or singular covariance matrices.
[0065] Using a further approximation, a lower-complexity update formula can be derived, which instead uses the inverse of a (P-1)×(P-1) matrix. To derive this update formula, note that: and Make The last three lines can each be represented using the identity (B+I). -1 -I = -(B + I) -1 B and (BC+I) -1 B = B(CB + I)-1 This leads to the following incremental formula for the least squares solution, which is a correction to the previous least squares solution. Where the gain vector g n It can be defined as in
[0066] Similar to before, matrix R n-1 It can be approximated as (for P>1) and (For P=1)
[0067] When P = 1, the auxiliary vector can be calculated as follows: And when P>1, it can be calculated as:
[0068] These substitutions yield the adaptive filter update formula:
[0069] The posterior error 408 can be calculated by scaling the prior error 407 because:
[0070] At least some embodiments of this disclosure allow for an inverse correlation matrix based on a diagonal regularization matrix, ensuring that the matrix is always full rank. This robustness is particularly valuable when dealing with poor multichannel playback signal conditions. For example, when suddenly switching from stereo speakers to mono playback during a call, at least some embodiments of this disclosure can remain stable, thus preventing convergence problems, in contrast to the convergence issues that may arise with filters adapted by recursive least squares. This stability allows operation to continue without requiring a hard reset.
[0071] In another example involving spatial telecommunications calls with multiple remote users and poor stereo signal conditioning, at least some embodiments of this disclosure can demonstrate stable output behavior while maintaining a good level of performance.
[0072] At least some embodiments of this disclosure can allow for significant computational advantages. This advantage is particularly pronounced when the number of filter taps (denoted as L) is much larger than the number of rank-1 correlation terms being modeled (denoted as P). For example, P = 1 may be useful because it may exhibit linear complexity over the number of filter taps L. When comparing the equations above with P = 1 and P > 1, it can be seen that v nThe expression is simpler, resulting in a significant complexity advantage. Therefore, using this algorithm can achieve significantly lower CPU utilization on mobile devices.
[0073] Despite the significant reduction in computational complexity, this disclosure maintains a good level of performance, making it an excellent choice for low-power devices / CPU mobile devices.
[0074] Figure 3 An example flowchart of a method 300 for a device (such as a user equipment) 200 according to an example embodiment is shown.
[0075] At operation 301, device 200 receives a microphone signal captured by at least one microphone 206 included in device 200. As described in more detail above, the microphone signal is based on one or more near-end signals and one or more playback signals reproduced by at least one speaker 208 included in device 200.
[0076] At operation 302, device 200 obtains one or more sub-band signal sequences based on one or more playback signals.
[0077] At operation 303, device 200 processes the obtained one or more subband signal sequences using one or more subband adaptive filters. As described in more detail above, the subband adaptive filters of the one or more subband adaptive filters are obtained by iteratively determining a gain vector and generating updated filter coefficients, such that the filter coefficients of the subband adaptive filter at the current iteration time step are obtained by determining a gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the subband adaptive filters obtained at previous iteration time steps. The gain vector is determined based on dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of regularized reference power levels of the reference signal.
[0078] At operation 304, device 200 reduces echo in the acquired microphone signal by using one or more outputs from one or more sub-band adaptive filters.
[0079] about Figure 3 The embodiments and examples can be provided by Figure 2 The user equipment 200 performs the operations. Operations 301 to 304 can be performed, for example, by at least one processor 202 and at least one memory 204. Other features of method 300 that are directly derived from the functionality and parameters of user equipment 200 will not be repeated here. Method 300 can be performed by (multiple) computer programs or portions thereof.
[0080] Suitable for executing regarding Figure 3Another example of the apparatus of the embodiments and examples includes components for the following:
[0081] At operation 301, a microphone signal captured by at least one microphone included in the user equipment is obtained, the microphone signal being based on one or more near-end signals and one or more playback signals reproduced by at least one speaker included in the user equipment;
[0082] At operation 302, one or more sub-band signal sequences are obtained based on one or more playback signals;
[0083] At operation 303, the obtained one or more sub-band signal sequences are processed using one or more sub-band adaptive filters, wherein a sub-band adaptive filter among the one or more sub-band adaptive filters is obtained by iteratively determining the gain vector and generating updated filter coefficients, such that the filter coefficients of the sub-band adaptive filter at the current iteration time step are obtained by determining the gain vector and adding the product of the determined gain vector and the complex conjugate of the error value to the filter coefficients of the sub-band adaptive filter obtained at the previous iteration time step; and
[0084] At operation 304, echo in the acquired microphone signal is reduced by using one or more outputs from one or more sub-band adaptive filters.
[0085] The gain vector is determined by dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of the reference signal's regularized reference power level.
[0086] The functionality described herein can be performed at least in part by one or more computer program product components, such as software components. According to embodiments, user equipment 200 may include a processor or processor circuitry, such as a microcontroller, which, when executed, is configured by program code to perform embodiments of the described operations and functionality. Alternatively or additionally, the functionality described herein can be performed at least in part by one or more hardware logic components. Illustrative types of hardware logic components that can be used, such as but not limited to, include field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SoCs), complex programmable logic devices (CPLDs), tensor processing units (TPUs), and graphics processing units (GPUs).
[0087] The term "circuit system" as used in this application may refer to one or more of the following: (a) Hardware circuit implementation only (such as implementation in analog and / or digital circuits only) and (b) A combination of hardware circuitry and software, such as (if applicable): (i) A combination of (multiple) analog and / or digital hardware circuits and software / firmware, and (ii) Any part of the (multiple) hardware processors having software (including (multiple) digital signal processors), software, and (multiple) memories, which work together to enable a device (such as a mobile phone or server) to perform various functions and (c) (Multiple) hardware circuits and / or (multiple) processors, such as (multiple) microprocessors or a portion thereof, which require software (e.g. firmware) to operate, but may not exist when the software is not required to operate.
[0088] The definition of "circuit system" applies to all uses of the term in this application, including any claim. As yet another example, as used in this application, the term "circuit system" also covers implementations of hardware circuitry or processors (or processors) or hardware circuitry or processors and their accompanying software and / or firmware. The term "circuit system" also covers, for example (and if applicable to a particular claim element), baseband integrated circuits or processor integrated circuits for mobile devices or similar integrated circuits in servers, cellular network devices, or other computing or networking devices.
[0089] Any ranges or device values given herein may be extended or modified without loss of the desired effect. Furthermore, any embodiment may be combined with another embodiment unless expressly permitted.
[0090] Although the subject matter has been described in language specific to structural features and / or actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are disclosed as examples of implementing the claims, and other equivalent features and actions are intended to be within the scope of the claims.
[0091] It should be understood that the above benefits and advantages may relate to one embodiment or several embodiments. The embodiments are not limited to embodiments that solve any or all of the described problems or embodiments that have any or all of the described benefits and advantages. It will also be understood that a reference to "an item" may refer to one or more of those items.
[0092] The steps of the methods described herein can be performed in any suitable order, or simultaneously where appropriate. Furthermore, individual boxes can be removed from any method without departing from the spirit and scope of the subject matter described herein. Any aspect of the above embodiments can be combined with any aspect of the other described embodiments to form further embodiments without sacrificing the desired effects.
[0093] The term “comprising” is used herein to mean including the identified method, box, or element, but such box or element does not include an exclusive list, and the method or apparatus may include additional boxes or elements.
[0094] It should be understood that the above description is given by way of example only, and various modifications can be made by those skilled in the art. The above specification, examples, and data provide a complete description of the structure and use of exemplary embodiments. Although various embodiments have been described above with a degree of specificity or by reference to one or more individual embodiments, many changes can be made to the disclosed embodiments by those skilled in the art without departing from the spirit or scope of this specification.
Claims
1. A communication apparatus (200), comprising: At least one processor (202); At least one memory (204); At least one microphone (206); as well as At least one loudspeaker (208); The at least one memory (204) stores instructions, which, when executed by the at least one processor (202), cause the device (200) to at least: Obtain a microphone signal captured by the at least one microphone (206), the microphone signal being based on one or more near-end signals and one or more playback signals reproduced by the at least one speaker (208); One or more sub-band signal sequences are obtained based on the one or more playback signals; The obtained one or more sub-band signal sequences are processed using one or more sub-band adaptive filters. The subband adaptive filter in one or more of the subband adaptive filters is obtained by iteratively determining the gain vector and generating updated filter coefficients, such that the filter coefficients of the subband adaptive filter at the current iteration time step are obtained by determining the gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the subband adaptive filter obtained at the previous iteration time step. as well as By using one or more outputs from the one or more sub-band adaptive filters, the echo in the obtained microphone signal is reduced. The gain vector is determined by dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of the regularized reference power level of the reference signal.
2. The apparatus (200) of claim 1, wherein the vector of regularized reference power levels is based on a weighted average of the power levels of one or more reference signals from one or more previous time steps.
3. The apparatus (200) of claim 1, wherein the vector of regularized reference power levels is based on adding positive values to a weighted average of the power levels of one or more reference signals from one or more previous time steps.
4. The apparatus (200) of claim 1, wherein determining the gain vector further comprises determining a weighted correlation matrix between reference vectors from one or more previous time steps, the weighted correlation matrix being obtained by dividing the elements of the reference vectors from the one or more previous time steps by the corresponding elements of the vector of the regularized reference power level.
5. The apparatus (200) according to claim 4, wherein determining the gain vector further comprises determining the regularized inverse matrix of the weighted correlation matrix.
6. The apparatus (200) of claim 1, wherein reducing the echo in the obtained microphone signal is further accomplished by obtaining a second error by multiplying a first error by the gain obtained from the inner product of the gain vector and the reference vector.
7. The apparatus (200) according to claim 1, wherein the first element of the vector of the regularized reference power level is different from the second element of the vector of the regularized reference power level.
8. The apparatus (200) according to claim 1, wherein the reference signal is based on at least one of the one or more playback signals.
9. A method (300) for communication, comprising: The device (200) obtains (301) a microphone signal captured by at least one microphone (206) included in the device (200), the microphone signal being based on one or more near-end signals and one or more playback signals reproduced by at least one speaker (208) included in the device (200); The device (200) obtains (302) one or more sub-band signal sequences based on the one or more playback signals; The one or more sub-band signal sequences obtained by the device (200) through processing (303) using one or more sub-band adaptive filters, The subband adaptive filter in one or more of the subband adaptive filters is obtained by iteratively determining the gain vector and generating updated filter coefficients, such that the filter coefficients of the subband adaptive filter at the current iteration time step are obtained by determining the gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the subband adaptive filter obtained at the previous iteration time step. as well as The device (200) reduces the echo in the microphone signal obtained by (304) by using one or more outputs from the one or more sub-band adaptive filters. The gain vector is determined by dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of the regularized reference power level of the reference signal.
10. The method (300) of claim 9, wherein the vector of regularized reference power levels is based on a weighted average of the power levels of one or more reference signals from one or more previous time steps.
11. The method (300) of claim 9, wherein the vector of regularized reference power levels is based on adding positive values to a weighted average of the power levels of one or more reference signals from one or more previous time steps.
12. The method (300) of claim 9, wherein determining the gain vector further comprises determining a weighted correlation matrix between reference vectors from one or more previous time steps, the weighted correlation matrix being obtained by dividing the elements of the reference vectors from the one or more previous time steps by the corresponding elements of the vector of the regularized reference power level.
13. The method (300) of claim 12, wherein determining the gain vector further comprises determining the regularized inverse matrix of the weighted correlation matrix.
14. The method (300) of claim 9, wherein reducing the echo in the obtained microphone signal further comprises obtaining a second error by multiplying a first error by a gain derived from the inner product of the gain vector and the reference vector.
15. The method (300) of claim 9, wherein the first element of the vector of regularized reference power levels is different from the second element of the vector of regularized reference power levels.
16. The method (300) of claim 9, wherein the reference signal is based on at least one of the one or more playback signals.
17. A non-transitory computer-readable medium comprising instructions that, when executed by a device, cause the device (200) to perform at least the following: Obtain a microphone signal captured by at least one microphone included in the device (200), the microphone signal being based on one or more near-end signals and one or more playback signals reproduced by at least one speaker included in the device (200); One or more sub-band signal sequences are obtained based on the one or more playback signals; The obtained one or more sub-band signal sequences are processed using one or more sub-band adaptive filters. The subband adaptive filter in one or more of the subband adaptive filters is obtained by iteratively determining the gain vector and generating updated filter coefficients, such that the filter coefficients of the subband adaptive filter at the current iteration time step are obtained by determining the gain vector and adding the complex conjugate product of the determined gain vector and the error value to the filter coefficients of the subband adaptive filter obtained at the previous iteration time step. as well as By using one or more outputs from the one or more sub-band adaptive filters, the echo in the obtained microphone signal is reduced. The gain vector is determined by dividing the elements of the reference vector associated with the reference signal by the corresponding elements of the vector of the regularized reference power level of the reference signal.