A speech processing method and apparatus

By combining particle filtering and speech models, the problem of noise estimation under colored noise is solved, and high-accuracy and low-latency speech endpoint detection is achieved in low signal-to-noise ratio environments.

CN118942480BActive Publication Date: 2025-10-28SMARTER SILICON (SHANGHAI) TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411216270.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-30
Publication Date
2025-10-28
Estimated Expiration
2044-08-30

AI Technical Summary

Technical Problem

In colored noise scenarios, noise and speech are difficult to distinguish, and noise estimation is challenging, especially at low signal-to-noise ratios. This results in insufficient accuracy and robustness of speech endpoint detection, and noise estimation is prone to causing delays.

Method used

The particle filtering method is adopted. By constructing a first function representing the pure speech signal and a second function representing the original speech signal, an estimated particle set is generated and the particle weights are updated. Combined with the speech model, filtering is performed to determine the pure speech signal. Nonlinear mapping is performed using the likelihood ratio and activation function to realize speech endpoint detection.

Benefits of technology

It improves the accuracy and predictability of speech estimation, reduces processing latency, and enhances the accuracy and robustness of speech endpoint detection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118942480B_ABST
    Figure CN118942480B_ABST
Patent Text Reader

Abstract

This application discloses a speech processing method and apparatus. The method includes: preprocessing an original speech signal to obtain preprocessed data; filtering the preprocessed data based on a first function representing a pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of natural language processing technology, and more specifically, to a speech processing method and apparatus. Background Technology

[0002] The purpose of speech endpoint detection is to correctly distinguish between speech segments and non-speech segments in a detected signal. Currently, speech endpoint detection has wide applications in speech enhancement, speech recognition, and speech coding. For speech endpoint detection systems, accuracy and robustness are crucial metrics. The current mainstream approach utilizes noise estimation to extract speech features and then uses traditional thresholding or model matching to determine whether a frame is a speech frame. However, in colored noise scenarios, noise estimation is difficult, especially at low signal-to-noise ratios, where noise and speech are hard to distinguish, and noise estimation can easily introduce latency. Summary of the Invention

[0003] In view of the above, this application provides the following technical solution:

[0004] The first aspect of this application provides a speech processing method, the method comprising:

[0005] The original speech signal is preprocessed to obtain preprocessed data;

[0006] The preprocessed data is filtered based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.

[0007] In an optional implementation, the method further includes:

[0008] Construct a speech model that includes a first function representing the pure speech signal and a second function representing the original speech signal;

[0009] The preprocessed data is filtered using the aforementioned speech model to obtain a pure speech signal.

[0010] In an optional implementation, the filtering of the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain the pure speech signal includes:

[0011] An initial particle set is generated according to the initial prior probability, wherein each particle in the initial particle set has the same weight.

[0012] The estimated particle set is obtained based on the initial particle set and the transition function corresponding to the first function;

[0013] The weights of each particle in the estimated particle set are updated based on the estimated particle set and the probability density function corresponding to the second function;

[0014] The pure speech signal is determined based on the estimated particle set and the updated weights of each particle therein.

[0015] In an optional implementation, updating the weights of each particle in the estimated particle set based on the estimated particle set and the probability density function corresponding to the second function includes:

[0016] Determine the mean and variance of all particles in the estimated particle set;

[0017] The weights of each particle in the estimated particle set are updated based on the mean, the variance, and the probability density function.

[0018] In an optional implementation, after updating the weights of each particle in the estimated particle set based on the estimated particle set, the method further includes:

[0019] Determine the weight degradation index based on the updated weights;

[0020] When the weight degradation index exceeds a set threshold, the particle set is resampled.

[0021] In an optional implementation, after filtering the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain the pure speech signal, the method further includes:

[0022] The probability of speech presence is determined based on the pure speech signal and the original speech signal;

[0023] Voice endpoint detection is performed based on the probability of the presence of the voice to determine the voice segments in the original voice signal.

[0024] In an optional implementation, determining the probability of speech presence based on the pure speech signal and the original speech signal includes:

[0025] The prior signal-to-noise ratio and the posterior signal-to-noise ratio are determined based on the pure speech signal and the original speech signal, respectively.

[0026] The likelihood ratio of the original speech signal is determined based on the prior signal-to-noise ratio and the posterior signal-to-noise ratio;

[0027] The likelihood ratio is nonlinearly mapped using an activation function to obtain the probability of speech presence.

[0028] In an optional implementation, the activation function includes a threshold parameter that is updated using a histogram-based adaptive update method.

[0029] In an optional implementation, the preprocessed data includes multiple speech frames, and the speech endpoint detection based on the speech presence probability includes:

[0030] The voice state of the current voice frame is determined based on the voice state of the previous voice frame, the probability of the voice presence in the current voice frame, and a set threshold value. The voice state includes waiting for the voice to start, in the middle of the voice, and the voice to end.

[0031] A second aspect of this application provides a speech processing apparatus, the apparatus comprising:

[0032] The preprocessing module is used to preprocess the raw speech signal to obtain preprocessed data;

[0033] A filtering module is used to filter the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle. Attached Figure Description

[0034] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of this application. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.

[0035] Figure 1 This is a flowchart of a speech processing method disclosed in an embodiment of this application;

[0036] Figure 2 This is a flowchart of the estimation of pure speech signals disclosed in an embodiment of this application;

[0037] Figure 3 This is a schematic diagram of a process for estimating pure speech signals disclosed in an embodiment of this application;

[0038] Figure 4 This is a flowchart illustrating the process of determining speech segments based on pure speech signals, as disclosed in an embodiment of this application.

[0039] Figure 5 This is a schematic diagram of the process of adaptively updating the threshold using a histogram, as disclosed in an embodiment of this application.

[0040] Figure 6 This is a schematic diagram of the VAD decision process disclosed in the embodiments of this application;

[0041] Figure 7 This is a schematic diagram illustrating the overall implementation flow of a signal processing scheme disclosed in an embodiment of this application;

[0042] Figure 8 This is a schematic diagram of the structure of a voice processing device disclosed in an embodiment of this application;

[0043] Figure 9 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. Detailed Implementation

[0044] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0045] The embodiments of this application can be applied to electronic devices. This application does not limit the product form of the electronic device, which may include but is not limited to smartphones, tablets, wearable devices, personal computers (PCs), netbooks, etc., and can be selected according to application requirements.

[0046] Figure 1 This is a flowchart illustrating a speech processing method disclosed in an embodiment of this application. See also... Figure 1 As shown, speech processing methods may include:

[0047] Step 101: Preprocess the original speech signal to obtain preprocessed data.

[0048] The original speech signal can be a speech signal collected by a speech acquisition device without any processing. The original speech information typically includes pure speech signals and noise signals. The technical solution disclosed in this application is to obtain a pure speech signal from the original speech signal. The specific implementation is described in detail in the following embodiments.

[0049] The preprocessing includes at least frame segmentation of the original speech signal. In other implementations, the preprocessing may include windowing or other processing besides frame segmentation. Windowing is used to avoid spectral leakage during time-domain to frequency-domain conversion of the speech signal. This preprocessing enables subsequent correlation analysis to be based on speech frames, providing usable foundational data for subsequent filtering.

[0050] Step 102: The preprocessed data is filtered based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.

[0051] In implementation, a first function representing the pure speech signal and a second function representing the original speech signal can be constructed first. Then, based on the correlation analysis and derivation of the first and second functions, their computability is made. Finally, the preprocessed data is filtered based on the analysis and derivation results of the first and second functions to obtain the pure speech signal. The pure speech signal obtained here can be an estimate of the pure speech signal.

[0052] The filtering process can be, but is not limited to, particle filtering. Those skilled in the art will know that in colored noise scenarios, noise characteristics are varied and indistinct, exhibiting non-Gaussian features, making noise estimation difficult. Particle filtering, a Monte Carlo-based nonlinear non-Gaussian Bayesian filtering method, effectively solves problems in nonlinear non-Gaussian systems. Therefore, particle filtering can effectively estimate pure speech signals in colored noise scenarios, and the accuracy of the speech estimation results is relatively high.

[0053] During the filtering process, an estimated particle set can be obtained based on a first function representing the pure speech signal, and then the weight of each particle in the estimated particle set can be determined based on a second function representing the original speech signal. The weight can represent the probability that the corresponding particle is a pure speech signal. Therefore, the pure speech signal is related to the weight of each particle.

[0054] The speech processing method described in this application performs filtering on preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal, thereby estimating the pure speech signal from the preprocessed data and obtaining the estimated pure speech signal. Because speech estimation uses filtering, it overcomes the problem of difficult estimation due to the indistinct features of colored noise. Furthermore, speech estimation has a certain predictive ability, thus significantly improving the delay inherent in traditional noise estimation.

[0055] Based on the above embodiments, in other implementations, the speech processing method may further include: constructing a speech model including a first function representing a pure speech signal and a second function representing the original speech signal, and then using the speech model to filter the preprocessed data to obtain a pure speech signal, that is, the process of obtaining a pure speech signal by filtering the preprocessed data based on the first function and the second function in the foregoing embodiments.

[0056] In one implementation, the constructed speech model can be a TVAR (Time-Varying Autoregressive) model. The TVAR model includes a first function and a second function, where the first function represents the pure speech signal sk, and the second function represents the original speech signal (noisy signal) y. k s k and y k The expression is as follows:

[0057]

[0058] y k =s k +v k

[0059] Where, α k =(α 1,k α 2,k , ..., α p,k ) T It is the p-dimensional coefficient vector of the k-th frame; u k It is process noise, v k It is observation noise, all of which is Gaussian white noise, with variances of respectively. and The obtained s k Conditional probability density:

[0060]

[0061] Observed value y k The likelihood function is expressed as s = s k Variance v k Normal distribution:

[0062]

[0063] To better describe the time-varying characteristics of the noise sequence, the logarithmic deviation of the noise is taken. Furthermore, its variation pattern conforms to the Gaussian model:

[0064]

[0065] For α in the TVAR model k The coefficients can also be represented by a Gaussian model to show their time-varying characteristics:

[0066]

[0067] I p It is a p-order identity matrix. In the above, N(u, σ) 2 ) represents a mean of u and a variance of σ.2 The Gaussian distribution.

[0068] Therefore, the speech model can be represented as:

[0069]

[0070] The unknown parameters in the model are Initial values ​​are selected according to a Gaussian distribution, and parameters are selected based on their rate of change over time. It can be assumed to be a constant, such as taking...

[0071] Based on the above, the transition function (also called the transition probability density) of the state variable (pure speech signal) is:

[0072]

[0073] The probability density function of the system observation variable (raw speech signal) is:

[0074]

[0075] Understandably, the initial TVAR model only constructed two functions representing data relationships. These two functions could not be directly calculated. The aforementioned transition function and probability density function express the way the model changes, making the TVAR model computable and usable.

[0076] The above content can be understood as the preparation for filtering. Subsequently, the preprocessed data can be filtered based on the transfer function and probability density function to obtain a pure speech signal.

[0077] Specifically, Figure 2 The flowchart for estimating pure speech signals is shown. Combined with... Figure 2 The filtering of the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain the pure speech signal may include:

[0078] Step 201: Generate an initial particle set according to the initial prior probability, wherein each particle in the initial particle set has the same weight.

[0079] Step 201, also known as the initialization of the particle set, includes setting the number of particles N, with each particle having a weight of 1 / N. The initial prior probability can be assumed to be a Gaussian distribution.

[0080] Step 202: Based on the initial particle set and the transfer function corresponding to the first function, the estimated particle set is obtained.

[0081] After obtaining the initial particle set, the state estimate at time k needs to be updated based on the transition function of the first function, that is, the transition function of the state variables, to obtain the estimated particle set. Calculate the mean and variance

[0082] Step 203: Update the weights of each particle in the estimated particle set based on the estimated particle set and the probability density function corresponding to the second function.

[0083] The formula for calculating the weights of each particle in the particle set is as follows:

[0084]

[0085] in It is an important density function; to simplify calculations, we can take... Therefore, the particle weight update formula can be simplified to:

[0086]

[0087] Furthermore, the weights can be normalized:

[0088] Based on the above, the implementation of updating the weights of each particle in the estimated particle set based on the estimated particle set and the probability density function corresponding to the second function may include: determining the mean and variance of all particles in the estimated particle set; and updating the weights of each particle in the estimated particle set based on the mean, the variance, and the probability density function.

[0089] Step 204: Determine the pure speech signal based on the estimated particle set and the updated weights of each particle therein.

[0090] Specifically, calculate the estimated value of the target state of the k-th frame of the speech signal:

[0091]

[0092] That is, a definite pure speech signal can be an estimate of the speech signal of each frame.

[0093] In this embodiment, particle filtering is used for speech estimation. Particle filtering has a certain robustness to Gaussian and non-Gaussian models, as well as linear and nonlinear systems. Its accuracy can approach the optimal estimation, which can better estimate pure speech signals, making subsequent feature calculations more accurate. At the same time, its prediction of speech signals can reduce the processing delay in speech endpoint detection applications.

[0094] Based on the above embodiments, after updating the weights of each particle in the estimated particle set based on the estimated particle set, the step may further include: determining a weight degradation index based on the updated weights; and resampling the particle set when the weight degradation index exceeds a set threshold.

[0095] Figure 3 This is a schematic diagram illustrating a process for estimating a pure speech signal according to an embodiment of this application. (In conjunction with...) Figure 3 As shown, in the process of estimating the pure speech signal, based on the existing particle set, the state estimate at time k is first updated to obtain the estimated particle set at time k. Then, the weights are updated and normalized, that is, the weights of each particle in the estimated particle set are updated based on the probability density function of the second function, and the updated weights are normalized. Finally, the pure speech signal is estimated based on the normalized weights (weights) of each particle in the estimated particle set. After each weight update, a weight degradation index is calculated based on the updated weights, and it is determined whether the weight degradation index exceeds the set threshold. If so, it indicates that the weight has degraded to a certain extent and the accuracy is not high. The particle set needs to be resampled to ensure the accuracy of the estimated pure speech signal.

[0096] In other implementations, after obtaining the pure speech signal, further processing can be performed based on the estimated pure speech signal to determine the speech periods in the original speech signal. In this embodiment, the speech periods include at least human voice, while non-speech periods contain only noise or no sound. Figure 4 This is a flowchart illustrating the process of determining speech segments based on pure speech signals, as disclosed in an embodiment of this application. Figure 4 As shown, the process of determining the speech period may include:

[0097] Step 401: Determine the probability of speech presence based on the pure speech signal and the original speech signal.

[0098] In implementation, the prior signal-to-noise ratio (SNR) and posterior signal-to-noise ratio (SNR) can be determined first based on the pure speech signal and the original speech signal, respectively. The likelihood ratio of the original speech signal can then be determined based on the prior SNR and the posterior SNR. Finally, an activation function is used to perform nonlinear mapping processing on the likelihood ratio to obtain the probability of speech presence.

[0099] Specifically, the prior and posterior signal-to-noise ratios are first calculated to obtain the likelihood ratio feature. In implementation, the speech signal can be converted from the time domain to the frequency domain, and then the posterior signal-to-noise ratio σ(k) is calculated using the converted pure speech signal S(k) and the original speech signal Y(k).

[0100]

[0101] Calculate the prior signal-to-noise ratio ρ(k):

[0102] ρ(k)=α·H(k-1) 2 ·σ(k-1)+(1-α)·max{(σ(k)-1),0}

[0103] Where k represents the k-th frame, α is the smoothing coefficient, which can be 0.99. H(k-1) are the Wiener filter coefficients of the previous frame:

[0104]

[0105] Calculate the likelihood ratio Δ(k):

[0106]

[0107] After obtaining the likelihood ratio, it can be activated to obtain the probability of speech presence. A nonlinear function can be used to activate the likelihood ratio, such as the sigmoid function or the tanh(x) function; for example, the hyperbolic tangent function tanh(x) has a range of (-1, 1). Through calculation, the final indicator function is obtained with a range of (0, 1), meaning that when the signal is speech, the value of ind approaches 1, and when the signal is non-speech, the value of ind approaches 0.

[0108] Formula for calculating the indicator function:

[0109] ind=0.5·(tanh(w·(Δ(k)-T))+1)

[0110] Where w is a transition parameter that controls the smoothness of the mapping from 0 to 1, and T is a threshold parameter.

[0111] The probability of speech presence, P(k), is updated. This process can be understood as a smoothing process. The formula for calculating P(k) is:

[0112] P(k)=(1-α p )·P(k-1)+α p ·ind

[0113] Where α p It is the smoothing coefficient, which can be 0.1.

[0114] In this implementation, the obtained eigenvalues ​​are controlled within a certain range by nonlinear mapping of the activation function, and nonlinear factors are introduced to make the results applicable to more nonlinear problems.

[0115] In other implementations, the activation function includes a threshold parameter, which can be updated using a histogram statistical adaptive update method. Figure 5This is a schematic diagram of the process for adaptively updating the threshold using a histogram, as disclosed in an embodiment of this application. (See also...) Figure 5 This paper explains the specific implementation of updating the threshold parameters. Using histogram statistics, the threshold parameters in the activation function are updated adaptively, making the output speech probability of the activation function more accurate and allowing for better matching of more scenarios. Since the use of histogram-based adaptive threshold updating is an existing technique in the field, it will not be discussed further here.

[0116] Step 402: Detect speech endpoints based on the speech presence probability to determine the speech segments in the original speech signal.

[0117] After determining the probability of speech presence, speech endpoint detection, or VAD (Voice Activity Detection), can be performed based on this probability. Specifically, the speech state of the current speech frame can be determined based on the speech state of the previous speech frame, the speech presence probability of the current speech frame, and a set threshold value. The speech state includes waiting for speech to start, in the middle of speech, and speech to end.

[0118] When making VAD decisions, single-threshold, double-threshold, and adaptive threshold methods can be used; this application does not impose any fixed restrictions. The following section will use the double-threshold method as an example to illustrate the specific implementation of VAD decisions.

[0119] Figure 6 This is a schematic diagram of the VAD decision process disclosed in an embodiment of this application. See also... Figure 6 As shown, after obtaining the speech presence probability P, the corresponding judgment is made based on the status of the current frame. The status has three states: status 0 indicates a speech waiting to start state, status 1 indicates a speech in progress state, and status 2 indicates a speech end state. During implementation, the status is continuously updated, and speech endpoint detection is achieved by combining the speech presence probability of each frame's speech signal.

[0120] When the status is 0, first check if P is greater than threshold 2. If yes, the speech is considered to have started. If no, further check if P is greater than threshold 1. If yes, the speech is also considered to have started. If no, the current state is still considered to be the speech waiting to start state, i.e., status is 0. Threshold 2 is greater than threshold 1. Threshold 1 and threshold 2 can be set based on experience and continuously optimized during application.

[0121] When status is 1, first determine whether P is greater than the average of threshold 1 and threshold 2. If so, it is considered that the speech continues and status remains 1. Otherwise, the non-speech duration is accumulated, and it is further determined whether the non-speech duration is less than the maximum pause (preset value). If so, status is 1. If both are true, the speech is considered to have ended and status is set to 2.

[0122] When status is 2, the voice recording ends; when status is 0, the system waits for the next voice recording to begin, and the non-voice recording duration is reset to zero.

[0123] In summary, the overall implementation of a signal processing scheme is as follows: Figure 7 As shown, it can be combined with Figure 7 The foregoing embodiments are described below. The speech processing method described in this application estimates the pure speech signal using particle filtering to obtain a more accurate likelihood ratio parameter. Then, it uses an activation function for nonlinear mapping to obtain more robust speech presence probability features. Finally, it performs threshold judgment to obtain the speech decision result. This implementation has the advantages of high accuracy and low latency.

[0124] For the foregoing method embodiments, in order to simplify the description, they are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, because according to this application, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0125] The methods described in the above-disclosed embodiments of this application are detailed in terms of the methods. The methods of this application can be implemented by various forms of apparatus. Therefore, this application also discloses an apparatus. Specific embodiments are given below for detailed description.

[0126] Figure 8 This is a schematic diagram of the structure of a voice processing device disclosed in an embodiment of this application. See also... Figure 8 As shown, the voice processing device 80 may include:

[0127] The preprocessing module 801 is used to preprocess the original speech signal to obtain preprocessed data.

[0128] The filtering module 802 is used to filter the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.

[0129] The speech processing apparatus described in this application performs filtering on preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal, thereby estimating the pure speech signal from the preprocessed data and obtaining the estimated pure speech signal. Because speech estimation uses a filtering method, it overcomes the problem of difficult estimation due to the indistinct features of colored noise. Furthermore, speech estimation has a certain predictive ability, thus significantly improving the delay inherent in traditional noise estimation.

[0130] In one implementation, the apparatus may further include: a model building module for building a speech model including a first function representing a pure speech signal and a second function representing a raw speech signal, and then filtering the preprocessed data based on the built speech model to obtain a pure speech signal.

[0131] In one implementation, the filtering module includes: a particle set initialization module, used to generate an initial particle set according to an initial prior probability, wherein each particle in the initial particle set has the same weight; a particle set estimation module, used to estimate an estimated particle set based on the initial particle set and the transition function corresponding to the first function; a weight update module, used to update the weight of each particle in the estimated particle set based on the estimated particle set and the probability density function corresponding to the second function; and a signal determination module, used to determine a pure speech signal based on the estimated particle set and the updated weights of each particle therein.

[0132] In one implementation, the weight update module can be used to: determine the mean and variance of all particles in the estimated particle set; and update the weight of each particle in the estimated particle set based on the mean, the variance, and the probability density function.

[0133] In one implementation, the filtering module may further include: a resampling module for determining a weight degradation index based on the updated weights; and for resampling the particle set when the weight degradation index exceeds a set threshold.

[0134] In one implementation, the speech processing device may further include: an existence probability determination module, used to determine the speech existence probability based on the pure speech signal and the original speech signal; and an endpoint detection module, used to perform speech endpoint detection based on the speech existence probability to determine the speech period in the original speech signal.

[0135] In one implementation, the existence probability determination module can be used to: determine the prior signal-to-noise ratio (SNR) and the posterior SNR based on the pure speech signal and the original speech signal, respectively; determine the likelihood ratio of the original speech signal based on the prior SNR and the posterior SNR; and perform nonlinear mapping processing on the likelihood ratio using an activation function to obtain the speech existence probability.

[0136] In one implementation, the activation function includes a threshold parameter, which is updated using a histogram statistical adaptive update method.

[0137] In one implementation, the preprocessed data includes multiple speech frames, and the endpoint detection module can be used to: determine the speech state of the current speech frame based on the speech state of the previous speech frame, the speech presence probability of the current speech frame, and a set threshold value, wherein the speech state includes waiting for speech to start, speech in progress, and speech to end.

[0138] The specific implementation of the above-mentioned voice processing device and its various modules, as well as other possible implementations, can be found in the relevant sections of the method embodiments, and will not be repeated here.

[0139] Any of the speech processing devices described in the above embodiments includes a processor and a memory. The preprocessing module, filtering module, model building module, particle set initialization module, particle set estimation module, weight update module, signal determination module, resampling module, etc. in the above embodiments are all stored as program modules in the memory, and the processor executes the above program modules stored in the memory to realize the corresponding functions.

[0140] The processor contains a kernel, which retrieves the corresponding program modules from memory. One or more kernels can be configured, and the processing of backtracking data can be achieved by adjusting kernel parameters.

[0141] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.

[0142] In an exemplary embodiment, a computer-readable storage medium is also provided, which can be directly loaded into the internal memory of a computer, and contains software code. The computer program, after being loaded and executed by the computer, can implement the steps shown in any of the embodiments of the above-described voice processing method.

[0143] In an exemplary embodiment, a computer program product is also provided, which can be directly loaded into the internal memory of a computer and contains software code. After being loaded and executed by the computer, the computer program can implement the steps shown in any of the embodiments of the above-described voice processing method.

[0144] Furthermore, embodiments of this application provide an electronic device. Figure 9 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. See also... Figure 9As shown, the electronic device 90 includes at least one processor 901, at least one memory 902 connected to the processor, and a bus 903; wherein the processor and the memory communicate with each other through the bus; the processor is used to call program instructions in the memory to execute the above-mentioned voice processing method.

[0145] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since they correspond to the methods disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to the method section.

[0146] It should also be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0147] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0148] The above description of the disclosed embodiments enables those skilled in the art to make or use this application. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this application. Therefore, this application is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A speech processing method, the method comprising: The original speech signal is preprocessed to obtain preprocessed data; The preprocessed data is filtered based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.

2. The speech processing method according to claim 1, further comprising: Construct a speech model that includes a first function representing the pure speech signal and a second function representing the original speech signal; The preprocessed data is filtered using the aforementioned speech model to obtain a pure speech signal.

3. The speech processing method according to claim 1, wherein filtering the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain the pure speech signal includes: An initial particle set is generated according to the initial prior probability, wherein each particle in the initial particle set has the same weight. The estimated particle set is obtained based on the initial particle set and the transition function corresponding to the first function; The weights of each particle in the estimated particle set are updated based on the estimated particle set and the probability density function corresponding to the second function; The pure speech signal is determined based on the estimated particle set and the updated weights of each particle therein.

4. The speech processing method according to claim 3, wherein updating the weights of each particle in the estimated particle set based on the estimated particle set and the probability density function corresponding to the second function comprises: Determine the mean and variance of all particles in the estimated particle set; The weights of each particle in the estimated particle set are updated based on the mean, the variance, and the probability density function.

5. The speech processing method according to claim 3, after updating the weights of each particle in the estimated particle set based on the estimated particle set, further comprising: Determine the weight degradation index based on the updated weights; When the weight degradation index exceeds a set threshold, the particle set is resampled.

6. The speech processing method according to claim 1, after filtering the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain the pure speech signal, further includes: The probability of speech presence is determined based on the pure speech signal and the original speech signal; Voice endpoint detection is performed based on the probability of the presence of the voice to determine the voice segments in the original voice signal.

7. The speech processing method according to claim 6, wherein determining the probability of speech presence based on the pure speech signal and the original speech signal includes: The prior signal-to-noise ratio and the posterior signal-to-noise ratio are determined based on the pure speech signal and the original speech signal, respectively. The likelihood ratio of the original speech signal is determined based on the prior signal-to-noise ratio and the posterior signal-to-noise ratio; The likelihood ratio is nonlinearly mapped using an activation function to obtain the probability of speech presence.

8. The speech processing method according to claim 7, wherein the activation function includes a threshold parameter, and the threshold parameter is updated using a histogram statistical adaptive update method.

9. The speech processing method according to claim 6, wherein the preprocessed data includes multiple speech frames, and the speech endpoint detection based on the speech presence probability includes: The voice state of the current voice frame is determined based on the voice state of the previous voice frame, the probability of the voice presence in the current voice frame, and a set threshold value. The voice state includes waiting for the voice to start, in the middle of the voice, and the voice to end.

10. A voice processing apparatus, the apparatus comprising: The preprocessing module is used to preprocess the raw speech signal to obtain preprocessed data; A filtering module is used to filter the preprocessed data based on a first function representing the pure speech signal and a second function representing the original speech signal to obtain a pure speech signal. The filtering process includes obtaining an estimated particle set based on the first function and determining the weight of each particle in the estimated particle set based on the second function. The pure speech signal is related to the weight of each particle.

Citation Information

Patent Citations

  • Method and device for filtering residual noise after machine learning speech enhancement

    CN112289337A

  • Noise suppressing device, computer program, and voice recognition system

    JP2008292858A