Wind noise suppression method, electronic device and storage medium

By performing stationary noise estimation and determination of wind noise suppression factor on the input spectrum, effective suppression of wind noise is achieved, the problem of poor stroke noise suppression in the prior art is solved, and the voice signal is protected.

CN113707170BActive Publication Date: 2025-03-28SPREADTRUM COMMUNICATION (SHANGHAI) CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111003337.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-30
Publication Date
2025-03-28
Estimated Expiration
2041-08-30

AI Technical Summary

Technical Problem

The prior art is difficult to effectively suppress wind noise, especially in the medium and low frequency bands, and the speech signal is easily lost during suppression.

Method used

By performing stationary noise estimation on the input spectrum, a stationary noise suppression factor is determined, and a wind noise suppression factor is determined based on this factor, and wind noise suppression is performed on the input spectrum.

Benefits of technology

On the basis of protecting the voice signal, effective suppression of wind noise is achieved and interference of wind noise on the voice signal is reduced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113707170B_ABST
    Figure CN113707170B_ABST
Patent Text Reader

Abstract

The present application proposes a wind noise suppression method, an electronic device and a storage medium, which relate to the field of speech processing technology. Among them, the above-mentioned wind noise suppression method includes: first, a stationary noise estimation can be performed on the input spectrum to obtain a stationary noise spectrum of the input spectrum. Then, according to the ratio relationship between the stationary noise spectrum and the input spectrum, the stationary noise suppression factor of the input spectrum at each frequency point can be determined. Secondly, according to the stationary noise suppression factor, the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum can be determined. Finally, based on the wind noise suppression factor, the input spectrum can be subjected to wind noise suppression. Thereby, effective suppression of wind noise can be achieved on the basis of protecting the voice signal.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present application relates to the field of speech processing technology, and in particular to a wind noise suppression method, electronic device and storage medium. [Background technology]

[0002] Various voice processing devices, such as mobile phones, Bluetooth headsets and recording devices, will inevitably be disturbed by wind noise when used outdoors. Wind noise comes from the direct push of airflow on the microphone diaphragm, mainly distributed in the medium and low frequency bands, and is non-stationary noise. The wind noise between adjacent frames varies greatly.

[0003] Due to the instability of wind noise, when estimating wind noise, the update speed of noise estimation is difficult to keep up with the speed of wind noise change. Moreover, even if the wind noise is estimated, it is very easy to lose the voice signal in the low and medium frequency bands when suppressing the wind noise. Therefore, how to effectively suppress wind noise while protecting the voice signal is a problem to be solved. [Summary of the invention]

[0004] The embodiments of the present application provide a wind noise suppression method, an electronic device, and a storage medium, which are used to effectively suppress wind noise while protecting voice signals.

[0005] In a first aspect, an embodiment of the present application provides a method for suppressing wind noise, the method comprising: performing a stationary noise estimation on an input spectrum to obtain a stationary noise spectrum of the input spectrum; determining a stationary noise suppression factor of the input spectrum at each frequency point based on a ratio relationship between the stationary noise spectrum and the input spectrum; determining a wind noise suppression factor for each frequency point in a wind noise frequency band in the input spectrum based on the stationary noise suppression factor; and suppressing wind noise on the input spectrum based on the wind noise suppression factor.

[0006] In one possible implementation, before determining the wind noise suppression factor of each frequency point of the wind noise frequency band in the input spectrum according to the stationary noise suppression factor, the method further includes: determining the wind noise frequency band in the input spectrum according to the energy distribution state of the input spectrum.

[0007] In one possible implementation, determining a wind noise frequency band in the input spectrum according to an energy distribution state of the input spectrum includes: determining the presence of wind noise in the input spectrum according to a high-frequency and low-frequency energy ratio of the input spectrum; and determining a frequency band in the input spectrum whose energy unevenness is less than a set threshold as a wind noise frequency band.

[0008] In one possible implementation, determining the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor includes: determining the stationary noise suppression factor of each frequency point in the non-wind noise frequency band in the input spectrum as the wind noise suppression factor of each frequency point in the wind noise frequency band in sequence.

[0009] In one possible implementation, based on the wind noise suppression factor, the input spectrum is subjected to wind noise suppression, including: performing wind noise preprocessing on the input spectrum according to the spectrum amplitude of the wind noise frequency band to obtain a first output spectrum; based on the wind noise suppression factor, performing wind noise suppression on the first output spectrum to obtain a second output spectrum.

[0010] In one possible implementation, the input spectrum is wind-noise preprocessed according to the spectrum amplitude of the wind noise frequency band to obtain a first output spectrum, including: dividing the wind noise frequency band into a plurality of sub-frequency bands; determining an estimated wind noise value of each sub-frequency band according to the minimum value of the spectrum amplitude in each sub-frequency band; and removing the estimated wind noise value from each corresponding sub-frequency band to obtain the first output spectrum.

[0011] In one possible implementation manner, after performing wind noise suppression on the first output spectrum based on the wind noise suppression factor to obtain a second output spectrum, the method further includes: performing inter-frame smoothing processing on a wind noise frequency band of the second output spectrum to obtain a target output spectrum.

[0012] In one possible implementation manner, before performing wind noise suppression on the input spectrum based on the wind noise suppression factor, the method further includes: performing stationary noise suppression on the input spectrum based on the stationary noise suppression factor.

[0013] In a second aspect, an embodiment of the present application provides a wind noise suppression device, the device comprising: a noise estimation module, used to perform a stationary noise estimation on an input spectrum to obtain a stationary noise spectrum of the input spectrum; a first determination module, used to determine a stationary noise suppression factor of the input spectrum at each frequency point based on a ratio relationship between the stationary noise spectrum and the input spectrum; a second determination module, used to determine the wind noise suppression factor of each frequency point in a wind noise band in the input spectrum based on the stationary noise suppression factor; and a noise suppression module, used to suppress wind noise on the input spectrum based on the wind noise suppression factor.

[0014] In one possible implementation, before determining the wind noise suppression factor of each frequency point of the wind noise frequency band in the input spectrum according to the stationary noise suppression factor, the second determination module is further used to: determine the wind noise frequency band in the input spectrum according to the energy distribution state of the input spectrum.

[0015] In one possible implementation, the second determination module is specifically used to determine the presence of wind noise in the input spectrum based on the high-frequency and low-frequency energy ratio of the input spectrum; and determine a frequency band in the input spectrum whose energy unevenness is less than a set threshold as a wind noise frequency band.

[0016] In one possible implementation manner, the second determination module is specifically configured to sequentially determine the stationary noise suppression factors of each frequency point in the non-wind noise frequency band in the input spectrum as the wind noise suppression factors of each frequency point in the wind noise frequency band.

[0017] In one possible implementation, the noise suppression module is specifically used to perform wind noise preprocessing on the input spectrum according to the spectrum amplitude of the wind noise frequency band to obtain a first output spectrum; and perform wind noise suppression on the first output spectrum based on the wind noise suppression factor to obtain a second output spectrum.

[0018] In one possible implementation, the noise suppression module is specifically used to divide the wind noise frequency band into a plurality of sub-frequency bands; determine the estimated wind noise value of each sub-frequency band according to the minimum value of the spectrum amplitude in each sub-frequency band; remove the estimated wind noise value from each corresponding sub-frequency band to obtain a first output spectrum.

[0019] In one possible implementation, the device further includes a processing module for performing inter-frame smoothing on a wind noise frequency band of the second output spectrum after the noise suppression module performs wind noise suppression on the first output spectrum to obtain a second output spectrum to obtain a target output spectrum.

[0020] In one possible implementation manner, before performing wind noise suppression on the input spectrum based on the wind noise suppression factor, the noise suppression module is further used to: perform stationary noise suppression on the input spectrum based on the stationary noise suppression factor.

[0021] In a third aspect, an embodiment of the present application provides an electronic device, comprising: at least one processor; and at least one memory communicatively connected to the processor, wherein: the memory stores program instructions executable by the processor, and the processor calls the program instructions to execute the method described in the first aspect.

[0022] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer instructions, and the computer instructions enable the computer to execute the method described in the first aspect.

[0023] In the above technical scheme, first, the input spectrum can be estimated for stationary noise to obtain the stationary noise spectrum of the input spectrum. Then, the stationary noise suppression factor of the input spectrum at each frequency point can be determined based on the ratio of the stationary noise spectrum to the input spectrum. Secondly, the wind noise suppression factor of each frequency point in the wind noise band of the input spectrum can be determined based on the stationary noise suppression factor. Finally, the input spectrum can be subjected to wind noise suppression based on the wind noise suppression factor. Thus, effective suppression of wind noise can be achieved on the basis of protecting the voice signal.

Brief Description of the Drawings

[0024] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0025] Figure 1 A flow chart of a method for suppressing wind noise provided in an embodiment of the present application;

[0026] Figure 2 A schematic diagram of the structure of a method for suppressing wind noise provided in an embodiment of the present application;

[0027] Figure 3 A flow chart of another method for suppressing wind noise provided in an embodiment of the present application;

[0028] Figure 4 A flow chart of another method for suppressing wind noise provided in an embodiment of the present application;

[0029] Figure 5 A schematic diagram of the structure of a wind noise suppression device provided in an embodiment of the present application;

[0030] Figure 6 A schematic diagram of an electronic device provided in an embodiment of the present application. [Specific implementation method]

[0031] In order to better understand the technical solution of the present application, the embodiments of the present application are described in detail below with reference to the accompanying drawings.

[0032] It should be clear that the described embodiments are only part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.

[0033] The terms used in the embodiments of the present application are only for the purpose of describing specific embodiments, and are not intended to limit the present application. The singular forms "a", "said" and "the" used in the embodiments of the present application and the appended claims are also intended to include plural forms, unless the context clearly indicates other meanings.

[0034] The embodiment of the present application may provide a wind noise suppression system, which may be located in a terminal device with a voice processing function, such as a mobile phone, a Bluetooth headset, a recording device, etc. The wind noise suppression system provided in the embodiment of the present application may be used to execute the wind noise suppression method provided in the embodiment of the present application.

[0035] Figure 1 Flow chart of a method for suppressing wind noise provided in an embodiment of the present application. Figure 1 As shown, the wind noise suppression method may include:

[0036] Step 101, performing stationary noise estimation on an input spectrum to obtain a stationary noise spectrum of the input spectrum.

[0037] In the embodiment of the present application, the signal to be processed may have multiple frames, and the processing method of each frame signal is the same. For the convenience of description, the present application will take any frame signal as an example to illustrate the implementation of the wind noise suppression method provided by the present application.

[0038] In the embodiment of the present application, a stationary noise estimation may be performed on the input spectrum first, thereby obtaining a stationary noise spectrum. The input spectrum here is an input spectrum corresponding to any frame of the signal to be processed. The stationary noise spectrum may include the stationary noise values ​​of the input spectrum at each frequency point.

[0039] Since the statistical characteristics of stationary noise do not change over time, stationary noise estimation is relatively easy to implement. The specific estimation method can refer to the prior art, such as the minimum controlled regressive averaging (MCRA) algorithm, Doblinger algorithm, Hirsch algorithm, Martin algorithm and other noise estimation methods. This application does not limit this.

[0040] Step 102: Determine the stationary noise suppression factor of the input spectrum at each frequency point according to the ratio relationship between the stationary noise spectrum and the input spectrum.

[0041] In a specific implementation process, the stationary noise suppression factor of the input spectrum at each frequency point can be calculated according to the following formula:

[0042] G(k,l)=(|s(k,l)| α -|N(k,l)| α) / |s(k,l)| α

[0043] Among them, || represents the modulo operation, G represents the stationary noise suppression factor, S represents the input spectrum, N represents the stationary noise spectrum, k represents the frequency point, l represents the frame, and α can be an integer greater than 1.

[0044] Step 103: determining the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor.

[0045] In the embodiment of the present application, first, the wind noise frequency band of the input spectrum can be determined according to the energy distribution state of the input spectrum. It can be understood that the wind noise frequency band refers to the frequency band affected by wind noise. According to the characteristics of wind noise, the wind noise frequency band is usually located in the middle and low frequency bands of the input spectrum.

[0046] On the basis of determining the wind noise frequency band, the wind noise suppression factor of each frequency point in the wind noise frequency band can be further determined.

[0047] It should be noted that in the field of speech signal processing, the noise suppression factor has the following characteristics:

[0048] Feature 1

[0049] For the speech bands affected by wind noise and stationary noise, when performing noise estimation, the update speed of the noise estimation is difficult to keep up with the change speed of the wind noise. Therefore, the noise estimation spectrum obtained at this time is close to the amplitude of the stationary noise, and the noise suppression factor obtained is close to 1. That is, there is no suppression effect on wind noise.

[0050] Feature 2

[0051] For the frequency band without wind noise but with stationary noise, in the frequency band with speech signal, the noise suppression factor obtained will have a comb-like characteristic because the speech signal has the sparse characteristic. That is, the value of the noise suppression factor is close to 1 in the harmonic area, and the value of the noise suppression factor is slightly close to 0 in the non-harmonic area. In the frequency band without speech signal, the value of the noise suppression factor is slightly close to 0.

[0052] Based on the above characteristics of the noise suppression factor, the present application can be implemented based on the following ideas when determining the wind noise suppression factor of the wind noise frequency band.

[0053] That is, Figure 2 As shown, the stable noise suppression factors of each frequency point in the non-wind noise frequency band are sequentially extended to the wind noise frequency band as the wind noise suppression factors of each frequency point in the wind noise frequency band.

[0054] Alternatively, after extending the stationary noise suppression factors of each frequency point in the non-wind noise band to the wind noise band, the stationary noise suppression factors of each frequency point in the non-wind noise band can be multiplied by the stationary noise suppression factors of each frequency point in the wind noise band, respectively. Then, the obtained products can be used as the wind noise suppression factors of each frequency point in the wind noise band in turn.

[0055] By determining the wind noise suppression factor using the above method, the following technical effects can be achieved: if there is no speech signal in the non-wind noise frequency band, then the stationary noise suppression factor is close to 0, and after being extended to the wind noise frequency band, it will have a great suppressive effect on the wind noise. On the contrary, if there is a speech signal in the non-wind noise frequency band, then the stationary noise suppression factor has a comb-like characteristic, and after being extended to the wind noise frequency band, it has no obvious suppressive effect on the wind noise in the harmonic area, but can have a great suppressive effect on the wind noise in the non-harmonic area, thereby achieving the protection of the speech signal.

[0056] Step 104: Perform wind noise suppression on the input spectrum based on the wind noise suppression factor.

[0057] In the embodiment of the present application, when the wind noise is suppressed on the input spectrum, it can be performed in two steps, namely wind noise preprocessing and wind noise suppression.

[0058] First, when performing wind noise preprocessing, the wind noise frequency band can be divided into several sub-frequency bands. Among them, the number of frequency points contained in each sub-frequency band must be greater than a minimum threshold. The value of the minimum threshold can be 3, for example. Then, the estimated wind noise value of each sub-frequency band can be determined according to the minimum value of the spectrum amplitude in each sub-frequency band. For example, the minimum value of the spectrum amplitude in each sub-frequency band can be directly used as the estimated wind noise value of the corresponding sub-frequency band. Finally, the estimated wind noise value can be removed from each corresponding sub-frequency band by using spectral subtraction or generalized Wiener filtering to obtain the first output spectrum.

[0059] In the above wind noise preprocessing step, since the speech signal has harmonic characteristics, when a minimum spectrum amplitude is taken in a small spectrum interval, a non-harmonic frequency point will inevitably be obtained. Then, the estimated wind noise value obtained will be very small, and the loss of the speech signal after wind noise suppression is also very small. Therefore, the wind noise preprocessing step can roughly remove part of the wind noise in the input spectrum, and the loss of the speech signal is very small.

[0060] After obtaining the first output spectrum through wind noise preprocessing, the embodiment of the present application may further perform wind noise suppression on the first output spectrum.

[0061] Specifically, the wind noise can be suppressed on the first output spectrum by the following formula to obtain the second output spectrum: S_out2(k, l)=S_out1(k, l)*G(k, l)| k∈BW .

[0062] Wherein, S_out1 represents the first output spectrum, S_out2 represents the second output spectrum, G(k, l)| k∈BW represents the wind noise suppression factor, BW represents the wind noise frequency band, k represents the frequency point, and l represents the frame mark.

[0063] Furthermore, since wind noise is extremely unstable and the wind noise varies greatly between frames, after obtaining the second output spectrum, the wind noise frequency band of the second output spectrum may be smoothed between frames to obtain the target output spectrum.

[0064] Specifically, referring to the following formula, the wind noise frequency band of the second output spectrum can be compared with the same frequency band of the previous frame. Then, the smoothing gain can be determined according to the minimum amplitude therein. Finally, the output signal can be recalculated based on the smoothing gain as the target output spectrum after smoothing.

[0065] gain(k, l)=min(|S_out2(k, l-1)|, |S_out2(k, l)|) / |S_out2(k, l)|

[0066] S_out3(k,l)| k∈BW =S_out2(k,l)| k∈BW *gain(k,l)| k∈BW

[0067] Where || represents the modulo operation, min represents the minimum value of two vectors with the same subscript, S_out3 represents the target output spectrum, gain(k, l) represents the smoothing gain, and BW represents the wind noise frequency band, that is, only the wind noise frequency band is smoothed.

[0068] Through inter-frame smoothing, wind noise can be kept at a relatively low level, and due to the short-term stability of the speech signal, it will not have a significant impact on the harmonics.

[0069] In the above technical scheme, first, the input spectrum can be estimated for stationary noise to obtain the stationary noise spectrum of the input spectrum. Then, the stationary noise suppression factor of the input spectrum at each frequency point can be determined based on the ratio of the stationary noise spectrum to the input spectrum. Secondly, the wind noise suppression factor of each frequency point in the wind noise band of the input spectrum can be determined based on the stationary noise suppression factor. Finally, the input spectrum can be subjected to wind noise suppression based on the wind noise suppression factor. Thus, effective suppression of wind noise can be achieved on the basis of protecting the voice signal.

[0070] In another embodiment of the present application, a method for determining the wind noise frequency band is further described.

[0071] Figure 3Flow chart of another method for suppressing wind noise provided in an embodiment of the present application. Figure 3 As shown, when determining the wind noise frequency band, the following steps may be included:

[0072] Step 201 : determining whether wind noise exists in the input spectrum according to the high-frequency and low-frequency energy ratio of the input spectrum.

[0073] In the embodiment of the present application, the wind noise in the input spectrum can be detected according to the high-frequency and low-frequency energy ratio. Specifically, the high-frequency and low-frequency energy ratio of the input spectrum can be calculated according to the following formula.

[0074]

[0075]

[0076] ampR(l)=SA high (l) / SA low (l)

[0077] Among them, || represents the modulo operation, l1 and l2 represent the boundaries of the low frequency band, and h1 and h2 represent the boundaries of the high frequency band. low (l) represents the low frequency band energy average, SA high (l) represents the average energy of the high frequency band. ampR(l) represents the energy ratio of high frequency to low frequency.

[0078] If the obtained high-frequency and low-frequency energy ratio is less than the threshold thr1, it is considered that wind noise exists in the current input spectrum. The value of the threshold thr1 can be determined based on actual experience.

[0079] Step 202: determining the frequency band where the wind noise is located according to the energy non-uniformity of the input spectrum.

[0080] On the basis of determining that wind noise exists in the input spectrum, the frequency band where the wind noise is located can be further determined.

[0081] Specifically, the input spectrum can be divided into several spectrum intervals. Then, the energy non-uniformity in each spectrum interval can be calculated according to the following formula.

[0082]

[0083] Among them, nonFlat represents the unevenness, i1 represents the upper boundary of each spectrum interval, and i2 represents the lower boundary of each spectrum interval.

[0084] If the energy non-uniformity is less than the threshold thr2, the spectrum interval can be considered as a wind noise frequency band. By calculating the energy non-uniformity of each spectrum interval, the wind noise frequency band contained in the entire input spectrum can be obtained. Among them, the value of the threshold thr2 can be determined based on actual experience.

[0085] It should be noted that, in the embodiment of the present application, the non-uniformity calculation can also be replaced by the flatness calculation. The flatness calculation method is to divide the geometric mean of each frequency point by the arithmetic mean of each frequency point.

[0086] In the above technical solution, whether the input spectrum contains wind noise and the frequency band range where the wind noise is located can be determined through the calculation results of the high-low frequency energy ratio and the unevenness.

[0087] Figure 4 Flow chart of another method for suppressing wind noise provided in an embodiment of the present application. Figure 4 As shown, the wind noise suppression method may include:

[0088] Step 301, perform stationary noise estimation on the input spectrum to obtain the stationary noise spectrum of the input spectrum.

[0089] Step 302: Determine the stationary noise suppression factor of the input spectrum at each frequency point according to the ratio relationship between the stationary noise spectrum and the input spectrum.

[0090] Step 303: Perform stationary noise suppression on the input spectrum based on the stationary noise suppression factor.

[0091] Step 304: determining whether wind noise exists in the input spectrum according to the high-frequency and low-frequency energy ratio of the input spectrum.

[0092] Step 305: determine the frequency band where the wind noise is located according to the energy non-uniformity of the input spectrum.

[0093] Step 306: Determine the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor.

[0094] Step 307: based on the wind noise suppression factor, perform wind noise suppression on the input spectrum after stationary noise suppression.

[0095] In the above technical solution, after obtaining the stationary noise suppression factor, the input spectrum can be subjected to stationary noise suppression first. Then, based on the obtained wind noise suppression factor, the input spectrum subjected to stationary noise suppression can be subjected to wind noise suppression. Thus, the noise interference in the input spectrum can be minimized, which is conducive to obtaining a speech signal with a better auditory effect.

[0096] Figure 5 This is a schematic diagram of the structure of a wind noise suppression device provided in an embodiment of the present application. Figure 5 As shown, the wind noise suppression device provided in the embodiment of the present application may include: a noise estimation module 51 , a first determination module 52 , a second determination module 53 , a noise suppression module 54 and a processing module 55 .

[0097] The noise estimation module 51 is used to perform stationary noise estimation on the input spectrum to obtain a stationary noise spectrum of the input spectrum.

[0098] The first determination module 52 is used to determine the stationary noise suppression factor of the input spectrum at each frequency point according to the ratio relationship between the stationary noise spectrum and the input spectrum.

[0099] The second determination module 53 is used to determine the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor.

[0100] The noise suppression module 54 is used to suppress wind noise on the input spectrum based on the wind noise suppression factor.

[0101] In a specific implementation process, before determining the wind noise suppression factor of each frequency point of the wind noise frequency band in the input spectrum according to the stationary noise suppression factor, the second determination module 53 is also used to: determine the wind noise frequency band in the input spectrum according to the energy distribution state of the input spectrum.

[0102] In a specific implementation process, the second determination module 53 is specifically used to determine whether there is wind noise in the input spectrum according to the high-frequency and low-frequency energy ratio of the input spectrum; and determine the frequency band in the input spectrum whose energy unevenness is less than a set threshold as the wind noise frequency band.

[0103] In a specific implementation process, the second determination module 53 is specifically used to sequentially determine the stationary noise suppression factors of each frequency point in the non-wind noise frequency band in the input spectrum as the wind noise suppression factors of each frequency point in the wind noise frequency band.

[0104] In a specific implementation process, the noise suppression module 54 is specifically used to perform wind noise preprocessing on the input spectrum according to the spectrum amplitude of the wind noise frequency band to obtain a first output spectrum; and suppress wind noise on the first output spectrum based on the wind noise suppression factor to obtain a second output spectrum.

[0105] In a specific implementation process, the noise suppression module 54 is specifically used to divide the wind noise frequency band into several sub-frequency bands; determine the estimated wind noise value of each sub-frequency band according to the minimum value of the spectrum amplitude in each sub-frequency band; remove the estimated wind noise value from each corresponding sub-frequency band to obtain a first output spectrum.

[0106] In a specific implementation process, the above-mentioned device also includes a processing module 55, which is used to perform inter-frame smoothing processing on the wind noise frequency band of the second output spectrum after the noise suppression module 54 suppresses wind noise on the first output spectrum to obtain the second output spectrum, so as to obtain the target output spectrum.

[0107] In a specific implementation process, before performing wind noise suppression on the input spectrum based on the wind noise suppression factor, the noise suppression module 54 is further used to: perform stationary noise suppression on the input spectrum based on the stationary noise suppression factor.

[0108] In the embodiment of the present application, first, the noise estimation module 51 can perform a stationary noise estimation on the input spectrum to obtain a stationary noise spectrum of the input spectrum. Then, the first determination module 52 can determine the stationary noise suppression factor of the input spectrum at each frequency point according to the ratio relationship between the stationary noise spectrum and the input spectrum. Secondly, the second determination module 53 can determine the wind noise suppression factor of each frequency point in the wind noise band in the input spectrum according to the stationary noise suppression factor. Finally, the noise suppression module 54 can suppress wind noise on the input spectrum based on the wind noise suppression factor. Thereby, effective suppression of wind noise can be achieved on the basis of protecting the voice signal.

[0109] Figure 6 A schematic diagram of an electronic device provided in an embodiment of the present application, such as Figure 6 As shown, the electronic device may include at least one processor; and at least one memory communicatively connected to the processor, wherein the memory stores program instructions executable by the processor, and the processor calls the program instructions to execute the wind noise suppression method provided in an embodiment of the present application.

[0110] The electronic device may be a wind noise suppression device, and this embodiment does not limit the specific form of the electronic device.

[0111] Figure 6 A block diagram of an exemplary electronic device suitable for implementing the embodiments of the present application is shown. Figure 6 The electronic device shown is merely an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.

[0112] like Figure 6 As shown, the electronic device is in the form of a general computing device. The components of the electronic device may include, but are not limited to: one or more processors 410, memory 430, communication interface 420, and communication bus 440 connecting different system components (including memory 430 and processor 410).

[0113] The communication bus 440 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor or a local bus using any of a variety of bus structures. For example, these architectures include but are not limited to Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (VESA) local bus and Peripheral Component Interconnection (PCI) bus.

[0114] Electronic devices typically include a variety of computer system readable media. These media can be any available media that can be accessed by the electronic device, including volatile and non-volatile media, removable and non-removable media.

[0115] The memory 430 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) and / or cache memory. The electronic device may further include other removable / non-removable, volatile / non-volatile computer system storage media. Figure 6 Not shown, a disk drive for reading and writing a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing a removable non-volatile optical disk (e.g., a compact disc read only memory (CD-ROM), a digital versatile disc read only memory (DVD-ROM), or other optical media) may be provided. In these cases, each drive may be connected to the communication bus 440 via one or more data medium interfaces. The memory 430 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present application.

[0116] A program / utility having a set (at least one) of program modules may be stored in memory 430, such program modules including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. The program modules typically perform the functions and / or methods of the embodiments described herein.

[0117] The electronic device may also communicate with one or more external devices (e.g., keyboards, pointing devices, displays, etc.), one or more devices that enable a user to interact with the electronic device, and / or any device that enables the electronic device to communicate with one or more other computing devices (e.g., network cards, modems, etc.). Such communication may be performed via the communication interface 420. Furthermore, the electronic device may also communicate with the network adapter ( Figure 6 The network adapter may communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) via the communication bus 440. It should be understood that although Figure 6 Not shown, other hardware and / or software modules may be used in conjunction with the electronic device, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, disk arrays (Redundant Arrays of Independent Drives; hereinafter referred to as: RAID) systems, tape drives, and data backup storage systems.

[0118] The processor 410 executes various functional applications and data processing by running the programs stored in the memory 430, such as implementing the wind noise suppression method provided in the embodiment of the present application.

[0119] The embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer instructions, and the computer instructions enable the computer to execute the wind noise suppression method provided by the embodiment of the present application.

[0120] The above-mentioned computer-readable storage medium can adopt any combination of one or more computer-readable media. The computer-readable medium can be a computer-readable signal medium or a computer-readable storage medium. The computer-readable storage medium can be, for example, - but not limited to - an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples (non-exhaustive list) of computer-readable storage media include: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ReadOnly Memory; hereinafter referred to as: ROM), an erasable programmable read-only memory (Erasable Programmable ReadOnly Memory; hereinafter referred to as: EPROM) or flash memory, optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this document, a computer-readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it.

[0121] Computer-readable signal media may include a data signal propagated in baseband or as part of a carrier wave, which carries a computer-readable program code. Such propagated data signals may take a variety of forms, including, but not limited to, electromagnetic signals, optical signals, or any suitable combination of the above. Computer-readable signal media may also be any computer-readable medium other than a computer-readable storage medium, which may send, propagate, or transmit a program for use by or in conjunction with an instruction execution system, apparatus, or device.

[0122] Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.

[0123] The computer program code for performing the operation of the present application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, 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 type of network, including a local area network (Local Area Network; hereinafter referred to as: LAN) or a wide area network (Wide Area Network; hereinafter referred to as: WAN), or can be connected to an external computer (for example, using an Internet service provider to connect through the Internet).

[0124] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present application. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.

[0125] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, fragment or portion of code comprising one or more executable instructions for implementing the steps of a custom logical function or process, and the scope of the preferred embodiments of the present application includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present application belong.

[0126] It should be noted that the terminals involved in the embodiments of the present application may include but are not limited to personal computers (Personal Computer; hereinafter referred to as: PC), personal digital assistants (Personal Digital Assistant; hereinafter referred to as: PDA), wireless handheld devices, tablet computers (Tablet Computer), mobile phones, MP3 players, MP4 players, etc.

[0127] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0128] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of hardware plus software functional units.

[0129] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the scope of protection of the present application.

Claims

1. A method for suppressing wind noise, characterized in that: include: Performing stationary noise estimation on the input spectrum to obtain a stationary noise spectrum of the input spectrum; Determining a stationary noise suppression factor of the input spectrum at each frequency point according to a ratio relationship between the stationary noise spectrum and the input spectrum; Determining the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor; Based on the wind noise suppression factor, performing wind noise suppression on the input spectrum; The step of determining the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor includes: The stationary noise suppression factors of each frequency point in the non-wind noise frequency band in the input spectrum are sequentially determined as the wind noise suppression factors of each frequency point in the wind noise frequency band; or, Multiplying the stationary noise suppression factor of each frequency point in the non-wind noise frequency band in the input spectrum by the stationary noise suppression factor of each frequency point in the wind noise frequency band; The obtained products are used in turn as the wind noise suppression factors of the respective frequency points in the wind noise frequency band.

2. The method according to claim 1, characterized in that Before determining the wind noise suppression factor of each frequency point in the wind noise frequency band in the input spectrum according to the stationary noise suppression factor, the method further includes: A wind noise frequency band in the input spectrum is determined according to an energy distribution state of the input spectrum.

3. The method according to claim 2, characterized in that Determining a wind noise frequency band in the input spectrum according to an energy distribution state of the input spectrum includes: determining, according to a high-frequency and low-frequency energy ratio of the input spectrum, that wind noise exists in the input spectrum; A frequency band in the input spectrum whose energy non-uniformity is less than a set threshold is determined as a wind noise frequency band.

4. The method according to claim 1, characterized in that: Based on the wind noise suppression factor, performing wind noise suppression on the input spectrum includes: According to the spectrum amplitude of the wind noise frequency band, the input spectrum is subjected to wind noise preprocessing to obtain a first output spectrum; Based on the wind noise suppression factor, wind noise is suppressed on the first output spectrum to obtain a second output spectrum.

5. The method according to claim 4, characterized in that According to the spectrum amplitude of the wind noise frequency band, the input spectrum is subjected to wind noise preprocessing to obtain a first output spectrum, including: Dividing the wind noise frequency band into a plurality of sub-frequency bands; Determining the estimated wind noise value of each of the sub-frequency bands according to the minimum value of the spectrum amplitude in each of the sub-frequency bands; The estimated wind noise value is removed from each corresponding sub-frequency band to obtain a first output spectrum.

6. The method according to claim 4, characterized in that After performing wind noise suppression on the first output spectrum based on the wind noise suppression factor to obtain a second output spectrum, the method further includes: An inter-frame smoothing process is performed on the wind noise frequency band of the second output spectrum to obtain a target output spectrum.

7. The method according to claim 1, characterized in that Before performing wind noise suppression on the input spectrum based on the wind noise suppression factor, the method further includes: Based on the stationary noise suppression factor, stationary noise suppression is performed on the input spectrum.

8. An electronic device, characterized in that: include: at least one processor; as well as at least one memory in communication with the processor, wherein: The memory stores program instructions executable by the processor, and the processor can execute the method according to any one of claims 1 to 7 by calling the program instructions.

9. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions enable the computer to execute the method according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Voice denoising method and device

    CN106910511A

  • A wind noise detection and suppression method and apparatus suitable for speech and audio

    CN109215677A