A generalized sidelobe canceller and speech enhancement method
By using NLMS algorithm and speech activity detection in the adaptive noise control part of the generalized side lobe canceller, the step factor is updated in real time and the smoothing factor is introduced, which solves the problem of speech signal distortion caused by signal leakage, and improves the noise reduction effect and robustness.
Patent Information
- Application Number
- CN202210875391.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-25
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2042-07-25
AI Technical Summary
When the generalized side lobe canceller estimates the incoming wave direction, the blocking matrix of the lower branch cannot completely block the target voice signal, resulting in signal leakage and distortion of the final output voice signal.
The NLMS algorithm is used to perform iterative calculations in the adaptive noise control part, and the step factor is updated in real time with the speech activity detection part, and a smoothing factor is introduced into the filter coefficient update formula to ensure the continuity and robustness of the speech signal.
It improves the noise reduction effect of generalized sidelobe cancellers, reduces speech distortion, and is suitable for more application scenarios, especially in noise environments and mobile sound sources.
Smart Images

Figure CN115346548B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of speech enhancement, and in particular to a generalized sidelobe canceller and a speech enhancement method. Background Art
[0002] The array speech enhancement algorithm uses multiple array elements for signal acquisition. Due to the differences in spatial arrangement, the signals received by different array elements have time delay phase differences. Array signal enhancement usually takes advantage of this feature and uses the spatial and temporal information of the array to perform noise reduction processing on the speech, which shows a more robust effect than the single-channel speech enhancement algorithm. The algorithm uses the time delay difference of the signal reaching the microphone to estimate the direction of the incoming wave and provide gain for the signal in this direction, or achieves the purpose of speech enhancement through filtering. Beamforming is one of the mature algorithms. The earliest proposed beamformer was a fixed beamformer, but the fixed beamformer showed the limitations of the algorithm when facing a moving interference source or when the position of the target sound source changes, so an improved adaptive beamforming algorithm emerged. The first proposed was the minimum variance distortion-less response (MVDR) beamforming, which aims to minimize the variance of the zero-mean signal while outputting the signal without distortion.
[0003] MVDR is a constrained optimization problem with complex calculations. Therefore, the generalized sidelobe canceler (GSC) was further proposed. GSC is an unconstrained optimization problem. Compared with the MVDR beamformer, it is more applicable to changing environmental noise and is therefore widely used. Figure 1 This is the schematic diagram of the generalized sidelobe canceller. As can be seen from the figure, GSC can be mainly divided into three parts, namely fixed beamforming (FBF), blocking matrix (BM) and adaptive noise control (ANC). The signal passes through the fixed beamforming part of the upper branch to obtain the target signal after noise reduction. The blocking matrix output of the lower branch only retains the noise and interference parts, and then the adaptive noise control continuously approaches the residual noise in the output signal of the upper branch. The final output signal is obtained by subtracting the two parts of the signal.
[0004] However, when the estimation of the incoming wave direction is biased, the BM in the lower branch of the GSC will not be able to completely block the target speech signal, resulting in signal leakage, causing the signal output in the subsequent ANC module to cancel out the expected speech signal in the upper branch, resulting in distortion of the final output speech signal. Summary of the invention
[0005] The technical problem to be solved by the present invention is to provide a generalized sidelobe canceller and a speech enhancement method, which can improve the noise reduction effect of the generalized sidelobe canceller.
[0006] The technical solution adopted by the present invention to solve the technical problem is: to provide a generalized sidelobe canceller, comprising:
[0007] The fixed beamforming part is used to estimate and compensate the delay of the array signal, and obtain the speech signal after preliminary noise reduction by weighted summation;
[0008] A blocking matrix part, used to filter out the desired signal in the array signal after delay compensation, and output noise and interference signals;
[0009] An adaptive noise control part, used for iteratively calculating the noise and interference signal by using an NLMS algorithm, so that the noise and interference signal are close to the residual noise in the speech signal after the preliminary noise reduction;
[0010] The output part is used to subtract the speech signal after preliminary noise reduction from the noise and interference signal after iterative calculation, and output the target speech signal.
[0011] The generalized sidelobe canceller also includes a preprocessing part, which is located at the front end of the fixed beam forming part and is used to pre-emphasize the array signal to compensate for the high-frequency components lost during signal propagation, and to frame and window the array signal to ensure the short-term stability of the array signal.
[0012] The filter coefficient update formula of the adaptive noise control part is: Among them, w a (n) represents the nth filter coefficient in the adaptive noise control part, α s is the smoothing factor, μ a is the step factor, x(n) represents the current frame speech signal, e(n) is the error between the current speech signal after preliminary noise reduction and the noise and interference signal after iterative calculation, and c is a constant.
[0013] The generalized sidelobe canceller also includes a speech activity detection part, which is located between the blocking matrix part and the adaptive noise control part, and is used to determine the current frame properties of the output signal of the blocking matrix part; the adaptive noise control part updates the step factor according to the determination result of the speech activity detection part.
[0014] The adaptive noise control part updates the step size factor according to the determination result of the voice activity detection part: when the determination result of the voice activity detection part is a voice frame, μ a =0.01μ; when the determination result of the voice activity detection part is a noise frame, μ a =μ, where μ is an empirical constant.
[0015] The technical solution adopted by the present invention to solve the technical problem is: to provide a speech enhancement method, comprising the following steps:
[0016] Perform delay estimation and delay compensation on the array signal, and obtain the speech signal after preliminary noise reduction by weighted summation;
[0017] Filtering out the desired signal in the array signal after the delay compensation, and outputting the noise and interference signal;
[0018] Iteratively calculating the noise and interference signal using the NLMS algorithm so that the noise and interference signal are close to the residual noise in the speech signal after the preliminary noise reduction;
[0019] The speech signal after preliminary noise reduction is subtracted from the noise and interference signal after iterative calculation to output a target speech signal.
[0020] Before performing delay estimation and delay compensation on the array signal, the method further includes:
[0021] The array signal is pre-emphasized to compensate for the high-frequency components lost during signal propagation, and the array signal is framed and windowed to ensure the short-term stability of the array signal.
[0022] When the NLMS algorithm is used to iteratively calculate the noise and interference signal, Update the filter coefficients, where w a (n) represents the nth filter coefficient in the adaptive noise control part, α s is the smoothing factor, μ a is the step factor, x(n) represents the current frame speech signal, e(n) is the error between the current speech signal after preliminary noise reduction and the noise and interference signal after iterative calculation, and c is a constant.
[0023] Before the NLMS algorithm is used to iteratively calculate the noise and interference signal, the method further includes:
[0024] Determining the current frame property of the output signal of the blocking matrix portion;
[0025] When the NLMS algorithm is used to iteratively calculate the noise and interference signals, the step factor is updated according to the current frame properties of the output signal of the blocking matrix part.
[0026] When the step factor is updated according to the property of the current frame of the output signal of the blocking matrix part, when the current frame of the output signal of the blocking matrix part is a speech frame, μ a =0.01μ; when the current frame of the output signal according to the blocking matrix part is a noise frame, μ a =μ, where μ is an empirical constant.
[0027] Beneficial Effects
[0028] Due to the adoption of the above technical solution, the present invention has the following advantages and positive effects compared with the prior art: The present invention adopts the NLMS algorithm to replace the traditional ANC part in the generalized sidelobe canceller to speed up the iterative update speed, so that the GSC can be applied to more application scenarios. Secondly, the output of the blocking matrix is subjected to voice activity detection (VAD) detection before the adaptive noise control part, and the iterative step factor in the ANC is updated in real time according to the detection result of the VAD detection, and a smoothing factor is introduced in the iterative process to realize the calculation of the filter coefficient, which takes into account the continuity of the speech while also ensuring its robustness. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] Figure 1 It is a schematic diagram of a generalized sidelobe canceller in the prior art;
[0030] Figure 2 It is a schematic diagram of a generalized sidelobe canceller according to an embodiment of the present invention. DETAILED DESCRIPTION
[0031] The present invention will be further described below in conjunction with specific embodiments. It should be understood that these embodiments are only used to illustrate the present invention and are not intended to limit the scope of the present invention. In addition, it should be understood that after reading the content taught by the present invention, those skilled in the art can make various changes or modifications to the present invention, and these equivalent forms fall within the scope limited by the appended claims of the application equally.
[0032] The embodiments of the present invention relate to a generalized sidelobe canceller, such as Figure 2As shown, it includes: a fixed beam forming part, which is used to perform delay estimation and delay compensation on the array signal, and obtain the speech signal after preliminary noise reduction by weighted summation; a blocking matrix part, which is used to filter out the desired signal in the array signal after delay compensation, and output noise and interference signals; an adaptive noise control part, which is used to iteratively calculate the noise and interference signals using the NLMS algorithm, so that the noise and interference signals are close to the residual noise in the speech signal after preliminary noise reduction; an output part, which is used to subtract the speech signal after preliminary noise reduction from the noise and interference signals after iterative calculation, and output the target speech signal.
[0033] The generalized sidelobe canceller in this embodiment also includes a speech activity detection part, which is located between the blocking matrix part and the adaptive noise control part, and is used to determine the current frame properties of the output signal of the blocking matrix part; the adaptive noise control part updates the step factor according to the determination result of the speech activity detection part.
[0034] It can be seen that the technical solution adopted in this embodiment is to discuss the situation of the presence and absence of the expected voice separately, and to reduce the voice distortion by updating the filter coefficient of ANC in different ways. First, before the adaptive noise control part is performed, the voice activity detection (VAD) part is introduced into the output signal of the blocking matrix, and different step factors are selected according to the detection results of the VAD detection part to iteratively update the filter coefficient, so that the iterative step can be updated and changed in real time under different signals, thereby improving the accuracy of iteration. Secondly, the least mean square (LMS) algorithm is most commonly used in ANC to iteratively update the weights. In this embodiment, the normalized LMS (NLMS) algorithm is used for improvement to speed up the iterative update speed, and a smoothing factor is added to the iteration of the filter coefficient in NLMS to ensure the continuity of the voice and the robustness of the algorithm.
[0035] When performing speech enhancement, the following steps are included:
[0036] Step 1: Use a uniform linear microphone array to receive signals, and pre-process the received signals, such as frame segmentation, windowing, and pre-emphasis.
[0037] In this step, it is assumed that the signal received by the array is X(t) = [x1(t), x2(t), …, x M (t)] Τ, where M is the number of array elements in the array. If the number of signal sources is D, θ is the angle at which the signal source is incident on the array. The first array element is selected as the reference array element. The time delay of the kth signal source incident on the mth array element relative to the reference array element can be calculated as follows:
[0038]
[0039] Where d is the spacing between array elements in a uniform linear array, and c is the speed of light.
[0040] Because under ideal conditions, g mk is 1, so the array received signal X(t) can be expressed as:
[0041]
[0042] Where λ represents the signal wavelength, S(t)=[s1(t),s2(t),…,s M (t)] Τ 、N(t)=[n1(t),n2(t),…,n M (t)] Τ are the spatial source signal and array additive noise respectively.
[0043] For the signal received by the array, pre-emphasis is first required to compensate for the high-frequency components lost during the propagation of the speech signal. Secondly, the signal is framed and windowed to obtain the short-term stability of the speech signal. The pre-processed signal can be processed by the subsequent GSC algorithm.
[0044] like Figure 1 As shown, the weight vector of GSC is written as W = w q -Bw a The form of, where w q is the weight vector of the FBF in the upper branch, w a is the weight vector of ANC in the lower branch, and B is the blocking matrix BM. Therefore, the final output of GSC can be written as y = W Τ X.
[0045] Step 2: The FBF of the upper branch of the GSC first performs delay estimation and delay compensation on the array signal, and obtains the speech signal after preliminary noise reduction by weighted summation.
[0046] In this step, the weight vector of the FBF in the upper branch is w q =[w q0 ,w q1 ,…,w q(M-1) ] Τ , after delayed summation, the initial noise-reduced speech signal is:
[0047]
[0048] Step 3: The GSC lower branch first filters the desired signal through BM and outputs the remaining noise and interference signals.
[0049] In this step, the blocking matrix is selected as:
[0050]
[0051] Step 4: Get the judgment of the current frame of the blocking matrix output signal through the VAD algorithm, and determine the size of the iterative update step factor when calculating the current ANC filter coefficient according to the judgment result, whether it is a speech frame or a noise frame; when the ANC filter coefficient is updated, the improved NLMS algorithm is used for iterative calculation, and the filter coefficient is calculated through the smoothing factor. Specifically:
[0052] First, estimate the current error:
[0053] e(n)=y f (n)-y b (n) (5)
[0054] When updating the filter coefficient, since the NLMS algorithm is used, the update formula of the filter coefficient is:
[0055]
[0056] In the formula, w a (n) represents the nth filter coefficient in the adaptive noise control part, x(n) represents the current frame speech signal, c is usually a small constant to ensure that the step size is not too large, μ a is a step size factor updated in real time, α s is the smoothing factor. NLMS speeds up the iterative update of the filter coefficients at the expense of accuracy, so by adjusting μ according to the current frame a To ensure the robustness of GSC. According to the VAD result of the current frame, μ a The update method is as follows:
[0057]
[0058] Where μ is an empirical constant.
[0059] Step 5: Subtract the signal output by the upper branch from the signal finally output by the lower branch to obtain the enhanced signal output by the final GSC. The mutual cancellation between the enhanced speech signal output by the upper branch FBF and the residual noise output by the lower branch is in the form of subtraction to obtain the final output GSC enhanced target signal.
[0060] It is not difficult to find that compared with the traditional GSC algorithm, the present invention selects the NLMS algorithm with faster iterative update rather than the LMS algorithm, which improves the calculation speed while ensuring robustness and is suitable for more application scenarios. A VAD algorithm is added after the BM part of the generalized sidelobe canceller to determine the speech frame and noise frame of the current output signal, in order to speed up the update of the ANC filter coefficient when the expected target signal does not exist, so as to obtain a more accurate estimate of the noise. Secondly, in the improved ANC part, according to the detection results of the VAD algorithm, a different calculation method is used for the filter coefficient, which effectively outputs the noise when there is signal leakage in the lower branch. At the same time, considering the continuity of the speech signal and the correlation of the weight coefficient during iterative update, a smoothing factor is used to improve the filter coefficient.
[0061] In general, in view of the signal leakage problem that often occurs in the generalized sidelobe canceller, the present invention mainly improves the adaptive noise control part of the lower branch, which improves the iterative update speed of the algorithm on the one hand, and ensures the robustness of the algorithm on the other hand. The present invention can be applied to different noise environments, and can also achieve better performance for moving sound sources or reverberation environments.
Claims
1. A generalized sidelobe canceller, characterized in that: include: The fixed beamforming part is used to estimate and compensate the delay of the array signal, and obtain the speech signal after preliminary noise reduction by weighted summation; A blocking matrix part, used to filter out the desired signal in the array signal after delay compensation, and output noise and interference signals; The adaptive noise control part is used to iteratively calculate the noise and interference signal using the NLMS algorithm so that the noise and interference signal are close to the residual noise in the speech signal after the preliminary noise reduction; the filter coefficient update formula of the adaptive noise control part is: Among them, w a (n) represents the nth filter coefficient in the adaptive noise control part, α s is the smoothing factor, μ a is the step factor, x(n) represents the current frame speech signal, e(n) is the error between the current speech signal after preliminary noise reduction and the noise and interference signal after iterative calculation, and c is a constant; A voice activity detection part, located between the blocking matrix part and the adaptive noise control part, is used to determine the current frame property of the output signal of the blocking matrix part; the adaptive noise control part also updates the step size factor according to the determination result of the voice activity detection part; The output part is used to subtract the speech signal after preliminary noise reduction from the noise and interference signal after iterative calculation, and output the target speech signal.
2. The generalized sidelobe canceller according to claim 1, characterized in that: The system also includes a preprocessing part, which is located at the front end of the fixed beam forming part and is used to pre-emphasize the array signal to compensate for the high-frequency components lost during signal propagation, and to frame and window the array signal to ensure the short-term stability of the array signal.
3. The generalized sidelobe canceller according to claim 1, characterized in that: The adaptive noise control part updates the step size factor according to the determination result of the voice activity detection part: when the determination result of the voice activity detection part is a voice frame, μ a =0.01μ; when the determination result of the voice activity detection part is a noise frame, μ a =μ, where μ is an empirical constant.
4. A speech enhancement method, characterized in that: The following steps are involved: Perform delay estimation and delay compensation on the array signal, and obtain the speech signal after preliminary noise reduction by weighted summation; Filtering out the desired signal in the array signal after the delay compensation, and outputting the noise and interference signal; The noise and interference signal are iteratively calculated by using the NLMS algorithm, so that the noise and interference signal are close to the residual noise in the speech signal after the preliminary noise reduction; when the noise and interference signal are iteratively calculated by using the NLMS algorithm, Update the filter coefficients, where w a (n) represents the nth filter coefficient in the adaptive noise control part, α s is the smoothing factor, μ a is the step factor, x(n) represents the current frame speech signal, e(n) is the error between the current speech signal after preliminary noise reduction and the noise and interference signal after iterative calculation, and c is a constant; Subtracting the speech signal after preliminary noise reduction from the noise and interference signal after iterative calculation to output a target speech signal; Before the NLMS algorithm is used to iteratively calculate the noise and interference signal, the method further includes: Determine the current frame property of the output signal of the blocking matrix portion; When the NLMS algorithm is used to iteratively calculate the noise and interference signals, the step factor is updated according to the current frame properties of the output signal of the blocking matrix part.
5. The speech enhancement method according to claim 4, characterized in that: Before performing delay estimation and delay compensation on the array signal, the method further includes: The array signal is pre-emphasized to compensate for the high-frequency components lost during signal propagation, and the array signal is framed and windowed to ensure the short-term stability of the array signal.
6. The speech enhancement method according to claim 4, characterized in that: When the step factor is updated according to the property of the current frame of the output signal of the blocking matrix part, when the current frame of the output signal of the blocking matrix part is a speech frame, μ a =0.01μ; when the current frame of the output signal according to the blocking matrix part is a noise frame, μ a =μ, where μ is an empirical constant.
Citation Information
Patent Citations
Speech noise reduction method and device synthesizing beam via weighted stacking
CN110827846A
Microphone array speech enhancement method for rear FastICA signal separation
CN113936685A