Beam forming method and device, storage medium and computer program product
By adding processing steps after the blocking matrix of the GSC lower branch, the leaked target signal in the lower branch is filtered out using the upper branch signal, the signal damage caused by signal leakage in the GSC lower branch is solved and the signal quality is improved.
Patent Information
- Application Number
- CN202510749959.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-06
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2045-06-06
AI Technical Summary
The signal leakage problem of branch under generalized side lobe canceller (GSC) leads to target signal damage, which is difficult to effectively solve in the prior art.
After the blocking matrix of the lower branch of GSC, a processing step is added. The signal output from the upper branch is used as a reference to filter out the parts of the lower branch signal related to the target signal to avoid signal damage.
Effectively filter out the leaked target signal in the lower branch signal, avoiding damage to the target signal when the upper and lower branches are offset, and improving signal quality.
Smart Images

Figure CN120279927A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of signal processing, and in particular, to a beamforming method, device, storage medium, and computer program product. Background Art
[0002] Beam Forming technology combines multiple signals, suppresses signals in non-target directions, and enhances signals in the target direction. It can achieve focused pickup of signals in a specific direction, effectively improve the signal-to-noise ratio of the received signals, and also play a role in noise reduction. The Generalized Sidelobe Canceller (GSC) is an adaptive beamforming technology based on a sensor array. Its core idea is to decompose the beamforming problem into two parts: fixed beamforming and adaptive interference cancellation, thereby improving the calculation efficiency and meeting the constraint conditions.
[0003] However, an inherent problem of GSC is the signal leakage problem in the lower branch. Due to the accuracy problem of the steering vector and blocking matrix estimation, there is inevitably target signal leakage in the lower branch, which causes a certain degree of target signal damage when subtracting the signals in the upper and lower branches.
[0004] The above content is only used to assist in understanding the technical solution of the present application, and does not represent an admission that the above content is prior art. Summary of the Invention
[0005] The main objective of the present application is to provide a beamforming method, device, storage medium, and computer program product, aiming to solve the problem of target signal damage caused by target signal leakage in the lower branch of GSC.
[0006] To achieve the above objective, the present application proposes a beamforming method, and the beamforming method includes: Obtain a first signal obtained by processing each input signal through the upper branch of the Generalized Sidelobe Canceller (GSC); Obtain a second signal obtained by processing each input signal through the blocking matrix of the lower branch of the GSC; Filter out the signal related to the first signal from the second signal to obtain a third signal; Input the third signal into the subsequent module of the lower branch of the GSC, so as to obtain a beamforming output signal after processing the first signal and the third signal through the subsequent module of the GSC.
[0007] Optionally, the step of filtering out the signal related to the first signal from the second signal to obtain a third signal includes: Calculate filter coefficients according to the first signal; A fourth signal is calculated based on the filter coefficients and the second signal, where the fourth signal is an estimation of the signal related to the first signal in the second signal; The fourth signal is filtered from the second signal to obtain a third signal.
[0008] Optionally, the step of calculating filter coefficients according to the first signal includes: Calculating a cross-correlation vector between the first signal and the second signal; Calculating an autocorrelation matrix of the second signal; Calculating filter coefficients based on the cross-correlation vector and the autocorrelation matrix.
[0009] Optionally, the step of obtaining the second signal processed from each input signal through the blocking matrix of the lower branch of the GSC includes: Calculating the signal energy of the second signal; Setting an inhibition strength parameter according to the signal energy, where the inhibition strength parameter is used to control the strength of filtering the signal related to the first signal from the second signal, and when the signal energy is larger, the strength of filtering the signal related to the first signal from the second signal according to the inhibition strength parameter is smaller; The step of filtering the signal related to the first signal from the second signal to obtain a third signal includes: Filtering the signal related to the first signal from the second signal according to the inhibition strength parameter to obtain a third signal.
[0010] Optionally, the inhibition strength parameter includes a lower threshold for limiting the lower limit of the gain coefficient and / or a bias for adjusting the size of the gain coefficient, and the gain coefficient is used to filter the signal related to the first signal from the second signal to obtain the third signal; The step of setting the inhibition strength parameter according to the signal energy includes: Setting the lower threshold and / or the bias according to the signal energy, where the lower threshold is smaller when the signal energy is smaller, and the bias is smaller when the signal energy is smaller.
[0011] Optionally, the step of filtering the signal related to the first signal from the second signal to obtain a third signal includes: Performing time alignment on the second signal and the first signal; Filtering the signal related to the first signal from the time-aligned second signal to obtain a third signal.
[0012] Optionally, the beamforming method is applied to a device with a microphone array. Before the step of obtaining the first signal obtained by processing each input signal by the fixed beamformer on the upper branch of the generalized sidelobe canceller (GSC), the method further includes: Obtaining each of the input signals collected by the microphone array.
[0013] In addition, to achieve the above object, the present application also provides a beamforming device, which includes: a memory, a processor, and a computer program stored on the memory and executable on the processor. The computer program is configured to implement the steps of the beamforming method as described above.
[0014] In addition, to achieve the above object, the present application also provides a storage medium, which is a computer-readable storage medium. A computer program is stored on the storage medium, and when the computer program is executed by a processor, it implements the steps of the beamforming method as described above.
[0015] In addition, to achieve the above object, the present application also provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it implements the steps of the beamforming method as described above.
[0016] One or more technical solutions proposed by the present application have at least the following technical effects: By adding a processing step after the blocking matrix on the lower branch of the GSC in the present application, using the first signal output from the upper branch as a reference signal, filtering out the signal related to the first signal from the second signal output after being processed by the blocking matrix, so as to filter out the signal related to the target signal therein, that is, filtering out the leaked target signal therein, thereby avoiding damage to the target signal when the signals on the upper and lower branches are cancelled. The solution of this embodiment adopts a reverse idea, that is, taking the second signal in the original reference channel as the main signal and the first signal in the original main channel as the reference signal, which is equivalent to filtering out the target signal in reverse as "noise", and finally solving the problem of target signal damage caused by the leakage of the target signal on the lower branch of the GSC. Description of the Drawings
[0017] The drawings here are incorporated into the specification and form a part of this specification, showing embodiments consistent with the present application and used together with the specification to explain the principles of the present application.
[0018] To more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can also be obtained based on these drawings without creative efforts.
[0019] Figure 1 Schematic flowchart provided for the first embodiment of the beamforming method of this application; Figure 2 Schematic flowchart of a GSC process involved in the prior art; Figure 3 Schematic flowchart of an improved GSC process involved in one embodiment of this application; Figure 4 Schematic flowchart of another improved GSC process involved in one embodiment of this application; Figure 5 Schematic diagram of the device structure of the hardware operating environment involved in the beamforming method in the embodiments of this application.
[0020] The realization of the purpose, functional features and advantages of this application will be further described with reference to the embodiments and the accompanying drawings. Specific embodiments
[0021] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of this application and are not used to limit this application.
[0022] In order to better understand the technical solutions of this application, the following will be described in detail in conjunction with the accompanying drawings of the specification and specific embodiments.
[0023] An inherent problem of GSC is the signal leakage problem in the lower branch. Due to the accuracy problem of the steering vector and the blocking matrix estimation, there is inevitably target signal leakage in the lower branch, which causes a certain degree of target signal damage when subtracting the upper and lower branch signals.
[0024] In order to solve the above technical problems, in the embodiments of this application, a processing step is added after the blocking matrix in the lower branch of GSC. The first signal output from the upper branch is used as the reference signal, and the signal related to the first signal is filtered out from the second signal output after being processed by the blocking matrix, so as to filter out the signal related to the target signal, that is, filter out the leaked target signal, thereby avoiding target signal damage when the upper and lower branch signals are cancelled. The solution of this embodiment adopts a reverse idea, that is, the second signal in the original reference channel is used as the main signal, and the first signal in the original main channel is used as the reference signal, which is equivalent to filtering out the target signal in the reverse direction as "noise", and finally solving the problem of target signal damage caused by target signal leakage in the lower branch of GSC.
[0025] The following presents the first embodiment of the beamforming method of this application. Refer to Figure 1 , Figure 1This is a flowchart of the first embodiment of the beamforming method of this application. In this embodiment, the beamforming method is applicable to various array signal processing scenarios based on wave propagation. For example, it can be used for beamforming processing of audio signals in devices such as headphones and smart speakers, and can be used for beamforming processing of radar signals in devices such as vehicle-mounted radars and 5G base stations. The application scenarios are not limited in this embodiment. For ease of description below, the "beamforming device" is used as the execution subject to elaborate on each embodiment. In this embodiment, the beamforming method includes steps S10 to S40: Step S10, obtain the first signal obtained by processing each input signal through the upper branch of the GSC.
[0026] Each input signal is a multiplexed signal collected and input through a sensor array. If the sensor array includes n array elements, then n input signals are input. The sensor array can be a microphone array, a radar array, etc., and is not limited in this embodiment.
[0027] The GSC realizes target signal enhancement and interference suppression through the combined processing of the upper and lower branches; the upper branch (also called the main channel) is used to perform phase alignment and coherent superposition on the signals from the target direction, and preliminarily enhance the target signal (there is still some interference and noise remaining); the lower branch (also called the reference channel) is used to block the target signal to form a reference signal that only includes interference and noise, and use the reference signal to cancel the remaining interference and noise in the main channel. The upper branch generally includes a Fixed Beamformer, and the Fixed Beamformer includes a set of predefined fixed weights, which are responsible for preliminarily enhancing the target signal. The processing process of the upper branch can be expressed as:
[0028] where u(n) is each input signal, is the fixed weight of the fixed beamformer, satisfying the constraint , is the target direction vector.
[0029] The lower branch generally includes a Blocking Matrix (BM) and an Adaptive Canceller; the blocking matrix is used to filter out the target signal and retain interference and noise, and the blocking matrix can be implemented by a matrix B orthogonal to the target direction vector; the adaptive interference canceller dynamically adjusts the weight through an adaptive filter to estimate and cancel the interference in the main channel. The processing process of the blocking matrix of the lower branch can be expressed as:
[0030] where B represents the blocking matrix, satisfying the constraint condition: , that is, the column vectors of the blocking matrix are orthogonal to orthogonal.
[0031] The processing process of the adaptive interference canceller can be expressed as:
[0032] Among them, compared with using as the input of the adaptive interference canceller, in this embodiment, is used as the input of the adaptive interference canceller, represents the signal obtained after processing through the subsequent step S30, represents the dynamic weight of the adaptive filter.
[0033] It should be noted that in some feasible embodiments, the upper branch may also include other modules in addition to the fixed beamformer, and the lower branch may also include other modules in addition to the blocking matrix and the adaptive interference canceller.
[0034] In the specific embodiment, the GSC algorithm can be executed in the beamforming device of this embodiment, or can be executed by other devices. The beamforming device obtains the execution result of the GSC algorithm from other devices, processes it, and then feeds back the processing result to the device.
[0035] In each embodiment, the signal obtained by processing each input signal through the fixed beamformer of the GSC upper branch is called the first signal for distinction. There is still interference and noise remaining in the first signal, and it is necessary to cancel the interference and noise through the reference signal of the lower branch.
[0036] Step S20, obtain a second signal obtained by processing the input signals through the blocking matrix of the GSC lower branch.
[0037] The signal obtained by processing each input signal through the blocking matrix of the GSC lower branch is called the second signal for distinction. The purpose of processing through the blocking matrix is to block the target signal, but there may still be a small amount of target signal in the second signal, that is, there is a problem of target signal leakage. Then, when using the reference signal of the lower branch to cancel the interference and noise of the main channel output signal, the target signal in the main channel output signal may also be cancelled, resulting in damage to the target signal.
[0038] Step S30, filter out the signal related to the first signal from the second signal to obtain a third signal.
[0039] In this embodiment, a first signal and a second signal are obtained by a beamforming device, and signals related to the first signal are filtered out from the second signal to obtain a remaining signal (referred to as a third signal for distinction). Since the first signal mainly includes target signals, filtering out signals related to the first signal from the second signal can filter out signals related to the target signals therein, that is, filter out the leaked target signals, thereby avoiding damage to the target signals when the up and down branch signals are cancelled.
[0040] There are many ways to filter out signals related to the first signal from the second signal, which are not limited in this embodiment. A filter can be used to directly estimate the third signal obtained by filtering out signals related to the first signal from the second signal, or a filter can be used to first estimate the signals related to the first signal from the second signal, and then filter out the estimated signals from the second signal. For the former, for example, a gain coefficient can be calculated according to the correlation degree between the first signal and the second signal, and the gain coefficient is applied to the second signal, that is, multiplied by the second signal. The specific way to calculate the gain coefficient is not limited in this embodiment. For the latter, for example, in a feasible implementation, it can be achieved by designing an adaptive filter. The first signal d(n) is input as a reference signal to the adaptive filter, and the second signal x(n) is used as the main input signal to calculate , where , is the filter weight vector, which is dynamically adjusted by an algorithm to minimize the mean square error , i.e., the estimation of the signal related to d(n) in x(n), i.e., the remaining signal after removing the signals related to the first signal, that is, the third signal.
[0041] Step S40: Input the third signal into the subsequent module of the lower branch of the GSC, so that the subsequent module of the GSC processes the first signal and the third signal to obtain a beamforming output signal.
[0042] The subsequent module of the lower branch of the GSC refers to the module after the blocking matrix in the original GSC algorithm, such as an adaptive interference canceller. That is, the third signal is continuously processed by each module located after the blocking matrix in the lower branch, and then the signal finally output by the lower branch is cancelled from the first signal through the cancellation module of the GSC, and finally a beamforming output signal is obtained, or a beamforming output signal is obtained after some post-processing.
[0043] In this embodiment, by adding a processing step after the blocking matrix in the lower branch of the GSC, using the first signal output from the upper branch as a reference signal, filtering out the signal related to the first signal from the second signal output after being processed by the blocking matrix, so as to filter out the signal related to the target signal therein, that is, filtering out the leaked target signal therein, thereby avoiding damage to the target signal when the signals of the upper and lower branches are cancelled. The solution of this embodiment adopts a reverse idea, that is, taking the second signal in the original reference channel as the main signal and the first signal in the original main channel as the reference signal, which is equivalent to filtering out the target signal in reverse as "noise", and finally solving the problem of target signal damage caused by the leakage of the target signal in the lower branch of the GSC.
[0044] In a feasible implementation manner, the beamforming method in this embodiment can be applied to a device with a microphone array, that is, the beamforming device can be a device with a microphone array. Before the step S10, it further includes: acquiring the input signals of each path collected by the microphone array. Further, the beamforming device can process the input signals of each path by using the upper branch of the GSC to obtain a first audio signal, process the input signals of each path by using the blocking matrix of the lower branch of the GSC to obtain a second audio signal, filter out the signal related to the first audio signal from the second audio signal to obtain a third audio signal, then process the third audio signal by using the subsequent module of the lower branch of the GSC, process the first audio signal by using the subsequent module of the upper branch of the GSC, and finally output the beamforming output signal processed by the GSC, that is, the voice signal after enhancement processing. By using the first audio signal output from the upper branch as a reference signal, filtering out the signal related to the first audio signal from the second audio signal output after being processed by the blocking matrix, so as to filter out the signal related to the target voice signal therein, that is, filtering out the leaked target voice signal therein, thereby avoiding voice damage when the signals of the upper and lower branches are cancelled.
[0045] In a feasible implementation manner, the step S30 includes: performing timing alignment on the second signal and the first signal; filtering out the signal related to the first signal from the second signal after timing alignment to obtain a third signal.
[0046] To avoid a time delay between the first signal processed by the upper branch and the second signal processed by the blocking matrix of the lower branch, the first signal and the second signal can be subjected to timing alignment, and then subsequent signal filtering processing is performed to obtain a third signal. There are many ways to implement timing alignment, which are not limited in this implementation manner. For example, a filter, such as a FIR (Finite Impulse Response) filter, can be used to adjust the phase of the first signal so that its timing is aligned with that of the second signal.
[0047] In a feasible implementation manner, the step of filtering out the signal related to the first signal from the second signal to obtain a third signal may include: performing band-pass filtering on the first signal to obtain a fifth signal, where the passband range of the band-pass filtering matches the spectral characteristics of the target signal for beamforming; filtering out the signal related to the fifth signal from the second signal to obtain a third signal. In addition to the target signal, there are still some noises and interferences in the first signal. When filtering out the target signal in the second signal with the first signal as the reference signal, to avoid taking the noises and interferences in the first signal as the filtering objects and affecting the beamforming effect, by performing band-pass filtering on the first signal, the signal in the frequency band range where the target signal is mainly concentrated is retained, so as to avoid taking the remaining noises and interferences in the first signal as the filtering objects as much as possible. The passband range of the band-pass filtering can be fixedly set in advance according to the spectral characteristics of the target signal, or the passband range matching it can be calculated by performing real-time analysis on the spectral characteristics of the target signal.
[0048] Based on the above first embodiment, a second embodiment of the beamforming method of the present application is proposed. In this embodiment, the same or similar content as that in the above first embodiment can be referred to the above introduction and will not be repeated hereinafter. In this embodiment, the step S30 includes S301 to S303: Step S301, calculating filter coefficients according to the first signal.
[0049] A filter can be used to estimate the signal related to the first signal in the second signal. Specifically, the first signal can be used as the basis for determining the filter coefficients, so that the filter can accurately estimate the signal related to the first signal in the second signal.
[0050] In specific implementation manners, different filters can be used to implement. When different filters are selected for implementation, the specific calculation methods for calculating filter coefficients according to the first signal also vary, which are not limited in this embodiment.
[0051] Step S302, calculating a fourth signal according to the filter coefficients and the second signal, where the fourth signal is an estimation of the signal related to the first signal in the second signal.
[0052] The estimation of the signal related to the first signal in the second signal is called the fourth signal for distinction. When different filters are selected for implementation, the specific calculation methods for calculating the fourth signal with the filter coefficients and the second signal also vary, which are not limited in this embodiment.
[0053] Step S303, filtering out the fourth signal from the second signal to obtain a third signal.
[0054] through represents the fourth signal, x(n) represents the second signal, and the third signal .
[0055] As Figure 2 shown in the flowchart of the current GSC algorithm, the signal x(n) after passing through the blocking matrix B is directly input into the subsequent adaptive filter , as Figure 3 shown in adding a filter after the blocking matrix of the GSC algorithm , through estimating the fourth signal and filtering the fourth signal from the second signal to obtain the third signal , and then inputting it into the subsequent adaptive filter for processing.
[0056] In a feasible implementation manner, it can be implemented by a Wiener filter. Specifically, the step S301 includes S3011 to S3013: Step S3011, calculating the cross-correlation vector between the first signal and the second signal.
[0057] Step S3012, calculating the autocorrelation matrix of the second signal.
[0058] Step S3013, calculating the filter coefficients according to the cross-correlation vector and the autocorrelation matrix.
[0059] The first signal is expressed as d(n), and the second signal is expressed as x(n); calculating the autocorrelation matrix of x(n) , reflecting the statistical characteristics of the lower-branch signal; calculating the cross-correlation vector of x(n) and d(n) , used to establish the association with the target signal; the filter coefficients are solved by the following equation:
[0060] This solution ensures that the mean square error of the fourth signal is minimized. Through extracting the leakage signal estimate from x(n), that is, the fourth signal, and then through eliminating the leakage signal to obtain the third signal and inputting it into the subsequent module of the lower branch.
[0061] In this embodiment, by calculating filter coefficients based on the first signal, estimating the signal related to the first signal in the second signal (i.e., the fourth signal) according to the filter coefficients and the second signal, and then filtering out the fourth signal from the second signal to obtain the third signal, the leakage of the target signal in the lower branch signal is filtered out, thereby avoiding damage to the target signal when the upper and lower branch signals are cancelled out.
[0062] Based on the above first and / or second embodiments, the third embodiment of the beamforming method of the present application is proposed. In this embodiment, the content that is the same as or similar to the above first and second embodiments can be referred to the above introduction and will not be repeated hereinafter. In this embodiment, considering that the signal-to-noise ratio of the input signal is different in a quiet scenario and a high-noise scenario, and the degree of leakage of the target signal in the lower branch is also different, different suppression intensities are adopted for the leakage of the target signal in the lower branch for different noise scenarios. In a high-noise scenario, a smaller suppression intensity can be adopted, and in a quiet scenario, a larger suppression intensity is adopted. While improving the damage of the target signal existing in the GSC, the noise suppression effect in the high-noise scenario is not affected. The step S20 includes steps S201 to S202: Step S201, calculate the signal energy of the second signal.
[0063] The second signal is the signal obtained after blocking the target signal in each input signal through the blocking matrix of the lower branch, mainly including interference and noise, and its signal energy reflects the noise scenario where the current device is located. Calculating the signal energy of the second signal x(n) can be expressed by the following formula:
[0064] X is the frequency-domain signal after Fourier transform of x(n), and the energy is calculated within the frequency band range of [0, N], N can be set as needed, k represents the frequency, and l represents the frame index.
[0065] Step S202, set the suppression intensity parameter according to the signal energy, where the suppression intensity parameter is used to control the intensity of filtering out the signal related to the first signal from the second signal. When the signal energy is larger, the intensity of filtering out the signal related to the first signal from the second signal according to the suppression intensity parameter is smaller.
[0066] The greater the signal energy is, the more noise there is in the current scenario, and the smaller the proportion of the target signal is. That is, in a high-noise scenario, the proportion of the target signal is small, and the leaked target signal in the lower branch is less. When filtering the signal related to the first signal in the second signal, a smaller filtering intensity can be used to remove the leaked target signal, avoiding removing the main interference and noise in the lower branch and affecting the noise suppression effect of subsequent beamforming. On the contrary, the smaller the signal energy is, the less noise there is in the current scenario, and the greater the proportion of the target signal is. That is, in a low-noise and quiet scenario, the proportion of the target signal is large, and the leaked target signal in the lower branch is more. When filtering the signal related to the first signal in the second signal, a larger filtering intensity is used to effectively remove the leaked target signal. At the same time, since there is less noise and interference, it will not affect the noise suppression effect of subsequent beamforming due to removing the main interference and noise in the lower branch.
[0067] In this embodiment, the specific form of the suppression intensity parameter is not limited. For example, a signal amplitude limit threshold can be used as the suppression intensity parameter. After calculating the estimation (the fourth signal) of the signal related to the first signal in the second signal, the signal amplitude limit threshold can be used to limit the amplitude of the fourth signal. The larger the signal amplitude limit threshold is, the greater the intensity of filtering the signal related to the first signal from the second signal is, and the smaller the signal amplitude limit threshold is, the smaller the intensity of filtering the signal related to the first signal from the second signal is.
[0068] The step S30 includes: filtering the signal related to the first signal from the second signal according to the suppression intensity parameter to obtain a third signal.
[0069] The specific implementation of filtering the signal related to the first signal from the second signal according to the suppression intensity parameter is related to the specific form of the suppression intensity parameter and is not limited in this embodiment. For example, when using a signal amplitude limit threshold as the suppression intensity parameter, the signal amplitude limit threshold is used to limit the amplitude of the fourth signal, and then the fourth signal after amplitude limitation is filtered from the second signal to obtain the third signal.
[0070] In a feasible implementation manner, if the gain coefficient is calculated and the gain coefficient is used to act on the second signal to obtain the third signal, then the suppression intensity parameter may include a lower threshold for limiting the lower limit of the gain coefficient and / or a bias for adjusting the magnitude of the gain coefficient. Accordingly, step S202 includes: setting the lower threshold and / or the bias according to the signal energy, where the lower the signal energy, the lower the lower threshold, and the lower the signal energy, the lower the bias. It should be noted that by using a smaller lower threshold or a smaller bias when the signal energy is small, it is equivalent to allowing more signals to be filtered out from the second signal, that is, it is possible to filter out the signals related to the first signal from the second signal with a greater intensity. Conversely, by using a larger lower threshold or a larger bias when the signal energy is small, it is possible to filter out the signals related to the first signal from the second signal with a smaller intensity.
[0071] When the suppression intensity parameter includes a lower threshold for limiting the lower limit of the gain coefficient, after calculating the gain coefficient, the gain coefficient can be compared with the lower threshold. If it is greater than or equal to the lower threshold, the gain coefficient is directly used to act on the second signal to obtain the third signal. If it is less than the lower threshold, the lower threshold is used as the gain coefficient to act on the second signal to obtain the third signal.
[0072] When the suppression intensity parameter includes a bias for adjusting the magnitude of the gain coefficient, after calculating the gain coefficient, the gain coefficient can be added with the bias and then used to act on the second signal to obtain the third signal.
[0073] When the suppression intensity parameter includes a lower threshold for limiting the lower limit of the gain coefficient and a bias for adjusting the magnitude of the gain coefficient, after calculating the gain coefficient, the gain coefficient is added with the bias and then compared with the lower threshold. If it is greater than or equal to the lower threshold, the gain coefficient after adding the bias is used to act on the second signal to obtain the third signal. If it is less than the lower threshold, the lower threshold is used as the gain coefficient to act on the second signal to obtain the third signal.
[0074] In a feasible implementation manner, when filtering out the signal related to the first signal in the second signal through steps S301 to S303 in the above second embodiment, it is necessary to calculate the coefficients of the filter (i.e., filter coefficients) that act on the second signal to calculate the signal related to the first signal in the second signal. Then, the suppression strength parameter can be set to include an upper threshold for limiting the upper limit of the gain of the filter (hereinafter referred to as the filter gain) and / or a bias for adjusting the size of the filter gain. It should be explained here that the filter mentioned here is a filter used to estimate the signal related to the first signal from the second signal, the input is the second signal, the output is the fourth signal, the filter coefficients are the basic parameters for constructing the filter transfer function, and the filter gain is the ratio of the amplitude of the output signal of the filter to the amplitude of the input signal, which describes the influence of the filter on the signal amplitude, and the filter gain is determined by the filter coefficients. The gain coefficient in the above embodiment directly acts on the second signal to obtain the gain coefficient of the third signal. Correspondingly, step S202 includes: setting the upper threshold and / or the bias according to the signal energy, where the larger the signal energy, the smaller the upper threshold, and the larger the signal energy, the smaller the bias. It should be noted that by using a larger upper threshold or a larger bias for the filter gain when the signal energy is small, it is equivalent to allowing a higher amplitude of the fourth signal estimated from the second signal, that is, it can achieve filtering out the signal related to the first signal from the second signal with a greater strength. On the contrary, by using a smaller upper threshold or a smaller bias for the filter gain when the signal energy is small, it can achieve filtering out the signal related to the first signal from the second signal with a smaller strength.
[0075] When the suppression strength parameter includes an upper threshold for limiting the upper limit of the filter gain, after calculating the filter coefficients through step S301, the filter gain corresponding to the filter coefficients can be compared with the upper threshold. If it is less than or equal to the upper threshold, steps S302 to S303 are directly executed according to the filter coefficients. If it is greater than the upper threshold, the filter coefficients are adjusted so that the filter gain corresponding to the adjusted filter coefficients is less than or equal to the upper threshold, and steps S302 to S303 are executed with the adjusted filter coefficients.
[0076] When the suppression strength parameter includes a bias for adjusting the size of the filter gain, after calculating the filter coefficients through step S301, the filter coefficients can be adjusted so that the filter gain corresponding to the adjusted filter coefficients is the sum of the original filter gain and the bias, and steps S302 to S303 are executed with the adjusted ones.
[0077] When the suppression strength parameter includes an upper threshold for limiting the upper limit of the filter gain and a bias for adjusting the magnitude of the filter gain, after calculating the filter coefficients through step S301, the filter coefficients can be adjusted so that the filter gain corresponding to the adjusted filter coefficients is the sum of the original filter gain and the bias. Then, compare the filter gain corresponding to the adjusted filter coefficients with the upper threshold. If it is less than or equal to the upper threshold, execute steps S302 - S303 with the adjusted filter coefficients. If it is greater than the upper threshold, adjust the filter coefficients so that the filter gain corresponding to the adjusted filter coefficients is less than or equal to the upper threshold, and execute steps S302 - S303 with the adjusted filter coefficients.
[0078] In a feasible implementation, when the suppression strength parameter includes an upper threshold for limiting the upper limit of the filter gain and a bias for adjusting the magnitude of the filter gain, the step of filtering out the signal related to the first signal from the second signal according to the suppression strength parameter to obtain a third signal may include: calculating filter coefficients according to the first signal; adjusting the filter coefficients so that the filter gain corresponding to the adjusted filter coefficients is the sum of the original filter gain and the bias, and comparing the filter gain corresponding to the adjusted filter coefficients with the upper threshold; if the filter gain corresponding to the adjusted filter coefficients is less than or equal to the upper threshold, calculating a fourth signal according to the adjusted filter coefficients and the second signal; if the filter gain corresponding to the adjusted filter coefficients is less than the upper threshold, readjusting the filter coefficients so that the filter gain corresponding to the adjusted filter coefficients is less than or equal to the upper threshold, and calculating a fourth signal according to the adjusted filter coefficients and the second signal; wherein, the fourth signal is an estimate of the signal related to the first signal in the second signal; filtering out the fourth signal from the second signal to obtain a third signal.
[0079] As Figure 4 shown, on the basis of adding a filter after the blocking matrix of the GSC algorithm by calculating the energy of the second signal x(n) , calculating the suppression strength parameter according to the energy, and adjusting the filter .
[0080] An embodiment of the present application provides a beamforming device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the beamforming method in the above embodiments.
[0081] Next, refer toFigure 5 , which shows a schematic structural diagram of a beamforming device suitable for implementing the embodiments of the present application. The beamforming device in the embodiments of the present application may be a control unit in an RNC system. Figure 5 The shown beamforming device is only an example and should not impose any limitations on the functions and usage scope of the embodiments of the present application.
[0082] As Figure 5 shown, the beamforming device may include a processing device 1001 (such as a DSP processor, etc.), which can perform various appropriate actions and processes according to the program stored in the read-only memory 1002 or the program loaded from the storage device 1003 into the random access memory 1004. In the random access memory 1004, various programs and data required for the operation of the beamforming device are also stored. The processing device 1001, the read-only memory 1002, and the random access memory 1004 are connected to each other through a bus 1005. The input / output interface 1006 is also connected to the bus. Generally, the following systems may be connected to the input / output interface 1006: an input device 1007 including, for example, a microphone, an accelerometer, etc.; an output device 1008 including, for example, a speaker, a vibrator, etc.; a storage device 1003 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 1009. The communication device 1009 can allow the beamforming device to communicate with other devices wirelessly or wiredly to exchange data. Although the figure shows a beamforming device with various systems, it should be understood that it is not required to implement or have all the shown systems. Instead, more or fewer systems may be implemented or had.
[0083] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program codes for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication device, or installed from the storage device 1003, or installed from the read-only memory 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiments disclosed in the present application are executed.
[0084] Compared with the prior art, the beneficial effects of the beamforming device provided by the embodiments of the present application are the same as those of the beamforming method provided by the above embodiments, and other technical features in the beamforming device are the same as those disclosed in the method of the previous embodiment, and will not be elaborated here.
[0085] It should be understood that each part disclosed in the embodiments of the present application can be implemented by hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in a suitable manner in any one or more embodiments or examples.
[0086] As described above, the above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present application, and all should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.
[0087] The embodiments of the present application provide a computer-readable storage medium having computer-readable program instructions (i.e., computer programs) stored thereon, and the computer-readable program instructions are used to execute the beamforming method in the above embodiments.
[0088] The computer-readable storage medium provided by the embodiments of the present application can be, for example, a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM) or flash memory, optical fibers, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the above. In this embodiment, the computer-readable storage medium can be any tangible medium that contains or stores a program, and the program can be used by or combined with an instruction execution system or device. The program code contained on the computer-readable storage medium can be transmitted by any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination of the above.
[0089] The above computer-readable storage medium can be included in the beamforming device; or it can exist separately and not be assembled into the beamforming device.
[0090] The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed by the beamforming device, the beamforming device is caused to execute the above functions defined in the method of the disclosed embodiments of the present application.
[0091] Computer program code for performing the operations of this application can be written in one or more programming languages or combinations thereof. The above-mentioned programming languages include object-oriented programming languages such as Java, Smalltalk, C++, and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as an independent software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN: Local Area Network) or a wide area network (WAN: Wide Area Network), or it can be connected to an external computer (for example, by using an Internet service provider to connect through the Internet).
[0092] The flowcharts and block diagrams in the accompanying drawings illustrate the possible architectures, functions, and operations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in the flowchart or block diagram may represent a module, a program segment, or a part of code that contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the blocks may occur in a different order than that marked in the accompanying drawings. For example, two consecutively represented blocks may actually be executed substantially in parallel, and they may sometimes be executed in the reverse order, depending on the functions involved. It should also be noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system for performing the specified functions or operations, or can be implemented by a combination of dedicated hardware and computer instructions.
[0093] The modules described in the embodiments of this application can be implemented in software or in hardware. Among them, the name of the module does not constitute a limitation to the unit itself in some cases.
[0094] The readable storage medium provided by the embodiments of this application is a computer-readable storage medium. The computer-readable storage medium stores computer-readable program instructions (i.e., computer programs) for performing the above-mentioned beamforming method. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the embodiments of this application are the same as those of the beamforming method provided by the above embodiments, and will not be elaborated here.
[0095] The embodiment of the present application also provides a computer program product, including a computer program, which when executed by a processor implements the steps of the beamforming method as described above.
[0096] Compared with the prior art, the beneficial effects of the computer program product provided by the embodiment of the present application are the same as those of the beamforming method provided by the above embodiment, and will not be elaborated herein.
[0097] The above are only partial embodiments of the present application, and thus do not limit the patent scope of the present application. Any equivalent structural transformation made under the technical concept of the present application by using the content of the specification and drawings of the present application, or any direct / indirect application in other related technical fields, is included in the patent protection scope of the present application.
Claims
1. A beamforming method, characterized in that, The beamforming method includes: Obtaining a first signal obtained by processing each input signal through the upper branch of a Generalized Sidelobe Canceller (GSC); Obtaining a second signal obtained by processing each input signal through a blocking matrix of the GSC lower branch; Filtering out a signal related to the first signal from the second signal to obtain a third signal; Inputting the third signal into a subsequent module of the GSC lower branch, so that the subsequent module of the GSC processes the first signal and the third signal to obtain a beamforming output signal.
2. The beamforming method according to claim 1, characterized in that, The step of filtering out a signal related to the first signal from the second signal to obtain a third signal includes: Calculating filter coefficients according to the first signal; Calculating a fourth signal according to the filter coefficients and the second signal, where the fourth signal is an estimate of the signal related to the first signal in the second signal; Filtering out the fourth signal from the second signal to obtain a third signal.
3. The beamforming method according to claim 2, wherein The step of calculating filter coefficients according to the first signal includes: Calculating a cross-correlation vector between the first signal and the second signal; Calculating an autocorrelation matrix of the second signal; Calculating filter coefficients according to the cross-correlation vector and the autocorrelation matrix.
4. The beamforming method according to claim 1, characterized in that The step of obtaining a second signal obtained by processing each input signal through a blocking matrix of the GSC lower branch includes: Calculating the signal energy of the second signal; Setting an inhibition strength parameter according to the signal energy, where the inhibition strength parameter is used to control the strength of filtering out a signal related to the first signal from the second signal, and when the signal energy is larger, the strength of filtering out a signal related to the first signal from the second signal according to the inhibition strength parameter is smaller; The step of filtering out a signal related to the first signal from the second signal to obtain a third signal includes: Filtering out a signal related to the first signal from the second signal according to the inhibition strength parameter to obtain a third signal.
5. The beamforming method according to claim 4, characterized in that The inhibition strength parameter includes a lower threshold for limiting the lower limit of the gain coefficient and / or a bias for adjusting the size of the gain coefficient, and the gain coefficient is used to filter out a signal related to the first signal from the second signal to obtain the third signal; The step of setting an inhibition strength parameter according to the signal energy includes: Setting the lower threshold and / or the bias according to the signal energy, where the lower threshold is smaller when the signal energy is smaller, and the bias is smaller when the signal energy is smaller.
6. The beamforming method according to claim 1, wherein The step of filtering out a signal related to the first signal from the second signal to obtain a third signal includes: Performing time alignment on the second signal and the first signal; Filtering out a signal related to the first signal from the second signal after time alignment to obtain a third signal.
7. The beamforming method according to claim 1, wherein Before the step of obtaining a first signal obtained by processing each input signal through a fixed beamformer of the upper branch of a Generalized Sidelobe Canceller (GSC), the beamforming method is applied to a device with a microphone array, and further includes: Obtaining each input signal collected by the microphone array.
8. A beamforming device, characterized in that, The device includes: a memory, a processor, and a computer program stored on the memory and executable on the processor, the computer program being configured to implement the steps of the beamforming method according to any one of claims 1 to 7.
9. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the beamforming method according to any one of claims 1 to 7 are implemented.
10. A computer program product, characterized in that, The computer program product includes a computer program, and when the computer program is executed by a processor, the steps of the beamforming method according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Dual-microphone-based speech enhancement device and method
CN101976565A
Method for optimizing speech enhancement of microphone array
CN102664023A
Steady GSC (generalized sidelobe canceler) beam-former and beam optimization method thereof
CN103346827A
Improved GSC self-adaptive speech enhancement method
CN104835503A
Microphone array speech enhancement method for rear FastICA signal separation
CN113936685A